CANopen协议 学习笔记

CANopen协议解析:PDO、SDO、NMT与心跳检测

大纲

前沿:以问题为导向学习是最高效的,本文主要讲述在学习Canopen协议中的一些疑惑点,

分享一些学习心得,不讲协议本身的内容。

1.主机和从机的概念?

2.PDO和SDO的区别是什么?

3.OD存在的意义是什么?

4.心跳检测的意义?0x00、0x05、0x7f?

5.COB-ID和PDO的ID有关系吗?SDO的ID是主机的ID还是从机的ID?

COB-ID = Function code+node_id

6. PDO,SDO  数据存在几个字节,心跳节点 数据存在几个字节?

7.PDO主要关系的几点?   触发方式+通讯参数和映射参数

8.SDO传输的三种方式?

9.通讯模型 : 服务器到客户端、消费者和生产者等。

10.CANOPEN 与CAN的不同点

1. 通讯模型 

  (1)服务器到客户端 :客户端发送数据,服务器需要回传数据      (SDO)

  (2)消费者和生产者 :生产者发送数据,消费者不需要返回数据(PDO)

  (3)主机和从机   Canopen协议中NMT模式控制节点的状态,启动状态、预准备状态、

工作状态、停止状态

2. 主机和从机的概念

        对于从站而言发送消息给主站就是TPDO模式,其中TPDO总共有4个。

        对于从站接收主站的消息就是RPDO模式,其中RPDO总共有4个。


3. PDO 和SDO、NMT区别

  • PDO:根据模式从机选择定时发送数据或者等数据变化在发送数据给主机,以请求主机

做出一些列相应。

        模型:生产者(producter)和消费者(comsumer)模式,接收方不会返回数据值

  • SDO:通过主机发送命令(cs+主索引+子索引+4个字节数据),对对象字典进行操作改变数据

,如改变波特率,心跳的时间以及对于模式选择的切换,通过SDO_Handle进行处理即可。

       模型:客户端(client) 和服务器(service)模型

  •  NMT: 主机控制节点状态 

 

评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蝈蝈(GuoGuo)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值