0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

适用于标准化嵌入式网络,CANopen有什么不同?

Felix分析 来源:电子发烧友 作者:吴子鹏 2024-08-22 01:19 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

电子发烧友网报道(文/吴子鹏)CANopen是一种架构在控制局域网络CAN上的高层通信协议,包括通信子协议及设备子协议,常在嵌入式系统中使用,也是工业控制常用到的一种现场总线。


在CAN的基础上,CANopen定义了应用层的通信规则,因此特别适用于需要标准化设备配置和网络管理的嵌入式网络。

CANopen协议简介

1994年发布的国际标准ISO 11898-2定义了CAN总线的物理层和数据链路层,CANopen在此基础上构建了更上层的协议,随后在工业自动化汽车电子等领域得到了广泛应用。

CANopen实现了OSI模型中的网络层以上(包括网络层)的协定,包括寻址方案、数个小的通讯子协定及由设备子协定所定义的应用层。因此,CANopen和CAN属于两种不同的通信协议,CAN是底层通信协议,CANopen则属于CANBUS,也就是CAN总线的一种高层协议,提供了设备配置、网络管理、数据传输协议等更高层次的功能。

CAN和CANopen功能层的差异感受是最直观的,CANopen提供的高级通信功能包括网络管理(NMT)、服务数据对象(SDO)传输、过程数据对象(PDO)传输等,适用于工业自动化、医疗设备、船舶等复杂系统中需要多设备协调的应用。

发展至今,CANopen已经定了非常多的高级协议,最重要的是CiA DS(Device Specification)和DS301/DS302标准。其中,DS301定义了CANopen协议的基本特性,而DS302定义了CANopen设备的特定要求。

另外,CANopen也引入了一些关键的技术细节。比如,对象字典(Object Dictionary)是CANopen里面的关键组件,CANopen、设备都需要具备对象字典,用来设定设备组态及进行非即时的通讯。对象字典中每一个对象对应于一个16bit索引和8bit子索引(部分对象没有子索引,或者认为子索引为0),其属性包括是否可读以及是否可写,对象字典的长度可以是8bit、16bit和32bit。另外,对象字典不仅包含了设备的配置参数,还包含了设备的实时数据和错误历史记录等。

再比如过程数据对象(PDO),用于快速访问对象字典,其作用和SDO类似,只是实现方法不同。SDO在每次发送报文时,都需要指定需要读写的对象字典的索引和子索引,以灵活地对任意对象字典进行访问,同时SDO应答报文保证了数据传输的准确性。

另外,CANopen的技术细节还包括SDO报文需要应答、NMT网络服务、SDO通信等。

CANopen解决方案

在工业自动化领域,CANopen主要用于工业机器人和自动化生产线的设备通信和控制。目前,CANopen的软硬件方案可选项非常多。

首先看一下虹科HK的SYS TEC CANopen Chip F40 - CANopen芯片,是一款即插即用,高性价比的单板计算机内含最新预先编程的CANopen固件。CANopen Chip F40提供简单和高性价比的DIP40连接器形成接口,可接入目标外设并且能把CANopen芯片转换成通用的通讯接口。工程师可以基于CANopen芯片F40实现CANopen从站设备,依据CANopen设备子协议401和CANopen通讯子协议301 V4.02。两个LED指示设备状态,依据303-3 V1.0。

再看一下西威迪的CANopen绝对值工业编码器SAS/M58。采用了高精确的磁式感应技术,支持单圈或多圈编码器,通过CANopen总线进行通信,最高传输速率可达1MHz。此外,该编码器还支持额外增加增量信号TTL或HTL输出,使得信号输出更加丰富。在分辨率方面,单圈分辨率最高可达21位,多圈圈数高达14位,具有超强的抗冲击和抗振动能力,防护等级高达IP68。同时,该编码器还具备反短接和短路保护功能,有效降低了安装错误对编码器的影响。特别需要指出的是,SAS/M58是百分百国产化的。

然后看一下广成科技CANOPEN定制网关GCAN-IO 系列产品是工业现场总线 IO 模块,该模块是标准的从站设备,其使用CANopen或Modbus协议与主站设备通信,用户可使用CANopen或Modbus主站设备控制GCAN-IO模块的数字/模拟量输出状态,还可以使用主站实时读取该模块的数字/模拟量输入状态。

当然,只有硬件还不够,要想用好CANopen,还需要软件的配合。在实践中,将使用适当的软件工具配置/管理复杂的CANopen网络。目前,网络上有非常多的免费的CANopen软件工具,同时虹科HK等公司也会专门提供开发工具和软件包。

结语

