工业以太网协议要解决问题.docx
- 文档编号:4074065
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:29
- 大小:5.34MB
工业以太网协议要解决问题.docx
《工业以太网协议要解决问题.docx》由会员分享,可在线阅读,更多相关《工业以太网协议要解决问题.docx(29页珍藏版)》请在冰豆网上搜索。
工业以太网协议要解决问题
工业以太网协议问题
1.上表,EtherCAT中的数据链路层是否要解决通信中的流量控制?
为什么?
通信栈是由什么实现的?
2.我理解EtherCAT协议为,“协议标准实际上在谈两个问题:
服务与协议。
服务的含义是提供何种功能,网络通信各层的服务都是围绕如何进行可靠数据传输所定义的服务,属于通信类服务,即服务是解决服务者做什么的问题。
协议是解决实现服务时应该怎样做的问题,即如何做才能实现具体的服务。
”
3.可靠数据传输主要针对通信中遇到的电磁干扰,因此在物理层与链路层上要思考如何应对干扰的解决措施,但数据链路层与应用层之间的数据传输已经是在系统内的传输,是否存在相关的可靠数据传输问题?
为什么?
4.“数据传输”从字面意义上讲是数据信号波形的流动,除此之外,能否将“数据传输”与“数据存储”联系在一起?
5.接在现场总线上的设备功能各异,那么EtherCAT是以何种思想解决对各种功能设备的联网控制?
提示:
计算机是一台通用设备,但可以实现各种功能。
6.请尽可能多的给出你知道的ASE。
如何构建一个ASE?
设想一个应用过程(例如远程对温度传感器测温监控),如何利用多个ASE协同完成该应用过程。
7.EtherCAT使用了哪些技术与方法来应对“时间关键”的数据传输?
8.上面是EtherCAT定义的一个模板。
为什么要定义该模板,主要解决数据传输中的什么问题。
若没有协议规定数据的结构化表示方法,是否会造成混乱?
9.上图是物理层通用模型。
请以你自己的理解方式解释媒体相关、媒体无关、媒体附属的含义?
10.“物理层的功能是以一种适合于通信媒体的形式对传输/接收的信号进行编码/译码,规定通信媒体的特性”。
你认为编码/译码工作是在上图中的哪个部分中完成的(PhDIS、PhMDS、PhMAU)?
为什么?
11.上图中有四个接口:
DL-Ph接口、DTE-DCE接口、MDS-MAU接口、媒体接口。
试述这些接口的主要作用(通常接口的主要作用是:
数据格式变换、阻抗匹配、信号波形变换、时序配合、机械特性等)?
哪些接口可能属于设备内部接口?
哪些接口可能属于设备间的外部接口?
12.上图是DLL-PHL接口数据单元间的映射。
试指出图中的错误所在之处,并描述映射的含义与实现的过程(思路)。
图中为什么要定义四个数据单元,它们各自存放什么样的数据(带有帧格式的数据帧、部分帧还是完整帧)?
在数据单元后面加“序列”说明什么?
13.依据上图,是否应该设置一些存储器单元来传输数据?
请给这些存储器起一些名称,并注明它们所起的具体作用?
对于上图,协议标准给出了如下几项注释:
14.注1:
“DLL-PHL接口是一种虚拟机间的虚拟服务接口”。
既然是一种相互联接的接口,那么物理层与数据链路层双方就好像是两个独立的设备,要通过该接口交换数据。
通常两台设备交换数据时要定义数据收、发缓冲区。
对于虚拟接口,你认为是否也该这样做?
为什么?
15.数据链路层与物理层要通过接口交换数据,那么双方怎样获知有数据要交换?
例如,对于数据链路层来说,它是如何知道物理层有新数据要传输给自己。
16.数据链路层中的数据帧中不会含有前同步码、后同步码、帧定界符,这些控制数据是在物理层中加上的,那么物理层中是否应该定义一些相应的寄存器,用来存放同步码、定界符等帧格式控制信息?
17.注4,“依据工业实践,定义了许多不同的DLL-PHL接口”,你对此是如何理解这话的?
对你实现DLL-PHL接口有无启示?
18.协议规定物理层须有特性指示原语:
Ph-特性指示(minimum-data-rate,framing-overhead);定义该原语的目的是什么?
该原语在何种情况下发出?
发给谁?
特性指示原语中两个参数minimum-data-rate,framing-overhead所起的作用是什么?
19.有关服务原语,我在网上看到的资料描述如下:
用户和协议实体间的接口,实际上是一段程序代码,但其具有不可分割性。
通过服务原语能实现服务用户和服务提供者间的交流,与协议不同的是,服务原语用于服务提供者与服务用户,而协议是用于服务用户之间的通信。
在同一开放系统中,(N+1)实体向N实体请求服务时,服务用户和服务提供者之间要进行交互,交互信息称为服务原语
四种基本原语:
请求(Request)用户实体要求服务做某项工作源(N+1)实体—>源(N)实体
指示(indication)用户实体被告知某事件发生目的(N)实体—>目的(N+1)实体
响应(Response)用户实体表示对某事件的响应目的(N+1)实体—>目的(N)实体
确认(Confirm)用户实体收到关于它的请求的答复源(N)实体—>源(N+1)实体
服务和协议常常被混淆,而实际上二者是迥然不同的两个概念。
为此我们再强调一下两者的区别。
服务是网络体系结构中各层向它的上层提供的一组原语(操作)。
尽管服务定义了该层能够代表它的用户完成的操作,但丝毫也未涉及这些操作是如何实现的。
服务描述两层之间的接口,下层是服务提供者,上层是服务用户。
而协议是定义同层对等实体间交换帧、数据包的格式和意义的一组规则。
网络各层实体利用协议来实现它们的服务。
只要不改变提供给用户的服务和接口,实体可以随意地改变它们所使用的协议。
这样,服务和协议就完全被分离开来。
工业以太网协议有如下的描述:
试问:
原语PH-DATA请求(CLASS,DATA)这个过程函数是位于物理层还是数据链路层?
调用该原语的实体是物理层的实体还是数据链路层的实体?
参数CLASS的含义到底是什么?
网络协议的版本经常升级,CLASS是否与具体协议内容有关,例如规定帧头的特定格式?
你认为我的下述理解有无问题?
数据链路层的某个用户实体希望将数据链路层中的数据(存放在协议数据单元DLPDU发送缓冲区)通过DLL-PHL接口将其送到物理层中的协议数据单元PHPDU发送缓冲区中,于是调用物理层中的请求原语:
PH-DATA请求(CLASS,DATA),该请求的过程实现函数会先将帧头放入PHPDU,然后将DLPDU中的数据逐字节地传送到PHPDU,全部传完后,再将帧尾放入PHPDU。
20.对于工业以太网协议有如下的描述:
请以自己的理解描述PH-DATA指示(CLASS,DATA)原语及其实现过程。
如何将物理层正在接收来自其它节点的数据及事件告之数据链路层?
又如何实现将已接收的物理层数据传输到数据链路层?
如何实现对于错误接收数据的事件指示?
21.对于物理层的管理,工业以太网标准给出的规定并不十分明确,因为处于物理层中的不同硬件可能有着不同的特性,因此要实现对硬件的管理,就必须先明确硬件的特性。
工业以太网标准将物理层的管理视作为一个与物理层并行的模块,该模块中最重要的一个过程函数是复位原语的编写。
请回答由谁来发出复位请求?
试举例说明复位时要做一些具体工作。
22.上述话语是对于整个DIS要实现的功能的具体描述。
你认为物理层在收到了一帧中的部分字节还是全部字节后开始传输给PhID?
需不需要规定PhSDU的最大字节数?
23.标准中有如下的话语,我不明白,你是如何理解的?
关键是不明白要传输的序列是通过哪些已定义的控制信号来实现交互?
24.标准中关于低层通信功能的描述如下:
由于工业以太网在众多技术规范上与以太网是相同的,所以能否找到实现低层通信的专用芯片及技术资料?
使用通用芯片实现上述功能还是非常麻烦。
25.上述的PhPDU中存放的PhSDU序列是表示一个字节的字符还是多个字节的字符串?
字符是否是已进行了曼彻斯特编码?
26.上述是标准中关于网络的拓扑连接方面的描述,我不明白。
1)分支把线型结构提升为树形结构。
这如何实现?
2)端口0有何特殊之处,为什么它不能接收以太网帧(n不为0)?
3)如果没有设备连接或者端口被主站关闭,发送到该端口的请求被处理。
如何处理?
27.对于上图,标准中称其为数据链路层参考模型。
你认为这是主站参考模型还是从站参考模型?
图中有许多小矩形,内部标有标识文字,如DLLinfo,FMMUn等,我认为这些小矩形都是存储器,标识的文字表明其为实现字面含义所需要存储的参数,这样的认识对吗?
28.物理层要负责将接收到的数据传输到数据链路层,数据链路层要对收到的数据进行地址检查、CRC查错等多项工作,因而需要花费一定的时间,这个时间你认为会小于1微妙吗?
从站在实际运行中需要对来自总线的信号进行边接收、边处理、边转发以实现“飞速”,接收、处理、转发的数据长度是否固定?
若在处理的过程中发现有错误,还会继续转发吗?
29.在以太网帧中需要给出通信双方的地址,但由于逻辑寻址是寻址4GB空间的一段区域,对于区域范围,在以太网帧中如何表示?
30.4GB逻辑地址空间是8位的,若某个从站物理存储器的位长是16位,该如何表达映射关系?
定义了映射方向(输入或输出)是否意味着从站对应的物理存储器就只能是接收或输出来自物理层的数据?
输入、输出的方向定义是针对FMMU与DLPDU两个实体中的哪个实体而言的?
对于FMMU,实际中你会如何实现,请给出较为详细的技术实现思路。
31.按上述功能定义,同步管理器作用是控制对DLS用户内存的访问。
此处同步的含义是解决存储器访问中的什么问题?
DLS用户内存指的是哪个层中的内存?
可能实际中有三处内存区域A、B、C,三个数据区域都有功能含义不同的定义,而且它们都可能被数据链路层与应用层访问,那么同步管理器的通道数应该为几个?
32.上图是从站的通信结构,你认为这种通信结构是否也适应于主站?
为什么?
将通信过程进行层次化的规定,主要是解决什么问题?
为什么对图中寄存器的访问操作与对存储器的访问操作在规定上有所不同(例如主站对于寄存器的读操作无需通告DL用户,而对存储器的读操作需通告DL用户)?
寄存器中主要存放什么数据?
存储器中又主要存放何种数据?
图中的事件指示该如何具体实现?
33.上述话语中的“一致性限制”是什么意思?
34.上图中,主站对从站的读写访问是用客户机-服务器模型来实现的吗?
上图表示,无论主站发送什么请求,都一定会得到从站的回应,这样理解对吗?
35.请解释上表的自增式物理读的工作过程(主要是如何产生请求、证实的过程)?
其中参数Devicedataarea是从站中的物理内存位置,主站是如何知道从站的物理内存位置,是预先约定的吗?
36.请解释上表中的C的意思,原文的含义我无法理解,你是这样理解的。
在主站发出自增式物理读请求时,上表中“DATA”中的数值是什么?
上表是主站对于自增式物理读的EtherCATPDU的规定,那么从从站返回给主站的EtherCATPDU是否采用相同的格式?
若相同,如何解释表1中证实一列中的Devicedataarea参数缺失?
37.对于上述PNV服务,我无法理解,其中的参数含义也不懂,上表中不知为何还用“指示”替代了“证实”,你能否给出该如何使用PNV服务(在什么情况下会使用该服务)?
或者说你是怎样理解该服务的?
38.上述中,“从站与从站间的通信通过类似路由器的主站进行管理”,这话的含义是什么?
换句话说如从站之间需要进行数据交换的通信,大体的实现过程是什么?
39.上表是邮箱写服务,它的基本功能也是向指定的内存中写入数据,它与前述的其它请求命令如自增式物理位置写有什么不同?
为什么在自增式物理位置写的表5中仅有两列(请求、证实),而在邮箱写中有三列(请求、指示、证实)?
在工业以太网中,我认为通信只能是主站发出,从站被动接收或转发,这意味着通信时不需要知道主站的地址,但在上表中,有两个地址,D_address(目的地址)与S_address(源地址),若通信中源为主站,目的为从站,主站的地址该如何表示?
若通信中源为一个从站,目的为另一个从站,两个从站的地址又该使用何种寻址方式下的地址?
40.上表与下表显然无法对应,你对此这样理解?
41.对于邮箱服务,有几个参数如:
TYPE、Cnt,你是如何理解的?
对于表中的地址描述,我不理解,你是怎样理解的?
42.对于上述中的Mailboxwriteevent,readlocal你是这样理解的?
我的如下理解有问题吗?
主站向从站发送写邮箱命令,从站接收到该命令帧后,将帧中的邮箱数据取出放入到从站的数据链路层的邮箱接收缓冲区中,数据链路层的管理单元再通过同步通道管理器将邮箱接收缓冲区中的数据写入到邮箱中(这个过程可能比较漫长),这就是readlocal的含义,在成功写入邮箱后,数据链路层的管理单元再产生一个邮箱数据被更新的状态事件,通知从站应用层来使用邮箱中的数据,即event。
由于写入邮箱的时间不确定,从站对于请求的转发又不能等待,那么从站该如何应答主站的请求?
43.上述的本地读操作是在从站的应用层与数据链路层之间进行的吗?
44.对于上述的本地事件,你认为该如何具体实现?
45.你是如何理解上表的,如EtherCATxxx中的xxx的含义是什么?
为什么只有自增式地址而无其它寻址方式的地址?
LEN代表的是什么长度?
46.上述话语给出了如下几个意思,一是EtherCATPDU可以作为普通以太网帧中的数据,二是多个EtherCATPDU可以视为一个整体数据,并放入一个以太网帧中;三是可以使用的以太网帧有两种格式,一种是带有IP路由的帧,另一种是不带IP路由的帧,当然不带IP路由时,就只能在局域网中进行传播。
那么我们到底该使用哪种以太网帧格式?
我们的使用环境可能不是网络环境,就是一条工业控制局域现场总线,此时帧中的目的地址与源地址该如何填写?
我们能使用网卡读取以太网帧吗?
若能,试想有什么方法再从中提取出EtherCATPDU。
47.对于上图,请解释第一个EtherCATPDU与第二个EtherCATPDU中的Data下方标注的字节数(1…1486)与(34…1474)为何有差异?
48.上表是工业以太网标准对于属性的描述示例。
为什么表中要给出两种访问类型?
49.对于数据链路层,我们可以将其视为一个虚拟设备或对象,若从监控、管理的角度出发,应在DL中设置一些什么专用部件?
例如从站地址寄存器。
50.DL信息寄存器包含从站控制器的类型、版本和被支持的资源。
你认为从站的资源有哪些(注意,一个具体的从站可能因功能各异,所具有的资源数量可能各不相同,因此此处的资源仅限定为服务于工业以太网网络通信的资源)?
51.上表是DL信息的部分内容,请问表中的物理地址值能否被改变为其它值?
解释PORT0的值的含义。
52.请解释下表中各参数取值的含义。
53.下表是从站地址属性描述,请问站别名是否可为长度受限的字符串?
54.标准中描述DL控制寄存器的话语为“DL控制寄存器通常被主站用来控制从站控制器DL端口的操作”。
工业以太网中的从站控制器可将从一个端口上接收的以太网帧转发到另一个端口上,控制寄存器中的内容决定了转发的一些具体行为,这样理解有问题吗?
55.DL控制寄存器中的几个重要控制参数如下:
请你根据自己的理解,给出端口的可能操作行为以及相应的对外状态指示。
56.要想控制好端口,对于端口控制寄存器属性描述的理解就非常关键。
例如端口的“打开”、“关闭”、“自动打开”、“自动关闭”、“linkdown”、“linkup”。
以下是标准中给出的解释
你能否使用下图解释端口的状态。
57.通常的I/O接口设备仅有控制与状态寄存器,但由于DL是一个较为复杂的虚拟设备,它管理物理层的端口、负责与应用层交互数据,所以其存在三组寄存器:
信息、状态、控制。
信息与状态均是对外提供可用的信息,但两者还是有些不同之处,你认为信息寄存器与状态寄存器的本质差异在哪儿?
58.请你以自己的理解,对如下几个端口状态参数的差异性进行解释:
linkstatusport0、loopbackport0(loopstatusport0)、signaldetectionport0.
59.下图是译文与原文中主站对于从站的DLS用户控制寄存器的一次写操作描述,两图有差异,你能肯定译文有错误吗?
译文想表达什么思想?
60.上表是DLS用户属性描述表。
译文与原文存在一些差异,请指出差异所在,哪个描述不合理?
哪些寄存器可作为控制寄存器,哪些可作为状态寄存器,哪些作特殊用途寄存器?
R1是作为控制寄存器,那么R2能否作为一个备用的控制寄存器?
此处的控制是控制谁的行为?
61.标准中定义了一个名词“事件寄存器”,事件寄存器与状态寄存器有什么相同的作用又有什么不同之处?
62.以上是标准中对于事件参数DL-userR1Chg的描述。
请问“写服务”是由哪里来的?
63.以上两张表是标准中给出的DL-user事件表与外部事件表,两张表中有多项参数名称相同的事件,如“DCEvent0”、”Syncmanagerchannel0event”等。
这些同名参数,其代表的事件是同一个吗?
若相同,为什么要对相同的事件安排在两张表中;若不同,其各自代表的事件具体差异在哪里?
64.以上是标准中关于RX错误计数寄存器的功能描述与操作描述。
其中的操作描述“往任何一个计数器中写入数据将清零所有计数器”,这话该如何理解?
请分别给出物理层错误与帧错误的一个典型示例。
65.什么情况下会发生丢失链接错误?
附加计数器统计的是什么错误?
你能否给出具体实例。
为什么这些统计计数器在标准中都是以可选方式给出的?
66.从上述的描述中,你能得出系统时钟频率的具体数值为多少吗?
67.DL用户看门狗的数值用于监视DL用户,这话该如何理解?
你准备在实际中如何做才能体现该功能?
68.同步管理器看门狗携带有一个表征其状态的寄存器,即同步管理器看门狗状态寄存器,但DL用户看门狗却没有设置状态寄存器,这是为什么?
69.上表是从站信息接口访问表,请解释表中参数“Owner”、“Lock”所代表的具体含义,该表主要起什么作用?
70.从站信息接口中定义了数据寄存器、状态寄存器、控制寄存器,标准将状态与控制寄存器放入了同一个表中,即表49。
请示例描述三者怎样配合完成读写操作。
为什么要规定写操作是16位,读操作是32位或64位?
71.上述两个表中的内容显然有差异,你如何看待?
72.为什么说一个DLE可能包含几个FMMU实体?
73.我们日常生活中所使用的邮箱是有体积大小限制的,一个邮箱可以容纳多封邮件,直到其不能在装载新邮件时,我们才认为邮箱的状态是满的,空邮箱是指邮箱里面没有任何邮件,邮箱还有第三种状态,就是不空也不满。
EtherCAT中的邮箱是用于接收来自主站或来自DL用户的数据,使用物理存储器来存放数据,如下图所示:
图中使用了两个邮箱,分别作为接收来自主站的数据与来自DL用户的数据。
邮箱的状态仅定义了满与空,而没有第三种非空也非满的状态,这是为什么?
难道实际中不存在第三种非空非满状态吗?
图中每个邮箱的内存大小又该怎样设定?
74.上述话语中有一句话我认为非常重要,即“不管读出数据需要多长时间”。
我认为该句话其表达的中心思想是数据的生产者与数据的消费者对数据产生的能力与消费的能力不一致,因而需要使用邮箱来控制平衡两者的速度,若数据的产生能力大,通过邮箱就可以减缓新数据的产生速率。
这样的认识有问题吗?
75.上图是对于周期性过程数据的交互模式。
图中使用了两组缓冲区,分别作为接收来自主站的数据与来自DL用户的数据。
每组缓冲区又定义了3个存储区域,每个存储区域的大小是否与一个邮箱的容量大小相等?
在邮箱模式下,可牺牲的是什么(数据还是时间)?
在过程模式下,可牺牲的是又什么(数据还是时间)?
从数据消费者看,对于两种模式,相隔一段时间间隔的前后两次读数据操作,所读到的数据内容哪一种模式下一定存在差异?
哪一种模式下不一定存在差异?
76.上图是过程数据交换模式下的缓存区分配图,对于图中的“可见”、“不可见不用”、“仅配置了缓存1”、“下一个缓存”你是如何理解的?
77.同步管理器有多个属性参数,请解释以下的参数含义(我没有搞懂):
“Repeat”、“RepeatAck”。
78.邮箱有发送与接收,过程缓存也分为发送与接收,一共四个,即我们只需要四个同步管理器通道应该就够了,但为什么标准中要定义16个同步管理器通道?
79.你认为标准中的如下规定是否必须遵循:
80.上图是关于分布时钟的描述,我对分布时钟的理解是:
图中的M表示的是主站时钟,S表示各个从站的时钟,Δt表示主站与从站的时间差。
若将主站的时钟作为参考时钟,各个从站与参考时钟间的时间误差要小于1微妙,若误差大于1微妙,从站就应该调整自身的系统时钟频率,使时钟同步精准在一个微妙之内,我这样理解有问题吗?
有问题的话指出问题所在。
1微妙是一个极小的时间差,为保证达到如此小的误差,EtherCAT采用了哪些具体关键技术?
所谓关键技术是指保证同步精度所必须采取的措施。
例如主站的系统运行时钟频率与各个从站的系统运行时钟频率由于是独立运行的,因此必然存在时钟频率的微小差距,若整个EtherCAT指定主站或某个从站的时钟作为参考时钟,这样就可获得从站间的时间差,这是基准设立,以解决到底大家与谁同步的问题。
请明确EtherCAT是如何设立基准的?
除基准设立关键技术外,存在误差就要调节,但基准的系统运行时钟也存在随时间漂移的问题,因此要解决跟随调节问题,跟随调节意味着每间隔一段时间要调节一次,这个调节时间间隔该如何确定?
基于误差的调节首先是要获得(测量)误差的大小,而实际的误差是非常小的,对时间差的测量精度要求很高,EtherCAT是如何做到的?
81.以上是标准中关于时延的测量描述。
请给出时间戳的具体数据描述。
延迟测量中,主站发出的独立帧是否具有广播性质,即使用一个帧令所有从站往该帧中填入时间戳?
主站是如何计算出延迟的,请以图解的方式描述各个具体延迟。
假设整个网络仅有4个从站,若从站3的系统时钟频率较从站2的时钟频率低很多,从站4的系统时钟频率较从站2的时钟频率高很多,所获得的整个帧中各个时间戳会是什么情况(有无矛盾数据产生)?
82.分布时钟是EtherCAT的一个亮点,必须给予高度的重视。
我认为分布时钟的成功实现是整个课题中的一个关键点,对此应搞清楚分布时钟所涉及到的每一个细节。
围绕分布时钟的实现,我们应在从站中记录些什么信息?
使用些什么硬件器件?
83.对于上述的DL用户的本地时间参数DC-userP1,我根本无法理解其含义,你知道这些参数的物理含义吗?
84.以下是标准中给出的一段描述主站对于从站邮箱的读操作叙述,你认为主站读操作没有成功吗?
真正的操作失败在何处?
85.上图是标准中给出的从站协议状态机结构图。
状态机,又称有限状态自动机,简称状态机,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型。
它反映从系统开始到现在时刻的输入变化,转移指示状态变更,并且用必须满足来确使转移发生的条件来描述它;动作是在给定时刻要进行的活动的描述。
有了状态机,可以很容易地将其转换为相应的处理程序,因此可以将图中的各个状态机与程序联系在一起,给你一个具体的状态机,你能将其变为程序吗,若不能就需要查阅一些相关资料。
以后对于状态机与程序不进行区分。
请根据上图的状态机联接方式,大体说明整体DL层的工作流程。
86.上图中的PSM、Port0是处于物理层还是数据链路层?
若两者均处于物理层,为什么将它们放在数据链路层中进
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工业 以太网 协议 解决问题