摘要: |
课题在分析CAN和CANNopen协议的基础上,设计了分布式CBM设备状态检测系统,该系统主要分两部分,上位监测控制系统和下位的数据采集系统。着重分析了系统硬件构架及软件设计。在上位系统中,采用研华UNO-2052工业控制计算机,开发环境是紧凑、高效的实时操作系统Microsoft Windows CE。通信服务程序中上位主节点通过调用底层CAN通信动态链接库中标准接口完成报文的基本收发,通过封装独立的类实现CANopen通信,完成各种对象的通信和对象字典的建立。同时通过发送NMT、SDO对象实现了上位系统对下位系统进行实时的管理和配置。应用程序简单讲述了网络管理模块、系统配置模块、实时显示模块等应用功能的实现。在下位系统中,分析了AT90CAN128内置CAN控制器的工作原理,利用C语言进行软件模块化设计,完成CAN报文的收发,并对CANopen各通信对象以及应用程序等主要模块进行接口函数的标准化封装。实现了将从节点采集到的信号发送到CAN总线上,并接收来自于总线上主节点的管理和控制命令,充分发挥CANopen对象字典的优势,完成了主节点对智能CBM从节点的在线灵活配置。最后,利用标准的CANopen分析工具对整体系统组网测试,从报文分析和控制台输出两个方面测试了测控系统总体性能,经反复验证,PDO、SDO、SYNC、NMT等各种通信对象数据收发正常。而且介绍了船舶液位遥测系统应用实例。
结果表明,该系统运行稳定,性能可靠,达到了预期的效果,也验证了论文提出的方案的可行性。 |