基于DSP的模块化教育机器人硬件系统方案
该教育机器人是以只能小车为载体TMS320LF2407A微控制器的嵌入式控制平台及编辑环境的一款开放式的机器人控制系统,以各传感器模块设计应用为核心,采用模块化设计思想进行设计,包括系统总体框架的设计、无线通信模块和系统电源、电机驱动硬件电路模块的设计。 智能机器人作为一个高新科技的综合体,直接反应了一个国家信息技术的发展水平,受到了社会各界的高度重视。智能机器人涉及了信息技术的几乎所用内容,可以让学生接触并看到信息技术的全景,并且智能机器人是信息技术的开放平台,学生可以充分发挥想象力去开发各种智能装置,从而培养学生对信息技术的开发能力,在开发过程中,培养各种能力,激发学生的兴趣。 本文设计的以智能小车为载体的基于TMS320LF2407A教育机器人硬件平台,包括电源模块和电机驱动模块电路设计,并集成了红外和光敏传感器和无线数据传输模块,通过软件设计可实现寻迹、避障及寻迹避障相结合的功能,达到了理论课程学习与动手实践相结合的目的,巩固了知识并进一步提高了学习者的兴趣。 1 设计思想与总体方案 1.1 教育机器人的设计思想 本教育机器人以TMS320LF2407A微控制器为核心,由红外传感器和光电传感器等各种传感器采集的外部环境信息作为输入信号,通过DSP进行运算处理,利用PWM技术实时输出调整小车的速度和方向,实现小车寻迹、避障、寻迹加避障等自动控制的功能,另外在小车于寻迹过 程中遇到障碍物,当寻迹加避障算法在寻迹的同时不能完成避障功能时,可由PC机与其相连的无线通信收发模块和DSP相连的另一无线收发模块实现无线短距离通信,控制小车脱离障碍区并进行正常寻迹。 1.2 总体设计方案和框图 机器人小车系统整体框图如图1所示,主要有TMS320LF2407A最小系统部分、电源模块、电机驱动模块、传感器模块、无线通信模块构成,实现由车载的各种传感器将信息不断地传递给车载微控制器,并将编程设计算法下载至微控制器实现实时调整小车的运动状态,完成一定的功能要求。 2 系统硬件模块设计 2.1 TMS320LF2407A最小系统设计 TMS320LF2407A是2000系列中目前应用最为广泛的产品,它在片上不仅具有一个适于进行数字信号处理的高效处理器,而且还集成了存储器和适应控制领域应用的丰富片上外设,从而构成了一个基本的片上计算机系统。除了具有改进的哈佛结构、多总线结构和流水线结构等优点外,它还采用高性能静态 CMOS技术,电压降为3.3V,减少了功耗,指令执行速度提高到40MIPS,几乎所有指令都可以在2 5ns的单周期内完成。TMS320LF2407A的基本结构包括中央处理器单元(CPU)、存储器、片内外设与专用硬件电路三个组成部分。本系统硬件平台充分利用TMS320LF2407A控制器的特点采用模块化设计,分为基本电路和扩展控制电路部分。基本电路包括电源电路、复位电路、时钟电路、A/D 输入通道和JTAG仿真电路等。扩展电路包括存储器及译码电路、串行通信SCI与RS-232接口电路、CAN接口电路、SPI功能模块等。系统硬件原理框图如图2所示。 此部分采用光电传感器对路面信息进行识别。采用RPR220型光电对管,RPR220是一种一体化反射型光电探测器,其发射器是一个砷化镓红外发光二极管,接收管是一个高灵敏度的硅平面光电三极管,用3个该红外对管构成“一”字形排列在小车车头的底部,路径轨迹由黑线指示,根据落在黑线区域的光电三极管接收到的反射光线强度与白色区域的不同,由检测到的黑线光电管的位置来判断小车的位置方向看其是否偏离黑线,当红外对管的发射二极管发出红外线,经反射物 (白线)反射到接收管,是接收管集电极与发射极之间的电阻变小,输入端电位变低,经比较器比较后输出低电平,当红外线照射到黑线上时,反射到接收管上的光亮减小,接收管的集电极与发射极间电阻增大使得输出高电平,将输出端信号送至2407A进行分析处理,反射式光电传感器原理如图3所示。3个传感器中如果位于中间的传感器(中传感器)检测到黑线,从传感器将发出“有线”信号,后轮两电机继续接通运转,结果驱动车体前进。如果除中传感器之外,左、右传感器中的任一个未检测到黑线,则该传感器输出“无线”信号,这时脱离引导线的传感器对侧的驱动电机停止运行,同侧电机继续运行,以此达到校正行进方向的目的。 2.3 红外避障模块设计 在小车行进过程中遇到障碍物,无法正常通过时,采用红外线检测器检测障碍物,并设计算法控制小车绕开障碍物继续寻迹前进。在小车前端两侧分别安装1个红外发射二极管(如东芝TLN110)进行红外信号的发射,红外线光源发出的信号调制到38kHz,使用2407A的PWM输出产生精确的信号。红外接收器由安装在车头中央的专用红外接收模块(如CRVPl738)对红外信号进行接收。小车前进路线中障碍物的判断原则:a.左边红外发射二极管发射信号,检测中央接收端,判断是否接收到信号;b.右边红外发射二极管发射信号,检测中央接收端,判断是否接收到信号;c.若左边发射时,有信号接收则小车左边有障碍物;若右边发射时,有信号接收则小车右边有障碍物;若左边和右边发射时,都有信号接收则小车正前方有障碍物。 在小车前进过程中有三种避障算法:沿左边行走,沿右边行走,左右相结合行走。本设计要实现在多种环境下都能避障,所以选择左右结合行走的算法。在小车左、右侧两侧等比例安装若干红外测距传感器(GP2D12),用于防止小车在避障过程中与障碍物发生碰撞,由于GP2-D12输出为0.4~2.4V的模拟信号,对应80~10cm距离,输出与距离成反比关系,且为非线性,可直接利用2407A集成的A/D转换功能,进行A/D转换得到相应参数,根据参数由 DSP进行相应处理,进行避障前进。在避障过程中,采用接近式控制策略,维持障碍物和传感器之间的距离为一固定常数,当两者距离偏小时,机器人向远离障碍物的方向旋转;当两者距离偏大时,向靠近障碍物的方向旋转。小车沿障碍物行进过程中,在车头底部光电传感器检测到黑线时,小车开始调整行进姿势,远离障碍物,继续寻迹。另外在小车无法成功绕过障碍物继续寻迹时,可以通过无线通信模块控制小车绕过障碍物使其继续寻迹。 2.4 无线通信模块设计 在机器人无法成功避障的情况下,可通过DSP与上位机(PC机)之间的通信协作来完成避障任务。DSP与PC机之间的通信方式分为有线和无线两种,多数采用串行通信。在本设计中采用无线通信方式,可以克服有线通信造成的操作不便。PTR2000是基于nRF401器件的无线数据传输模块,具有低频发射、灵敏度高的特点,使其在嵌入式短程无线产品中得到广泛的应用。要实现DSP与PC机之间的无线通信,需在DSP与小车车体分别安装一个 PTR2000器件,其系统硬件结构框图如图4所示。通过2407A的RXD和TXD引脚与PTR2000的DO和DI引脚直接相连,2407A的控制引脚与PTR2000模式控制引脚相连完成PTR2000于DSP之间的连接,通过采用MAX232器件在PTR2000和计算机串口进行RS-232和 TTL电平之间的转换后,完成PTR2000和PC机串口的连接。在DSP和PC机端软件配合设置PTR2000的状态(发射或接收),选择固定的通信频道,并让PTR2000一直处于正常工作状态,再通过设计软件系统实现无线通信的功能。 电源模块可由16V交流电压充电器通过电源充电电路为6节车载镍镉电池(约7.2V)充电,为各模块提供工作电压。电源电路模块如图5所示。由于各模块所需工作电压不同,可先通过使用78(L)05稳压器得到5V直流电压,2407A所需3.3V电源由带集成延时复位功能的低压差稳压器TPS733Q实现,同时具有复位功能。如图5所示。 2.6 电机驱动模块设计 本轮式机器人平台采用左、右直流电机驱动的方式,中间有一起支撑作用的万向轮。电机驱动模块可以实现两电机在任何方向旋转从而达到小车前进、倒退和转向的目的。电机发生转向与否是由提供给电机驱动电路的高、低电压信号次序决定的,它们来自前端的数字逻辑门定序电路。数字逻辑定序电路的输入信号由2407A 产生的方向信号和PWM信号实现机器人的方向和速度的控制分为方向端和使能端,该电路同时可以避免产生电源短路对电子器件造成的损害。此小车电机驱动电路是H桥驱动电路,该电路通过控制电机电流流向达到控制转向的目的。当Q1和04导通时,电机电流从左流向右,电机正转;当Q2和Q3导通时,电机电流从右流向左,电机反转。如图7所示。 3 系统整体实现 以TMS320LF2407A为核心的教育机器人硬件系统整体功能可在软件开发工具CCS和硬件开发工具XDS的支持下采用C语言和汇编语言混合编程进行程序仿真调试,再通过JTAG接口下载到DSP内实现,给DSP学习者带来了极大的方便。同时,得益于2407A外部资源的丰富性,系统中未使用部分有利于学习者做进一步的功能开发和应用。 4 结语 该整体硬件系统结构简单,具有很好的扩展性,而且通过软件编程控制机器人完成一定的功能,很好地锻炼了学生的逻辑思维能力和编程能力,有助于培养学生的实践能. |