工控协议(一):Ethernet POWERLINK 学习笔记

本文详细介绍了Ethernet POWERLINK协议,包括拓扑模型、通信模型中的节点、周期阶段,以及Network Management和应用层的关键概念。Ethernet POWERLINK是一种针对工业控制的实时协议,强调低延迟和无需IP地址的特性。它的工作周期分为同步、异步和空闲阶段,其中同步阶段涉及数据的实时同步。此外,NMT网络管理工具和对象字典在协议中起着关键作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

注:本文内容基于 ETHERNET POWERLINK 的官方文档 EPSG DS 301 V1.3.0 进行整理小结。

Ethernet POWERLINK 是一个运行在数据链路层上的协议,该协议本身的设计目的是为了满足工业控制中的实时控制需求,低延迟。Ethernet POWERLINK 在使用时不需要额外分配 IP 地址,因为它的交互基于数据链路层,只需要物理地址(MAC)即可实现设备间的交互。Ethernet POWERLINK 也提供了在数据传输层进行交互的方式来满足远程的一些需要,但是限制比较多。

一、Ethernet POWERLINK 拓扑模型

Ethernet POWERLINK 基本兼容所有的拓扑模型,树形,星形,线形
POWERLINK 拓扑结构
如果是总线形连接,设备内部应当如 Hub 一般将输入信号向另一端口转发,这个需求也是由POWERLINK 的通讯模式所决定的。POWERLINK 本身的连接方,除了本文将讨论的RJ-45(常规网线),也支持其它串口通讯,例如 M12.
注意:由于Ethernet POWERLINK 对低延迟的需求,同时一般情况下设备不需要远程控制,在这个网络中不应该出现路由器, 通常采用 Hub 或者 Switch 来构建网络(Hub 优先)。

二、Ethernet POWERLINK 通信模型

1. 节点(Node)----设备

在一个完整的POWERLINK 网络中,应当包含两个部分,控制节点(MN,Managing Node)以及N个受控节点(CN, Controlled Node)。MN 和 CN 是它们的称呼方式,其本质就是一个主从控制系统。
MN 作为控制节点,把握全场节奏,有权点名CN回答问题。
CN 作为受控节点,等待MN点名并回答指定问题(无法自由发表意见)。

一般的,CN有两种类型,一种为 等时/同步CN(Isochronous CN),一种为 异步CN(Asynchronous CN) 。
这两个类型的区别与POWERLINK的通讯模式有关,简单的讲 POWERLINK 一个周期中有两个环节,同步与异步环节,那么 同步CN 能够参与这两个环节,而异步CN只能参与异步环节。
因为没有IP,一般一个网络内允许的设备上限是255,MN的地址默认为240,CN的地址一般从1-239。

2. 周期(Cycle)

POWERLINK 或者其它的工控协议,大致的逻辑都是相同的,周期性的向某些单元进行访问或写入数据,以达到实时监控或者控制的作用。
POWERLINK所使用的方法是将一个周期分为三个阶段,同步阶段、异步阶段以及空闲阶段。
在这里插入图片描述

2.1 同步阶段(Isochronous phase)

在进入这个阶段时,MN首先会广播一个名为SoC ࿰

1 Introduction......................................................................................... 1 1.1 Ethernet POWERLINK................................................................ 1 1.2 Key Features................................................................................. 2 1.3 Supported object dictionary entries .............................................. 2 2 Application Programming Interface ................................................. 4 2.1 Software Structure........................................................................ 4 2.1.1 Directory Structure .......................................................... 5 2.1.2 Module Structure............................................................. 6 2.1.3 Header files ..................................................................... 7 2.1.4 Target dependant modules .............................................. 7 2.2 Data types ..................................................................................... 7 2.3 Functions .................................................................................... 14 2.3.1 EPL API Layer .............................................................. 14 2.3.1.1 Event callback function tEplApiCbEvent ...... 14 2.3.1.2 Sync callback function tEplApiCbSync......... 31 2.3.1.3 Function EplApiInitialize() ............................ 32 2.3.1.4 Function EplApiShutDown() ......................... 35 2.3.1.5 Function EplApiExecNmtCommand() .......... 36 2.3.1.6 Function EplApiMnTriggerStateChange() .... 37 2.3.1.7 Function EplApiReadObject() ....................... 38 2.3.1.8 Function EplApiWriteObject() ...................... 41 2.3.1.9 Function EplApiFreeSdoChannel() ............... 42 2.3.1.10 Function EplApiReadLocalObject() .............. 43 2.3.1.11 Function EplApiWriteLocalObject() ............. 44 2.3.1.12 Function EplApiLinkObject() ........................ 44 2.3.1.13 Function EplApiProcess() .............................. 45 2.3.1.14 Function EplApiProcessImageSetup() ........... 46 2.3.1.15 Function EplApiProcessImageExchangeIn() . 47 2.3.1.16 Function EplApiProcessImageExchangeOut() ........................................................................ 48 2.3.2 Edrv module .................................................................. 49 2.3.2.1 Callback Function tEdrvRxHandler() ............ 49 2.3.2.2 Callback Function tEdrvTxHandler() ............ 51 2.3.2.3 Function EdrvInit() ........................................ 52 2.3.2.4 Function EdrvShutdown().............................. 52 2.3.2.5 Function EdrvDefineRxMacAddrEntry() ...... 53 2.3.2.6 Function EdrvUndefineRxMacAddrEntry() .. 53 2.3.2.7 Function EdrvAllocTxMsgBuffer() ............... 54 2.3.2.8 Function EdrvReleaseTxMsgBuffer() ........... 54 2.3.2.9 Function EdrvSendTxMsg() .......................... 55 2.3.2.10 Function EdrvTxMsgReady() ........................ 55 openPOWERLINK: Ethernet POWERLINK Protocol Stack © SYS TEC electronic GmbH 2008 L-1098e_2 2.3.2.11 Function EdrvTxMsgStart()........................... 56 3 Object Dictionary.............................................................................. 57 3.1 Fundamentals ............................................................................. 57 3.2 Structure of an OD, Standardized Profiles................................. 57 3.2.1 Communication Profile ................................................. 58 3.2.2 Device Profiles.............................................................. 58 3.3 Object Dictionary Structure ....................................................... 58 3.4 Object Dictionary Definition...................................................... 59 3.5 Example...................................................................................... 66 4 Configuration and Scaling ............................................................... 68 4.1 General configuration of the EPL stack..................................... 68 4.2 Ethernet driver............................................................................ 69 4.3 DLL module ............................................................................... 70 4.4 OBD module .............................................................................. 70 4.5 SDO modules ............................................................................. 71 4.6 Timer module ............................................................................. 71 4.7 EPL API Layer ........................................................................... 72 Glossary ...................................................................................................... 73 References................................................................................................... 75
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值