首页 > 其他分享 >CANopen学习笔记(三)NMT

CANopen学习笔记(三)NMT

时间:2024-08-27 16:49:49浏览次数:7  
标签:Node 协议 NMT protocol CANopen 笔记 operational 节点

NMT

NMT主要用来管理和控制各个节点的状态,具体协议可以分为以下四类:

  1. NMT protocol
  2. Node guard protocol
  3. Heartbeat protocol
  4. Bootup protocol

NMT protocol

该协议是CANopen中网络管理的协议,控制和管理节点的状态,通过发送相关报文,可以让目标节点进入特定的工作状态。工作状态有以下几种

  • Initialization(初始化): 节点开始时进入初始化状态。
  • Pre-operational(预操作): 节点处于准备状态,但不参与正常的PDO(Process Data Object)通信。
  • Operational(操作): 节点完全进入操作模式,允许PDO通信。
  • Stopped(停止): 节点停止所有的通信。

NMT命令通常由网络管理器发送,命令包括:

命令 描述 cs值
Start Remote Node 将节点切换到Operational模式 0x01
Stop Remote Node 将节点切换到Stopped模式 0x02
Enter Pre-operational 将节点切换到Pre-operational模式 0x80
Reset Node 重置节点,重新启动节点 0x81
Reset Communication 重置节点的通信部分 0x82

其具体值为cs值(一字节)+nodeid(一字节)

Note : To command all the nodes, use nodeId = 00

Examples

  • To put the node 0x6 in operational mode : 000 01 06
  • To put all the nodes in pre-operational mode : 000 80 00

Node Guard protocol

节点监护协议(Node Guard protocol),用于主设备监控从设备的状态。由主设备定期发送,如从节点没在规定时间内回应,则主节点认为该节点出现了故障。(该报文中有翻转位)

Heartbeat protocol

心跳协议(Heartbeat protocol),是节点监护协议的简化版本,心跳协议不需要主设备定期发送消息来请求从设备回应,而是每个节点自主发布心跳报文。(该报文中没有翻转位)

Bootup protocol

Bootup协议是CANopen节点在启动时,通知主设备其状态的协议,在初始化进入预操作状态时,该节点会发送Bootup表示节点已经初始化完成,并且可以接收管理指令。

标签:Node,协议,NMT,protocol,CANopen,笔记,operational,节点
From: https://www.cnblogs.com/xddisme/p/18383033

相关文章

  • CANopen学习笔记(总)
    CANOpen定位:小网络,控制信号的实时通讯​ 确保实时性采取的措施ID域:11bit(CAN标准帧格式)控制报文采用数据最小字节数采用生产消费模型(数据无需应答)需要应答时,采用快速单字传输(一个报文最多传输一个32字节参数变量)一、协议分类主从协议一对多无应答模式和应答......
  • C++学习笔记——范围基于 for 循环和for_each循环的区别
    范围基于for循环是C++11中引入的,简化了遍历数组或容器的代码点击查看代码#include<iostream>#include<vector>intmain(){std::vector<int>numbers={1,2,3,4,5};//使用范围基于for循环遍历for(intnum:numbers){std::cout<<num......
  • [编程笔记] 较严重事故,产品安装后登录不上!
    周一打开工单列表,便看到这个问题了,“登录报验证码错误,刷新依旧”。由于周一太忙,拖到今天才有空远程核实,首先说下大致情况:1、安装后产生的问题,登录不了,客户自己重启过IIS和电脑2、产品验证码存在Redis里,一般是这里的服务器没启动或者异常停止会报这个错,......
  • 计算机网络笔记分享(第一章 概述)
    计算机网络的定义:若干节点(结点)和连接这些节点(结点)的链路构成网络一些互相连接的自治的计算机的集合通用的、可编程的硬件互连而成网络的功能:连通性、共享(信息、硬件、软件)三个概念:网络:许多计算机连接在一起;互连网:许多网络通过路由器连接在一起;互联网(因特网):全球最大的......
  • prometheus学习笔记之PromQL
    一、PromQL语句简介官方文档:https://prometheus.io/docs/prometheus/latest/querying/basics/Prometheus提供⼀个函数式的表达式语⾔PromQL(PrometheusQueryLanguage),可以使⽤户实时地查找和聚合时间序列数据,表达式计算结果可以在图表中展示,也可以在Prometheus表达式浏览器中......
  • Datawhale X 李宏毅苹果书 AI夏令营 深度学习方向 task 1 笔记
    一、机器学习机器学习(MachineLearning,ML):机器具备找函数的能力。当我们对机器输入一个任务时(如:语音识别和图像识别),机器要做的就是找出这些任务蕴含的函数,通过找到函数,机器就可以通过输入的内容给出对应的输出内容。而找函数人类是很难做到的,所以这时候就需要机器学习。机器学......
  • 《数据资产管理核心技术与应用》读书笔记-第四章:数据质量的技术实现(二)
    《数据资产管理核心技术与应用》是清华大学出版社出版的一本图书,全书共分10章,第1章主要让读者认识数据资产,了解数据资产相关的基础概念,以及数据资产的发展情况。第2~8章主要介绍大数据时代数据资产管理所涉及的核心技术,内容包括元数据的采集与存储、数据血缘、数据质量、数据监控与......
  • prometheus学习笔记之Grafana安装与配置
    一、Grafana简介grafana是⼀个可视化组件,⽤于接收客户端浏览器的请求并连接到prometheus查询数据,最后经过渲染并在浏览器进⾏体系化显示,需要注意的是,grafana查询数据类似于zabbix⼀样需要⾃定义模板,模板可以⼿动制作也可以导⼊已有模板。Grafana的基础架构主要包括以下几个核心......
  • 乘法|python矩阵基本运算(学习笔记二)
    在前述文章中,我们已经知道,python通过使用numpy模块,创建矩阵形数组至少可以采用两种方法。也即,通过array和matrix子模块分别创建,详情请参考以下链接。https://blog.csdn.net/weixin_44855046/article/details/141564179?spm=1001.2014.3001.5502进一步,上述链接指向文章也通过测......
  • CMake构建学习笔记7-freetype库的构建
    Freetype是一个广泛使用的开源字体渲染库,可以加载、渲染和显示各种类型的字体文件。一般的用户来说可能没有直接使用过这个库,都是通过使用依赖于它的依赖库来间接使用它。根据笔者构建的经验,构建这个库需要zlib、libpng这两个库,可以按照本系列博文的相应文章提前构建好。关键的构......