CAN与CANopen协议的关系

原创 2015年11月18日 16:17:53

       从 OSI 网络模型的角度来看同, 现场总线网络一般只实现了第 1 层( 物理层)、第 2 层(数据链路层)、第 7 层(应用层)。 因为现场总线通常只包括一个网段, 因此不需要第 3 层(传输层) 和第 4 层( 网络层),也不需要第 5 层(会话层)第 6 层(描述层)的作用。

       CAN( Controller Area Network) 现场总线仅仅定义了第 1 层、 第 2 层( 见 ISO11898 标准); 实际设计中,这两层完全由硬件实现,设计人员无需再为此开发相关软件( Software)或固件( Firmware)。同时, CAN 只定义物理层和数据链路层, 没有规定应用层, 本身并不完整, 需要一个高层协议来定义CAN 报文中的 11/29 位标识符、 8 字节数据的使用。 而且, 基于 CAN 总线的工业自动化应用中, 越来越需要一个开放的、 标准化的高层协议。这个协议支持各种 CAN 厂商设备的互用性、 互换性, 能够实现在 CAN网络中提供标准的、统一的系统通讯模式,提供设备功能描述方式,执行网络管理功能。

       基于 CAN 的高层协议主要有CAL 协议和基于 CAL 协议扩展的 CANopen 协议。 CANopen协议是 CAN-in-Automation(CiA)定义的标准之一, 并且在发布后不久就获得了广泛的承认。 尤其是在欧洲,CANopen 协议被认为是在基于 CAN 的工业系统中占领导地位的标准。大多数重要的设备类型,例如数字和模拟的输入输出模块、驱动设备、操作设备、控制器、可编程控制器或编码器,都在称为“设备描述”的协议中进行描述;“设备描述” 定义了不同类型的标准设备及其相应的功能。 依靠 CANopen 协议的支持,可以对不同厂商的设备通过总线进行配置。

       在OSI模型中,CAN标准、CANopen协议之间的关系如下图所示:



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

简单的bash script,实现以行为单位读入文件,并打印出某一列

简单的script,实现以行为单位读入文件,并打印出某一列 #!/bin/bash p_arg=0 for arg in $@; do case $p_arg in ...

CANOpen的几种操作以及数据

其实3年前在21ic就准备做这篇文章了,那时,CANOpen也只是刚刚在国内推广,所以几乎没有项目用到。现在有了实际的项目,完全确认了以前移植和测试的代码,所以列举一些CANOpen的底层操作以及数据...

利用IAR调试Mini2440

利用IAR 调试mini2440,准备先玩玩裸奔    以前开发Lpc2214的时候用的是IAR调试环境 感觉还是很不错的 当时一度错怪的了这开发环境因为Lpc对Jtag的引脚可以配置成普通IO我当时...

CANopen通信之PDO通信

过程数据对象(Process Data Object,PDO)是用来传输实时数据的,提供对设备应用对象的直接访问通道,它用来传输实时短帧数据,具有较高的优先权。PDO 传输的数据必须少于或等于 8 个...

CANopen通信之NMT通信

在介绍NMT通信机制之前,先介绍一下NMT这个通信对象的定义。在以下部分中COB-ID使用的是 CANopen 预定义连接集中已定义的缺省标志符。 1) NMT 模块控制( NMT Module C...

血战乐金

血战乐金2008-06-13 16:55“望京三杰”血战乐金–初入社篇  2006/12/20 我和小Q和小萱萱离开了原来的公司,并姻缘巧合的相继加入了LG研发中心,三个人无限向往,觉得终于加...

CAN与CANOpen(五)

4.3通讯对象 CANOpen协议共有 6种通讯对象,分别是: PDO、 SDO、 SYNC、 TIME、 EMCY、 NMT。这 6种通讯对象完成了 CANOpen协议的所有通讯功能。其中我们只介...

基于Linux的视频传输系统(上大学时参加的一个大赛的论文)

目录1原创性声明----------------------------------------------------32 摘要-----------------------------------...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)