国珊珊,宋 欣,周 倩,宋占伟
(1.吉林大学电子科学与工程学院,长春130012;2.吉林省启明软件园企业孵化有限公司结构部,长春130117)
大数据时代,并不是充斥着冰冷的数据和算法,人的作用依然不容小视。大数据是一种资源,更是一种工具。它提供给人们认识世界一种新的手段,对于拥有上下游长产业链的汽车行业而言,人们借以利用大数据发挥作用之处会更多[1-5]。然而,越来越多的高端汽车销售服务中心也开始对庞大的数据进行分析,对可能出现的零部件故障和隐患进行及时处理。一方面有利于解决汽车安全隐患;另一方面将帮助汽车品质的更新换代,提升产品的设计与构造水平。如福特公司便在硅谷开设了一间实验室进行汽车产品的改进研发。为了提高汽车的质量、减少燃油消耗、提升安全性能、减少排放量,福特公司收集了400多万辆汽车的数据,包括汽车传感器和远程应用程序管理软件。工程师根据所得的大量数据对汽车时速、发动机转速以及制动油压等方面进行分析,了解并掌握汽车在不同的道路和天气状况、以及其他因素影响下的行驶状况。
然而,目前用于汽车上的数据采集以及通信系统主要是采用CAN(Controller Area Network)总线,其不具有远程通信的功能,数据传输受到地域和距离约束,因此,不利于汽车生产销售服务中心对所售汽车状态数据的大量存储和分析。而采用GPRS(General Packet Radio Service)技术可以很好地解决这一问题。该终端通过CAN总线获取行驶固定里程数与发生故障时汽车各项状态参数如汽车时速、发动机转速、汽车行驶里程、冷却水温、制动油压、机油油量、机油污染度、机油压力和机油温度等信息,并通过GPRS网络信号将获得的数据传送给中心,实现中心对售出汽车大量数据的采集,并根据所得的数据分析汽车的各项性能。这对消除产品安全隐患,对产品进行及时改进有着重要的意义。此外,在汽车出现故障信息时,中心将接收到该终端发出的故障信息,同时远程控制汽车关闭发动机,使其停车,达到减小损失的目的。
监控系统的总体工作原理如图1所示,包括GPRS车载移动终端、移动服务运营商提供的GPRS网络,Internet网络,服务器和控制中心主机。
该车载终端的功能分为以下两方面。
2)汽车生产销售服务中心对汽车状态数据的收集及对车辆的远程监控。
图1 监控系统总体工作原理图Fig.1 The principle diagram of the monitoring system
该车载终端能实现中心对汽车状态数据的收集及对车辆的远程监控。一方面,基于GPRS车载移动终端数据的收集和重组,并定时上传汽车各项状态参数的数据帧,移动运营商的GPRS网络收发信机接收这些数据,并按照数据帧所指定的IP地址以及端口号将所得数据通过网关传送到Internet网络,最后到达相应的中心控制主机。另一方面,中心的应用程序也可以发送特定的数据帧给车载移动终端,这些信息通过Internet网络传递到GPRS网络,再由移动服务运营商的基站将数据帧发送给车载移动终端。上述的两个方面形成了一种数据交互的过程。该系统通过CAN总线与车辆通讯,在汽车行驶到固定的里程数时获取车辆相关参数,在车辆发生故障时获取故障代码,通过查询数据库获取故障信息,并将故障信息通过LCD(Liquid Crystal Display)显示模块显示,同时将以上两种情况下获取的数据通过上述车载终端与汽车生产销售服务中心的数据交互过程,发送给中心。中心主要功能包括数据通讯、传输及存储,数据回放及统计分析等。实现对车辆的远程监控。
该车载监控终端整体框架如图2所示。
图2 车载监控终端框架图Fig.2 The frame of vehicle monitoring terminal
该车载终端主要由CPU(Central Processing Unit)模块、电源模块、无线通讯模块、LCD显示模块和数据存储模块组成。
电源模块是保证整个硬件系统正常工作的基础,用于ARM(Acorn RISC Machine)处理器、GPRS模块、LCD显示模块、数据存储模块提供各自所需要的电源电压。输入采用12 V或24 V车载电源,经过电源滤波后,再经过三端稳压电源转换为3.8 V和3.3 V,其中3.3 V电源为CPU模块供电,3.8 V电源为GPRS模块供电。
CPU模块是该车载移动终端的核心,将对整个系统产生决定性的影响。主要考虑:终端处理能力、微处理器的速度、内部寄存器、微处理器的外围器件接口以及工作温度等。在本系统中,CPU模块包括处理器S3C6410、NandFlash、SDRAM(Synchronous Dynamic Random Access Memory)、时钟晶振。NandFlash大小为256 MByte,不仅可用来固化操作系统内核,而且可用来存放永久的注册信息表[6]。该车载终端的CPU模块用于按照协议解析接收CAN总线信息,然后再根据生产销售服务中心的协议结构重新打包数据。此外,CPU模块用于对GPRS模块和LCD模块进行控制,完成相应的数据发送、接收和信息显示等任务。
LCD模块采用TFT(Thin Film Transistor)-LCD模块作为终端的显示设备,该液晶模块的分辨率为240×320像素,可显示262 144种色彩。
张满春悻悻地从码头上回来,就对女人芦玉儿说,我们得先藏着这孩子,你把他抱回娘家躲一躲吧。张满春的女人照办了。几年以后,芦玉儿发现这孩子越来越像张满春,芦玉儿才追问他这孩子到底是谁的。张满春才实话实说,这孩子是我和沈小小的。芦玉儿方才得知张满春和沈小小那一段情事,听后还有几分感动。她也明白了她男人为啥要与鲜叫化子联手设局暗算沈老七了。
CAN节点模块:CAN节点模块是一款对整车各电子控制装置之间实现通讯数据转发的智能电控设备,从而使整车实现车载电控装置区域性网络控制系统。该车载终端的CPU模块经由一个三态门实现数据总线与CAN总线控制器的交互,总线控制器利用两根线(RXD,TXD)与CAN总线收发器通信,CAN总线收发器通过CAN_L以及CAN_H与总线网络相连接,根据CAN总线协议进行数据的收发。CAN收发器采用TJA1050,控制器采用SJA1000。SJA1000功能模块如图3所示,可将ARM处理器看成一个基本的IO 设备[7]。
图3 SJA1000功能模块图Fig.3 The functional module chart of SJA1000
数据存储模块:该车载终端中,该模块主要用来记录汽车以往的故障信息并存储车辆的故障代码信息,以便查询。
无线通讯模块:无线通讯模块采用SIMCom公司的SIM900A模块实现,主要用于实现与生产销售服务中心的数据传输功能,SIM900A模块是一款尺寸紧凑,内置TCP/IP(Transmission Control Protocol/Internet Protocol)协议栈的GSM/GPRS模块,采用工业接口,支持标准AT指令,低功耗实现语音、SMS(Short Message Service)、数据和传真信息通信[8]。对于移动终端的应用,主要需要以下功能管脚。
1)电源接口:为GPRS模块提供电源,该GPRS模块对电源稳定性要求非常高,需要输出特性好的稳压电源给GPRS模块供电,所需电压为3.8 V。
2)SIM卡接口引脚:管脚30、31、32、33用来连接SIM卡,构成了SIM卡接口。
3)管脚11、12、13、14构成了 UART(Universal Asynchronous Receiver/Transmitter)接口,实现与CPU模块的通信。
4)52管脚用于指示当前网络状态,根据发光二极管闪烁频率可以判断手机卡是否在移动控制中心注册[9,10]。
终端的软件系统主要分为以下几部分。
终端初始化程序:该部分用于初始化终端,如将GPRS登记到移动服务运营商的网络、LCD显示模块启动等。
CAN总线数据发送与接收程序:该部分用来发送与接收CAN信息,在数据帧发送和接收前,先对数据帧格式做自定义的规约,以方便在程序中处理数据,为防止数据丢失采用高优先级中断方式。
CAN总线发送数据程序取出数据存储区中将要发送的数据,组成数据帧,并向帧头写入主机的ID地址,然后,将数据帧发送到CAN控制器的发送缓冲区中,发送程序在接收到主机的发送请求后,启动发送命令。CAN控制器能自动完成数据从CAN控制器到总线的发送,以及从CAN总线读取数据并将数据存储到CAN控制器的接收缓冲区[11]。接收程序只需从接收缓冲区读取信息,并将获取的数据存储在数据存储区。其中数据发送与接收子程序流程图分别如图4和图5所示。
图4 发送子程序流程图Fig.4 The flow chart of send program
图5 接收子程序流程图Fig.5 The flow chart of receive program
该车载终端通过CAN网络和ECU(Electronic Control Unit)通讯,经过解析,ECU上的数据格式如下。
头帧 12字节数据 尾帧12个字节数据可分为:4个字节(故障的12大块)8个字节(每个块的细分)
12字节数据中前4个字节用于判断故障的类型,主要的故障类型包括缓速装置、变速器、发动机等。然而每种类型的故障又有不同状况,所以前4个字节代表不同类型故障,后8个字节是对每个类故障的细分。
CAN通信模块在通讯过程中所用到的主要函数如下:
CAN数据解包程序:该程序根据已接收CAN数据的协议,将各个信息解析并临时存储到相应的变量中。
GPRS数据打包、发送程序:该部分程序根据生产销售服务中心的请求按照其相应的格式将数据重新打包,交给GPRS模块上传,并通过控制GPRS模块发送。
通过GPRS模块传输数据应用TCP/IP协议,远程通信采用socket通信方式,一个socket由一个IP地址和一个端口号唯一确定,客户端在连接服务器时需要知道服务器的IP地址和端口号[12]。在建立连接的过程中,服务器先初始化socket,然后与端口绑定(bind),并对端口进行监听(listen),调用accept阻塞,此时在等待客户端连接。某时刻有客户端初始化一个socket,然后连接服务器(connect),如果连接成功,客户端就与服务器建立了连接。客户端发送数据请求(write),服务器接收请求(read)并处理请求,然后将回应数据发送给客户端,客户端读取数据,最后关闭连接(close),一次交互结束[13]。该设计中将车载终端看作客户端,将监控中心看作服务器端。
在车载终端主要通过串口对GPRS模块写AT指令控制数据的远程收发,AT指令是一种调制解调器的控制命令,是Attention的缩写,几乎对调制解调器的所有控制都是通过该指令集中的指令完成,常被称为AT指令,而GPRS模块相当于一个采用GPRS无线链路的调制解调器,所以,AT指令同样适用于GPRS模块,通过AT指令可以完成GPRS模块的接入点设置IP地址分配创建套接字等初始化过程以及汽车运行参数的发送和中心控制指令的接收等[14]。作为客户端的车载终端GPRS模块通信流程图如图6所示。
车载终端所用到的主要AT指令包括:
在本设计中将生产销售服务中心当作服务器端,其通信流程图如图7所示,服务器端所用到的主要函数包括:
图6 车载终端发送数据流程图 Fig.6 The car terminal send data flow chart
图7 服务中心程序流程图Fig.7 The service center program flow chart
故障协议解析显示程序:该应用程序在接收到串口发送的信息后,对其中代表故障代码的数据进行采集,通过查询数据库的方式,获得车辆的故障信息,故诊断过程中用到的主要函数如下:
对于无线环境,车载终端的相对运动引起信号频率的偏移称为多普勒频移[15],与车载终端的运动速度成正比。这样的频率偏差可能会导致传输数据时出现误码,当GPRS车载终端以恒定速率V,在长度为S的路径上运动时,接收到来自远端信号源S发出的信号如图8所示。GPRS网络信号从信号源R发出,当车辆在端点A与端点B间移动时,车载终端的发送/接收距离差为Δ l,假设汽车在A、B两点间的行驶时间为Δ t,则由图8可得
这里θ是点A到点B与入射波的夹角。由于源端距离很远,可假设A、B处的θ是相同的。所以,由距离差造成的发送/接收信号相位变化值为
由相位偏差可得到多普勒频移
由此可知,多普勒频移与汽车运行的速度有关,车辆运行方向决定了Δ f的正负。我国GPRS通信网络采用900 MHz的频段,上行频率:890~915 MHz(移动台发,基站收),下行频率:935~960 MHz(基站发,移动台收),假设汽车的运行速度为50 km/h,当汽车与GPRS网络接收基站正对时频移最大,此时多普勒频移该频率偏移在误差允许范围内,所以汽车的运动对数据传输可靠性的影响可以忽略。
图8 多普勒频移视图Fig.8 Doppler frequency shift diagram
笔者在实验室中通过计算机模拟汽车生产销售服务中心,搭建了该监控系统,对数据传输的运行稳定性进行了实验验证。图9为笔者在基于Linux操作系统TCP传输协议的服务器端程序的运行结果,运行该程序能接收到作为客户端的GPRS终端移动模块发送的数据,并输出接收到数据包的个数。表1为数据传输过程中对丢包率进行统计的结果,以此反应远程通信的可靠性。
表1 丢包率实验结果Tab.1 Experimental results of frame loss rate
图9 测试结果Fig.9 The test results
该终端可以完成以下功能,在行驶一定里程数和出现故障特征时将汽车状态信息数据存储在数据存储模块中并通过GPRS网络发送给汽车生产销售服务中心,当中心接收到故障信息时,向车载终端发送控制信号,达到先期预警或强制汽车发动机熄火。通过连接到Internet网络上的计算机模拟中心,该终端模块可以准确可靠地将数据上传到模拟中心,模拟中心也能准确地向车载终端发送控制命令,完成两者的交互。此外,该终端将故障代码信息以数据库形式存储起来,该车载终端获取ECU上的诊断信息后,查询数据信息库,然后将故障信息显示在LCD上。并通过实验测试和实际应用证明了该系统的实用性和有效性。
[1]HUANG Wenliang,CHEN Zhen,DONG Wenyu,et al.Mobile Internet Big Data Platform in China Unicom [J].Tsinghua Sicience and Technology,2014,19(1):95-101.
[2]DANIEL E,O’LEARY.Artificial Intelligence and Big Data[J].Intelligent Systems,IEEE,2013,28(2):96-99.
[3]TAN Wei,BRIAN M BLAKE,IMAN SALEH,et al.Social-Network-Sourced Big Data Analytics[J].Internet Computing,IEEE,2013,17(5):62-69.
[4]孟小峰,慈祥.大数据管理:概念、技术与挑战[J].计算机研究与发展,2013,50(1):146-169.MENG Xiaofeng,CI Xiang.Big Data Management:Concepts,Techniques and Challenges[J].Journal of Computer Research and Development,2013,50(1):146-169.
[5]何非,何克清.大数据及其科学问题与方法的探讨[J].武汉大学学报:理学版,2014,60(1):1-12.HE Fei,HE Keqing.The Scientific Problems and Methodology of Big Data[J].Journal of Wuhan University:Nature Science Edition,2014,60(1):1-2.
[6]沈龙梅,张立文,国珊珊,等.基于JPEG硬编码的嵌入式无线图像传输处理终端[J].吉林大学学报:信息科学版,2013,31(4):333-339.SHEN Longmei,ZHANG Liwen,GUO Shanshan,et al.Embedded Wireless Image Transmitting and Processing Terminal Based on JPEG Hardware Encoding[J].Journal of Jilin University:Information Science Edition,2013,31(4):333-339.
[7]代寿刚,干莽,宋占伟.基于 FPGA的 CAN总线故障分析仪 [J].吉林大学学报:信息科学版,2012,30(5):503-509.DAI Shougang,GAN Mang,SONG Zhanwei.CAN-Bus Fault Analyzer Based on FPGA [J].Journal of Jilin University:Information Science Edition,2012,30(5):503-509.
[8]杨旭,董丽华,邵英秋.基于GPRS个人剂量仪控制系统的硬件设计[J].吉林大学学报:信息科学版,2012,30(6):643-650.YANG Xu,DONG Lihua,SHAO Yingqiu.Design of Personal Dosimeters Based on GPRS Remote Monitoring System [J].Journal of Jilin University:Information Science Edition,2012,30(6):643-650.
[9]卜峰,李传江,李欢,等.基于GPS/GPRS的客运远程监控系统设计与实现[J].计算机测量与控制,2014,22(1):79-81.BU Feng,LI Chuanjiang,LI Huan,et al.Design and Implementation of Vehicle Remote Monitoring System Based on GPS/GPRS [J].Computer Measurement& Control,2014,22(1):79-81.
[10]朱银龙,马万太.基于GPS/GPRS/RFID的车载监控系统终端设计[J].机械设计与制造工业,2014,43(2):23-26.ZHU Yinlong,MA Wantai.The Design of Vehicle Monitoring Terminal System Based on GPS/GPRS/RFID [J].Machine Design and Manufacturing Engineering,2014,43(2):23-26.
[11]段登,尤路,杨守峰.CAN网络环境下多节点智能监测系统的研究[J].电声技术,2014,38(2):75-80.DUAN Deng,YOU Lu,YANG Shoufeng.Research on Multi-Point Intelligent Measuring of System Based on Network of CAN[J].Audio Engineering,2014,38(2):75-80.
[12]ZHANG Peng,WANG Hongbo,LI Yangyang,et al.DATCP:Deadline-Aware TCP for the Commoditized Data Centers[J].The Journal of China University of Posts and Telecommunications,2012,19(6):52-62.
[13]周丽琛.用于电动汽车电池管理系统的远程监控系统研究[D].哈尔滨:哈尔滨工业大学电气工程及自动化学院,2013.ZHOU Lichen.A Research on Remote Monitoring and Control Systerm Applied to EV Battery Management Systerm [D].Harbin:College of Electrical Engineering and Automation,Harbin Institute of Technology,2013.
[14]黄玉兰,刘静,王洪革,等.基于AT指令集的GPRS智能通信系统[J].吉林大学学报:信息科学版,2009,27(4):424-429.HUANG Yulan,LIU Jing,WANG Hongge,et al.Intelligent GPRS Communication System Based on AT Set[J].Journal of Jilin University:Information Science Edition,2009,27(4):424-429.
[15]朱亚东.基于改进模糊估计的高铁移动通信方法[J].计算机测量与控制,2014,22(1):282-284.ZHU Yadong.Based on Improved Fuzzy Estimation Method of High-Speed Mobile Communcation[J].Computer Measurement& Control,2014,22(1):282-284.