, ,,国强,
(1.北京精密机电控制设备研究所, 北京 100076; 2.北京特种机械研究所,北京 100143)
光纤传输技术在伺服远程测试系统中的应用
盛文巍1,王静1,刘睿智1,王国强2,李钢1
(1.北京精密机电控制设备研究所,北京100076; 2.北京特种机械研究所,北京100143)
远程数据传输是伺服远程测试系统的一项重要研究内容;由于伺服系统在地面测试过程中有大量突发性数据需要进行传输,而且对实时性要求比较高,以往的伺服测试系统使用以太网TCP/IP协议进行数据传输,这种传输方式延迟会很高,最终造成伺服测试系统的实时监测与实际产品的动作严重脱节,无法正常完成伺服系统地面测试任务;为了解决以上问题,对以太网协议数据传输延迟进行了分析,同时对高传输速率的光纤传输技术进行了研究,并将其应用到伺服远程测试系统中,很好解决了以太网数据传输延迟性高的问题。
数据传输;实时性;光纤传输
伺服系统是航天产品控制系统的执行机构,是航天产品控制回路的重要环节。伺服系统的性能直接关系到航天产品的控制稳定性,因此伺服系统的测试非常重要[1]。伺服远程测试系统是伺服性能测试的重要工具,其由多个节点组成,在节点间有大量突发性数据传输,并且测试对实时性要求较高。在远程测试系统中,延迟主要由数据传输网络造成。在航天产品伺服测试中测控系统往往采用上、下位机的分布式网络结构,其中上位机作为数据服务器,位于单元测试间,下位机作为测控服务器,位于伺服系统产品近端。现有的伺服测控系统节点间数据传输网络是利用双绞线和交换机组建的以太网,使用TCP协议进行通讯。由于以太网的突发大数据量传输延迟会很高,从而造成伺服测控系统实时监测与实际产品动作严重脱节,无法正常完成测控任务。所以,针对以太网的高延迟性,本文主要介绍了以太网传输网络的延迟性分析以及光纤网络的优势和设计思路[2-7]。提出一种基于光纤传输技术的远程实时测控系统的研制方案。
1)以太网自身的限制:物理层使用以太网结构组建计算机网络时,无中继器环境下,为了保证信号强度,单根网线的长度不能超过100米,即使是超5类具有电磁屏蔽的双绞线,在通讯距离较长的复杂环境中也会明显出现信号的衰减。
2)TCP协议的限制:TCP协议是面向连接,可靠的数据传输协议,但是协议本身只保证数据能够正确的发送至对方网卡,加入不能及时从网卡提取数据,会造成网卡缓存溢出或数据丢失,TCP协议不能处理此问题。同时,TCP协议传输较大数据包时,延迟也会随之增加。
3)操作系统的限制:在windows平台以TCP方式对外发送的数据包中数据区的长度具有限制,并且与操作系统有关。在一个线程发送数据的情况下,单个数据包所能携带的数据长度才是整个网络数据传输的瓶颈所在,与网卡的规格无关。如果欲发送的数据超过了该最大值,则必须认为将数据分包发送,并且每个数据包之间需要间隔一定的时间与计算机硬件运行速度有关。按照目前采用windows平台开发,模拟采集64通道来计算(不包括1553B板卡采集数据),按照最大数据量,平均每个数据包中每个通道仅为16~17个点,远远不能满足测试的需要,如果分包发送,则人为的增加了数据的延迟,导致客户端实时显示与服务器端实际测试之间产生严重不同步,从而影响了整个测试流程执行时间的准确性。
综上所述,全双工以太网数据传输的冲突检测和重试以及TCP协议下数据包大小受到限制,数据的传输需要接收方的确认,增加了网络开销和延迟。因此必须设法改变以太网传输方式以解决以数据传输延迟的问题。
放弃以太网TCP方式传输数据的方法,改为由内存反射卡承担数据传输的任务。内存反射卡的基本功能是实现不同计算机之间的内存共享,板卡具有一定容量的板载缓存,当数据写入板载缓存时,板卡会自动通过光纤将数据同步至与其连接的内存反射卡中,之后通过发送中断通知对方板卡数据可以取读,数据包延迟为400 ns,由于该办法数据的发送和接受为不同的线路,所以数据流是单向的,不会出现全双工以太网的数据冲突,有效降低了数据传输的实际延迟。内存反射卡代替以太网TCP/IP方式传输数据方案具有以下优势:
1)数据传输速率高, 板卡间数据带宽可达并且2 Gbit/S没有以太网单个线程无法完全使用其带宽的问题。
2)信号抗干扰能力强,板卡间的数据传输通过光纤进行,多模光纤的传输距离为100 m,单模光纤的传输距离可达300 m。
3)内存反射卡不需要识别数据类型,只需使用内存地址和长度即可将数据由内存复制到板载缓存并发送,同样数据接收方只需知道板载缓存地址和长度便可将数据完全读出,中间没有数据的转化解析过程,从根本上解决了计算机负载高的问题。
在模拟量信号采集64通道,5 K采样率的条件下,方式a可以完成数据的传输。此时已经影响了数据采集和显示。当提高采样率至10 K,模拟量信号采集的同时加入了数字量采集数据时,同步方式占用的时间过多,会出现来不及执行读取板卡缓存函数的命令,使板卡缓存溢出的现象。
在模拟量信号采集64通道,5 K及10 K采样率的条件下,方式b可以完成数据的传输,而且不会占用数据采集的时间,但是由于异步传输方式数据发送频率较同步方式高,上位机在接收数据过程中CPU的占用率始终为100%,数据信号的显示具有较大的延迟,并伴有一定几率的数据丢失现象。
2.3.1 硬件设计
上位机为控制端,插有一块光纤内存反射卡,下位机插有内存反射卡和其他功能板卡。功能板卡通过适配箱控制被测产品。上下位机通过光纤组成一个环型光纤通讯网络。下位机从通讯网络获取上位机指令,控制被测产品,取得测试数据回传给上位机进行实时曲线显示和数据分析处理。设计过程中始终把产品的可靠性放在第一位,充分借鉴吸收伺服测控系统的成功经验,优化系统结构设计,强调模块化、标准化和通用化,突出硬件的可重用性,在设计中采取电磁兼容设计,减少元器件的品种和数量,同时也减少可调器件数目。采川了PXI工控机平台,通过插针方式,大大提高了板卡的接插牢固程度。PXI机箱的外型、结构小巧与VXI机箱的外型、结构相似,具有良好的防冲击、防腐蚀、散热和电磁屏蔽功能,与PCI方式的机箱相比较具有更好的抗振动性能。测量系统机箱采用减振结构,进一步提高了设备的抗振性能。采用PXI极卡,提高测量系统的安全性和可靠性。选用19’标准机柜放置计算机、适配箱,提高系统结构可靠性。测量系统具有可靠性高、可操作性强、使用方便等优点。硬件结构如图1所示。
图1 测试系统硬件结构图
2.3.2 软件系统
上下位机测试软件启动后,下位机软件根据配置信息尝试连接上位机,在上位机的控制下协商光纤通讯网络缓存参数。缓存可以满足并发的指令传送、板卡控制和数据传输。缓存使用逻辑流程如图2所示。
图2 测试系统软件逻辑图
1)上位机软件启动,上位机光纤卡处于监听状态。
2)下位机软件启动,下位机光纤卡请求连接。
3)连接成功后下位机测试参数通过光纤卡上传到上位机软件。
4)上位机与本地参数比较计算得到通讯缓存起始地址和长度。
5)根据上位机发送的缓存参数设置下位机本地缓存。
6)向下位机发送缓存指令,下位机接受指令并且校验正确后控制被测产品运动并采集测试数据,标记队列缓存块为使用,失败重试。
7)下位机向上位机发送测试数据。
8)上位机接收数据并标记队列缓存块为空闲,失败重试。
9)上位机接收数据完成后返回6),未完成继续接收数据。
10)下位机发送指令完成后继续置为等待指令状态。
在实际测试过程中,数据服务器和测试服务器位于不同的工作位置上并通过光纤内存反射网络进行数据传输。软件系统由存放于数据服务器端和测试服务器端的两部分组成,即客户端软件和服务器端软件,通过自协商缓存大小的握手协议和基于数据块队列的传输协议进行原始数据的可靠传输。使用中断通知和中断优先级队列降低上下位机系统负载,提高可靠性和稳定性。
软件设计过程中需要注意缓冲设计,反射内存网络中各计算机节点具有的共享内存参数可能不同,网络中各计算机会在主机的控制下进行网络数据传输参数的协商,保证网络中节点计算机拥有的共享内存大小,地址,速率相同;网络参数协商结束后,各节点会将共享内存根据产品特性划分为一定数量的带有标记功能的数据块进行管理;下位机的采集数据打包后按块进行传输,将数据块进行标记后通知主机,主机将标记的块的位置信息向网络中广播,阻止其他节点对标记后的数据块进行写入操作,保持共享内存中数据的一致性。节点计算机取得数据后通知主机,由主机在接收到所有节点的读取数据完成通知后将数据块回收,排入可用数据块队列;反射内存网络协商网络参数时,每个节点在共享内存中会被分配一个唯一区域用于本节点的心跳信息更新,每个节点定期监测其它节点的心跳信息,如果在设定阀值时间内心跳信息无变化,网络可能中断,则节点可根据自身的网络异常处理机制机制进行处理。
基于数据块队列的传输协议是将光纤内存反射卡的板载缓存根据预设计算值划分为固定大小的数据块队列,原始数据在网络中以数据块为单位进行传输,按先进先出原则组成数据通讯缓冲区,可有效减少通讯双方的计算量。同时根据实际需要调整预设值使数据块大小符合Windows操作系统内存管理优化条件,减小操作系统通讯负载。
(1)使用两台PXI[8-12]计算机作为上下位机,以VMIC 5565光纤内存反射卡作为通讯网络节点,节点间用两根单模光纤连接,组成一个环型网络。该卡使用内存映射技术实现实时通信,具有实时性强、可靠性高、使用简单,通常两结点数据传输时延迟为纳秒(或微秒)级,实现计算机高速互联。
2)通讯网络中的节点定时在固定位置利用网络剩余带宽更新自身的心跳信息,该信息由主控上位机进行监测,如果心跳信息在阀值时间内没有更新,则主控上位机进行网络故障处理,增强网络的健壮性。
3) 添加监视计算机和存储计算机后,可以使用光纤Hub组建星型通讯网络测试系统,可以减少环型网络的通讯延迟,整体结构如图3所示。
图3 星型网络连接图
4)进行测试时,需要采集的模拟信号通过与伺服系统连接的电缆传送到适配箱内,摆角测量信号由采集电缆送入A/D采集卡,由下位机完成伺服测量信号的处理,最后将处理后的数据通过光纤发送至上位机显示。
为验证光纤传输方案优于以太网传输方案,在模拟采集64通道,5 K及10 K采样率的条件下使用伺服远程测试系统进行试验,计算机配置如下:
上位机: Pentium M单核2.0 GHz, 2 G内存
下位机: Core Duo2 T7500双核2.2 GHz,4 G内存
实验发现,以太网传输方式可以完成数据的传输,而且不会占用数据采集的时间,但是由丁数据发送频率较高,上位机在接收数据过程中CPU的占用率始终为100%,数据信号的显示具有较大的延迟,并伴有一定几率的数据丢失现象。软件运行过程中下位机的CPU占用率在50%~60%左右,上位机开始接收数据后CPU 占用率始终为100%,下位机关闭读取板卡的相关函数后CPU占用率在50%左右浮动,换算为单核则在100%以上,下位机不执行读取板卡缓存函数命令后,上下位机的数据运算量相似,并且由下位机的CPU核心执行效率远高于上位机的CPU核心执行效率,所以上位机CPU在接收数据过程中处于超负荷执行状态,正因如此,一旦上位机操作系统某个进程占用的时间片稍多,就会出现数据丢火现象,同时显示控件无法获得足够的CPU时间片处理数据,造成数据显示的延迟。
光纤传输方式可以完成数据的传输,而且不会占用数据采集的时间,上位机在接收数据过程中CPU的占用率始终为20%,数据信号的显示基本无延迟,不存在数据丢失现象。软件运行过程中下位机的CPU占用率在20%~30%左右,软件运行良好。
实验中包括了数据转化解析所耗费资源与网络传输耗费资源的比较, 其中包括CPU资源利时间,实验结果表明,在大量(数据量4000以上)数据的传输中,数据解析所占用的时间将大大高于网络传输所耗费的时间,并且大量的CPU资源被用于数据解析。所以往使用TCP方式传输数据的前提,高CPU的使用率和数据显示的延迟无法通过优化软件避免,只能通过提高硬件配置在一定程度上解决。伺服测试系统下位机进行数据采集,并实时将数据传输回上位机进行显示的过程中,当采样率较大或信号频率比较高的情况下,数据传输过程中有较大的延迟,并伴有数据丢失的现象。光纤传输技术方案有效的解决了以太网传输数据延迟性高的缺点。
光纤传输技术已成功应用于某航天产品伺服远程测试系统上,其显著降低了宿主计算机的负载,增强了数据传输网络的稳定性和健壮性,能够以很小的资源开销对通讯网络进行扩展,实现计算机高速互联,数据传输无延迟,对后续型号的研制过程起到了借鉴意义,具有广泛的应用前景。
[1] 张志成, 张合新. 基于PXI总线的导弹伺服机构测试系统[J]. 计算机测量与控制, 2006, 14(12): 1657-1659.
[2] 李 锋.基于光纤反射内存网的实时数据传输研究[D]. 北京:中国科学院研究生院(光电技术研究所),2014.
[3] 刘思伟, 赵玉亭, 慕德俊. 无人机多跳自组网实时视频传输性能评估[J]. 计算机应用, 2007(10):2398-2400.
[4] 赵智增.基于光纤传输的工业传感器网络设计研究[D].北京:北方工业大学,2016.
[5] 李明星.基于内存反射技术的实时网络接口卡研制[D].哈尔滨:哈尔滨工业大学,2012.
[6] 沙启迪.基于FPGA的光纤通信数据传输技术研究[D].哈尔滨:哈尔滨工业大学,2016.
[7] 陈晓明.数字光纤通信系统仿真软件的研究[J].电脑与电信,2011(6):52-54.
[8] 张 静,李 悦,张 娟,等.基于PXI总线弹载模块自动测试系统的设计与实现[J]. 航空计算技术,2012,40(3):119- 122.
[9] 马 骏,基于PXI总线的数据通信接口软件系统研究[D].西安:西安电子科技大学,2010.
[10] 察应坤, 李 炜, 杜 胜. 基于PXI技术的飞控计算机通用测试平台的构建[J]. 测控技术 , 2014,33(3):102-105.
[11] 夏 晶, 孙继银, 李 辉. 基于PXI总线的电子设备测试系统的设计[J]. 仪器仪表学报, 2007(S1):311-314.
[12] 曹 晖,毕建峰.基于PXI总线的实时综合测试系统研究[J].上海航天,2011,28(3):64-68.
ApplicationofOpticalFiberTransmissionTechnologyinServoRemoteTestTystem
Sheng Wenwei1,Wang Jing1,Liu Ruizhi1,Wang Guoqiang2,Li Gang1
(1.Beijing Research Institute of Precise Mechatronic Controls,Beijing 100076,China;2.Beijing Research Institute of Special Machinery, Beijing 100143,China)
Remote data transmission is an important research content of the servo remote test system. In test process of the servo system,It has a lot of burst data and higher real-time property.In the past,the test system used a data transmission mode based on Ethernet TCP/IP protocol.This kind of transmission has a higher latency resulting in the real-time monitoring of the actual product action seriously out of line,and can not complete the tsst task.In order to solve the above problems,It analyzes the Ethernet data transmission delay and studies a high speed optical fiber transmission technology. The technology is applied to the servo remote test system and solves the problem of high delay of Ethernet data transmission.
data transmission; real-time; optical fiber transmission
2017-05-14;
2017-07-24。
盛文巍(1986 -),男,山东蓬莱人,硕士,工程师,主要从事测控软件设计与开发方向的研究。
1671-4598(2017)11-0047-03
10.16526/j.cnki.11-4762/tp.2017.11.012
TP273
A