处理器/DSP
避障与导航是移动机器人研究的核心问题之一。使移动机器人无碰撞到达终点,需解决两方面的基本问题。一是在运动过程中利用传感器感知周围未知环境;二是采用适当的算法进行路径规划来实现机器人的实时避障。本设计是以TI公司生产的TMS320LF2407型DSP为核心,采集环境信息并控制智能小车,3个红外发收传感器检测智能小车前方的障碍物,并且根据障碍物位置进行自动避障。
1 自动避障小车总体设计
该系统主要由DSP控制、电机驱动、电源、测速以及视觉等模块组成,其结构如图1所示。
小车为3轮结构,前面2个轮分别由2个电机独立驱动控制,后面1个万向轮作为支撑轮。小车安装有3个红外传感器,分别位于车头的左、中、右部位,用于采集环境信息。车体规格为:车身板距地7.5 cm,车长25 cm,车宽12 cm,车轮半径5.5 cm。速度控制采用定频调宽的PWM调速,并应用速度反馈和闭环PID控制,从而实现小车精确的速度和位置控制。
2 自动避障小车的硬件设计
该系统以DSP TMS320LF2407A为核心,该DSP片内资源丰富,12路脉宽调制(PWM)输出。视觉模块采用E3FDS3-0P1型红外传感器,有效探测距离为30 cm,探测角度30°。将3个红外传感器分别接至I/OPE接口的I/OPE4、I/OPE5和I/OPE6。12 V电源首先经LM7805调压到5 V,先将5 V电压送入红外传感器,再送入MAX604降压为3.3 V,如图2所示。
采用L298驱动电机,0UTl,0UT2分别与小车的一个电机的正负极相连;OUT3,OUT4分别与小车的另一个电机的正负极相连;L298的INl和IN2引脚分别与DSP的IOPE0(方向4)、IOPE1(方向3)引脚连接,用于接收主控器件输出的转向电机的动作指令,用于接收主控器件输出的驱动电机的动作指令,而ENA和ENB引脚分别连接到DSP的IOPE0(PWM3)、IOPEl(PWM4)引脚,用于控制电机的速度。
其电路原理图如图3所示。
采用测速电机测量电机转速,以此来判断速度。电机转速转换为电脉冲信号,其输出经过HD74HCl4P,送至DSP的PA3(CAPl)和PA4(CAP2)引脚,根据软件设置使计数器对脉冲信号上升沿进行递增计数。如图4所示。
3 自动避障小车的软件设计
DSP每隔一段时间对I/OPE4,I/OPE5,I/OPE6这3个端口进行查询,没有障碍物时这3个端口为高电平。即111,左边有障碍物时为011,右边有障碍物时为110。前方有障碍物时则为010。小车根据红外传感器接收的信号判断前方障碍物的分布并做出相应的动作,如表1所示。
小车在普通情况下处于前进状态,当T3定时器发生周期中断时,进入程序开始检测光电开关的信号线端口,如果有障碍物则从避障程序中选择一个执行,如果没有障碍物则小车继续前进并且等待定时器的下一次中断,其程序流程如图5所示。
调节PID参数不仅可实现系统稳定。先给小车右轮电机一个初始速度,让小车以给定的初始速度运转起来。然后利用PID算法调速:在给定速度不变的情况下,每扫描一次程序。小车的实际反馈速度便与理想速度相比较,利用PID算法便可更新给定值。不断更新给定值,直到实际速度与理想速度保持一致或者到下一次赋值则停止更新(ek=O)。程序流程如图6所示,设右轮给定速度v对应的理想速度为V,仅限右轮电机,b’为给定速度b对应的实际速度。
全部0条评论
快来发表一下你的评论吧 !