CANOpen协议于20世纪90年代末,由CiA组织(CAN-in-Automation)在CAL( CAN Application Layer)的基础上发展而来,一经推出便在欧洲得到了广泛的认可与应用[1,2]。经过对CANOpen协议规范文本的多次修改,使得CANOpen协议的稳定性、实时性、抗干扰性都得到了进一步的提高。并且CiA在各个行业不断推出设备子协议,使CANOpen协议在各个行业得到更快的发展与推广。目前CANOpen协议已经在运动控制、车辆工业、电机驱动、工程机械、船舶海运等行业得到广泛的应用[3]。尤其是在欧洲,CANOpen协议被认为是在基于CAN的工业系统中占领导地位的标准。正是CANOpen协议的出现,实现了应用层结构上的统一,进一步完善了can总线的网络系统,使其更加规范化,更具有竞争力。
除了对象字典的设置,在canopen协议应用中,其网络初始化boot-up过程是网络正常运行的前提,该过程过后,系统方可正常通讯。具体到本文所设计的高空作业车控制系统,首先要将控制模块主节点和所有从节点分别上电,初始化物理层CAN芯片并使各节点自动从初始化(Initialising)状态进入预操作(Pre-Operational)状态;其次,主节点根据电子数据文档文件(EDS:Electronic Data Sheet)中的描述,向从节点发送SDO,访问并修改从节点的对象字典中的对象设置;昀后由主节点向从节点发送NMT 指令,使从节点进入运行(Operational)状态,至此主节点和从节点即可以通过PDO和SDO的发送与接收进行正常通讯和数据交换了。