"这篇文档是关于网络管理与部队管理,特别是Quectel BC25系列NB-IoT模块的产品规格书,版本为V1.5。文档中详细介绍了CANopen协议栈中的NMT(网络管理)节点状态及其转换,以及CANopen在ISO层级中的位置、报文ID分类、对象字典OD和网络管理NMT的相关内容。"
在CANopen协议中,网络管理(NMT,Network Management Tool)扮演着至关重要的角色。NMT负责监控和控制CANopen网络上的各个节点,确保网络的稳定运行。每个CANopen从节点的协议栈都需要包含NMT管理的相应代码,这是其符合CANopen协议的基本要求。
NMT管理涉及节点的六个状态:
1. 初始化(Initializing):节点上电后对硬件功能部件,包括CAN控制器进行初始化。
2. 应用层复位(Application Reset):应用程序复位,例如设置输出初始值。
3. 通讯复位(Communication reset):节点进入可以进行CANopen通信的状态。
4. 预操作状态(Pre-operational):节点准备好通信,但PDO不可用,可以通过SDO进行配置和网络管理操作。
5. 操作状态(Operational):收到NMT主机的启动命令后,PDO通信启动,按预设规则传输数据。
6. 停止状态(Stopped):NMT主机发送停止命令后,PDO通信停止,但SDO和NMT管理仍可操作节点。
NMT主机能够通过特定命令控制网络中任何节点在这些状态间切换,而节点自身也可根据程序逻辑改变状态。此外,CANopen节点还可以通过NMT命令实现状态切换,如图6.2所示。
CANopen协议基于ISO层级模型,其中预定义的报文ID分为网络管理和特殊协议、PDO和SDO等类别。对象字典(OD)是CANopen的核心部分,它包含了节点的所有参数和变量,包括通讯对象、通用通讯对象、制造商特定对象和标准化设备子协议等。OD通过EDS(Electronic Data Sheet)文件进行描述,方便配置和访问。
网络管理NMT不仅包括节点状态管理,还有节点上线报文、心跳报文、节点守护等功能,确保网络的实时监控和故障检测。CANopen主站设备则负责整个网络的协调和管理,执行NMT命令并控制PDO的传输,实现高效的数据交换。
这篇文档详细阐述了CANopen协议在网络管理中的应用,对于理解和实施CANopen通信网络具有很高的参考价值,特别是对于使用Quectel BC25系列NB-IoT模块的开发者来说,提供了关键的技术指导。