超级先进的现场总线技术究竟是什么神奇东西它如何让我们的伺服电机实现了远程控制并且采用了基于CANop
针对伺服电机远程控制的创新方案:基于CANopen协议的精准伺服控制模式实现
引言
面对伺服电机远程控制中复杂接线、单一控制方式以及可靠性问题,我们提出了一种新颖的方法,利用CANopen通信协议和驱动子协议来实现伺服电机的高效控制。我们详细分析了CANopen协议中的对象字典和报文格式,并介绍了其下PP、PV、HM三种模式的报文设置过程。通过搭建实验平台,我们成功在PC上实现了基于CANopen协议的三种模式控制,实验证明这种方法简便、高效且可靠。
系统总体架构
我们的系统由PC机、CANopen上位机、USBCAN适配器和伺服驱动设备组成。整个系统采用DS301与DSP402两大子协议进行通讯与控制,其中伺服驱动设备作为从节点,具备CANopen通讯功能,与总线通过通信接口连接,并将信息传递给计算机上的上位机界面。
CANopen伺服控制原理
a) CANopen通讯设备模型
CANopen设备模型分为三个部分:通信单元(NMT)、对象字典及其应用过程。在这个模型下,每个参数都有一个16位索引及位数索引,可以被识别并定位。此外,核心概念是对象字典,它包含描述设备网络行为所有参数的一切信息。
b) 伺服控制模式
我们采用了DSP402驱动及运动控制设备子协议,该标准定义了特性的描述要求非常精确,不仅包括运行模式,还包括用于状态机关制定的规则。这些规则通过对象字典中的6040h进行设置,以及读取6041h以获取状态信息。
系统软硬件实现
a) 硬件搭建
硬件平台使用USBCAN适配器与PC以及伺服驱动芯片(如DSP)搭建。本设计首先在TI开发环境中配置好相关参数,然后下载到芯片中,在上位机界面测试SDO、PDO等通讯对象,以确保系统硬件搭建成功。
b) 软件设计
软件主要包括闭环调节程序和CANOpen寻址两个部分。在CCS环境中建立项目,我们完成初始化工作,如变量初始化、中断使能等,同时初始化通讯部分,如设置节点地址波特率等。
c) 服务报文设置
每次操作均需发送SDO报文以设定速度或位置目标值,将当前值映射到PDO中并比较得到正确性确认。此外,为不同模式提供不同的报文列表,便于用户选择操作方式:
d) 控制验证测试
系统性能验证
本实验平台有效地展示了基于CANOpen protocol 的PP, PV, HM三种模态下的PSM (Positioning Servo Mode), VSM (Velocity Servo Mode), and HM (Home Positioning Mode). 实验结果表明该系统具有高效率、高可靠性且易于操作,使得用户可以轻松监控并调整其智能机械臂或其他需要精确操控部件的情况。