CANOpen系列教程08_ CANOpen通信接口引导学习

描述

1写在前面

上一篇文章让大家了解了一下CANOpen协议的模型,也就是说CANOpen协议的内容都包含在这个模型里面,而模型里面的内容可以细分出来许许多多的知识。

但是对于初学者来说,并不是必须要掌握的所有的细节知识才行。只需要掌握其中必备的一些基础知识,就可以编写CANOpen的应用程序代码了。

那么本文将带你掌握其中部分基础知识,让你大脑中有CANOpen协议的这些概念知识(先有初步认识,以便于后面综合理解)。

2

通信接口主要内容

我这里按照CANOpen CiA 301协议文档,提取了通信接口的主要内容,我把它用思维导图方式列出来了,如下图:

通信接口

初学者需要掌握通信接口后面的四项内容:网络管理(NMT)、服务数据对象 (SDO)、过程数据对象(PDO)、特殊协议;

这四项内容细分出来的知识点不多(相对来说),但对初学者来说,理解起来的难度较大。难点就在于:有许多抽象概念,且知识点关联性较强。

比如:什么是报文? CAN-ID、COB-ID、Node-ID是什么思,各有什么区别? COB-ID和对象字典索引有关联吗?

3

CANopen轻松入门

相信学习CANOpen的朋友都在网上看到过周立功的这么一本电子书:《CANopen 轻松入门》。

本来我是打算再造一次轮子,重新结合CANOpen CiA 301标准写一遍。但我之前有做计划,发现太费时了,而且做出来的效果也没有《CANopen轻松入门》这么好。我思前想后,还是觉得没有必要。

所以,本文主要目的在于引导初学者,网上下载《CANopen轻松入门》这本电子书来好好研究一下。关于通信接口主要内容,目录如下图:

通信接口

《CANopen轻松入门》这本电子书是我站在初学者的角度考虑,觉得比较适合初学者,并不是为周立功打广告。当你把这本电子书里面内容都掌握了,我觉得你就已经入门了。 

《CANopen轻松入门》网盘下载地址(百度、谷歌随处可见):

https://pan.baidu.com/s/15Or8ox3LgXKR6Z7ul7Zt1g

提取码:9ja0

4

CiA 301

入门之后若要深入理解,我建议参看官网的《CANOpen CiA 301》标准这本文档。为什么是CiA 301标准呢? 因为这些入门知识大部分都是CiA 301标准里面的内容。

CiA 301标准有多个版本,建议下载已经公开的V4.2.0版本:

通信接口

CiA技术文档下载地址(需要登录):

https://www.can-cia.org/standardization/specifications

CiA 301网盘下载地址(含中、英文版本):

https://pan.baidu.com/s/1efnJAmB7tkSsMwIf39p8sg

提取码:x1m0

提示:

CiA(CAN in Automation) 301也是大家所说的DS301,为CANopen 基础协议。

我们还常看到类似CiA 401 402这些协议,其实它们是在CiA 301 之上,对各个行业不断推出设备子协议。

所谓的子协议,就是针对不同行业的应用对象,对 CANopen 内部的数据含义进行重新定义,或者添加新的控制逻辑。

5

提取通信接口要点

这里针对通信接口简单罗列一些基础知识,方便初学者理解。

5.1 网络管理(NMT)

1.CANOpen网络一般是一个主站,多个从站的局域网络;

2.NMT节点具有6种状态:初始化、应用层复位、通讯复位、预操作状态、操作状态、停止状态。可以自己切换状态,也可主站切换状态;

3.任何一个 CANopen 从站上线后发出节点上线报文(boot-up);

5.2 过程数据对象 PDO

1.PDO用来传输实时数据,属于“生产消费”模型;

2.COB-ID 定义只是预定义,TPDO5、6、7这些也是可以存在。PDO 的COB-ID 与 Node-ID 无必然规则上的联系,

3.PDO 的两种传输方式:同步传输和异步传输;

4.PDO 的通信参数可通过对象字典工具配置;

5.PDO 的映射参数是一个相对难理解的参数,请结合《CANopen 轻松入门》图文(请关注颜色)理解;

5.3 服务数据对象 SDO

1.SDO为请求应答方式;

2.发送方(客户端)、接收方(服务器) ;

3.通常从节点为 SDO 服务器,主节点为客户端;

4.两种协议:快速、普通 SDO 协议;

5.CS命令符含义需熟记(查表);

5.4 特殊协议

1.常见的就是罗列出来的3种:同步协议、时间戳协议、紧急报文协议;

2.特殊协议CAN-ID定义(查表);

3.紧急报文错误代码分类及含义;

以上许多内容都有一张对应的表格,可以百度或谷歌搜索一下“CANopen备忘录”,就有详细列出各自对应的内容。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分