位置:51电子网 » 技术资料 » 控制技术

基于Motorola单片机的机器人追跑控制系统

发布时间:2008/6/2 0:00:00 访问次数:979

  机器人作为人类20世纪最伟大的发明之一,在短短的40年内发生了日新月异的变化。随着计算机技术、通信技术、传感器技术等的发展,机器人之间的互动成为机器人技术的一大热点。

  本文设计了一种基于摩托罗拉mc68hc08系列单片机的机器人追跑控制系统,用于研究机器人之间的简单互动。


移动机器人行为描述

  在此系统中,我们将两个移动机器人一个命名为“猫”,一个命名为“鼠”。当两个机器人都无法接收到对方发出的信号时,机器人“猫”以s形前进,机器人“鼠”在原地进行180度摆动;当机器人“猫”检测到机器人“鼠”发出的信号时,以直线追向机器人“鼠”的方向,而机器人“鼠” 同时接收到“猫”的信号,以直线向前移动,以躲避“猫”的追赶,直至逃出“猫”的接收范围,重复无法接收到信号时的行为;如果“猫”在一段时间内都无法发现“鼠”的存在,就发出声音报警。在整个过程中,由于环境未知,“猫”和“鼠”都有避障控制,而且可以根据不同的行为状态,播放不同的音乐。

系统硬件设计

  “猫”、“鼠”两个机器人的电路设计基本相同,都是由单片机系统、红外收发模块、电机控制模块和语音模块构成,其不同是红外线发射管和接收管阵列的排列有所不同。单片机选用motorola公司的8位微处理器m68hc908gp32(42管脚封装);红外收发模块使用pt2262和放大器组成的简单红外线收发电路;电机控制模块选用l293d进行电机驱动;语音模块选用isd25120控制放音。另外,系统地电源模块使用12v干电池。

单片机系统

  mc68hc08系列中的单片机是motorola公司1999年推出的8位微控制器,具有速度快、功能强、功耗小及价格等特点。

  我们在设计中选用的m c68h c908gp32单片机是mc68hc08系列微控制器的第一 批产品,其特点是片内资源丰富、高性能,低价位,且具有多种保护功能,适用于各种数据处理平台搭建。在这里我们主要用它完成红外信息融合、电机控制及语音播放控制。

  设计中,两个机器人上单片机的主要端口设置相同,如表1所示。另外避碰的三个触点开关控制为ptb0、ptb6、pta7。

红外收发模块

  红外发射模块使用pt2262和红外发射管阵列构成的红外发射电路。红外接收电路使用红外接收管阵列和放大器组成。接收到的信号输入至单片机的ptb7端口,经过a/d转换后,送入处理器,以控制机器人的行为转换。

电机控制模块

  电机驱动电路采用基于双极性h-桥型脉宽调整方式pwm的集成电路l293d。l293d具有很多优点,如电流连续;电机可四角限运行;电机停止时有微振电流,起到“动力润滑”作用,消除正反向时的静摩擦死区;低速平稳性好等。l293d通过内部逻辑生成使能信号。h-桥电路的输入量可以用来设置马达转动方向,使能信号可以用于脉宽调整(pwm)。另外,l293d将2个h-桥电路集成到1片芯片上,这就意味着用1片芯片可以同时控制2个电机。

  机器人有三个车轮,两个使用电机控制,另一个为万向轮,因此使用1片l293d进行控制即可。将两路pmw控制信号分别接至两路电机控制的使能引脚en12和en34,通过调整pwm的占空比可以调整电机的转速。将电机正反转控制线分别接入in1、in2、in3和in4,,通过写入不同的值控制两个电机的正转和反转。

语音模块

  为了区别移动机器人的各个不同状态,我们使其在做出不同动作的同时,可以播放不同的声音。为了达到这个目的,语音控制部分选用语音芯片isd25120。isd25120的录放时间为120秒,录音最多能分600段。只要在分段录/放音操作前(不少于300纳秒),给地址a0~a9赋值,录音及放音功能均从设定的起始地址开始。

  在设计时,除了用单片机控制isd25120的复位和触发端外,使用四位i/o控制芯片的放音起始地址。在初始化时,分别将两个机器人的不同信息写入语音芯片的a0~a3,选择放音;在动作过程中,在行为发生改变时,写入新的信息,改变放音选择,播放不同音乐。

系统软件设计

  系统软件主要由主程序模块、中断服务程序模块、语音控制模块和运动规划模块等部分组成。整个系统的软件部分采用汇编语言编写。

