在灾后救援现场,为完结废墟环境下的灵敏移动,增强对各种杂乱地势的适应性,机器人需求具有多个关节,而且各关节需求独立运动。在查找和救援进程中,为了能在比如陡坡、楼梯、管道及废墟等杂乱环境下自在移动,要求机器人具有多种运动姿势而且能敏捷改动姿势以满意不同环境的需求。因而要求机器人的各关节具有杰出的运动特性。
关节运动功用的好坏决议了机器人能否适应在杂乱环境中灵敏运动的要求,是点评救援机器人功用的一个重要目标。为了对机器人各关节运动功用进行测评,经过树立与机器人各关节操控器相连的运动操控主站,完结对关节操控器的组态与监督,并经过剖析机器人运动关节反应回的数据优化操控参数,使得运动关节操控功用得以进步。针对运动操控中对各关节电机操控实时性与同步性以及结构灵敏性的要求,提出了一种根据CANopen协议的救援机器人调试体系。
CANopen为根据CAN的高层协议,是开始由BOSCH公司提出的一种串行数据通讯总线。其具有可靠性高、抗干扰性强、开发简略、造价低价及其短帧传输和无损坏裁定技能等特色,使用极为广泛。CANopen是一个根据CAL的子协议,选用面向目标的思维规划,具有很好的模块化特性和很高的适应性,经过扩展能够适用于很多的使用领域[1]。
1 方案规划
图1所示为救援机器人调试体系框图,包括电机操控器、根据CAN总线的网络构架和PC机上的调试体系。
电机驱动器操控办法选用了三个根本操控环,即方位环、转速环和转矩环,各闭环选用PID算法操控,以便愈加准确地操控电机;一起树立了CANopen从站,经过CAN总线将各电机驱动器和PC机上的调试软件之间进行数据交换;PC机则经过PCI-CAN卡完结了CANopen主站,然后便利对电机驱动器上的电机数据进行监测和处理,并发送调试体系所宣布的指令;选用NI公司的Labview调试体系上位机的程序编写。
2 CANopen从站规划
2.1 硬件规划
电机操控器用来对救援机器人关节进行准确操控,是体系的要害。操控器选用MC56F8322微操控器作为操控中心,图2为体系框图。
电机操控器收集速度、电流、电压三种参数,各路选用PID闭环对电机进行准确操控。CAN总线部分选用MC56F8322内置MSCAN模块,完结了现场总线操控体系的构架;CAN总线收发器与操控器之间选用高速光电阻隔器材6N137完结信号阻隔;一起选用阻隔型DC-DC变换器完结电源阻隔,然后进步了现场抗干扰才能。除了以上首要部分以外,还有CPU监控器、功用选择开关以及LED指示部分。LED别离用于电源指示、CAN接口当时的收发状况指示以及接口的通讯毛病(如总线封闭)指示。
2.2 软件规划
CANopen从站移植了CANopen协议的开源代码CanFestival,该开源代码完结了CANopen协议的全部内容。在体系软件规划时,只需完结CAN的硬件设置、目标字典的界说以及canDispatch()函数的调用即可。
CANopen协议的中心部分是目标字典(Object Dictionary),经过目标字典对设备功用进行描绘。CANopen目标字典是一个有序的目标组,每个目标选用一个16位的索引来寻址,其范围在0x1000~0x9FFF之间。为了答应拜访数据结构中的单个元素,界说了一个8 bit的子索引。CANopen设备的功用及特性用电子数据表单(EDS)的办法描绘,实践的设备设置经过设备装备文件(DCF)进行描绘[1]。体系中电机的速度、电流、电压是最重要的监控信息,故将其界说在如下结构体中:
typedef struct{
float voltage; //电压
float Current; //电流
float velocity; //速度
}MotorPara;
本体系的电机操控器是以非标准设备规划的,根据目标字典结构应界说在制造商特定标准区域2000h~5FFFh之间。如表1所示。
3 CANopen主站规划
CANopen协议选用目标字典(OD)、电子数据文档(EDS)等概念来描绘设备和协议的相关信息,还规则了网络办理(NMT)、服务数据目标(SDO)、进程数据目标PDO等多种通讯机制[1]。在CANopen主站中,使用LabVIEW完结了NMT、SDO和PDO等功用。
3.1 NMT
NMT是供给对网络上一切节点的状况和行为的操控及监测机制,在CANopen网络中只答应一个NMT主节点处于激活状况。只要NMT主节点能够传送NMT模块操控报文,一切从设备有必要支撑NMT模块操控服务[1]。
经过NMT音讯能够对节点状况进行操作,LabVIEW中的详细完结如图3所示。首要根据NMT音讯格局经过数组函数将COB-ID、RTR、LEN、Node-ID及STATUS绑缚为U8数组,因为VISA仅支撑U8字符串发送数据,因而需求将U8数组转换为U8字符串。然后调用VISA Write函数完结USB的数据发送。
3.2 SDO
SDO选用客户(Client)/服务器(Server)通讯办法, 经过索引和子索引向使用程序供给拜访目标字典的客户接口。SDO是一种需求请求和应对的点对点通讯办法, 答应恣意长度的数据通讯[1]。PC机上办理操控体系选用SDO办法对通用温度和整流器操控器参数进行装备, 完结操控器工艺参数的装备和操控形式的切换等。
CANopen协议规则SDO音讯为8 B长度,第1个字节为指令码,第2、3个字节为索引,第4个字节为子索引,其他字节为音讯所带着的数据。与NMT音讯处理相似,SDO音讯也是先经过数组函数根据SDO的音讯格局创立一个U8数组,之后将数组转换为U8字符串,最终经过USB发送。详细完结如图4所示。
在CANopen通讯机制中,服务器收到SDO信息后必将应对,所以主站有必要处理服务器回来的SDO音讯。音讯的处理进程为,首要根据COB-ID带着的功用码判别是否为SDO音讯,然后判别SDO音讯中的指令字字节,根据不同的指令字做出相应的处理。
3.3 PDO
PDO选用生产者/顾客通讯办法, 数据从一个生产者传到一个或多个顾客,数据长度约束在8个字节之内。PDO 通讯没有协议规则, PDO报文的内容是预界说或许在网络启动时装备,因而多用于实时数据传输,工艺进程中工艺参数的传送由PDO完结。CANopen中界说的PDO音讯与正常的CAN帧格局相同, LabVIEW下完结办法可参阅NMT及SDO。
调试体系上位机能够监督在不同的PID参数操控时电机的呼应特性,然后为操控参数优化供给直观的根据。由此可见,根据CANopen网络的救援机器人调试体系成功地完结了对运动关节各项参数的实时监控和操控,而且能够对电机操控参数进行在线装备,对救援机器人的安稳运转供给了极大的保证。