摘要:随着大数据时代来临以及智能化技术的飞速发展,越来越多的系统或信息技术依赖于智能化系统运行或运转,计算机同计算机,计算机同智能化系统之间的交互或者通讯会越来越频繁,作为系统中最底层的传输链路一旦施工完成,后期调整的空间非常小,调整的难度也非常大。工程实施阶段因为环境的复杂、需求的调整,将对底层的传输线路提出更高的兼容或复用要求,如何通过技术手段,在现有的大环境下完成复杂系统的功能或者在不改变原有基础线路的情况下满足新增的需求,是智能化项目整体设计和实施的一个重点,本文结合现场环境和实际需求,通过技术手段,有效解决了这个问题,为后续类似的项目提供了强有力的佑证。
关键词:串口服务器;串口通讯;数据丢包;双链路;数据校验
项目背景及故障现象描述:
港珠澳大桥珠海口岸一站式通关系统为珠海口岸通关的核心系统,它是目前全国首创、真正意义上的一站式通关系统,主要用于往来香港、珠海、澳门三地的客车、货车的全流程自动通关验放,车辆的通关资格由海关、边检和国检三家政府单位审批,获得审批通过的车辆在通行珠海口岸时为一站式全自动验放,整个验放过程由随车司机通过人机交互,按照操作提示自行完成通关验证手续,每个车道前端软硬件自成独立系统,高度集成后对接一站式系统,一站式系统再分别对接海关、边检、国检数据库系统,每个车道上有十几个设备精度和技术含量高的智能化系统,如2D/3D相机、指纹识别系统、证照识别系统、红外测温系统等,所有系统最终的数据都汇聚到一站式系统,一站式系统相当于人的中枢神经,大部分智能化系统和通道平台服务器通过串口进行通讯,其中边检核放采用控制端到车道采用点对点的通讯,车道上一台一站式服务器做信息收集并上传,数据接收并下发的中转站,监控室放置一台服务器,作为上传数据的比对和审核,审核完成后下发到一站式服务器,因此大量的前端数据通过前端采集设备采集后通过RS485或232方式上传到一站式服务器,由一站式服务器再上传到键控制的的验放服务器,验放服务器比对成功后,下发通行或不通行的指令到一站式服务器,一站式服务器再将相关指令下发给车道上可执行设备控制器,最终实现执行设备的动作,如升降柱升降,摄像机拍照并上传等。
一站式卡口通关系统示意图如下所示:
一站式服务器与后端验放服务器之间采用端到端传输,传输链路原设计为一条RVVP8*0.5信号线(8芯屏蔽非双绞信号线),传输的接口通讯方式为RS485(通信波特率:115200),在建设过程中仅使用8芯线中的4芯作为信号传输,因项目自身环境的特殊性,存在多根不同型号及规格的弱电电缆走同一根管道,在一站式车道的安全岛里存在强弱电末端交叉走线的情况。
线缆敷设、设备安装完成后,项目组在测试过程中发现:一站式服务器在与边检验放数据库联调联试中串口存在偶发丢包情况,造成后台验放服务器下发的指令到终端后因数据错误未按指令执行,直接影响到一站式的通关作业,同时进一步测试发现:数据出现丢包的概率非常偶然,无特定时间段,若要确保一站式系统与边检验放电脑的通信稳定可靠,必需要解决这种偶发性故障,保障通信的稳定性。
故障分析及测试过程:
港珠澳大桥珠海口岸一站式通关系统作为国家重点项目,工期紧,任务重,重新放线或者更改系统架构不具有实操性,因此项目部临时牵头成立了由设备供应商技术人员、现场软硬件工程师以及现场管理人员组成的专项问题小组,经过现场多种方式检测,包括采用第三方硬件、第三方通信软件、第三方抓包软件、以及本项目的定制应用软件进行多方式比对、检测、校验,实际测试的数量汇总:
2018-4-6,工程师现场测试5号,6号车道,测试情况如下:
注:12号道出现乱码报文现象为随机出现,不可重复
2018-4-8,工程师现场测试5,6,12号道,测试情况如下:
附注:现场反馈无任何错误报文或乱码,丢包现象发生。
2018-4-9使用实际应用软件对5号车道测试,出现2条报文乱码错误,乱码信息如下图:
在测试期间,使用实际的应用软件,使用5,6号道232互联测试,使用第三方抓包工具,复制到故障现象,发现软件端的发送正常,接收端丢失报文。
2018-4-13,使用RS232线缆监控5,6,7号道主机,采用实际软件进行测试,复制到之前的类似丢包故障,经过报文发送端、接收端监控比较,发现在软件端收到报文异常,但是监控端收到正常(监控接收端口为COM1口,软件端接收端口为COM2口),初步判断软件端在调用串口过程中收到干扰,发生偶发的通讯异常。
由于一站式服务器与边检验放服务器间的RS485传输“故障”现象随机、小概率发生,无法完全复制现象,以数据量发送计算,经过近一周测试,大概故障率是1/250至1/260。
一站式通关车道都在室外,现场布线环境非常复杂,虽然在设计及施工时已经考虑了强、弱电线缆分开敷设,但现场使用环境仍然会产生一定的电磁干扰环境,对通信造成不可预见的干扰;
解决方案
考虑到通讯电缆为RVVP8*0.5信号线(8芯屏蔽非双绞信号线),目前仅用四芯,尚有4芯冗余,同时重新放网线或者光的方案都不现实,结合RS-485两端都是电脑的特点,专题小组提出了如下解决方案:
1)将两台电脑单串口RS485联接改成双串口RS485通信联接,现场的线路与设备端口具备条件,并且通过测试,双线路间不会产生串扰。
2)如上图所示:验放服务器串口1负责下发指令给一站式服务器(串口A),一站式服务器通过串口B上传信息到验放服务器(串口2)。将RS485单串口双工功能变成单工功能,只发不收或只收不发。
3)在验放服务器和一站式服务器上的软件中分别加入校验机制、重发机制,若发生错误后重复发送;通过对报文的校验,对不符合协议的报文采取同步重发机制,从而实现报文传输的可靠性。(原单点RS485线路无法保证补发机制的稳定性,采用双RS485口通信可以实现一个做数据发,一个做数据收,并做同步校验,避免了单点RS485 通信时间数据冲突而导致的乱码)。
通过现场调整并进行一周测试,虽然一站式服务器偶然还会接收到乱码,但是通过验放服务器及时发现后补发指令后,问题得到彻底解决。
方案拓展:
如果前端是一站式电脑,后端是一个采用串口通讯的控制器,上述方案不一定能够采用。
如果在调试阶段,发现设备RS485通讯存在故障且处于偶发随机状态,且现场有光纤或者铜缆链路,建议方案如下:
1)为减少外界强电、电磁对RS485通讯的影响,在前端一站式服务器和智能系统控制器端各增加1台串口服务器,一站服务器和串口服务器,智能系统控制器和串口服务器的通讯均采用RS232方式,RS232模式因线路短,抗干扰能力强,被干扰的概率低,通讯稳定性可靠。
2)串口服务器和串口服务器之间采用光纤链路或铜缆链路,采用TCP/IP协议,增强了整个链路的稳定性和可靠性。
当然采用该解决方案,也存在一些不足之处,如:a)中间链路上增加了中间设备,间接增加了通讯链路单个故障点;b)需要使用网线或者光纤链路,材料成本比采用RS485方式高。
结束语
在现场条件有限的情况下,分析现有的物理环境及现场条件,结合相关的数据分析及第三方测试软件,最终通过软件的数据双向发送和数据丢失后补发机制,有效解决了数据丢包的难题,本次功能实现,没有增加额外项目费用,也没有改变系统架构,既确保了项目工期,也达到了设计的最终效果,产生了较高的技术和经济价值。
参考文献:
[1]姚富强.DCS/CTC系统常见网络故障处理方法探讨[J].计算机与信息化.2014(09)
[2]张婷 吕晓东.计算机网络信息安全及防护策略[J].电子信息.2016
[3]赵庆斌 马素霞 赵庆玉 网络测试深入分析 清华大学出版社 2003
.
论文作者:汪名亮
论文发表刊物:《基层建设》2019年第6期
论文发表时间:2019/4/19
标签:一站式论文; 服务器论文; 串口论文; 系统论文; 报文论文; 数据论文; 测试论文; 《基层建设》2019年第6期论文;