论文部分内容阅读
CANopen是一种集开放性,低成本,灵活性、高效性和可靠性于一体的标准CAN总线应用层通信协议,且应用广泛。就国内而言,对其的研究和开发应用还没有像国外那样被重视,其核心技术也被国外的一些公司所垄断,所以加强对其的研究对于国内应用来说意义重大,同时也具有很大的发展空间。本文结合湘电风能有限公司的“风机PLC控制器国产化”项目,首先介绍了CANopen在国内外的研究现状,突出了本文的研究内容与意义。其次提出了系统软硬件构成方案,指出了关键技术,分别介绍了该方案的软硬件实现平台的选择,并对两个开源协议栈进行简单描述。还分析了CANopen通信层的协议。第三,本文阐述了基于嵌入式实时操作系统Vxworks的CANopen主站的实现方法。在开源协议栈CanFestival基础上,修改相关的驱动程序,完成主站CANopen协议的移植,并设计了主站的应用实例。在掌握并熟练使用ARM处理器STM32的基础上,通过应用MicroCANopen开源协议栈,实现对CANopen从站的移植,并设计了从站的应用实例。最后,为了验证设计的可行性及正确性,本文基于前文设计的方案搭建了测试平台。测试结果表明设计的CANopen节点在符合DS301协议规范的基础上,实现了SDO、PDO、NMT等各种通信对象的正常收发数据,验证了CANopen通信网络的实时及可靠性。同时在设计和开发过程中,本文吸取了国外的很多先进经验,以网络开源代码为基础加以修改补充和优化,成功在自制的嵌入式应用平台上对CANopen协议栈进行了研究。切身经历表明:选定此方案,对于节约开发成本,降低开发难度,缩短研发周期,加速CANopen在国内的应用与推广具有非常重要的现实意义。