- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CANopen协议讲解
根据DS301的内容进行介绍1、CAN总线 CAN标准报文2、CANopen应用层协议CANopen 协议不针对某种特别的应用对象,具有较高的配置灵活性,高数据传输能力,较低的实现复杂度。同时,CANopen 完全基于CAN 标准报文格式,而无需扩展报文的支持,最多支持127个节点,并且协议开源。一个标准的CANopen 节点(下图),在数据链路层之上,添加了应用层。该应用层一般由软件实现,和控制算法共同运行在实时处理单元内。一个标准的CANopen 节点CANopen 应用层协议细化了CAN 总线协议中关于标识符的定义。定义标准报文的11 比特标识符中高4 比特为功能码,后7 比特为节点号,重命名为通讯对象标识符(COB-ID)。功能码将所有的报文分为7个优先级,按照优先级从高至低依次为:网络命令报文(NMT)同步报文(SYNC)紧急报文(EMERGENCY)时间戳(TIME)过程数据对象(PDO)服务数据对象(SDO)节点状态报文(NMT Err Control)7 位的节点号则表明CANopen 网络最多可支持127个节点共存(0 号节点为主站)。下表给出了各报文的COB-ID 范围。NMT 命令 为最高优先级报文,由CANopen 主站发出,用以更改从节点的运行状态。SYNC报文 定期由CANopen 主站发出,所有的同步PDO 根据SYNC报文发送。EMERGENCY报文由出现紧急状态的从节点发出,任何具备紧急事件监控与处理能力的节点会接收并处理紧急报文。TIME 报文由CANopen 主站发出,用于同步所有从站的内部时钟。PDO 分为4 对发送和接收PDO,每一个节点默认拥有4对发送PDO 和接收PDO,用于过程数据的传递。SDO 分为发送SDO 和接收SDO,用于读写对象字典。MT Error Control报文由从节点发出,用以监测从节点的运行状态。状态机CANopen 的每一个节点都维护了一个状态机。该状态机的状态决定了该节点当前支持的通讯方式以及节点行为。初始化时,节点将自动设置自身参数和CANopen 对象字典,发出节点启动报文,并不接收任何网络报文。初始化完成后,自动进入预运行状态。在该状态,节点等待主站的网络命令,接收主站的配置请求,因此可以接收和发送除了PDO 以外的所有报文。运行状态为节点的正常工作状态,接收并发送所有通讯报文。停止状态为一种临时状态,只能接收主站的网络命令,以恢复运行或者重新启动。CANopen节点状态转换图 CANopen节点状态转换条件3、Device ModelCommunication 提供通信对象和传输经过底层的数据的适当功能;Object Dictionary 对此设备上的应用程序对象,通信对象和状态机的行为有影响的所有数据项的集合。Application 由在处理环境方面的设备功能组成。设备应用在数据条目中的完整描述在对象字典中叫设备子文件(device profile)4、OD每个节点维护一个对象字典(Object Dictionary, OD)。该对象字典保存了节点信息、通讯参数和所有的过程数据,是CANopen 节点的核心数据结构。上层应用程序也主要通过读写对象字典和CANopen 应用层进行交互。CANopen 对象字典为两级数组结构,通过索引(16bits)和子索引(8bits)来编址。设备子文件中最重要的就是对象字典的描述,对象字典在slave节点中一般是在设备初始化写好的不会修改,而在master节点中可以在运行过程中动态修改,不修改的OD一般存在ROM中,而修改的存在RAM中。由于它是由16bits的位索引,所以最多有65536个entries.根据节点所支持的通讯方式,每一个节点都必须实现1000h~1FFFh 当中的一个必要子集,同时实现6000h 以上部分的数据区。数据区大小由节点的功能自行决定。1000h 以下部分所有的节点都不需实现。对象字典作为在CAN总线上连接application和通信的媒介,其允许来自application数据在CAN 网络上进行交换。CANopen定义了可以进入对象字典的服务和通信对象。每一个入口通过索引和子索引来编址。在一个主索引里中的子索引入口的类型和属性可能会变化。5、PDO数据处理对象(PDO) 特别适合快速的数据处理传输。通信模块针对这些数据处理对象定义了一个PDO producer 和一个或多个PDO consumers。PDO的传输是由事件触发的,这样的事件可以是代表一个PDO变量的变化;可以是时间的过期或者是接收到一个特定的消息。过程
您可能关注的文档
最近下载
- 营养风险筛查NRS2002.doc VIP
- 《马克思主义基本原理》教案 第2课 世界观与哲学的基本问题、物质与意识.pdf VIP
- 普惠托育服务的服务质量和评价.pptx VIP
- 实验十一活髓切断术.ppt VIP
- 安徽财经大学“一流专业”“一流课程”项目建设任务书.pdf VIP
- 良性前列腺增生诊断治疗指南(中国泌尿外科和男科疾病诊断治疗指南2022版).pdf VIP
- 产品溯源管理制度(商检制度之五).doc VIP
- 企业主体责任十二项安全制度.docx VIP
- 安徽省池州市2024-2025学年九年级物理期末复习卷(三)(沪粤版).pdf VIP
- HJ 377-2019 化学需氧量(CODCr)水质在线自动监测仪技术要求及检测方法.docx VIP
文档评论(0)