请教:控制器支持CAN2.0B,可是要实现CANopen,是不是还得开发?
平051
2004-08-28 13:00
我是做工程机械的,现需要选择控制器做控制系统。要求采用CANopen协议,在选择的控制器中其中一个节点支持CAN2.0B,其他都支持CANopen,请教各位大虾怎么解决通信问题?
-
2004-08-29 20:51
用CANopen是可以直接和CAN2.0B直接连接的,以前做过,没有问题。我是作工程机械控制器,欢迎您与我讨论,我的e-mail:rollstone@163.com
-
2007-11-16 17:41
CANopen通信协议是CAN总线高层协议之一,它在通讯调度和数据映射方面具备其它总线协议(如Profibus,DeviceNet, 基于J1939网络等标准化的串行总线系统或者非标的如RS-485、基于CAN总线的用户协议)不可比拟的灵活性,因此在嵌入式操作系统中已经得到了广泛的应用。
l CANopen具备额外的应用层功能,能满足特殊的通信需求:与安全相关的通讯、synch通信、冗余总线管理/通信、节点自识别程序等都在CANopen中被定义
l 使用CANopen您能组建一个真正的多主网络:CANopen提供的多主能力比纯粹的主/从网络提供了更高的可用性和可靠性
l 可裁剪性带来成本的降低:设备/系统设计人员只需选择所需的功能,这一点对于使用量较大的嵌入式控制应用尤为重要
l CANopen是经过证实的通信协议系统,可靠的CAN物理层和数据链路层故障检测机制提高了通信的可靠性
l 标准化测试以及设备认证提升了设备的兼容性,减少了集成的难度
l CANopen提供最丰富的标准文档(英语资料),从而降低了集成的工作量
如果想要自己写CANopen协议的话,相信了解CANopen协议标准→解答我要开发何种CANopen设备→找到合适(功能/性价比)的硬件→依照标准来写CANopen协议就是一个不可避免的流程。CiA302标准就定义了可用户编程设备的通信规范。想要自己写的话难度会不小,买国外公司源代码的话国外公司报价大概在5-11万人民币那样子。
CANopen协议标准有些是免费的,可以在CAN in Automation的官网(http://www.can-cia.org/)上下载到,有些则只对会员开放。目前我知道的中国的公司加入成为CiA会员的只有不超过六家。
-
2007-11-19 20:38
CAN2.0B和CANopen有什麼辦法可以拿來比較嗎?
CANopen是第七層的應用層協議,而CAN2.0B是CAN總線規格的一個版本,是屬於物理層和數據鏈路層的規格,CANopen是建構在CAN基礎上的。
可以負責任的說,僅支持CAN2.0B的設備,不通過復雜的編程(還要看是否有提供編程的可能性),是沒有辦法與支持CANopen的設備通訊的。就像拿RS485接口直接與Modbus的設備通訊一樣,一個是硬件接頭規范,一個是軟件協議規范。
-
2025-06-18 16:11
赞同