引言
传统的数控系统多采用基于单处理器的集中式体系结构,这种体系结构向上不能适应制造环境对数控系统的分散化要求,向下难以满足高速高精加工对计算能力和数据传输的要求,难以适应未来数控技术的发展。随着在工业控制领域的应用,现场总线已经成为下一代数控系统各设备单元之间数据交换的主要媒介。
现场总线之于数控系统的各设备单元,如高速公路之于城市交通,宽带之于联网计算机。高速高精的数控加工,要求数控单元设备之间的数据交换媒介能完成数据的高速实时传输,而网络传输速度直接影响了加工的速度和精度,也影响了远程操作、远程管理、远程诊断的效率。目前,现场总线技术除了主要用于工业现场的过程控制,也已经用于数控系统的设备通信和瓦连。德国SIEMENS公司的SINUMERIK840D数控系统就采用r PROFIBUS总线的DP系列,日本FANUC公司的数控系统也采用基于光纤的专用内部总线SERCOS(serial realtime communication specification)。还有一些文献对控制器局域网(Controller Area Network,CAN)、Profibus和SERCOS等专用现场总线在数控系统通信方面的应用做了研究。
以太网技术随着Internet的发展得到了飞速发展,其传输速率已从最初的10 Mbps发展到100Mbps,1000 Mbps,1 Gbps甚至10 Gbps,是目前用于工业控制的cAN,PROFIBUS,WorldFIP等现场总线无法相比的。理论上,以太网的传输速度比12 Mbps的PROFIBUS I)P、2.5 M和5 M的WorldFIP,以及1 M的CAN快得多,100 M快速以太网的传输速度是12 M的PROFIBUS—DP的9倍、是5 M的worldFIP的20倍、是1 M的CAN的100倍。因此在工业控制领域,当然也包含数控领域,以太网将显示出其高带宽的巨大优势。目前,国际新一代基于以太网的现场总线标准体系刚刚提出并正在建立,主要有EPA,Ethernet/IP,ModBus—IDA,PRoFINET,Ethernet Powerlink,EtherCA.T,SERCOS—III等。这些研究从应用模型角度分为混合模型和透明模型两类。混合模型的思想是上层采用商用以太网,底层仍采用专用现场总线、串口等通信方式(如Ethernet/IP,ModBus/TCP等)。一些研究提出了底层通过RS232,上层通过以太网将数控系统接入Internet的混合模型来解决数控系统的数字通信问题[5‘6]。透明模型是采用以太网实现所有层的通信(如PROFINET,EPA等实时以太网标准)。数控系统采用以太网实现所有层通信的难点在于数控系统运动控制层的实时通信和精确同步问题。
本文研究在现有以太网技术基础上的数控系统运动控制层实时通信和精确同步技术。
1 以太网的实时性与时间同步技术
1.1 以太网的实时性
以太网的实时性评估主要考虑它在传输中的延迟。在运动控制层,对通信实时性的要求主要是对传输延迟确定性的要求,即传输中的延迟时间是确定、可预先知道的,而不是随机的。下面主要从确定性方面说明以太网的实时性问题。为方便说明,特定义如下:
tdelay为延迟时间,指发送节点调用发送处理开始到接收节点的接收处理完全收到数据报文的时间问隔为数据帧在通信处理器中的等待时间;为数据帧的发送延迟;为数据帧的传播延迟;为端系统处理时间,指数据在发送方和接收方系统中进行缓冲、拷贝等处理所耗费的时间。
通常延迟时间用以下公式表示:
(1)
式中:与。由网络带宽和信号传播速度决定,是确定性的;受系统软硬件环境影响,当系统的软硬件环境确定时,可使确定。对于共享式以太网,由于存在通道竞争,数据帧发送会产生冲突,而随后所采取的重发机制会导致延迟的不确定性甚至发送的失败,因此是不确定的;但如果能够限制网上流量,避免冲突就可以使t。确定,实现确定性通信。对于交换式以太网出是确定的,通过计算传输中经过的各交换机的交换机延迟之和可以得到为保证交换式以太网的稳定和不丢失数据帧,需要满足两个条件:
(1)网络传输总量小于交换机的容量,表示为
(2)
式中:Capa为交换机的容量,表示一个单位时间内能够处理的帧的数目;Msg,为第i个站点每单位时间产生的帧的数目。
(2)一个站点的接收能力可以处理所有的源节点到该节点的数据帧,表示为
(3)
式中:Recv(j)是站点J接收数据的能力,Msgt(j)是在单位时间内从第i站点到第j站点传输数据的大小。这两个条件表明,只要将网络上的流量控制在交换机的处理能力和接收能力之内,就能做到交换式以太网的稳定运行。对于直通式交换机,一般情况下,交换机延迟可以忽略;对于存储转发式交换机,交换机延迟为存储延迟与转发延迟的和:
(4)
转发延迟又可以表示为
(5)
式中:q为队列中排在本数据帧前的帧的数目,为帧间隔mt。为第i个帧的发送延迟。由上可知,共享式以太网通过限制以太网流量,避免冲突,可以实现实时通信;交换机式以太网通过一定程度地限制流量也能实现以太网的实时通信。
1.2 时间同步技术
运动控制层设备要进行精确同步操作,必须有严格精确的时钟,因为很多操作是在严格的时间表驱动下协同完成的,而时钟的时间确定性受制于硬件晶体振荡器质量和软件的环境,很容易受温度和其他因素的影响。在实际操作中,多数时钟每天会产生5 s~15 S的时问偏差。在对时间同步要求高的场合,需要对系统的时钟偏差进行矫正。目前,网络上的时间同步技术主要有网络时间协议和精确时间协议两种。网络时间协议的同步精度一般只能达到0.1 ms,当应用对时间精度要求较高时,不能达到要求。为了将以太网用于自动化系统的高精度时间同步,需要采用特殊的方式来满足应用的时间精度要求。IEEE 1588标准的精确时间协议(Preci—sion Time Protocol,PTP)就是基于以太网的高精度时间同步的解决方案。
IEEE 1588有两种类型的时钟:①参考时钟源,称为主时钟;②客户时钟,称为从时钟。从理论上讲,任何时钟都可以充当主时钟和从时钟。从时钟和主时钟通过交换同步信息来完成时间同步,同步过程分为两个步骤.
步骤1 偏差测量和偏差矫正过程如图1所示。在该过程中,主时钟按所定义的时间间隔,周期性地向所有从时钟发送同步报文,同步报文中携带该报文发送时刻的估计值。主时钟记录同步报文发出的精确时刻Tm,,从时钟记录接收同步报文的精确时刻t。。主时钟紧接着发送一个携带着L。的跟随报文,在接收到跟随报文后,从时钟计算偏差值
(6)
并将时钟矫正为
(7)
如果忽略传输线路上的延迟D,则从时钟和主时钟同步。
步骤2 延迟测量,用于测量主时钟到从时钟的传输延迟,测量过程如图2所示。从时钟向主时钟发送一个延迟测量请求报文,并记录发送该报文的精确时刻R,主时钟接收该请求报文并记录接收到的精确时刻氏,然后向从时钟发送携带%的延迟测量响应报文,从时钟收到该响应报文后,根据下面公式计算延迟
(8)
延迟测量的时间间隔可以大于偏差测量(默认值为4 S'60 s),也可以是非周期性地进行,这样网络负载会减轻。如果延迟时间比较稳定,则延迟测量可以稀发进行。
IEEE 1588 PTP协议之所以能提高时间同步精度,是因为跟随报文将同步报文发送的精确时刻发给从时钟用来进行时钟偏差的计算,而精确时刻是从硬件层获得的,比从应用层获得的时间值更准确。IEEE 1588的时钟精度可以达到1s以下。
1.3 数控系统运动控制层特征
针对数控系统特征,将数控系统运动控制层特征归纳为下面几点(“三不三要”):
(1)设备之间的距离不长因为数控系统运动控制设备分布集中,所以设备之间的距离不长,一般小于50 m。
(2)节点数不多因为运动控制层设备数有限,所以网络中的节点数比较少,一般小于32。
(3)数据量不大每个控制器和执行器之间交换的有效数据不大,一般小于14 Byte。
(4)通信周期要短通信周期的长短影响插补周期的长短,直接影响着加工的精度。当插补精度要求小于0.1 ptm时,插补周期必须小于1 ms,通信周期应该更短。因此,数控系统运动控制层追求通信周期时间越短越好。
(5)周期要准通信周期不仅要短而且要确定,上下抖动要小。
(6)要有严格精确的时钟系统保证同步操作数控系统的运动控制层属于分布式控制系统,需要严格精确的时钟系统保证各模块的精确协同操作。在考虑这些特征的基础上,本文提出了基于时间片冲突避免和精确时间同步的优化算法。
1.4 时间片冲突避免实时通信和精确时间同步算法及其优化
数控系统运动控制层现场总线应用比较成功的是SERCOS,它是一种用于数字伺服和传动系统的现场总线接口和数据交换协议,能够实现工业控制计算机与数字伺服系统、传感器和可编程控制器I/O口之间的实时数据通信,1995年被批准为IECl491 SYSTEM—Interface国际标准,在数控机械设备中得到了广泛应用。SERCOS接口由一个主站和若干个从站组成,各站之间采用光缆联接,构成环形网,站间的最大距离为80 m(塑料光纤)或240m(玻璃光纤),最大从站数为254,数据传输率为2Mbit/s~16 Mbit/s。第三代SERCOS各站点之间可以采用双绞线连接,支持以太网传输,传输速率可达100 Mbit/s。SERCOS协议定义了主站传给从站的同步电报、从站传给主站的伺服电报和主站传给从站的主站电报三种类型数据,并用分时技术实现实时通信,一个周期的通信步骤包括三步:
(1)主站向所有从站发送同步电报表示一个通信周期的开始。
(2)从站依次在自己的时间片内向主站发送伺服电报。
(3)主站向所有从站发送主站电报。本文借鉴SERCOS分时通信的思想实现实时通信,为协调数据通信处理和时间同步处理,在SERCOS通信思想的基础上,做了下面几点改进,以实现精确时间同步功能并提高通信效率:
(1)将主站传给从站的报文分为同步报文和跟随报文两类。同步报文表示一个通信周期的开始,并携带本地发送时间估算值;跟随报文中携带本地精确时钟以及主站发给各从站的下行数据。
(2)将主站数据报文和用于时间同步的跟随报文合二为一,称为跟随报文,以提高通信效率。
(3)一个通信周期包括同步报文、跟随报文、从站报文三部分,在实时通信周期基本不变的基础上完成了精确时问同步功能。根据数控系统运动控制层通信的特征,在设计算法中更注重通信的确定性,而不是网络统计性能的提高;采用简单的网络拓扑,尽鼍减少传输延迟;采用收集和分发并行处理技术,提高小数据块的传输效率;精简或跳过TCP/IP网络协议,减少端系统处理时间£。。;在初始化阶段进行精确时间协议延迟的测量,避免通信过程中做延迟测量处理;为避免过于频繁做时钟矫正,在算法中设定偏差阈值,只有偏差超过该阈值时才做矫正;将实时通信与时间同步处理有机结合在一起以提高效率。优化算法如下:
步骤1初始化处理,测量网络延迟D。
步骤2开始一个通信周期,主站向所有从站发送同步报文Sync.
步骤3主站将该Sync报文发到线路上时,取本地精确时刻L。。
步骤4各从站接收到该Sync报文时,记录本地精确时刻T5。。
步骤5主站向所有从站发送跟随报文,包括本地精确时钟L,和主站发给各从站的下行数据。
步骤6各从站接收到L-后,计算时钟偏差0=
步骤7各从站判断。是否超过阈值,如果超过,则调整本地时钟,否则不调整。
步骤8各从站从跟随报文中取出分发给自己的数据。
步骤9各从站依次向主站发送从站报文。
步骤lO进入下一个通信周期,转步骤2。
2 实时通信和时间同步的实现
2.1 网络结构
系统通过以太网将控制器、伺服驱动器、主轴驱动器等连接起来,逻辑上采用主从式结构。控制器称为主站,伺服驱动器、主轴驱动器等称为从站。为避免由于网络中问节点所带来的延迟,尽量使用总线型或星型等简单的网络结构,并尽量选择存储转发延迟为零或较小的连接设备。
2.2 报文格式
通信中传输的报文包括主站报文和从站报文。主站报文是主站发向从站的报文,其中携带有同步信号、指令和参数。主站报文包括跟随报文和同步报文两种。跟随报文的格式如图3a所示,报文头(14 byte)包括源站点的以太网介质访问控制(Media Access Control,MAC)地址、目标站点的以太网MAC地址和协议类型;报文尾是一个4 byte的循环冗余校验码,用于数据校验;数据区包含报文类、时间域和有效数据域。报文类用于区别同步报文和跟随报文,时间域存放对时数据;数据域包括主站分发给各从站的组合数据,对应每个从站有一个数据块,每个数据块中包括接收数据的从站的逻辑地址、主站发给从站的控制字,以及非周期数据和周期数据。从站的逻辑地址对从站的编号,用该编号代替MAC地址来区分系统中的所有从站;控制字是主站发给从站的控制指令的编号;非周期数据中携带通信过程中主站传给从站的非周期信息,如参数等;周期数据中携带通信过程中主站传给从站的周期数据,如位置、速度等。同步报文和跟随报文格式基本一样,唯一的区别是同步报文中没有数据域。
从站报文是从站传给主站的上行报文,报文格式如图3b所示。报文头和报文尾与跟随报文相同;数据区包括从站逻辑地址、状态字、非周期数据和周期数据。状态字是从站传给主站反馈信息的编号期数据中携带非周期信息,如系统报警等;周期数据中携带周期信息,如实际位置、速度等。报文中定义的非周期数据、周期数据长度可以配置,其他域的长度可以设置为常量。
2.3 时间片配置策略
要保证算法的稳定性,需要研究算法的时间片配置策略。假设系统中有1个主站,咒个从站,r是同步报文的传输时间,m是跟随报文的传输时间,s是从站报文的传输时间。是周期数据节点的采样周期(也为通信周期),盯是每个节点的服务开销(包括服务处理时间等)。则通信的稳定性条件为
(9)
进一步考虑跟随报文中包含传给各从站的信息,则跟随报文的传输时间取决于分配给每个从站的传输时间、从站个数、报文类长、时间域长和报头报尾的长。假设分配给每个从站的数据块传输时间长度为b,报文类时长“,时间域时长u,报文头时长h,报文尾时长P,则有
(10)
又设从站地址时长O。、控制字时长O。、非周期数据时长a和周期数据时长c,则有
(11)
将式(11)代入式(10),
得 (12)
设从站报文中的地址时长O,、状态字时长O。、非周期数据时长d和周期数据时长P,有
(13)
将式(12)和式(13)代入式(9),得
(14)
设为常量,并假设每个节点的服务开销盯是常量,同步报文按以太网最小报文处理,则r也可看成常量,这样式(14)可以化简为
式(15)就是通信周期的稳定性条件。配置合适的Pi满足式(15)的条件就可以保证通信的稳定性。在数控系统应用中,每个从站传输的数据格式往往是一样的,这样式(15)可以进一步化简为
(16)
2.4 通信过程
通信过程分为五个阶段:
(1)参数生成阶段主站测量同步报文、跟随报文、从站报文的时间片长度和网络延迟时间,并记录各站点的MAC地址和为各站点分配的逻辑地址。主站通过向各从站发送报文,并接收从站响应报文的方式测量往返延迟,用“往返延迟/2”估算网络延迟和时间片。主站将这些信息写入配置表,并根据这些信息生成配置表中各报文的发送时间参数,式(17)为计算方法,其中J为报文编号,从1开始按同步报文、跟随报文、从站1、从站2的次序编下去。Start(j)为第个报文的发送时刻。每个报文的发送时刻为其前面所有报文所占时间片Slot,的和。若该阶段运行正确,则进入阶段(2),否则报错。
(17)
(2)初始时间同步阶段按1.2节介绍的算法进行时间偏差测量与矫正。若该阶段运行正确,则进入阶段(3),否则报错。
(3)参数分发阶段主站向所有从站广播发送配置表信息,各从站接到配置表信息后,在分配给它的时间片内向主站发送响应报文。主站检查是否所有从站的响应报文都被接收,如果都被接收,则进入阶段(4),否则报错。
(4)试运行阶段主站在配置的时间片内发送同步报文和跟随报文,从站在分配的时间片内向主站发送应答报文。主站根据配置表与从站的响应时间来判断从站的参数配置是否合适。若不合适则返回阶段(1),调整参数;若合适,则进入阶段(5)。
(5)正常运行阶段在此阶段周期运行1.4节所介绍算法的步骤2~步骤9。
3 实时通信与时间同步的实验与分析
3.1 实时性评价
为便于说明,定义变量:‰为跟随报文分配给每个从站数据块中非周期数据和周期数据长度的和;l鲥为从站报文中非周期数据和周期数据长度的和。
为减少t。,。或服务开销6r,实验中采用旁路TCP/IP,直接在以太网网络接口卡(Network Inter—face Card,NIC)上发送和接收数据的方式来减少这方面的延迟。表1所示为实验中采用的九种场景,以及时间片的理论计算和实际配置值的比较,理论计算方法参见2.3节。为简化计算,时长一数据长度/网络带宽,带宽采用100 Mbps,时间域长4Byte,报文类域长2 Byte,控制字、状态字2 Byte,逻辑地址1 Byte,服务开销忽略。从表1中可以看出,在4个从站的情况下,传输6 Byte/9 Byte的‰/Zsd数据,通信周期可以配置为60“s;在15个从站的情况下,传输14 Byte/61 Byte的lmd/15d数据,通信周期可以配置为217“s。分析表1中数据可以看出,时间片的实际配置值比理论计算值稍大了些,原因为:①理论计算中忽略了服务开销和端系统处理时间;②若要考虑重传等可靠性处理,还需将通信周期配置得更大一些,留空隙用于重传处理。
3.2 同步精度评价
为评价时间同步精度,在从时钟节点和主时钟节点之间采用包交换的方式测量时间误差。在网络中选择一个节点做测试节点,测试步骤如下:
步骤1 主时钟节点通知测试节点开始一次测量。
步骤2测试节点向主时钟节点和所有从时钟节点广播发送一个测试报文,并记录测试报文的发送时刻丁。
步骤3 主时钟节点接收到测试报文并记录下接收时刻L,将带有t的响应报文发回给测试节点。
步骤4 同时,每个从时钟节点接收到测试报文,并记录下接收时刻T。。
步骤5每个从时钟节点将带有Tc的响应报文发回给测试节点。
步骤6测试节点为每个从时钟节点计算时间误差
(18)
根据该测试方法设计了测试实验。为了运行误差测量程序,将通信周期延长为正常部分和测量部分。正常部分完成同步与实时通信,测量部分完成误差测量。为减少测量过程中t。。时间不确定性所带来的误差,采用接近硬件层的处理方法。通过对大量误差样本的统计分析,误差平均值为6弘s。最大值不超过10弘s。图4所示为测量所得误差的分布情况。
分析时间同步误差产生的原因:①采用往返延迟的一半来估算主时钟到从时钟的单向延迟,而算法中采用单向延迟计算偏差值,这会带来一定的误差;②通信过程中的延迟存在动态抖动,会影响算法的精度,从而带来一部分误差。
4 安全性、可靠性分析
4.1 安全性分析
以太网对数控通信的安全威胁主要表现在传输过程中数据被截获或读取、黑客连入通信并偷听或使用数据、进行可用性攻击或病毒攻击。以太网用于数控运动控制层通信是面向控制的,为保证其不被外部病毒等干扰,在物理上不与外部网络相联,而通过另外的网络接口接人外部网。
4.2 可靠性分析
对于数控系统运动控制层通信来说,不能允许任何节点出现故障。一旦出现故障,系统必须做故障处理,此时若故障能够自行排除,则恢复加工进程,否则机床停机等候人工处理。因此,故障检测和处理是保证数控机床安全运行的重要功能模块。在做实际应用设计时,可通过下列机制进行系统故障检测和处理:
(1)主站在接收所有从站报文时,为每个从站设置一个超时计数器,记录从站的通信状况,如果传输超时,则在不影响周期时间的前提下,在周期间隙时间控制重传;若重传失败,则将故障信息及时上报上级数控系统。
(2)在从站报文状态字中设置错误位,通过它将从站错误信息上报主站,上级数控系统根据错误码进行故障处理。’
(3)在从站报文的状态字中设置繁忙位,通过它将从站繁忙/空闲的状态上报给主站,上级数控系统根据此信息判断是否放慢节怕以便与从站同步。
(4)对接收的数据,在以太网本身进行循环冗余检查(Cyclic Redundancy Check,CRC)校验的基础上,系统还进行数据的有效性检验;对于非有效的数据,上报上级数控系统,并通过设置报文中的错误位和错误码通知发送方进行重传或其他故障处理。
5 结束语
本文的研究基于以太网的实时通信调度和精确时间的同步,给出了一种优化算法,以满足数控系统运动控制层通信的实时和时间同步要求。基于该算法,提出了保证系统稳定可靠运行的时间片配置策略,设计了数控系统运动控制层通信协议。最后,通过实验,分析和验证了系统的性能,为新一代网络数控系统的研制提供了参考。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:基于以太网的数控系统实时通信和时问同步