基于NB-IoT的地铁列车定位系统设计
2022-02-20邓建芳李志明杨森丁云杰
邓建芳,李志明,杨森,丁云杰
(南京铁道职业技术学院,江苏南京,210031)
1 系统总体结构
地铁列车绝大多数时候行使在地面以下的隧道中,卫星信号衰落较大,美国GPS和中国北斗等卫星定位方式均无用武之地。本文提出利用地铁已建成的公共4G蜂窝移动网络上部署的窄带物联网(Narrow Band Internet of Things, NBIoT), 设计出一套基于NB-IoT的地铁列车定位系统,满足以下需求:
(1)独立于CBTC系统,为地铁列车的安全运行提供了一种冗余的安全监测手段。
(2)行车调度员可准确地观测列车位置,以便发出正确的调度指令。
(3)拥有独立于现有地铁运营系统的供电模块,供电方式简单,功耗低。
该定位系统由定位终端、控制中心设备和NB-IoT云服务器三部分组成,系统总体结构如图1所示。
图1 地铁列车定位系统总体结构
定位终端安装于地铁列车上,接收控制中心设备发送的控制指令信号,利用4G基站采集列车地理位置信息,通过NB-IoT无线通信网络将列车当前位置信息送给控制中心设备。控制中心设备放置于地铁线路的调度中心,对地铁列车运行动态进行远程实时监测。在控制中心设备的液晶显示模块上,行车调度员可以准确快速地了解到地铁列车运行状况。NB-IoT云服务器实现定位终端与控制中心设备之间的双向通信。
2 系统硬件设计
2.1 定位终端硬件电路
定位终端由MSP430F169控制模块、SIM7600CE通信模块以及电源模块组成,按照设定周期不断更新列车的实时坐标数据。
MSP430F169控制模块具有超低功耗、独立电源供电、运算速度较快、超长待机、系统工作稳定等优势,在整个定位终端设备有控制的作用。控制模块与SIM7600CE通信模块之间使用串口通信,可以实现对SIM7600CE通信模块的控制与数据处理。发送的控制命令可以控制SIM7600CE通信模块使其查询地铁列车周围基站信息,将定位码发送给控制模块分析和处理,处理后的定位数据通过SIM7600CE通信模块以无线方式传送给NB-IoT云服务器,转发给控制中心设备。
SIM7600CE通信模块内置4G模块和NB-IoT模块,具有低功耗特点。本系统使用SIM7600CE作为定位终端的通信模块,一方面接收控制中心设备发来的控制命令,利用4G基站定位原理采集周围基站的定位信息,实现地铁列车的位置信息采集。另一方面通过外置天线与NB-IoT云服务器进行无线通信,负责定位终端与控制中心设备之间的数据传输。
电源模块由9V直流电池与LM2596降压模块组成,外围器件很少,具有电路简单、体积小等特点。终端设备使用环保9V碱性电池直流供电,通过降压模块LM2596转化为控制模块和通信模块所需的5V电压。可见,定位终端采用独立供电方式,不依赖于地铁专用供电系统。若地铁供电系统突发故障,该定位系统仍可以正常使用。
2.2 控制中心设备硬件电路
控制中心设备由MSP430F169控制模块、SIM7020C通信模块、液晶显示模块、按键模块以及电源模块组成。控制中心设备的电源模块与定位终端完全相同。
控制中心设备的MSP430F169控制模块是整个定位系统的控制核心,完成绝大部分的数据分析和处理。正常情况下,MSP430F169控制模块接收SIM7020C通信模块从定位终端获取到的列车定位信息,进行定位计算和数据分析处理,转换成列车位置信息,在液晶显示模块上实时显示出来,供调度员实时查看。紧急情况发生时,调度员可以通过按键向列车定位系统发出控制命令,控制模块检测识别和确认后,通过SIM7020C通信模块向定位终端下发列车位置查询命令。
控制中心设备的通信模块采用SIM7020C实现。SIM7020C通信模块与MSP430F169控制模块之间通过串行接口相连,其外置天线与NB-IoT云服务器进行无线连接,实现控制中心设备与定位终端的通信。SIM7020C通信模块一方面将控制中心设备的控制命令传送给终端设备,另一方面接收定位终端采集到得位置信息,以串口通信的方式发送给MSP430F169控制模块处理。
本设计选用的LCD12864液晶显示模块具有低电压、低功耗特点,它还具有灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面,完全可以满足列车所在的车站或子区间信息显示需求。
按键模块采用独立的机械按键,完成以下功能:按下电源按键后,接通控制中心的控制模块、通信模块、显示模块的电源,各模块正常工作;按下复位按键后,控制中心设备处于复位状态,控制模块、通信模块、显示模块的RAM数据清空;按下暂停按键后,控制中心设备处于暂停状态,控制模块、通信模块、显示模块的数据暂存于RAM中。一旦有紧急情况发生,调度员可以通过控制中心设备的查询按键向定位系统发出查询命令,通过增加和减少键更改定位采集周期。
2.3 NB-IoT云服务器
NB-IoT云服务器租用阿里云服务器的存储空间,以NBIoT无线方式完成定位终端的SIM7600CE通信模块和控制中心设备的SIM7020C通信模块之间的信息传输,实现控制中心设备与定位终端的双向通信。NB-IoT无线传输采用开销小、占用带宽低的MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)协议。MQTT协议基于客户端-服务器发布或订阅消息,我们将成定位终端的SIM7600CE通信模块和控制中心设备的SIM7020C通信模块设置为客户端,是消息的发布者和订阅者,NB-IoT云服务器完成消息代理。
3 系统软件设计
3.1 定位终端主程序设计
定位终端通过MSP430F169单片机控制SIM7600CE通信模块与云服务器建立连接,主程序流程如图2所示。SIM7600CE通信模块以信息订阅者的身份,通过MQTT协议订阅查询位置为主题的信息。若接收到查询位置的主题信息,就以串口通信的方式对SIM7600CE通信模块下达更改位置查询周期的信息。否则接受来自通信模块采集到的所有基站LAC和CID码,选取信号最强的3个基站,通过Chan定位算法分析得出当前列车所处位置的经度和维度信息,并且控制SIM7600CE通信模块将定位信息以消息发布者的身份发布到云服务器,继而传送给控制设备。
图2 定位终端流程图
3.2 控制中心设备主程序设计
控制中心设备主程序流程如图3所示。控制中心设备检测按键模块是否有控制命令下发。若按键按下,则以串口通信的方式控制SIM7020C通信模块,通知SIM7020C通信模块以发布者的身份向定位终端发布控制命令。若无按键按下,通知SIM7020C通信模块以订阅者的身份订阅以位置信息为主题的消息。在本系统中,主题为定位数据,表示所传输的消息类型是与定位有关的,消息订阅者只要订阅了这个主题之后,就可以收到关于这个主题的所有消息内容。为了便于调度员直观、准确地观测列车位置,控制中心设备在接收到服务器的响应后,将列车经度和纬度值以轮询方式查阅已建立的列车经纬度-线路公里标数据库,再将公里标转换成地铁轨道线路的子区间编号。列车位置最终以车站名或子区间编号形式在液晶显示屏上显示,便于调度员快捷准确地观测。
图3 控制中心设备流程图
两个地铁车站之间形成一个列车运行的闭塞区间,为了提高定位精度,将闭塞区间划分为若干子区间,按序编号。相邻子区间之间的距离越小,子区间数量越多,定位精度越精确。本系统采用子区间间隔为100米,相距1千米的两个车站之间划分为10个子区间。表1为地铁轨道线路的公里标与子区间关系示例,受篇幅限制,仅列出间隔约为500米的子区间划分。
表1 地铁轨道线路的公里标与子区间关系示例
4 系统测试
为检测本文所设计列车定位系统的有效性和稳定性,将定位终端加上防震设施后随列车运行在4G网络覆盖区域内,调度员按下控制中心设备的增加或减少按键,启动系统运行。测试结果表明,定位终端根据设定周期进行位置采集,列车位置信息通过NB-IoT云服务器转发后送至控制中心设备,调度员可实时观测到列车的行驶方向,以及列车所处的车站名或子区间编号。通过与地铁实际位置比对,本系统的列车定位精度误差在100米左右,在列车安全运行允许范围内。当切断地铁运营系统的供电模块时,本定位系统依然正常运行,达到了预期设计目标。
5 结束语
本设计结合4G基站定位和NB-IoT技术,根据地铁列车运行安全的实际要求,开发设计了一种满足了实现地铁列车定位的装置。该系统硬件简单,大多数功能通过软件实现,具有结构简单、低功耗、低成本、实用性强等优点,为地铁列车运行提供了可靠的保障,降低地铁列车事故的发生概率,为地铁列车安全运行提供冗余保护。