运动控制系统光纤通信数据传输差错控制策略
2014-05-25尹涓罗福源
尹涓罗福源
(南京航空航天大学金城学院1,江苏 南京 211156;南京航空航天大学机电学院2,江苏 南京 210016)
运动控制系统光纤通信数据传输差错控制策略
尹涓1罗福源2
(南京航空航天大学金城学院1,江苏 南京 211156;南京航空航天大学机电学院2,江苏 南京 210016)
光纤通信具有速度高、抗电磁干扰等优点,但是在运动控制系统模块之间应用光纤通信时,误码与意外传输延迟会影响控制系统的可靠性和稳定性。针对此问题,根据运动控制数据的特点,提出了选择性重传策略与冗余数据帧传输策略,制订了当连续检测到两个错误帧或者超过最大允许时延没有接收到数据帧时立即停机的应急措施,并给出了基于增广矩阵求解该最大允许时延的计算方法。耐久性试验表明所提出的策略与方法正确有效,能够保证系统长期稳定可靠地运行。
运动控制 光纤通信 误码率 差错控制 冗余数据帧 最大允许时延
0 引言
随着运动控制系统朝着高速度、高精度、网络化方向发展,如何在控制系统的控制器、传感器和执行器三大模块之间进行实时、准确、可靠的数据传输成为新兴的研究热点[1-2]。在集散式多轴运动控制系统中,传感器和执行器分布在与控制器相距较远的物理位置[3],如果使用普通的通信电缆进行长距离数据传输,则由于电磁干扰、信号衰减、时钟歪斜等,难以实现高速传输。光纤通信具有传输频带宽、通信容量大、中继距离长、电磁干扰免疫力强、连接件紧凑等优点[4],因此,使用光纤作为通信介质在传感器和控制器之间以及执行器和控制器之间建立高速串行数据传输信道,不仅能够满足高速高精度控制的要求,还使得系统连线简洁,层次清晰,易于开发和维护。
然而,在这种基于光纤通信的运动控制系统中,存在两种可能的数据传输错误:一是传输数据流中含有错误的比特,即误码;二是传输延迟时间超出了允许的范围。对这两种错误,如果不加以检测和控制,必将影响控制精度,甚至危及到系统的稳定性。本文从控制理论的角度分析了这两种错误的形成原因及其对运动控制系统的影响,并根据运动控制数据的特点提出了相应的差错控制策略。
1 误码率与差错控制
1.1 误码率与MTBF的关系
误码率(bit error rate,BER)是衡量信道传输可靠性的重要指标,它等于错误接收的比特数与传输的比特总数的比率。当通信链路中的发送器与接收器直接相连并按照正确的参数工作时,误码率为零[5]。随着诸如光电转换器、光纤、光纤收发器、连接器等其他元器件加入到光纤通信链路中,信号产生衰减、散射、抖动和直流偏移等失真现象,误码率开始上升。一般用于高可靠性数据传输系统的光纤信道,其误码率要求小于10-12。更小的误码率意味着更高的成本,而且误码率不可能为零。当误码率与时间相关联时,利用式(1)可以折算出平均无故障时间(mean time between failures,MTBF)。
式中:Pe为误码率;Br为波特率。
对于一个误码率为10-12的光纤信道,如果数据传输速度为200 Mbit/s,那么平均无故障时间为1.38 h,即平均1.38 h就将出现一个比特错误;如果数据传输速度为400 Mbit/s,那么平均0.69 h就将出现一个比特错误;而且数据传输有可能在比平均时间更短的时间间隔内出现一个比特错误。
在运动控制系统中,当检测到错误的数据时,立刻采取紧急停机的措施是不可取的,但是含有误码的数据可能与准确发送的数据相差甚远,乃至引起执行器的错误动作或极大的运动偏差,所以此种误码数据不应该用于运动控制。因此,根据运动控制数据的特点,建立一种差错控制机制,保证运动控制系统各模块之间长时间的可靠数据传输极为必要。
1.2 重传与前向纠错可行性分析
目前,在数字通信系统中,从含有误码的数据中恢复出正确的数据有三种策略[6]:一是重新传输出错的数据,二是采用前向纠错技术,三是混合纠错技术,即当前向纠错无法恢复正确数据时再请求重新传输。运动控制系统是一个强实时系统,采用重新传输策略将增加一个来回的数据传输时延,在采样周期很小的情况下,系统不允许这种时延。此外,对于传感器模块来说,除非它保存有一份最近采样的数据拷贝,否则要想重新传输就要重新采样,这无形中又增加了采样时延。更严重的是,由于被控对象是时间连续变化的,所以重新采样得到的数据并不同于原先传送的数据,但是重传数据的接收方——数字控制器将无视这个差别,并仍沿用固定的采样周期和控制律进行计算,这将导致较大的计算误差甚至错误的计算结果。例如,在式(2)所示的PID控制算法[7]中,重新采样计算得到的控制偏差e(k)与上一周期正常采样计算得到的控制偏差e(k-1)之间的采样时间间隔不再是采样周期T,但控制器会不加区别地使用式(2)计算控制器输出u(k),显然计算结果将会产生较大误差。
式中:k为采样序号,k=0,1,2,…;u(k)为第k次采样时刻的计算机输出值;Kp为比例常数;e(k)为第k次采样时刻输入的偏差值;e(k-1)为第(k-1)次采样时刻输入的偏差值;T为控制周期;Ti为积分时间常数;Td为微分时间常数。
据此分析,重新传输策略在高速高精度运动控制系统中是不可取的。前向纠错技术相对先进,避免了重传数据的时延,也不存在重新采样的危害,但是要纠正的误码越多,相应的编码和解码的算法越复杂,所导致的时延也就越长,因此,前向纠错也不是理想的策略。混合纠错技术可以取得较小的平均时延和计算复杂度,但是当需要重新传输时,还是会不可避免地产生较长的时延。总之,前述三种在计算机网络与通信领域广泛使用的差错控制策略难以满足运动控制系统数据传输的要求。
1.3 选择性重传策略
数字闭环运动控制系统以周期性的反馈控制为特征,控制系统的各个模块之间传输的数据主要是周期性数据,比如来自传感器模块的位置和速度采样数据,传送到驱动器模块进行DAC(数模转换)的伺服控制数据等。此外,控制系统中寄存器初始化、参数设置、远程复位、随机状态查询、模式切换等运动控制指令主要是非周期性数据,它一般对准确性要求十分严格,但对实时性的要求比周期性数据弱一些,在采样周期很小的情况下,延迟一个采样周期是可以接受的。通过分析运动控制数据的特点,可以采用选择性重传策略降低误码率,即可以针对周期性和非周期性数据采取不同的重传策略。
1.3.1 组织数据帧
在系统规划时把运动控制模块之间需要传输的所有控制数据,无论是周期性还是非周期性的,按照发送方和接收方约定的数据帧格式封装成一个数据帧。数据帧格式的内容包括帧头定义、帧开始标志、帧结束标志、校验码计算公式以及每个控制量在数据帧中所处的相对位置、占用的数据长度以及在内存中的映射地址等。为了提高系统的稳定性,在每个采样周期均发送长度固定的数据帧,当非周期性数据为空时仍与周期性数据一同周期性地传输,以保证传输时延的恒定。如图1所示为一个简单而完整的数据帧格式,它包含了一个帧头和两个数据段。
图1 数据帧格式举例示意图Fig.1 Example of data frame format
图1中,L为帧长度,CHS为求和校验码,其计算公式为:
式中:n为数据段号(帧头中n=0);“~”为按位取反运算符;byte[i]为一个32位数据的第i个字节(i=0, 1,2,3)。
1.3.2 数据确认机制
接收方在接收数据帧时通过校验码验证数据的正确性。如验证结果为数据有误,则拒收当前整个数据帧,并向发送方发送一个表明数据有误的否认帧,如图2所示;如验证结果为数据无误,则完整地执行运动控制命令,并向发送方发送一个表明数据已经正确接收的确认帧,如图3所示。由于确认机制的引入,运动控制系统的执行器和控制器模块之间以及传感器和控制器模块之间需要建立点对点全双工光纤通信。
图2 数据传输错误的处理过程Fig.2 The processing for fallacious data transmission
图3 数据传输正确的处理过程Fig.3 The processing for correct data transmission
1.3.3 选择性重传
发送方无论收到确认帧还是否认帧,均不立即重新传输数据,而是分别对周期性和非周期性数据采取不同方式组织数据帧,在下一周期进行处理。如图2所示,如果发送方收到的是否认帧,则认为接收方没有执行非周期性运动控制指令,而忽略上一周期的周期性数据,在下一个周期,把上一周期尚未执行的非周期性数据与本周期正常更新的周期性数据组织成一个数据帧发送出去。如图3所示,如果发送方收到的是表明数据无误确认帧,则认为接收方已经执行了非周期性运动控制指令与周期性数据,在下一个周期,正常发送下一周期的数据,并且发送方修改非周期性数据中要求执行的标志,以避免接收方重复执行相同的指令。或者,发送方对执行标志不作任何修改,而让接收方根据内部状态决定是否要执行接收到的非周期性控制指令,这样也可以达到避免重复执行的目的。表面上,无论哪一种方法,数据都没有重新传输,实质上周期性传输的数据帧中的非周期性数据已经被多次重新传输了,所以这是一种较为隐蔽的选择性重传策略。
1.3.4 必要的应急措施
在误码率小于10-12的情况下,重新发送的非周期性数据几乎不会再出现传输错误的情况,这样经过重新传输之后,非周期性数据就能够被无遗漏地准确执行。一般认为除非是光纤通信链路工作不正常,比如光纤收发器出现故障,连续出现两个数据帧错误的概率远远小于单独出现一个数据帧错误的概率,所以当连续两次检测到数据帧错误时,应当采取紧急停机措施。具体实现办法是,任何模块在连续两次检测到错误数据帧时,立即通过专门的电流环路向执行器报告,后者瞬间禁止电机功率放大器工作,以防止电机的错误运行,如图4所示。
图4 电流环路传递紧急信号示意图Fig.4 Emergency signal transmission through circuit loop
当运动控制系统的光纤通信链路按照上述通信策略运行时,如果某个模块检测到单独一个数据帧出错,系统不会紧急停机,也不会重新传输出错的数据帧中的周期性数据,即出现了帧丢失。当帧丢失发生在执行器模块时,当前周期的零阶保持器的输入将保持不变;当帧丢失发生在控制器模块时,当前周期的反馈状态将保持不变。据此可以建立数学模型,定量地分析系统的稳定性。文献[8]给出了存在时延和数据包丢失的网络控制系统的稳定性判定方法。由于在高速高精度运动控制系统中,采样周期很小,光纤通信误码率也非常小,系统运行环境要比网络控制系统优越得多,因而可以得出上述选择性重传策略不会影响系统稳定性的结论。另外,因为采样周期很小,相邻周期的两个反馈状态数值相差不大,可以把发生帧丢失时的反馈状态没有得到更新的情况视为系统受到了极小的噪声干扰。所以从伺服控制的原理可知,上述选择性重传策略不会影响系统的稳定精度。
1.4 冗余数据帧策略
尽管这样,出错的数据帧中的周期性数据没有得到更正是令人遗憾的。分析数据帧的传输情况可知,在运动控制系统中,包含反馈状态信息的数据帧总是周期性地传输的,而且数据帧相当短,数据帧之间大量充斥着同步状态字符,光纤通信链路的带宽没有得到充分利用。据此特点,通信系统可以改用以下冗余数据帧传输策略。
1.4.1 组织和发送数据帧
按照1.3所述方法进行数据帧的组织和发送。数据帧的格式及校验方法完全相同,所不同的是,在每个采样周期发送两个相同的数据帧。后一个数据帧是前一个数据帧的拷贝,即冗余数据帧。为了提高同步性能,在这两个数据帧之间插入两个同步字符。
1.4.2 数据确认机制
接收方接收到数据时首先验证第一个数据帧的正确性。如果第一个数据帧无误,就采纳其中的数据;如果有误,就拒收整个数据帧,再去验证后面的第二个数据帧。如果第二个数据帧无误,就采纳其中的数据。为了保证在不同情况下传输时延严格一致,无论第一个数据帧有无错误,接收方在验证两个数据帧之后才真正接收运动控制数据。如果两个数据帧都有误,就采取紧急停机措施。根据1.3中的分析,在误码率小于10-12的情况下,连续两个数据帧错误的概率是相当小的,正常工作的光纤通信链路几乎不会出现这种情况。
上述冗余数据帧策略不仅可以保证周期性和非周期性数据都被准确无误地传输,而且避免了重新传输导致的时间浪费,省去了确认帧和否认帧的发送和应答过程,具有更好的实时性。因为数据帧长度仍然是固定的,所以不会造成忽大忽小的传输时延。该策略的代价是冗余的数据帧使得数据帧的总长度增加了一倍。但是因为实际的数据帧相当短,冗余数据帧引起的帧发送、验证、接收时延是微不足道的。由于没有任何一帧数据丢失,控制系统的性能完全不受到影响。
2 最大允许时延及其控制策略
当光纤断裂、光纤接头被误拔、控制器的计算程序陷入死循环或者耗时的中断处理等情况出现时,光纤链路的接收方将长时间收不到数据帧。如果这个时延超过一定的范围,控制系统的稳定性就会受到影响。上述差错控制策略不能有效防止这个问题。因此,需要补充一个规定,即如果执行器模块或控制器模块在最大允许时延范围内没有收到任何数据帧,系统就采取紧急停机措施。如果借助李亚普诺夫稳定性判据求取最大允许时延,则存在寻找正定矩阵的困难[9],而使用连续时间系统模型求解又不符合离散控制系统的实际情况,因此这里使用下面的方法来求取。
设控制输入当且仅当t=mNTs(m,N都是正整数)时刻得到更新,其他时刻因为光纤通信链路不正常而收不到数据包,这时由于零阶保持器的作用,控制输入将维持N个周期不变化,即:
联立式(4)和式(5),可得到由N个状态方程构成的方程组(6):
当t=(m+1)NTs时,控制输入被更新,故有:
令:
可得到增广矩阵方程如式(9)所示。
对应的输入增广矩阵方程为:
式(9)得:
其中,Gd=Ed-KdFd。因为式(11)实际上由N个状态方程构成,故其对应的特征方程为det[zNI-Gd]= 0。设θj(j=1,2,…,N)为方阵Gd的特征值,则系统的实际特征值为:
表1 时延增加对矩阵特征值幅值的影响Tab.1 The delay influence on the amplitude of matrix eigen value
由表1可见,λ随着N增加而慢慢增大,当N>24时,λ≥1。故保持系统稳定允许的最大时延是23个采样周期,即(N-1)Ts=(24-1)Ts=23Ts=0.023 s。
求出最大允许时延,即可通过在执行器模块和控制器模块内设置定时器的方法来实现控制策略。
3 结束语
结合控制理论和通信原理,提出了两种适合于高速高精度运动控制系统的光纤通信差错控制策略:选择性重传和冗余数据帧传输。规定当连续接收到两个错误的数据帧或者超过最大允许时延没有接收到数据帧时,必须采取紧急停机措施,并从控制系统的稳定性出发论证了这两项规定的合理性,给出了求取最大允许时延的计算方法。所提出的控制策略与方法已经在自主研发的基于DSP与FPGA的多轴闭环运动控制系统中成功实施。经过长达一星期不间断的耐久性试验后,该运动控制系统仍然能够稳定可靠地运行,未发生数据传输故障。当光纤插头被不慎拔掉时,系统能够立即进入停机保护状态,并在光纤插头被重新插入后自动复位。这证明所提出的控制策略是正确有效的,能够保证系统长期稳定可靠地运行,对于延长平均无故障时间以及防止错误操作损坏机器起到了重要作用。
[1] 田海江.使用光纤作为通信介质的高速串行链接通信解决方案[J].信息与电脑,2013(1):157-158.
[2] 周侗,胡静涛,杨志家.运动控制网络调度方法分析[J].自动化仪表,2013,34(4):44-46.
[3] 马骏,黄攀峰.一种网络化伺服电机运动控制系统设计[J].计算机测量与控制,2011,19(1):69-70,77.
[4] 袁建国,叶文伟.光纤通信新技术[M].北京:电子工业出版社, 2014:1-8.
[5] 马万治,唐友喜,赵贤,等.瑞利信道中无线通信设备误码率测试仪实现[J].电子测量与仪器学报,2010(5):414-419.
[6] 田真,袁东风,梁泉泉.无线传感器网络差错控制技术的能效分析[J].通信学报,2008(11):77-83.
[7] 陶永华.新型PID控制及其应用[M].北京:机械工业出版社, 2003:2-7.
[8] 李欣,李若琼.具有时延和数据包丢失的动车组网络控制系统建模方法研究[J].自动化与仪器仪表,2012(3):35-36+39.
[9] Zhang W.Stability analysis of networked control systems[D]. Cleveland:Case Western Reserve University,2001.
[10] Therrien F,Kocar I,Jatskevich J.A unified distribution system state estimator using the concept of augmented matrices[J].IEEE Transactions on Power Systems,2013,28(3): 3390-3400.
Control Strategy for Data Transmission Error of Optical Fiber Communication in Motion Control System
Optical fiber communication features high speed and good anti-electromagnetic interference capability,but when optical fiber is used in communication between modules of motion control system,bit errors and unanticipated transmission delays may affect the reliability and stability of the control system.Aiming at this problem,in accordance with the characteristics of the data in motion control,selective retransmission strategy and redundant data frame transmission strategy are proposed;and the emergency response measures are drawn up,i.e., when two error frames have been detected,or no data frame is received after maximum allowable delay is exceeded,the system will shut down immediately;and the calculation method based on augmented matrix for solving the maximum allowable delay is given.The durability test shows that the strategies proposed are correct and effective,long term and stable operation of the system can be guaranteed.
Motion control Optical fiber communication Bit error rate Failing control Redundant data frame Maximum allowable delay
TP273
A
国家自然科学青年基金资助项目(编号:501205200);
江苏省自然科学青年基金资助项目(编号:BK2012388);
江苏省高校自然科学研究基金资助项目(编号:14KJB460017)。
修改稿收到日期:2014-08-02。
尹涓(1976-),女,2004年毕业于广西大学机械电子工程专业,获硕士学位,讲师;主要从事数控系统及仿真、智能机器人、可编程控制器与机电一体化技术的研究。