关键词:移动机器人
1 系统硬件设计
系统硬件设计框图如图1所示,核心控制部分采用Atmel公司的普及型8位MCU AT89C51。作为一款目前广泛应用的MCU,AT89C51提供有电机控制、LCD驱动显示以及传感信息等多种驱动功能和接口,另一方面,该MCU价格低廉,有很高的性价比。外接存储模块采用容量为256kB的24LC256闪存芯片,当然,也可以根据实际需要选用其它容量的闪存芯片。感光探测选用光敏电阻即可感应外界光线的强弱。障碍物探测采用美国邦纳工程有限公司的PicoDot PD系列激光传感器,该传感器能对被测物体进行精确的到位检测、定位和计数。
2 系统设计要点
2 系统设计要点
轮式移动机器人模型的速度及方向可由两个后轮作为驱动轮来控制,MCU通过驱动芯片L293B驱动两个后轮电机。AT89C5可通过两个后轮对应的两个计速器来分别控制这两个后轮的转速,从而实现模型的前进和转向功能。
2.1 计速部分
系统计速部分由光电开关及带有均匀分布小孔的圆盘组成,
其电路及皮带轮连接示意图如图2所示。当光电开关中间有黑色物体挡住时,输出电平为0;无遮挡时,输出电平为1。当均匀分布小孔的圆盘边缘在光电开关的槽中转动时,可根据输出的一系列脉冲及圆盘上的孔数计算出圆盘的转速N。皮带轮1与圆盘粘在一起,因而转速相同;皮带轮2与模型后驱动轮同轴,速度相同;皮带轮1、皮带轮2由皮带相连。假设皮带轮2周长是皮带轮1周长的5倍,则皮带轮2的转速为N/5,即车轮转速为N/5。
其电路及皮带轮连接示意图如图2所示。当光电开关中间有黑色物体挡住时,输出电平为0;无遮挡时,输出电平为1。当均匀分布小孔的圆盘边缘在光电开关的槽中转动时,可根据输出的一系列脉冲及圆盘上的孔数计算出圆盘的转速N。皮带轮1与圆盘粘在一起,因而转速相同;皮带轮2与模型后驱动轮同轴,速度相同;皮带轮1、皮带轮2由皮带相连。假设皮带轮2周长是皮带轮1周长的5倍,则皮带轮2的转速为N/5,即车轮转速为N/5。2.2 道路学习记忆
计数芯片选用7级二进制串行计数器CD4024,光电开关的输出波形经施密特触发器整形为标准脉冲波形可使CD4024计数更方便。设每隔T时间记录到脉冲数M,那么,T时间内圆盘转速N=M/(LT)(设L为圆盘上的孔数),则车轮的速率为N/5=M/(5LT)。由于T越小,结果越精确,故T取几至几十毫秒。记录的数据经微控制器MCU送至外接闪存24LC256储存起来,供输出使用。
通过上述过程可对模型进行道路训练,即每隔T时间将两个后轮速率分别记入闪存。训练结束后,闪存内存储的是两个后轮每隔T时间一次的速率,这样就可实现对训练道路的记忆。
2.3 道路循迹重复
在对该模型进行输出控制时,先由微控制器MCU从闪存中读取数据,再将每隔T时间的转速数据通过脉冲输出,并通过L293B芯片驱动两后轮电机的转动。为保证输出的转速与原记录的转速一致,可用反馈控制的方法在后轮驱动电机转动的同时,由计速器模块同时检测两个后轮的转速,然后分别比较两个后轮的转速是否与原记录转速相同:若小于原记录转速,
可调用加速子程序;若大于,则调用减速子程序。
可调用加速子程序;若大于,则调用减速子程序。由于计数时间T较小,再加上反馈控制的作用,就可保证输出的运动轨迹精确接近于原训练道路,误差很小。实际运行时,可在保证记录和输出精度的前提下把训练的道路模拟成与实际道路按比例缩小的地图,即在地图上对模型进行道路训练,按比例倍数放大输出,即可使机器人在实际道路上按训练道路运动。由于输出放大倍数由程序决定,因而可按不同的需要设置,灵活性很高。