作者:肖金球 潘敬熙 诸跃进 转贴自:微计算机信息
1 引言 随着机器人各相关技术的不断发展,机器人本体功能越来越趋于模块化,机器人的核心控制部分已经逐渐从机器人本体中分离出来。以我们自行设计、开发的“TUT03-A型医疗服务机器人”为代表的基于远程脑概念[1,2]的机器人,将大脑脱离机器人本体,大脑置于母环境中,并用无线通讯与本体进行交互。而服务机器人本体中的小脑具体实现接收机器人大脑发出的各种命令,控制机器人各个执行和感知机构,进而实现机器人本体各个功能模块之间相互协调配合的功能。“TUT03-A型医疗服务机器人” 的小脑主要由CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)和多个MCU(Micro Control Unit, 微控制器或单片机)组成。
2机器人小脑的实现
2.1小脑总体结构 服务机器人本体主要由传感器感知模块、机械手执行模块、本体运动控制模块、语音发声模块和其它控制模块等构成[3,4]。机器人小脑的结构图如图1所示。各个模块都是由单片机作为主要控制器件,而CPLD在机器人小脑中起到网络中枢的作用。CPLD通过规定的通讯协议,将无线通讯接收到的大脑命令输送给相应的模块,将各个模块接收到命令的反馈信息通过无线通讯传输给大脑,将各个功能模块之间的数据进行交互。由于CPLD具有速度快、集成度高、I/O口资源丰富等优点,将其应用在服务机器人小脑的网络中,大大提高小脑的运行速度,并对提高机器人小脑的可扩展性具有重要的意义。
2.2 小脑中网络结构的硬件实现
服务机器人中的小脑是由单片机与CPLD组合成的一个硬件网络系统。在服务机器人的小脑中,网络中枢采用ALTERA公司的EPM7128S8415型[5]CPLD。根据规定的网络协议,CPLD可以通过无线通讯模块接收机器人大脑发出的命令,根据同步码判断是否为机器人大脑发送的命令:如果接收到的同步码为D7H,CPLD中的接收门控[6]单元导通,根据接收到的地址码与预先设置的地址码进行比较,选通相应功能模块的数据通道,将数据暂存到FIFO中,同时发出该地址模块的中断信号,将后面的数据传送到相应的地址终端。各功能模块的单片机在接收到中断信号后,进入串行通讯中断子程序,将FIFO中的数据读出;机器人小脑中的功能模块需要向大脑传送数据时,CPLD根据接收到请求信号的先后,给各功能模块发送允许信号,得到允许的功能模块将向CPLD发送数据,CPLD根据各个功能模块发出的地址码,选通单元导通,根据接收到的地址码与预先设置的地址码进行比较,选通相应功能模块的数据通道,将数据暂存到FIFO中,同时发出该地址模块的中断信号,将后面的数据传送到相应的地址终端。各功能模块的单片机在接收到中断信号后,进入串行通讯中断子程序[7],将FIFO中的数据读出。CPLD的内部结构如图2所示。
服务机器人小脑中,各个功能模块的主控单片机的RXD、TXD和INT0端分别与CPLD相连,无线通讯模块的RXD和TXD端与CPLD相连。具体的连接示意图如图3所示。
2.3小脑中网络协议的确定
在服务机器人大脑和小脑以及小脑内部各个模块的通讯中,为确保通讯顺畅,预先规定了网络协议。协议包括同步码、地址码、信息码、数据和结束码五个部分。具体格式如图4所示。同步码是传输数据的开始,由于无线通讯模块在数据传送中加入的同步码为D7,所以在大脑与小脑网络协议中的同步码为D7H。地址码表示网络中各个通讯终端的地址,在一个字节的地址码中,将高四位定义为机器人大脑的地址,低四位定义为小脑中各个模块的地址,即在服务机器人网络地址码中,1FH代表机器人的大脑,F1H代表机器人小脑中的本体运动控制模块,详细的地址分配见表1。信息码代表将要传输的有效数据字节数。数据在网络中按字节方式传送,网络协议中的结束码为90H。
3几个相关的问题
3.1大脑与小脑的连接
基于指标的要求与工作环境,在服务机器人的大脑与小脑的连接中,选择 “SA68D11”型无线数据传输模块。无线传输模块主要完成远程大脑和机器人小脑之间的信息传输。实现任务的下达和执行的反馈。
远程大脑处理操作者所发出的命令并将其编码后,通过计算机RS232串口与无线传输模块连接发送到小脑,小脑接收数据经解码后加以执行。
3.2系统的可靠性与抗干扰措施 考虑到大脑与小脑通讯可靠性的要求,在无线通讯协议中除加入同步码外,还通过信息码和结束码判断通讯数据的正确性。对小脑的各个终端控制模块进行统一编址,并在接收到同步信号后反馈相应的允许发送信号,完成大脑与小脑、小脑中各个终端模块的握手过程,大大提高了系统通讯的抗干扰性。
在机器人本体和小脑硬件设计中,充分考虑到传感器与单片机、单片机与执行机构的电源干扰问题,将控制部分的电源与执行机构的电源隔离。在传感器与小脑的连接中,加入了单稳态、光电隔离等抗干扰电路,将控制模块与执行模块分离等。上述手段和技术大大提高了硬件系统的可靠性。
4 结论
本文在介绍基于远程脑概念的医疗服务机器人小脑结构的基础上,阐述了小脑在系统中的地位和作用,具体分析了小脑的总体结构、小脑中网络结构的硬件实现、小脑中网络协议的确定,以及其他相关问题。实际开发实践和应用结果表明,基于CPLD和多单片机实现机器人小脑功能的解决方案,大大缩短了服务机器人的开发周期、提高了开发平台的灵活性、安全性与可靠性。
参考文献:
[1] MASAYUKI INABA. Remote-brained humumanoid project . Advanced Robotics , XXXXXXXXX.6 , pp.605-620 , (1997).[2] JAMES J. Dynamically-Stable Motion Planning for Humanoid Robots , Autonomous Robots 12 , 105-118 , 2002.
[3] 崔世钢,等.服务机器人开发中测控问题的研究[J].仪器仪表学报,2003(8):331-333,.
[4] 吴文清,等. 基于方向随机的障碍物实时预测的机器人路径规划[J]. 机器人技术与应用,2003(2):37-40.
[5] 宋万杰,等. 《CPLD技术及其应用》[M].西安:西安电子科技大学出版社,1999.
[6] 卢毅,等.《VHDL与数字电路设计》[M].北京:科学出版社,2001.
[7] 李广弟.《单片机基础》[M].北京:北京航空航天大学出版社,1994.
作者简介:
郝立果 男 出生年月:1978年8月 专业:电气工程及自动化 现在从事的工作:实验教学