资源预览内容
第1页 / 共9页
第2页 / 共9页
第3页 / 共9页
第4页 / 共9页
第5页 / 共9页
第6页 / 共9页
第7页 / 共9页
第8页 / 共9页
第9页 / 共9页
亲,该文档总共9页全部预览完了,如果喜欢就下载吧!
资源描述
基于简单路径规划的避障轮式移动机器人系统直流电动机驱动子系统设计1. 系统概述本设计的目的是设计一种基于简单路径规划的避障轮式移动机器人,完成在简单环境下的避障跟踪任务。通过超声测距系统,测量小车与障碍物之间的距离。小车由两个直流电机分别对两轮进行驱动;同时,通过电子罗盘系统,通过主控单片机的控制,进行姿态调整;通过光电测速系统测量小车行进速度,并反馈给主控单片机,从而实时改变小车速度。2. 设计方案本设计的移动机器人按照其功能可分为四个子系统(图1):直流电动机驱动子系统、电子罗盘子系统、光电测速子系统和超声测距子系统。其中,直流电动机驱动子系统采用集成电路驱动器L293D 控制机器人左右两个直流电动机,电动机可以正转也可以反转,L293D的使能信号和方向控制信号由型号为AT89C52 的 51 系列单片机的并行I/O 口使能或驱动。电机的调速采用脉宽调制( PWM )方式进行, PWM 信号时序由单片机定时器(可用T0、 T1 和 T2)产生。电子罗盘子系统选用电子罗盘、电子指南针相关检测地磁的数字罗盘芯片,提取地磁偏转信号,经A/D 转换或其它变换转换为二轴地磁偏角数字量采用串行传输方式传送给主控单片机。光电测速子系统选用红外对管并配合安装于车轮上的光电码盘检测车轮转动的角位移,并与单片机定时器配合计算出机器人小车移动的线速度和加速度,并将其传送给主控单片机。超声测距子系统选用超声换能装置,并采用带锁相环的音频译码集成芯片LM567 ,将小车距离障碍物的距离检测出来,并将其传送给主控单片机。图 1. 系统结构避障轮式移动机器人直流电机驱动子系统电 子罗 盘子 系统光 电测 速子 系统超 声测 距子 系统精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 9 页由于移动机器人系统设计比较复杂,软硬件任务结合紧密,必须综合考虑软硬件资源,合理分配整个设计过程。下图2 说明了整个系统的设计工作流程。图 2. 系统设计工作流程这里,我选取直流电机驱动子系统作为详细设计部分。3. 直流电机驱动子系统的详细设计3.1 硬件选择3.1.1 AT89C52单片机是整个小车系统的核心,控制所有模块,本系统采用型号为AT89C52(图 3)的 51 系列单片机。AT89C52是美国 ATMEL 公司生产的低电压,高性能CMOS 8位单片机,片内含8k bytes 的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM ),器件采用ATMEL 公司的高密度、非易失性存储技术生产,与标准MCS-51 指令系统及 8052产品引脚兼容,片内置通用8位中央处理器(CPU)和 Flash 存储单元,功能强大AT89C52 单片机适合于许多较为复杂控制应用场合。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 9 页其主要性能参数:与 MCS-51产品指令和引脚完全兼容;8k字节可重擦写 Flash闪速存储器;1000次擦写周期;全静态操作:0Hz-24MHz ;三级加密程序存储器;256 8字节内部 RAM ;32个可编程 I/O口线;3个16位定时 /计数器;8个中断源;可编程串行UART 通道;低功耗空闲和掉电模式. AT89C52提供以下标准功能:8k字节 Flash 闪速存储器,256字节内部 RAM ,32 个I/O 口线, 3 个16 位定时 /计数器,一个 6 向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C52 可降至 0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU 的工作,但允许RAM ,定时 /计数器,串行通信口及中断系统继续工作。掉电方式保存RAM 中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。图3 AT89C52引脚排列图3.1.2L293D本设计采用的是双轮差速控制方式,每个车轮分别由一个直流电机单独控制,移动机精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 9 页器人的速度和转向的控制主要是通过对这两个电机的控制来实现的。我们采用集成电路驱动器 L293D 控制机器人左右两个直流电动机。L293D 是美国德州仪器生产的一款电机控制器件,该器件具有4 个大电流半H 驱动结构 ,这种结构可以在4.5 V36 V 电压的下提供高达600 mA 的电流。该器件主要用于驱动感性负载 ,如继电器、螺线管、直流或者双极性步进电机等。L293D 具有如下特性:每个电机可提供高达600 mA 的驱动电流;每个驱动提供高达1.2 A 的脉冲电流;宽电压范围4.5 V36 V ;隔离的逻辑电平电源;热耗少;内部 ESD 保护;抗噪性能好. L293D 的引脚排列如图4 所示图 4. L293D 引脚排列图引脚2、7、 10、15 为控制信号输入端,用于控制电机的工作状态。而引脚3、 6、11、 14为电机控制输出端,用于直接控制电机的动作。该器件的所有输入与TTL 兼容,其输出采用达林顿晶体管接收器和伪达林顿源构成的“图腾柱”驱动电路。电机驱动使能由引脚1 控制电机1,引脚 9控制电机2。当 EN 引脚置为高电平,与之相对应的电机就处于使能状态,从而激活电机控制输出。与 VS 端口隔离的VSS 端口可提供逻辑输入,以减小电源功耗。L293D 可以工作在070的范围内。3.2 硬件设计精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 9 页硬件设计电路如图5 所示。图 5. 电机控制驱动电路采用 2 个桥式电路的芯片L293D 直接控制2 个电机。 L293D 是驱动二相和四相步进电机的专用芯片,即内含2 个 H 桥的高电压大电流双全桥式驱动器,接收标准TTL 逻辑电平信号,可驱动36V、 2A 以下的电机。L293D 可驱动 2 个电机, 3、6 和 11、14 脚之间分别接 2 个电动机。 2、7、10、15 脚接输入控制电平,控制电机的正反转,ENA 、ENB 接控制使能端,控制电机停转。单片机输出2 组 PWM 波,每 1 组 PWM 波用来控制1 个电机的速度。另外 2 个 I/O 口可以控制电机的正反转。控制方法与控制电路都比较简单。即2、7 脚控制第 1 个电机的方向,输入的ENA 控制第 1 个电机的速度;10、15 脚控制第2 个电机的方向,输入的ENB 控制第 2 个电机的速度。单片机 P1 口对 L293D 的控制如下表所示:表 1. P1 口对 L293D 控制信号P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 电机运动* * * * 0 0 停止0 1 0 1 1 1 前进1 0 1 0 1 1 后退1 0 0 1 1 1 左转0 1 1 0 1 1 右转脉冲宽度调制(Pulse Width Modulation-PWM)控制,通常配合桥式驱动电路实现直流电机调速,非常简单,且调速范围大。它的原理就是脉冲宽度调制将输出信号的基本周期固定,通过调整基本周期内高电平工作周期的大小来控制输出功率。电机的转速和电机两端精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 9 页判断控制信号类型电压成正比例,而电机两端的电压与控制波形的占空比成正比,因此电机的速度与占空比成正比,占空比越大,电机转得越快,当占空比达到1 时,电机转速最大。在实际制作过程中采用软件模拟PWM 输出调制的方法,控制信号的频率不需太高,一般在1.5 kHz 以下为宜。本设计最终采用的信号频率为1 kHz,在小车正常直线行进过程中,使能端直接接高电平,电机全速转动。在转弯时才进行占空比调制,占空比的大小决定了小车转向的快慢,占空比太小时,电机几乎不转,转向最快,但有可能使小车摇摆不定;占空比太大时, 2电机转速差很小,小车将转向很慢。3.3 软件设计主控单片机AT89C52 主要用于接收控制信号并执行相应操作。主要包括小车的停止、前进、后退、左转、右转等。下图5 给出了移动机器人主控软件设计流程。图 5. 主控软件流程图以下给出单片机通过L293D 控制电机的接口程序代码:.public_F_MotoRun _F_MotoRun:.proc push bp tosp。bp=sp+3。r1=bp+1 。r3=0xf3ff 。P_IOA_Dir=r3 。P_IOA_Attrib=r3。r4=0xffff 。P_IOA_Data=r4 。run:cmp r1,0。扫描控制信号系统初始化前进后退左转右转停止精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 9 页jnz left 。/IOB3 input1 IOB4 input2 IOB5 input3 IOB6 input4 IOB0 En1 IOB1 En2 r2=0x002b。/0000 0000 0010 1011 r1=P_IOB_Data 。r1=r1|r2。r2=0xffaf 。/1111 1111 1010 1111 r1=r1&r2 。P_IOB_Data=r1 。jmp finish 。left:cmp r1,1 。jnz right 。r2=0x000b。/0000 0000 0000 1011 r1=P_IOB_Data 。r1=r1|r2。r2=0xff8f 。/1111 1111 1000 1111 r1=r1&r2 。P_IOB_Data=r1 。jmp finish 。right:cmp r1,2 。jnz stop。r2=0x0023。/0000 0000 0010 0011 r1=P_IOB_Data 。r1=r1|r2。r2=0xffa7 。/1111 1111 1010 0111 r1=r1&r2 。P_IOB_Data=r1 。jmp finish 。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 9 页stop:r1=0x0000。/0000 0000 0000 0000 P_TimerA_Ctrl=r1。P_TimerB_Ctrl=r1 。r2=0xff87 。/1111 1111 1000 0111 r1=P_IOB_Data 。r1=r1&r2 。P_IOB_Data=r1 。finish: pop bp fromsp 。call_ClearWatchDog retf .endp 4. 结束语经过一个学期的学习,从对移动机器人一无所知到有所了解,再到对其整体构架和内部组成有了一定的了解,这个过程是艰辛的,也是快乐的。本设计中,主要对移动机器人的直流电机驱动进行设计,其中包括软硬件的设计。由于是第一次接触到这个领域,其中肯定存在许多的缺点和不足,还望指正,谢谢!参考文献1 金文俊 . 自主移动机器人的定位与运动控制. 浙江工业大学硕士学位论文,2008. 2 张拓 . 基于 AT89S52 单片机的智能循迹机器人的设计J. 工业安全与环保,2008, 34 (11): 36-38. 3 肖 伟,武 强, 闫秀桃 ,刘 根. L293D 在护士移动机器人主控电路板设计中的应用J. 国外电子元器件 , 2007, 11: 64-66. 4 AT89C52, L293D 芯片资料 . 5 www.21ic.com精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 8 页,共 9 页附录PCB原理图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 9 页
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号