楼主

[嵌入式] 【求助帖】基于can总线通信下,采用Canopen来实现通信

[复制链接]
工程whl970831
2018-11-18 14:04:37 只看该作者

马上注册,玩转Robomaster!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
今天在看can总线通信并了解时发现了还要一个在can总线通信上进行改进的Canopen总线通信协议,根据我的了解,CAN总线就如同是控制器局域网络,一条具有高低电平差位的双绞线可以传输数据的双绞线一样,正是基于它串行通信的实时性、可靠性、有效性,被广大工程师们青睐。而CANopen是在CAN的基础上定义了一组规则,采用其通信的双方明白相互交换信息的含义。相互交换的信息就在CAN总线上传输。所以说,CAN定义了物理层与链路层,而CANopen是在CAN-BUS的基础上定义了应用层。

emmmm,我在想我们为什么不用Canopen来实现通信,那么,有大佬对这种感兴趣吗?或者曾经也怎么做过的。


跳转到指定楼层
沙发

[嵌入式] 【求助帖】基于can总线通信下,采用Canopen来实现通信

[复制链接]
工程whl970831
 楼主| 2018-11-18 14:05:43 只看该作者
电控小白求教
板凳

[嵌入式] 【求助帖】基于can总线通信下,采用Canopen来实现通信

[复制链接]
正式队员搁浅的蜗牛
2018-11-29 18:18:43 只看该作者
不知道这个问题现在解决没,按照我的理解,首先看CAN总线技术,CAN总线的物理层和数据链路层已经规定了很多,把数据帧的格式规定好了,物理信号转逻辑信号、仲裁校验等操作有相应的驱动器和控制器完成,已经能够使用了。CANopen也是在CAN2.0基础上,将11位的标识符重新定义了一下,然后定义了几个通信对象(PDO,SDO,NMT),然后还有对象字典可以存储设备的很多信息,主站可以读写设备的一些信息。如果有好多设备,分布式系统,对实时性要求不是很高,可以采用CANopen。RM的话,其实没有那么多设备,也不需要对象字典来存储那么多信息,另外生产CANopen的厂家都必须向CiA协会申请唯一的厂商代码,其他应该也要服从协会的一些规定,对于自己开发的话可能用不太到。其实自己开发的话,完全可以在CAN的11位标识符很和8字节的数据上做文章,设计自己的应用层协议。
地板

[嵌入式] 【求助帖】基于can总线通信下,采用Canopen来实现通信

[复制链接]
工程whl970831
 楼主| 2018-11-29 18:38:09 只看该作者
搁浅的蜗牛 发表于 2018-11-29 18:18
不知道这个问题现在解决没,按照我的理解,首先看CAN总线技术,CAN总线的物理层和数据链路层已经规定了很多 ...

感谢大佬的回答,我之前在查找这方面阶段的时候看到了这些东西,主要就是开发时受到约束的有点多,所以我个人也不确定有没有人曾经做过这方面的技术,所以好奇就问了一下
5#

[嵌入式] 【求助帖】基于can总线通信下,采用Canopen来实现通信

[复制链接]
正式队员搁浅的蜗牛
2018-11-29 20:10:49 只看该作者
whl970831 发表于 2018-11-29 18:38
感谢大佬的回答,我之前在查找这方面阶段的时候看到了这些东西,主要就是开发时受到约束的有点多,所以我 ...

不是大佬,刚好学网控的时候接触到一点,说的难免有错,共勉~
6#

[嵌入式] 【求助帖】基于can总线通信下,采用Canopen来实现通信

[复制链接]
工程whl970831
 楼主| 2018-11-29 23:16:41 只看该作者
搁浅的蜗牛 发表于 2018-11-29 20:10
不是大佬,刚好学网控的时候接触到一点,说的难免有错,共勉~

明白,一起学习,加油
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

触屏版 | 电脑版

Copyright © 2024 RoboMasters 版权所有 备案号 粤ICP备2022092332号

快速回复 返回顶部 返回列表