卧铺车厢旅客信息管理系统设计

2019-09-20 00:39
测控技术 2019年5期
关键词:卧铺列车员车厢

(1.兰州交通大学 机电技术研究所,甘肃 兰州 730070;2.兰州交通大学 机电工程学院,甘肃 兰州 730070; 3.兰州交通大学 新能源与动力工程学院,甘肃 兰州 730070)

我国铁路运营总里程已达到12.4万公里,其中普通铁路客车依然占据着旅客运输的主要地位。随着新技术的不断应用,我国铁路运输的技术实力有了较大提升,但依然有很多传统模式亟需改变。普通卧铺车厢旅客管理,是沿用了几十年的“人工换票”模式:列车员手持换票夹,将每位旅客车票换成卧铺卡,旅客在旅行期间要保管好谨防丢失,列车员需人工统计车厢卧铺就位情况,同时担负着到站前提醒旅客下车及再次换回车票的任务[1]。这种工作模式效率低、容易出错,并且旅客的信息无法实时获取并利用,已经不能适应铁路发展及信息化管理的要求[2]。所以利用先进的计算机、通信技术设计一套卧铺车厢旅客信息管理系统是非常必要的。

结合卧铺车厢旅客信息管理的具体要求,系统应首先扫描上车旅客车票的二维码,获取旅客信息并实时上传汇总,列车开出的同时,该节车厢所有铺位信息自动汇总生成;系统终端显示屏安装在列车员室,该节卧铺使用情况、旅客目的到站一目了然,并且信息在每到达一个车站后,随着旅客上下车都能够自动更新;系统同时具备到站前提示旅客下车功能,替代了传统的列车员人工喊话。通过这套系统,列车员可以实时掌握车厢旅客动态,大大提升车厢管理效率,降低列车工作人员的劳动强度,提升旅客出行体验。

1 系统功能设计

根据功能设想,系统结构如图1所示,系统设计由手持信息采集终端、旅客信息管理终端以及到站提醒模块组成。手持信息采集终端采集旅客信息并上传至旅客信息管理终端,旅客信息管理终端负责接收、处理信息并在显示屏中显示。根据系统的工作方式并结合列车车厢狭长、走道处不宜布线的特殊结构,手持信息采集终端与旅客信息管理终端的通信选择无线的方式。对比目前常用的无线通信技术,ZigBee占用系统资源仅4~32 KB[3],功耗远小于GPRS、蓝牙等通信技术,设计带宽为250 Kbits/s,通信距离几百米到几公里[4],足以完成手持信息采集终端的信息发送任务,且具有更高可靠性。故手持信息采集终端与旅客信息管理终端的通信选择ZigBee技术。

旅客信息管理终端需要与车厢内66个到站提醒模块建立通信连接,系统设计选用现场总线的方式进行数据通信。对比常用的现场总线技术,系统采用CAN总线通信。CAN总线是目前为止唯一具有国际标准的现场总线,支持的节点数多达110个[5],具有良好的可靠性、稳定性和较低的开发成本,能够满足旅客信息管理终端与到站提醒模块的节点连接数量需求。

2 系统硬件设计

系统硬件设计包括手持信息采集终端、旅客信息管理终端以及到站提醒模块3个部分,系统以放置在列车员室的旅客信息管理终端为核心。

2.1 手持信息采集终端

手持信息采集终端由ZigBee通信基本单元和条码扫描模块UC3020S组成,通过串口连接,核心电路如图2所示。ZigBee通信基本单元使用CC2530芯片作为中央处理器,该芯片整合了射频前端、内存[6]。条码扫描获取旅客信息经ZigBee传输至旅客管理终端。

2.2 旅客信息管理终端

旅客信息管理终端负责全部旅客信息的接收、汇总、显示及数据处理,由嵌入式模块和通信模块组成。嵌入式模块主要包括嵌入式核心板、触摸屏模块、存储设备、输入输出接口,旅客信息管理终端结构如图3所示。嵌入式核心板以三星公司ARM Cortex-A8内核的S5PV210微处理器为核心,使用7英寸电容触摸屏,触摸屏使用FT5x06控制模块。ZigBee通信模块通过串口与核心板连接[7];外置CAN控制器MCP2515标准SPI接口与CAN控制器连接,负责CAN节点控制[8];GPS模块与核心板通过串口连接,用于获取列车当前位置。

2.3 到站提醒模块

到站提醒模块负责接收旅客管理终端的提醒指令,由CAN通信模块和单片机执行模块组成。CAN通信模块采用MCP2515独立控制器和TJA1050高速CAN总线收发器为一体的外接模块。TJA1050和MCP2515之间选用高速光耦隔离6N137以增强系统的抗干扰能力。

图1 卧铺车厢旅客信息管理系统结构图

图2 手持信息采集终端核心电路连接图

图3 旅客信息管理终端结构图

3 系统软件设计

系统软件设计分为手持信息采集终端以及旅客信息管理终端两部分,手持信息采集终端软件基于Z-stack通信协议栈开发,旅客信息管理终端软件基于Linux操作系统开发。

