CAN总线因为具有实时性和可靠性高、组网本钱低一级长处,近年来在轿车工业、楼宇自动化、工厂自动化、机器人操控等范畴得到广泛运用。CANopen协议不只界说了通讯规范,而且为可编程体系、不同器材、接口等设备运用子协议界说了很多的行规。遵从CANopen协议开宣布的设备能完结不同生产厂家的产品间的互操作。
要把握CANopen协议,要点是对目标字典和设备模型的了解以及对4类通讯目标的把握。本文先对CANopen协议进行削析,再要点介绍在PICl8F458单片机上开发根据CANopen协议的节点,最终经过温度测控体系试验验证了体系信息传递的可靠性、准确性和实时性。
1 CANopen通讯协议简介
CANopen协议是CiA协会根据CAN总线界说的运用层协议之一,在各种操控体系中得到了广泛运用。它以CAN芯片为硬件根底,有用运用CAN芯片所供给的简略通讯功用来满意工业操控网络的杂乱运用层协议要求。CANopen网络是主从站(Master—Slave)结构,体系的运转由主站操控,主站能够对127个从设备进行操控,不同设备经过CAN总线进行衔接组网。图1为CANopen设备模型。CANopen通讯协议接口用于供给在总线上收发通讯目标的服务,不同CANopen设备间的通讯都是经过交流通讯目标来完结的。CANopen协议中界说了4种通讯目标(通讯形式),用于对不同作用的信息进行处理:NMT目标(网络办理目标)、SDO目标(服务数据目标)、PDO目标(进程数据目标)、特别功用目标。
设备目标字典是CANopen协议的中心概念,坐落CANopen设备模型中通讯层和用户运用层之间,为用户运用层供给接口。它是一个结构规范化的、有序的目标组,描绘了该设备运用的一切数据类型、通讯目标和运用目标。根据CANopen协议的网络体系中每一个设备都要完结一个仅有的目标字典,差异在于设备类型不同其内容则不同。目标字典中每个目标具有一个仅有的16位主索引和8位子索引,由此完结对其间各种目标的拜访。目标字典在体系软件规划中得以完结,然后运用规范化的EDS文件对其进行描绘。
针对体系的要求,选用PICl8F458单片机作为从节点的主芯片。它是Microchip公司的单片16位高性能微操控器,具有片内CAN操控器,CAN模块契合CAN2.0B规范,带有3个发送缓冲区、2个接纳缓冲区、2个接纳屏蔽寄存器、6个彻底接纳滤波器。CAN收发器选用PCA82C250芯片,它具有高速安稳的差动发送和接纳才能,可作为CAN协议操控器和物理总线接口。此外,为了便于调试和与主操控器的通讯,体系中还扩展了RS232接口。
关于各个节点都选用预界说衔接会集规则的11位ID。它由4位功用码和7位节点ID组成。其间各通讯目标详细分配的COB—ID为NMT SERVICE一000、EMER—GENCY一080、TIMESTAMP一100、SYNC一080、TPD01—180、RPD01—200、TPD02—280、RPD02—300、TSDO一580、RSDO一600、HEARTBEAT一700。
设定传感温度节点的ID为6,以TPDO目标方法发送测到的温度。所以发送目标的COB—ID别离为TP—D02(200+6)、TSD()(580+6)、HEARTBEAT(700+6)、EMERGENCY(080+6),接纳目标的COB—ID别离为NMT SERVICE(000)、RSD()(600+6)。
设定温度调理节点的ID为7,以RPDO目标方法接纳从传感温度节点发送的温度,并以TPDO目标方法发送调理状况。所以发送目标的COB—ID别离为TPD01(180+7)、TSDO(580+7)、HEARTBEAT(700+7)、EMERGENCY(080+7),接纳目标的COB—ID别离为NMT SERVICE(000)、RSDO(600+7)、RPDO2(280+6)。
设定指令节点的ID为8,以RPDO目标方法别离接纳从传感温度节点发送的温度和从温度调理节点发送的调理状况,也可用NMT目标方法发送NMT报文。所以发送目标的COB—ID别离为TSDO(580+8)、HEART—BEAT(700+8)、EMERGENCY(080+8)、NMT MAS—TER(000),接纳目标的COB—ID别离为NMT SERVICE(000)、RSD0(600+8)、RPD02(280+6)、RPD01(180+7)。
2.2 节点目标字典的树立
目标字典的内容除了包含CANopen协议规则的必需项外,还包含调用的各功用模块和参数设定项。它的正确装备和运用,是确保整个CANopen网络正常运转的中心,是节点完结其预订功用的必要确保。目标字典的组成选用C言语在头文件中编写,经过Struct(结构)句子完结目标字典内容的寻址。目标字典的规划赋值规划依照CANopen协议规则的格局完结,每个节点的目标字典都具有相同的结构,但详细内容要根据不同的设备而界说,包含了描绘这个设备和它网络的一切参数。目标字典的操作是CANopen协议软件的中心,经过目标字典完结网络间参数的映射然后完结各种数据的处理,需求编写目标字典解码子函数、读目标字典子函数和写目标字典子函数。下面以温度调理节点为例介绍目标字典的创立、赋值和详细操作。表1显现了此节点中PDO的各个参数。
指令节点进行NMT目标操作时再调查各节点状况:当按下按钮1时,节点进入欲操作状况;当按下按钮2时,节点重启。
从以上两个试验能够看出,整个体系在运转进程中达到了满意的操控作用,完结了根据CANopen协议的目标数据的交流,通讯传输抱负。
运用P%&&&&&%18单片机自行开发的根据CANopen协议的节点,完结了对4种通讯目标信息的通讯处理,并经过测验验证了体系信息传递的可靠性、准确性和实时性,很好地满意了根据CANopen协议的温度测控体系的要求;关于CANopen在国内的运用和遍及,以及CAN网络和驱动产品尽早和世界接轨,具有重要的含义。