新闻中心

EEPW首页>嵌入式系统>设计应用> 基于飞思卡尔单片机的两轮车控制系统设计

基于飞思卡尔单片机的两轮车控制系统设计

作者: 时间:2013-09-02 来源:网络 收藏

  硬件二值化电路的工作原理是通过图像传感芯片获得的模拟信号经R1、R2限流后输出到三极管Q1,使三极管Q1始终处于不饱和放大状态。R3上的电流大小随此模拟信号的变化而成反比变化,从R3采样出来的电压信号即为通过图像传感芯片获得模拟信号的镜像信号,最后通过比较器输出表征赛道信息的数字信号。

  3.4 车速及运动方向检测模块

  为了实现系统的闭环控制,在车模运行过程中需要实时监控其速度。本系统在左右电机上各安装一个500线两相光电编码器。在固定周期内,利用单片机内部计数器测量由编码器返回的脉冲信号个数以获得车模的运动速度大小;由于编码器A、B两相相位差为90°,可通过比较A、B两相信号先后顺序来判断电机的正反转,便可知道小车的运动方向。

  3.5 加速度检测模块

  加速度计可以测量由地球引力作用或者物体运动所产生的加速度。本系统选用MMA7260作为加速度检测器件,MMA7260是一款低成本单芯片三轴高灵敏度加速度传感器,可以同时输出三个方向上的加速度模拟信号,具有功耗低、工作范围宽等特点,并且具有4种不同的高灵敏度选择模式以适应不同的加速度的测量要求。

  通过软件设置让加速度传感器采用800mV/g的工作模式,使MMA7260各轴信号输出灵敏度为800mv/g,这时信号不需要进行放大,可以直接送到单片机进行A/D转换。同时由于MMA7260采用了开关电容滤波器,会有时钟噪声产生,所以需要在传感器输出端采用RC滤波电路,以改善信号的质量。加速度传感器在受外界振动时易带来测量误差,并且测量误差的大小和传感器在车模上安装的高度成正比。为减小由于安装高度带来的测量误差,加速度传感器在小车上应尽可能安装得低一些,但是依然不能彻底消除由于小车振动带来的误差,因此需要角速度传感器的辅助来获得车模直立平衡控制所需要的倾角信息。

  3.6 角速度检测模块

  本系统选用陀螺仪ENC-03来测量物体在旋转时的角速度。陀螺仪的输出信号是相对灵敏轴的角速度,通过角速率对时间积分可得到围绕灵敏轴旋转过的角度值,即小车的倾斜角度。因为陀螺仪易受温度和震动等因素的影响而产生微小的漂移和偏差,经积分后形成累计误差,最终导致电路饱和,无法得到准确的角度信号。因此,本系统采用互补滤波算法把加速度传感器获得的角度信号与陀螺仪输出经积分后的角度进行融合,最后得到较准确的车模倾角信息。

  3.7 直流电机驱动模块

  车速控制单元采用脉宽调制技术( P W M ),加上P I D算法实现闭环控制。系统利用单片机输出PWM信号通过隔离芯片LM244来控制直流电机驱动芯片BTS7960,通过改变PWM波的占空比调节电机的转速,加上PID算法对电机转速进行闭环控制。直流电机驱动芯片BTS7960是大电流、半桥、低通态电阻的集成芯片,它带有一个P沟道的高边MOSFET、一个N沟道的低边MOSFET和一个驱动IC.P沟道高边开关省去了电荷泵的需求从而减小了EMI.集成驱动IC具有逻辑电平输入、电流诊断、斜率调节、死区时间产生和欠压、过压、过温、过电流及短路保护的功能。采用BTS7960搭建的电机驱动电路如图4所示。

  3.8 串口调试模块

  调试模块用于建立良好的人机交互界面,便于对系统相关波形及参数的观察和调试。本系统的调试模块采用RS-232串口通信,其最远传输距离可达到50英尺,最高传输速率是20Kbps.能做到双向传输,全双工通信。因为RS-232上传输的数字量采用负逻辑,只与地对称,所以与单片机连接时需要加入电平转换芯片MAX232.

  4.系统软件设计

  系统软件使用C语言编写而成,采用模块化设计思想,以主程序为核心,设计了单片机初始化模块、平衡控制模块、速度控制模块、转向模块、串口发送模块、液晶显示等模块。

  4.1 系统主函数

  系统进入工作状态时主函数首先进行系统初始化、发送系统相关参数到上位机、液晶显示、读取小车倾角参数等功能。初始化工作结束后便等待各个中断函数的执行。主程序流程图如图5所示。

  4.2 中断函数

陀螺仪相关文章:陀螺仪原理


pid控制相关文章:pid控制原理


单片机相关文章:单片机教程


单片机相关文章:单片机视频教程


单片机相关文章:单片机工作原理


pid控制器相关文章:pid控制器原理


加速度计相关文章:加速度计原理
脉宽调制相关文章:脉宽调制原理


评论


相关推荐

技术专区

关闭