结论

  经过实验证明,两个机器人在不受外界干扰的情况下,能够正确地完成追跑动作。此设计为研究机器人之间简单互动提供了试验平台。在以后的研究中,通过改变传感器位置及内部程序,可以改变二者间的互动关系,例如协作等,进行更深的研究。



  机器人作为人类20世纪最伟大的发明之一,在短短的40年内发生了日新月异的变化。随着计算机技术、通信技术、传感器技术等的发展,机器人之间的互动成为机器人技术的一大热点。

  本文设计了一种基于摩托罗拉mc68hc08系列单片机的机器人追跑控制系统,用于研究机器人之间的简单互动。


移动机器人行为描述

  在此系统中,我们将两个移动机器人一个命名为“猫”,一个命名为“鼠”。当两个机器人都无法接收到对方发出的信号时,机器人“猫”以s形前进,机器人“鼠”在原地进行180度摆动;当机器人“猫”检测到机器人“鼠”发出的信号时,以直线追向机器人“鼠”的方向,而机器人“鼠” 同时接收到“猫”的信号,以直线向前移动,以躲避“猫”的追赶,直至逃出“猫”的接收范围,重复无法接收到信号时的行为;如果“猫”在一段时间内都无法发现“鼠”的存在,就发出声音报警。在整个过程中,由于环境未知,“猫”和“鼠”都有避障控制,而且可以根据不同的行为状态,播放不同的音乐。

系统硬件设计

  “猫”、“鼠”两个机器人的电路设计基本相同,都是由单片机系统、红外收发模块、电机控制模块和语音模块构成,其不同是红外线发射管和接收管阵列的排列有所不同。单片机选用motorola公司的8位微处理器m68hc908gp32(42管脚封装);红外收发模块使用pt2262和放大器组成的简单红外线收发电路;电机控制模块选用l293d进行电机驱动;语音模块选用isd25120控制放音。另外,系统地电源模块使用12v干电池。

单片机系统

  mc68hc08系列中的单片机是motorola公司1999年推出的8位微控制器,具有速度快、功能强、功耗小及价格等特点。

  我们在设计中选用的m c68h c908gp32单片机是mc68hc08系列微控制器的第一 批产品,其特点是片内资源丰富、高性能,低价位,且具有多种保护功能,适用于各种数据处理平台搭建。在这里我们主要用它完成红外信息融合、电机控制及语音播放控制。

  设计中,两个机器人上单片机的主要端口设置相同,如表1所示。另外避碰的三个触点开关控制为ptb0、ptb6、pta7。

红外收发模块

  红外发射模块使用pt2262和红外发射管阵列构成的红外发射电路。红外接收电路使用红外接收管阵列和放大器组成。接收到的信号输入至单片机的ptb7端口,经过a/d转换后,送入处理器,以控制机器人的行为转换。

电机控制模块

  电机驱动电路采用基于双极性h-桥型脉宽调整方式pwm的集成电路l293d。l293d具有很多优点,如电流连续;电机可四角限运行;电机停止时有微振电流,起到“动力润滑”作用,消除正反向时的静摩擦死区;低速平稳性好等。l293d通过内部逻辑生成使能信号。h-桥电路的输入量可以用来设置马达转动方向,使能信号可以用于脉宽调整(pwm)。另外,l293d将2个h-桥电路集成到1片芯片上,这就意味着用1片芯片可以同时控制2个电机。

  机器人有三个车轮,两个使用电机控制,另一个为万向轮,因此使用1片l293d进行控制即可。将两路pmw控制信号分别接至两路电机控制的使能引脚en12和en34,通过调整pwm的占空比可以调整电机的转速。将电机正反转控制线分别接入in1、in2、in3和in4,,通过写入不同的值控制两个电机的正转和反转。

语音模块

  为了区别移动机器人的各个不同状态,我们使其在做出不同动作的同时,可以播放不同的声音。为了达到这个目的,语音控制部分选用语音芯片isd25120。isd25120的录放时间为120秒,录音最多能分600段。只要在分段录/放音操作前(不少于300纳秒),给地址a0~a9赋值,录音及放音功能均从设定的起始地址开始。

  在设计时,除了用单片机控制isd25120的复位和触发端外,使用四位i/o控制芯片的放音起始地址。在初始化时,分别将两个机器人的不同信息写入语音芯片的a0~a3,选择放音;在动作过程中,在行为发生改变时,写入新的信息,改变放音选择,播放不同音乐。

系统软件设计

  系统软件主要由主程序模块、中断服务程序模块、语音控制模块和运动规划模块等部分组成。整个系统的软件部分采用汇编语言编写。

结论

  经过实验证明,两个机器人在不受外界干扰的情况下,能够正确地完成追跑动作。此设计为研究机器人之间简单互动提供了试验平台。在以后的研究中,通过改变传感器位置及内部程序,可以改变二者间的互动关系,例如协作等,进行更深的研究。



相关IC型号

热门点击

 

推荐技术资料

自制经典的1875功放
    平时我也经常逛一些音响DIY论坛,发现有很多人喜欢LM... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!