首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

CANopen协议诞生及发展

CANopen协议诞生及发展

摘要:OSI是Open System Interconnection的缩写,意为开放式系统互联。国际标准化组织(ISO)制定了OSI模型,该模型定义了不同计算机互联的标准,是设计和描述计算机网络通信的基本框架。OSI模型把网络通信的工作分为7层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。

从OSI的7层网络模型的角度来看同,CAN(Controller Area Network)现场总线仅仅定义了第1层(物理层,见ISO11898-2标准)、第2层(数据链路层,见ISO11898-1标准);而在实际设计中,这两层完全由硬件实现,设计人员无需再为此开发相关软件(Software)或固件(Firmware),只要了解如何调用相关的接口和寄存器,即可完成对CAN的控制。如图 1所示。



图 1  CAN控制器结构

但CAN没有规定应用层。也就是没有规定与实际应用相关的逻辑,比如开关量输入输出,模拟量输入输出。所以本身对于应用来说,是不完整的。这就像铁矿石(物理层)冶炼成铁锭(数据链路层),然后针对具体应用,再加工做成汽车、轮船、钢筋、坦克、钢结构建筑等等。如图 2所示。



图 2  从物理层到应用层

因此,基本每个行业的CAN应用,都需要一个高层协议来定义CAN报文中的11/29位标识符、8字节数据的使用。但在CAN总线的工业自动化应用中,由于设备的互通互联的需求越来越多,所以需要一个开放的、标准化的高层协议:这个协议支持各种CAN厂商设备的互用性、互换性,能够实现在CAN网络中提供标准的、统一的系统通讯模式,提供设备功能描述方式,执行网络管理功能。其中包括:


  • 应用层(Application layer):为网络中每一个有效设备都能够提供一组有用的服务与协议。
  • 通讯描述(Communication profile):提供配置设备、通讯数据的含义,定义数据通讯方式。
  • 设备描述(Device proflile):为设备(类)增加符合规范的行为。
记录学习中的点点滴滴,让每一天过的更加有意义!
返回列表