CANopen在CAN的基础上定义了更高级的功能,包括网络管理(NMT)、服务数据对象(SDO)传输、过程数据对象(PDO)传输等,也引入了SDO报文需要应答、NMT网络服务、SDO通信等技术细节,因而非常适用于标准化嵌入式网络。

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

    关注

    58

    文章

    3010

    浏览量

    471427
  • CANopen
    +关注

    关注

    8

    文章

    456

    浏览量

    47581
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    嵌入式主板的选型与应用

    一、嵌入式主板核心元器件选型的关键考量在嵌入式主板设计中,核心元器件的选型直接决定产品性能与可靠性,需结合场景需求精准匹配。以处理器为例,除算力与功耗外,还需关注工业级温度范围——如
    的头像 发表于 11-03 17:20 500次阅读
    <b class='flag-5'>嵌入式</b>主板的选型与应用

    IEC 62368标准适用于哪些产品

    IEC62368-1标准是国际电工委员会(IEC)制定的一项安全标准适用于音视频设备、信息技术设备以及通信设备。该标准的全称是:IEC62368-1:Audio/video,info
    的头像 发表于 10-29 14:47 394次阅读
    IEC 62368<b class='flag-5'>标准</b><b class='flag-5'>适用于</b>哪些产品

    嵌入式需要掌握哪些核心技能?

    /网络设备)、中断底半部处理,适用于高端嵌入式设备。 企业需求:RTOS是60%岗位的核心要求,Linux开发需求随项目复杂度增长。 4)通信协议与接口 基础协议:UART、SPI、I2C、CAN总线
    发表于 10-21 16:25

    标准化考场是什么?

    很多现在都在建设标准化考场,标准化考场究竟是什么呢?
    的头像 发表于 09-05 16:45 1035次阅读
    <b class='flag-5'>标准化</b>考场是什么?

    新一代嵌入式开发平台 AMD嵌入式软件和工具2025.1版现已推出

    AMD 2025.1 版嵌入式软件和工具是面向新一代嵌入式系统开发而打造的综合平台,全面加速概念构想到部署落地。 2025.1 版嵌入式软件和工具的新 增功能 AMD 嵌入式开发框架(
    的头像 发表于 08-20 09:15 3617次阅读

    嵌入式工程师为什么要学QT?

    Qt对嵌入式工程师来说,真的很重要吗? Qt是一个跨平台的C++应用程序开发框架,非常适合嵌入式系统的开发,Qt在嵌入式开发中具有很重要的作用。 在项目实践中可以看出,Qt在工业自动
    发表于 08-14 15:15

    贸泽开售适用于边缘计算和嵌入式应用的Altera Agilex 3 FPGA C系列开发套件

    FPGA C系列开发套件。此开发套件采用紧凑型桌面外形设计,并可选配子卡,支持插入PCIe 3.0 x1插槽。这款多功能、低功耗的电路板适用于工业、医疗、视频和安全等领域的嵌入式
    发表于 08-04 17:27 752次阅读
    贸泽开售<b class='flag-5'>适用于</b>边缘计算和<b class='flag-5'>嵌入式</b>应用的Altera Agilex 3 FPGA C系列开发套件

    Linux嵌入式和单片机嵌入式的区别?

    对实时性要求高、资源需求较低的场合,如家电控制、工业自动、小型机器人等。 Linux嵌入式适用于需要复杂功能、高处理能力的应用,如智能手机、平板电脑、智能电视、汽车电子等。 2. 开发环境
    发表于 06-20 09:46

    中科易联Profinet OEM嵌入式通讯模块之西门子PLC S7-1200通讯应用指南

    OEM嵌入式通讯模块是一款适用于工业以太网和现场总线协议的嵌入式IC模块,利用该模块可快速又轻松地把您的设备集成到工业网络中。目前该系列模块
    的头像 发表于 05-27 14:52 1633次阅读
    中科易联Profinet OEM<b class='flag-5'>嵌入式</b>通讯模块之西门子PLC S7-1200通讯应用指南

    嵌入式系统开发圣经【干货】

    内容包括:嵌入式系统的介绍、嵌入式SoC硬件系统概论、嵌入式系统软件开发。适用于产品主管、系统设计分析人员及欲进入该领域的工程师。本资料详细的理论讲解,广泛深入地分析相关的
    发表于 03-12 13:58

    嵌入式教育科普|GPIO接口全面解析

    在现代科技领域,嵌入式系统接口作为信息交互的核心载体,发挥着至关重要的作用,各类接口通过预定义的通信协议与标准化规范,可以实现设备间的精准数据传输与智能控制。 作为嵌入式开发的技术基础,接口
    的头像 发表于 03-05 11:11 2734次阅读
    <b class='flag-5'>嵌入式</b>教育科普|GPIO接口全面解析

    哪些专业适合学习嵌入式开发?

    :涉及传感器技术、网络通信等,是物联网领域的关键技术领域,适合转行到物联网和嵌入式领域。 3)自动专业:自动专业的知识对于嵌入式系统的设
    发表于 01-03 13:44

    适用于PoE应用的低成本隔离电源

    电子发烧友网站提供《适用于PoE应用的低成本隔离电源.pdf》资料免费下载
    发表于 12-21 09:39 0次下载
    <b class='flag-5'>适用于</b>PoE应用的低成本隔离<b class='flag-5'>式</b>电源

    适用于安装到柜式终端的嵌入式条形码模组

    在物联网与智能技术日新月异的今天,嵌入式设备的应用场景愈发广泛,特别是在追求高效、便捷与空间极致利用的商业环境中,如快递柜、智能设备柜等柜式终端,对内置组件的轻薄、高性能需求日益
    的头像 发表于 12-18 16:25 611次阅读
    <b class='flag-5'>适用于</b>安装到柜式终端的<b class='flag-5'>嵌入式</b>条形码模组

    什么是嵌入式人工智能

    嵌入式人工智能是指将人工智能技术应用于嵌入式系统中的一种技术。嵌入式系统是嵌入到其他设备或系统中的计算机系统,通常
    的头像 发表于 12-11 09:23 1518次阅读
    什么是<b class='flag-5'>嵌入式</b>人工智能