基于CANopen协议的救援机器人调试系统
扫描二维码
随时随地手机看文章
摘 要: 设计了一种基于CANopen协议的救援机器人调试系统,设计中充分考虑了机器人运动关节的反馈数据优化控制参数,从而提高了运动关节控制性能。重点介绍了CANopen从站的软、硬件设计以及主站网络管理(NMT)、服务数据对象(SDO)的实现,并用实例证明该系统完全能满足救援机器人调试的需要。
关键词: CANopen;分布式控制系统;对象字典
在灾后救援现场,为实现废墟环境下的灵活移动,增强对各种复杂地形的适应性,机器人需要具有多个关节,并且各关节需要独立运动。在搜索和救援过程中,为了能在诸如陡坡、楼梯、管道及废墟等复杂环境下自由移动,要求机器人具备多种运动姿态并且能迅速改变姿态以满足不同环境的需求。因此要求机器人的各关节具有良好的运动特性。
关节运动性能的好坏决定了机器人能否适应在复杂环境中灵活运动的要求,是评价救援机器人性能的一个重要指标。为了对机器人各关节运动性能进行测评,通过建立与机器人各关节控制器相连的运动控制主站,实现对关节控制器的组态与监视,并通过分析机器人运动关节反馈回的数据优化控制参数,使得运动关节控制性能得以提高。针对运动控制中对各关节电机控制实时性与同步性以及结构灵活性的要求,提出了一种基于CANopen协议的救援机器人调试系统。
CANopen为基于CAN的高层协议,是最初由BOSCH公司提出的一种串行数据通信总线。其具有可靠性高、抗干扰性强、开发简单、造价低廉及其短帧传输和无破坏仲裁技术等特点,应用极为广泛。CANopen是一个基于CAL的子协议,采用面向对象的思想设计,具有很好的模块化特性和很高的适应性,通过扩展可以适用于大量的应用领域[1]。
1 方案设计
图1所示为救援机器人调试系统框图,包含电机控制器、基于CAN总线的网络构架和PC机上的调试系统。
电机驱动器控制方法采用了三个基本控制环,即位置环、转速环和转矩环,各闭环采用PID算法控制,以便更加精确地控制电机;同时建立了CANopen从站,通过CAN总线将各电机驱动器和PC机上的调试软件之间进行数据交换;PC机则通过PCI-CAN卡实现了CANopen主站,从而方便对电机驱动器上的电机数据进行监测和处理,并发送调试系统所发出的命令;采用NI公司的Labview调试系统上位机的程序编写。