3.1 手持信息采集终端程序设计

手持信息采集终端负责旅客信息的扫描获取及无线传输,实现过程如图4所示。手持终端上电后首先进行初始化,主要包括ZigBee通信模块的系统时钟、Flash、内存和网络层的初始化以及设置条码扫描模块的工作模式两部分;初始化完成,主要工作就是旅客信息二维码扫描、解码显示及信息上传。信息的无线传输功能基于Z-stack协议栈设计。Z-stack协议栈是由TI公司专门为CC2530芯片而设计,以函数的形式将ZigBee协议集成起来形成的函数库[9],信息的发送程序调用Z-stack协议栈的API函数即可。

图4 手持终端旅客信息获取与无线传输

3.2 旅客信息管理终端程序设计

旅客信息管理终端采用Qt/Embedded图形界面,显示车厢内各旅客起终点站、姓名。与旅客管理终端相连的GPS模块实时获取列车当前位置,列车到站前,旅客管理终端对相应旅客发出到站提醒。旅客对提醒信号进行按键确认后,旅客管理终端会自动更新显示数据;若旅客管理终端长时间未收到个别旅客的反馈信号,此时列车员可再进行人工提醒。

3.2.1 嵌入式Linux系统环境搭建

旅客管理终端以Linux 2.6.35为开发环境。首先PC机上安装Ubuntu操作系统、应用程序交叉编译工具、文件传输服务TFTP以及文件共享服务NFS[10];接着,编译引导程序u-boot,在基本的Linux内核中加载接口驱动程序并重新编译,通过TFTP服务将u-boot和内核传输至S5PV210的SDRAM中启动操作系统;最后,使用BusyBox制作Linux文件系统,通过NFS服务将文件系统挂载到S5PV210。

3.2.2 旅客信息接收程序设计

旅客信息的接收是旅客信息管理终端的重点之一,Linux操作系统将设备以文件的形式进行操作,只需打开相应的串口设备文件,从该文件读取数据即可完成旅客信息的接收,需要使用的文件操作函数如下。

① 打开串口设备:int open (const char *pathname,int flag s);

② 关闭串口设备:int close (int fd);

③ 接收旅客信息:s size_t read (int fd,void *buf,size_t count);

3.2.3 到站提醒模块程序设计

到站提醒模块程序设计的重点是通信数据帧的设计。列车到站前,旅客管理终端向相应的旅客发出到站提醒提示旅客做好下车准备,数据帧格式设计为:帧头+帧ID+帧长度+帧数据段+CRC校验+帧尾;其中帧头采用“S”;帧ID用于区分不同的到站提醒模块;帧数据段长度为2个字节,代表相应的位置和铺号;帧尾以05H和06H 2个字节作为结束。

3.2.4 人机交互程序设计

旅客信息管理终端采用Qt/Embedded图形界面,使用Qt/Embedded下的集成开发工具Qt Designer实现嵌入式GUI的设计与布局,完成界面设计后生成.ui文件,由.ui文件生成相应的头文件,在头文件中用类实现对界面的搭建。具体编写过程如下。

① 使用Qt Designer提供的uic工具通过界面文件Passenger.ui生成Passenger.h和Passenger.cpp文件。命令为uic-o Passenger.h Passenger.ui uic-o 和Passenger.cpp-impl Passenger.h Passenger.ui。

② 在系统中实现显示,在Passenger.cpp文件中加入相应的功能实现代码。编写主函数文件,主函数文件名为main.cpp,首先产生一个QApplication类的实例,然后定义窗口类实现并将其作为程序的主窗口,接着设置mainwindow部件,然后再调用show()和exec()方法,使用库管理界面作为主界面,程序进入消息循环。

③ 编译。使用progen命令生成工程文件(.pro文件),根据工程文件使用tmake命令生成 Makefile文件,最后使用make命令编译链接整个工程。

通过对旅客信息进行处理汇总,旅客管理终端可以实现车厢当前铺位以及剩余铺位的统计,另外还增添了补票功能。旅客信息管理终端显示界面如图5所示,列车员通过操作旅客信息管理终端即可实现对车厢旅客的管理。

图5 旅客信息管理终端显示界面

4 结束语

传统的人工换票及到站提醒效率低下、出错率高,给旅客带来不必要的束缚感的同时也使列车员的工作较为烦琐。本文开发的基于嵌入式的卧铺车厢旅客信息管理系统可以摆脱人工换票、人工到站提醒,实现车厢旅客数字化管理。并且我国目前新兴的高速列车亦有发展卧铺车厢的趋势,若能应用到广大的卧铺列车管理中可以有效提高列车员的工作效率,降低列车员的出错率,具有一定的实用性和推广价值。

猜你喜欢
卧铺列车员车厢
可疑的列车员
找车票
六号车厢
列车卧铺
第一次坐卧铺
豪华卧铺
SSAB Hardox悍达450材料轻型自卸车厢体测试报告
愿意跑
QMI汽车夏季维护:雨季车厢除异味
失踪案?