汤旺杰,金华标,李鹤鸣
(武汉理工大学能源与动力工程学院,湖北 武汉 430063)
目前,船舶制造业整体处于衰退的趋势,为提高船舶行业竞争力,将传统船舶制造业和互联网关联,为船舶制造提供新的发展方向。通过互联网可以远程实时监测船舶航行时的状态。实现远程数据实时监测有助于及早发现异常情况,采取措施保证营运安全。这些数据也可以提供给设计单位,作为后续船型改善的依据[1]。
船舶联网为船舶大数据发展提供条件,船舶大数据建设的核心既是对船舶各类数据的采集与加工[2]。本系统对船舶数据进行采集,将数据发送至岸端,并设计了船岸通信统一的数据格式,旨在解决船舶大数据平台的数据来源问题,为船舶大数据平台的搭建提供基础。
由于船舶发展的需要,采用不同的技术对船岸通信系统进行研究。闫明[3]通过物联网技术和冗余总线技术设计了船舶远程监控系统,具有很好的实时性和可靠性。刘翠梅[4]针对船舶舱室火灾监控,通过3G技术实现对船舶机舱火灾的监控。李杰[5]利用多传感器组网及融合跟踪识别技术实现船舶远程监控数据采集,经验证,该方法采集的数据准确性好,抗干扰能力强。郑宇平[6]通过Zigbee技术的无线网络节点, 并设计基于IOS的手机移动端监控软件设计了船舶远程监控系统,具有功耗低、实时性好和稳定性高的特点。张跃文[7]通过BP神经网络对船舶远程监控系统进行改进分析。分析表明,此种方法适用于远洋船舶的远程故障监测及船舶系统故障预测。张连军[8]针对长江汽渡船舶安全管理、数据查询、人员管理、证书管理、物资管理、和维修管理设计了船舶远程监控管理系统,对船舶监控管理技术有积极推进作用。
根据文献调查,CAN总线冗余技术能增加船舶数据采集的稳定性和实时性,但没有对冗余系统进行分析。文献通过各种技术实现船岸通信,但没有对通信的数据格式进行统一。
本系统实现的功能是对船舶各类数据的采集与加工,目标是设计实现船舶数据采集并将数据进行远程显示、储存。具体包括:采集船舶状态参数包括船舶位置、船舶航速和船舶航向;采集船舶柴油机运行信息包括转速、扭矩、油门开度、机油温度、机油压力、瞬时燃油消耗量、累计燃油消耗量、中冷后进气温度和中冷后进气压力;采集尾气排放参数包括硫氧化物浓度、氮氧化物浓度、排气温度;采集船舶环境参数包括环境温度、环境湿度和大气压力。将采集到的船舶数据通过远程通信模块发送到远程端进行远程监测,并将船舶数据进行储存。其系统框架如图1所示。
图 1 系统框架图Fig. 1System flowchart
硬件设计包括数据采集模块和数据远程通信模块两部分。
数据采集模块主芯片采用的是德州仪器公司的TMS570芯片,该芯片有2路标准SPI模块、19路高端定时器,21路12位模拟数字转换器、1路SCI通信模块和两路支持CAN2.0B协议标准的CAN通信模块,硬件资源能够满足系统的功能需求。数据采集模块硬件结构设计包括单片机最小系统、CAN通信模块、SCI通信模块、AD采集模块。
数据远程通信模块采用的主芯片是芯讯通无线科技公司的SIM808芯片。SIM808采用GSM(全球移动通信系统)通信模式,其通信速率最高可达171 kbit/s,满足系统的对数据传输的要求。
软件设计包括刷写在TMS570芯片中的下位程序和远程端程序,下位程序包括CAN收发程序、AD采集程序、GPS定位接收及解析程序、SCI通信程序和数据远程发送程序。远程监控程序主要有数据接收、显示和保存程序,系统软件结构如图2所示。
图 2 软件结构图Fig. 2Software flow pattern
目前,船岸通信数据格式没有通用标准,船舶通信的数据无法统一解析。本系统结合船舶MMSI(Maritime Mobile Service Identity水上移动通信业务识别码)和NMEA2000协议,设计了船岸通信格式,使船岸通信数据的格式具有通用性。
NMEA2000是CAN总线的上层协议,由美国国家海洋电子协会为船舶提出的CAN通信标准协议。NMEA2000协议规定:每帧数据包含8个字节的数据内容,且每帧数据包含唯一的PGN(Parameter Group Number 参数组编号)。设计的船岸通信数据格式的Byte7-Byte14为PGN在NMEA2000中对应的8个字节的数据内容。当岸端接收到船舶数据进行解析时,通过Byte1-Byte4可知数据来源于哪条船舶,通过Byte5-Byte6的PGN与NMEA2000协议能够解析出Byte7-Byte14的数据内容,使船岸通信数据协议与NMEA2000协议“无缝”对接,设计的船岸通信协议具有通用性,如表1所示。
表 1 船岸通信数据格式Tab. 1Ship to shore
在船舶运行过程中,由于船舶振动、环境潮湿等状况,对电子设备的正常运行有很大的影响。通过系统框架图1可知:系统在数据采集过程中,船舶数据采集设备主要依靠CAN总线进行通信,保证CAN总线稳定可靠是保证数据采集系统稳定运行的关键。
CAN总线冗余技术是增强CAN总线通信可靠性的一种常见措施,常见的冗余方式包括硬件冗余、软件冗余、时间冗余和信息冗余等,应用较为广泛的是硬件冗余。本系统采用硬件冗余的方法增强CAN总线传输稳定性。
5.1.1 CAN总线冗余方式选择
在物理冗余中,根据冗余要求不同冗余方式分为双冗余和三冗余。在目前大部分用到的为双冗余,在特殊情况下会用到三冗余。通过贮备模型分析可靠度,多冗余物理模型如图3所示,属于贮备模型的并联模型。
假设每条CAN总线可靠度服从指数分布:
系统的可靠度为:
根据平均无故障时间计算公式:
图 3 多冗余物理模型Fig. 3Multi reduant physical model
得出平均无故障时间
通过平均无故障时间可知,当增加冗余数时,增加平均无故障时间,可靠性增加,但冗余超过2次,每增加一次冗余,其收益递减,并且冗余超过3次会使系统变得复杂,增加新的不稳定因素。因此不是冗余数越多越好,本系统选择双冗余。
5.1.2 CAN总线冗余等级选择
目前,主要有CPU级冗余、控制器级冗余和收发器级冗余,文献[9]中通过串联和并联的复合模型对CAN冗余等级可靠性进行分析,CPU级冗余等级最高,控制器级冗余其次,收发器级冗余最低[9]。综合本系统应用情况,选择控制器级冗余。
本系统CPU芯片TMS570内嵌两路支持CAN2.0B的CAN总线控制器,外接两路CAN总线收发器便可以满足CAN总线冗余测试条件。
5.2.1 CAN总线冗余测试方法
本次测试的平台包括冗余节点、一般节点和测试点,各个节点的功能如表2所示,结构如图4所示。CAN总线故障识别和CAN总线的切换是完成是实现CAN总线冗余的关键。
表 2 节点功能Tab. 2Functions of each node
CAN总线故障识别:CAN总线故障会导致CAN总数据不能正常收发,通过冗余节点循环发送数据,当冗余节点判断循环数据发送失败时,总线出现故障。
CAN总线切换:数据采集设备中有两路CAN总线,设定CAN1为主通信线路,当CAN1出现故障时,CAN总线通过程序切换至CAN2发送数据,完成CAN总线切换。
根据上诉CAN总线冗余测试方法进行测试,测试的现象如下:给系统上电,系统正常运行,在稳定运行一段时间后注入总线故障,系统无法正常运行,CAN总线从CAN1自动切换到CAN2,系统恢复正常工作,实现了CAN总线冗余。
双线CAN冗余系统关键指标是总线切换时间,它等于检测错误所需时间与处理故障总线未发送报文所需时间之和[10],切换时间越短,总线故障对报文传输造成的延迟就越小。CAN总线延迟在某些重要的控制场合会造成非常严重的后果,应尽量减少CAN总线上的延迟[11]。在CAN冗余测试过程中,以切换时间为观察对象,为了减少误差,对每种故障进行5次试验,实验结果如表3所示。
通过CAN冗余测试,表明系统可以对CAN总线故障进行识别和处理,总线切换后系统可以稳定的运行,冗余切换时间也较短。
系统测试包括系统功能测试和稳定性测试。系统功能测试:测试设计的系统是否达到预期的功能,在进行系统功能测试时,包括船舶数据采集和远程数据接收两部分。船舶数据采集测试主要包括CAN通信、AD采集、GPS数据采集,测试结果表明采集的数据准确可信,现场测试如图5所示。远程接收程序测试通过串口调试助手与远程接收程序储存的数据进行对比分析,两者数据一致,数据远程接收显示测试如图6所示。表明系统从采集端到数据发送端再到数据显示储存端实现了预期的功能。
本系统在船舶上安装连续运行一个月无故障且数据可靠,表明系统稳定可靠。
图 5 现场测试图Fig. 5Field test diagram
图 6 数据远程接收显示测试Fig. 6Data remote receiving display test
本设计完成了一套船舶数据采集与远程通信系统,从功能设计、软硬件设计到功能的实现,系统测试表明本套系统稳定可靠。
在CAN总线安全稳定运行的前提下,与本系统实际运行环境相结合,从硬件冗余的角度提出了CAN总线冗余的方法,在系统中实现CAN冗余。对CAN总线冗余进行测试,结果表明CAN总线能识别CAN错误并能进行CAN总线的切换,切换时间较短。提出船岸通信数据的统一格式并在软件中实现,对系统进行功能测试和环境适应性测试,测试结果表明系统达到预期目标并能稳定持续的运行。本文研究结果对船舶数据采集、远程监控和船舶大数据平台的搭建有一定的参考意义。