关键词:仿人机器人;运动控制器;CAN总线;DSP
一、引言
机器人研究是自动化领域最复杂、最具挑战性的课题,它集机械、电子、计算机、材料、传感器、控制技术等多门学科于一体,是多学科高技术成果的集中体现。而仿人步行机器人技术的研究更是处于机器人课题研究的前沿,它在一定程度上代表了一个国家的高科技发展水平。运动控制系统是机器人控制技术的核心,也是机器人研究领域的关键技术之一,在机器人控制中具有举足轻重的地位,因此,各研究机构都把对机器人运动控制系统的研究作为首要任务。
动作协调、具有一定智能、能实现无线实时行走已经成为当今机器人发展的主题。随着以电子计算机和数字电子技术为代表的现代高技术的不断发展,特别是以DSP为代表的高速数字信号处理器和大规模可编程逻辑器件(以CPLD和FPGA为代表)的广泛应用,机器人运动控制系统也从以前单一的结构和简单的功能向着结构化、标准化、模块化和高度集成化的方向发展,采用开放式体系结构已经成为该技术发展的一种必然趋势。本文作者正是顺应这一趋势,设计出一种多功能分布式仿人机器人运动控制系统。
二、控制对象与要求
我们以国防科技大学机电工程与自动化学院机器人教研室最新研制的新一代仿人步行机器人为研究对象(其外形如图1所示)。该机器人高约1.55m,重约65kg,使用电池供电,无需外接电源和控制信号线,可以实现无缆行走,还可以完成人的腿部、手部和头部的一些基本动作,已经初步具备了人类的外形特征。
这台新型仿人机器人一共具有36个自由度(如图2所示),其中上肢12个,下肢12个,头部2个,手部10个;下肢各个关节有位置传感器,足部有多维力/力矩传感器;具有视觉传感、语音控制系统以及无线遥控模块;整个控制系统、电源集成在机器人本体上。为了使之真正具有“仿人”的特点,控制系统必须能够完成包括运动控制与规划、视觉感知处理、语音识别和其它环境感知在内的多种功能。其中,运动控制是整个控制系统的关键,它必须能够满足以下要求:
(1)系统集成度高、体积小、重量轻、功率大、效率高和机载化。
(2)各个模块之间的连接简洁,便于安装和维护。
(3)控制器应具有良好的动态响应和跟随特性,稳态误差和静态误差小。
(4)系统集成在机器人本体上,电磁干扰较强,必须具有较强的抗干扰能力。
(5)各部分的数据交换必须实时有效和准确可靠。
三、动控制系统设计
根据以上要求,我们设计了一种基于CAN现场总线的新型控制结构。整个控制系统采用集中管理分散控制的方式,按照控制系统的结构和功能划分为三层:组织层、协调层、执 行层。其中,组织层由机器人本体外的一台工作站组成,主要负责实现人机交互、无线通讯、语音、视觉以及宏指令生成等功能,属于智能控制范畴,本文不做深入探讨;协调层和执行层都集成在机器人本体上,完成具体的控制任务,属于物理控制范畴,是我们通常意义上的控制系统,其具体结构如图3所示。
1、主控计算机模块
主控计算机要求体积小、运算速度快,通常采用小板工业控制计算机,同时配备液晶显示器和自制专用功能键盘,主要完成在线运动规划、动作级运动控制、语音交互控制、视觉导引控制以及人机交互等功能。它接受本地传感器的信息,根据一定的控制算法和任务要求,实时生成关节轴系的任务规划数据并通过数据传输总线送至各底层运动控制器。
2、通信模块
主控计算机和各控制器之间采用CAN总线进行通信。CAN(Controller Area Network)总线是应用最为广泛的一种现场总线,也是目前为止唯一有国际标准的现场总线。相对于一般通信总线,它的数据通信具有突出的可靠性、实时性和灵活性。其特点主要有:
(1)CAN总线为多主方式,网络上任一节点均可在任意时刻向其它节点发送数据。
(2)CAN总线上的节点可以通过标识符分成不同的优先级,满足不同的实时要求。
(3)CAN总线采用非破坏的总线仲裁技术,低优先级节点不影响高优先级节点的发送。
(4)CAN总线节点在40m内通信速率最高可达1MBPS。
(5)CAN总线上的节点数在标准帧格式下可达到110个,扩展帧格式下几乎不受限制。
(6)报文采用短帧格式,传输时间短,出错率极低。
(7)CAN总线通信介质可选用双绞线,其结构灵活,连接方便。
CAN总线的以上特点使之十分适用于机器人控制,鉴于此,本文选用CAN总线作为机器人控制系统的通信工具。具体连接方式为:主控计算机通过CAN总线接口卡连接到总线上,各运动控制器也都通过总线收发器挂接到总线上,而且可以根据实际情况增减数目。由于CAN总线只用两根线进行通信,大大降低了系统连线的复杂程度,同时增强了系统的可靠性能。
(3)执行层模块
执行层处于整个控制系统的最底层,由不同类型的控制器组成,主要用来控制各运动关节轴系的具体执行过程。由于各运动关节电机的型号不同、承载的重量不同,对控制精度的要求也不同,我们分别为之设计了不同的运动控制器。
①开环DSP运动控制器
头部和上肢负载重量较轻,因此采用开环DSP运动控制器来对头部和上肢各关节进行控制。这些控制器不需要采样和反馈,直接接收主控计算机发来的控制命令,然后生成相应的执行命令发给各关节轴系,使之转到相应角度。
②开环MCU运动控制器
手部各个关节体积和质量都很小,故采用开环MCU运动控制器来进行控制。这些控制器采用MCS-51单片机作为处理器,可以直接嵌入到手掌内,它们接收主控计算机的控制命令,利用其IO引脚产生需要的多路脉冲控制信号,控制手部各关节的运动。
③闭环DSP运动控制器
腿部所有轴系均由直流减速驱动型电机构成,带零位检测、码盘和电位计反馈以及多维力/力矩传感器,结构复杂、控制难度大、精度要求也高,故采用闭环DSP运动控制器。这部分是整个控制系统的关键,也是我们研究的重点。
(4)控制系统流程
整个控制系统的具体流程为:系统开始运行并完成初始化工作;主控计算机根据规划和计算向底层控制器发送控制命令,底层控制器接收到命令后,结合各传感器反馈的信息,通过一定的控制算法生成相应的执行命令并发送给各关节执行轴系,同时把底层轴系的运行情况上传给主控计算机,主控计算机根据新的情况再产生新的命令发送给各控制器,如此反复。这事实上是两个闭环反馈过程,底层控制器通过传感器与各关节轴系之间进行小循环反馈,主控计算机通过各控制器与各关节轴系之间进行大回路反馈,这样可以使机器人具有更多的“智能”,更好的进行离线实时控制。
主控计算机每秒钟向底层控制器发送200组数据,底层控制器向主控计算机反馈同样数目的数据,而CAN总线的最大通信速率可以达到几千帧/秒,完全可以满足控制的要求。
四、控制器详细设计
控制下肢的闭环DSP控制器是整个控制系统的核心部分,承担着整个机器人的负载重量,输出功率大,对控制的精度要求也高,因此它的性能直接关系到机器人运动的实现。我们专门为之设计了基于双位置传感器的闭环DSP控制器,其结构如图4所示。
DSP主处理器选用的是TI公司的TMS320LF2407A芯片,它是TI家族C2000系列中的高档产品,非常适用于工业控制。它的两个事件管理器功能尤为强大,完全是为电机控制设计的,可利用多个PWM脉冲通道直接产生需要的PWM脉冲控制信号;其CAN总线模块可以直接与主控计算机进行通信而不需要增加CAN总线控制器;外部看门狗可以对控制器电压进行监控;外部存储器中存放着控制算法所需的必要参数。
控制器的双位置传感器由电压输出传感器和光电码盘传感器组成。其中,电压传感器把轴系的位置信息转换成电压信号,经过放大电路放大,再经过专门的A/D转换器转换成数字信号送入DSP主处理器。不用TMS320LF2407A自带的A/D转换器而使用专门的A/D转换芯片,这是为了提高转换的精度,因为TMS320LF2407A的A/D转换器所能接受的最高转换电压只有3.3V,而经过功率放大后的电压远远超出了此范围,所以使用了专门的A/D转换芯片。这部分电路虽然增加了控制器的复杂程度,却可以大大提高转换精度,所以是十分值得的。码盘传感器把轴系的位置信息转换成脉冲信号,经过光电隔离器件隔离后送入专用脉冲计数器,计数后的信息送入DSP主处理器。脉冲计数器选用当今流行的CPLD器件,其强大的功能对提高控制器的性能有很大的帮助,同时还可以作为译码电路为主处理器提供译码功能。
主处理器通过对接收到的传感器信号进行分析和计算之后产生相应的PWM脉冲控制信号,经过光电隔离和功率放大后送给底层轴系控制轴系的运行。使用双传感器可以大大提高反馈的精度,两路信号可以同时考虑,也可以一路为主,另外一路提供补充和参考。
主处理器通过CAN总线与主控计算机进行通信,接收主控计算机的命令并把底层信息反馈给主控计算机,实现更高一级的反馈控制。主处理器通过CAN总线收发器连接到总线上,为提高精度,中间需要进行光电隔离。
该控制器直接安装在仿人机器人的体内,每个控制器可以同时控制6个关节轴系,整个下肢只需要两个控制器就可以实现其运动控制。
五、结论
我们在充分吸收当今相关学科高技术成果的基础上,设计出一套速度快、稳定性强、集成度高、结构灵活、使用方便的仿人机器人运动控制系统。整个运动控制系统可直接嵌入到机器人本体内,以便在实际运行中圆满地完成规定的控制任务。同时,该控制系统还有很强的扩展功能,可以方便地移植到其它类似的控制机构中去,是一种多功能通用型控制系统,具有广阔的应用前景。
参考文献:
[1] Kazuo Hirai.The Honda Humanoid Robot:Development and Futrue Perspective[J].Induatrial Robot:An International Journal, 1999,26(4)
[2] Cen Young and Draig G.Pickin.Accuracy assessment of the modern industrial robot[J].Industrial Robot,2000,27(6)
[3] Tarun Kanti Podder,Nilanjan Sarkar.Fault-tolerant control of an autonomous underwater vehicle under thruster redundancy[J].Robotics and Autonomous Systems,2001,34
[4] 方海军等.基于CAN总线的自主式仿人型机器人控制系统[J].机器人,2002,24(1)
[5] 曹禺.仿人步行机器人机载运动控制器的设计与应用[C].长沙:国防科技大学机电工程与自动化学院档案室(内部资料),2002
[6] 石宗英等.基于现场总线的仿人型机器人控制系统[J].工程与应用,2002,(2)
[7] 邬宽明. CAN总线原理和应用系统设计[M]. 北京:北京航空航天大学出版社,1996
[8] 饶运涛等.现场总线CAN原理与应用技术[M]. 北京:北京航空航天大学出版社,2003
[9] 江思敏等.TMS320LF240x DSP硬件开发教程[M].北京:机械工业出版社,2003
[1] 黄正瑾等.CPLD系统设计技术入门与应用[M]. 北京:电子工业出版社,2002