满庆丰,张文杨,常磊
(北京航空航天大学 机械工程及自动化学院,北京 100191)
BRT屏蔽门系统站点远程监控终端设计
满庆丰,张文杨,常磊
(北京航空航天大学 机械工程及自动化学院,北京 100191)
设计了一种BRT屏蔽门系统的站点远程监控终端。以STM32F407ZGT6作为主控芯片构建终端的硬件系统,阐述了网络接口设计、本地存储设计、CAN通信电路设计、无线遥控设计。终端在软件上移植μC/OS-III系统,保证终端的多任务实时进行;移植LWIP,实现基于HTTP的网络通信、远程配置等功能。实验结果表明,屏蔽门系统能正常工作,站点远程监控的实时性、安全性较高。
STM32F407ZGT6;LWIP;BRT; μC/OS-III;远程监控终端;HTTP
快速公交(Bus Rapid Transit),是一种介于轨道交通和传统公交之间的一种运输方式,既具备轨道交通运量大、快捷、便利的特点,又具备传统公交造价和营运成本低廉的优点[1-2]。屏蔽门系统,能够为乘客提供安全、舒适的候车环境。目前,站台屏蔽门系统已经在轨道交通中得到广泛应用,并逐渐在BRT上推广。而通过监控中心与站点的信息互联,能有效地实现监控中心与各个站点系统之间的协调响应,进而提高BRT运行的自动化水平[3-4]。Internet技术的飞速发展,带动了远程监控技术的进步,基于Internet的远程监控已经成为目前工控领域的研究热点[5-7]。
本文以STM32F407ZGT6作为主控芯片,通过μC/OS-III+LWIP的嵌入式及以太网技术,设计屏蔽门系统站点监控终端。站点终端移植实时操作系统—μC/OS-III,保证终端的多任务实时进行;再移植小型TCP/IP协议栈LWIP,构建基于HTTP的站点终端与监控中心的以太网通信。在此基础上,根据屏蔽门系统的工作需求设计完成站点数据存储、无线通信、现场总线通信等模块,实现了一种自动化程度高、成本低、安全、稳定、高效的屏蔽门系统站点终端单元。
根据模块化设计的原则,将BRT屏蔽门控制系统分为主控部分(PGC)、门控部分(DCU)、车载遥控部分三大部分。PGC整合中央控制盘(PSC)、紧急控制盘(IBP),完成人机交互、无线通信、数据存储、站点远程监控终端与监控中心通信等功能,PGC通过网络线路与监控中心通信,通过无线通信方式与车载遥控部分通信,通过现场总线DCU连接。车载遥控部分在BRT到站以后向PGC发送开、关门命令,PGC接收其命令并向DCU发送相应开、关屏蔽门命令,完成屏蔽门开、关门的动作。DCU与PGC通过现场总线通信,接收PGC开、关门命令并控制相应直流无刷电机动作进行对应的响应,同时向PGC反馈各个屏蔽门的运行、故障状态等。
BRT屏蔽门系统各个子站都一般布有可用的网络线路,各个站点屏蔽门控制系统利用现有的网络线路及Internet技术构建站台远程监控终端,实现站点远程监控终端与监控中心的数据交互,响应监控中心发出的命令。同时各站点屏蔽门系统为了完成现场屏蔽门控制、数据存储、状态显示等功能应该配置以下相应的内容:可靠、安全稳定的标准网络接口;本地数据存储;LCD状态显示及触控;无线遥控;现场总线通信等。一般BRT屏蔽门系统结构框图如图1所示。
图1 一般BRT屏蔽门系统结构框图
图2 站点PGC的系统结构图
1.1 系统总体设计
本文主要研究与监控中心构建以太网通信的站点远程监控终端、站点屏蔽门系统中的主控部分(PGC),根据屏蔽门控制需求及以太网通信需求,得到系统的结构如图2所示。PGC选择STM32F407ZGT6微处理器作为主控芯片,该芯片集成FPU和DSP指令,拥有1个10/100M以太网MAC控制器、2个CAN总线等多种高性能标准接口。在MCU基础上,利用已有的外设,设计相应的MCU外围接口电路,在完成屏蔽门系统正常工作的同时,搭建站点终端与监控中心的HTTP通信,保障站点远程监控的可靠性与稳定性。
1.2 网络通信接口设计
STM32F407ZGT6芯片自身集成有以太网模块,该模块包括带专用DMA控制器的MAC 802.3(介质访问控制)控制器,支持 RMII (简化介质独立接口)和MII(介质独立接口),必须外接PHY芯片才能完成以太网通信。这里选用SMSC公司的LAN8720A芯片作为PHY芯片,该芯片具备高性能的10/100M以太网传输模块,为了精简引脚数量及独立发送和接收数据路径,LAN8720A芯片与MCU通过RMII接口相连。构建站点终端和监控中心的以太网通信时,PHY芯片LAN8720A充当物理层,STM32F407ZGT6自带的MAC层充当数据链路层。图3为以太网通信中STM32F407ZGT6与外接PHY芯片接口的电路图,图4为以太网通信中接出RJ45接口的电路图。
1.3 本地存储电路设计
站点屏蔽门系统中的数据存储分为两个方面:系统配置参数的存储和屏蔽门运行数据的存储。系统参数的存储使用掉电数据不丢失的数据存储方法,在STM32F407ZGT6中使用其内置的FLASH模拟EEPROM功能,保证系统的参数在掉电后不丢失,使用内部的D-Code数据总线访问内置FLASH模块,对其进行数据的读/写。
图3 以太网通信接口图
图4 以太网通信RJ45接口图
针对屏蔽门运行数据需要大量、快速存储的需求,选用SD卡充当数据存储设备。SD卡具备容量大、支持SDIO/SPI等多种驱动、数据传输快等优点。站点屏蔽门系统正常运行时,SD卡记录屏蔽门的运行状态及故障情况,根据站点需求再取出SD卡中的相应数据内容。这里,STM32F407ZGT6芯片通过SDIO接口与SD卡进行连接。
1.4 CAN通信电路设计
站点屏蔽门系统中, PGC不仅需要与监控中心构建以太网通信,还需要接收到达站点的BRT发出的开、关门指令,并将收到的开、关门指令通过CAN总线下发给站点上各个屏蔽门对应的DCU,由DCU控制电机转动来实现相应屏蔽门的开、关门动作。这里选用NXP 公司的CAN收发芯片TJA1050,该芯片具备速率高、电磁抗干扰性强等特点。这里STM32F407ZGT6芯片通过收发芯片TJA1050接出CAN通信接口。
系统软件设计的好坏直接决定了远程监控终端的性能优劣。BRT站点远程监控终端—站点屏蔽门控制系统PGC将站点屏蔽门的运行状态和故障进行采集、处理及过滤以后,通过以太网将有效的数据信息实时发送给监控中心。
系统允许监控中心根据BRT运行线路调整、到站BRT开、关车身车门所需时间等实际情况,对各个站点进行远程的参数配置、数据统计等。为了保证站点屏蔽门系统除以太网通信以外的正常工作,PGC端通过nRF24L01无线模块接收到站BRT发出的屏蔽门开、关门指令并解析接收的无线命令数据,然后将解析后的有效信息发送给DCU控制开、关屏蔽门。
PGC端通过CAN总线与站点各个DCU构建CAN通信网络,通过CAN总线控制DCU的方式,PGC间接控制各个屏蔽门的开、关门动作。在整个站点屏蔽门系统工作期间,TFTLCD触摸屏在站点本地端实时监控现场的屏蔽门运行及故障状态,完成本地端屏蔽门系统的状态显示和监控功能,同时本地端通过SD卡存储的方式及时存储屏蔽门系统的运行状态及故障状态。
为了方便系统的软件设计及多任务实时运行,在系统PGC端移植μC/OS-III操作系统,同时为了满足网络通信的功能,在系统内移植TCP/IP协议栈LwIP。系统PGC的整体软件设计结构,如图5所示。
图5 嵌入式整体软件设计框图
利用移植好的μC/OS-III系统及站点屏蔽门系统的功能需求,系统主要的任务模块如图6所示。以太网通信任务模块依靠已经移植好的LwIP协议栈构建站点远程监控终端与监控中心的以太网通信,根据LwIP这个TCP/IP协议栈实现传输层的TCP通信及运用层的HTTP服务,进而完成监控中心与站点远程监控终端的实时数据通信、远程参数配置及远程数据统计等功能。
为了系统更加灵活地根据现场情况运行,创建本地端参数配置任务模块,允许不同站点根据现场实际情况配置该站点的屏蔽门开门时间、关门时间等系统参数。无线控制任务模块基于NRF24L01,接收来自BRT车载遥控端的开、关门指令,并将无线信息解码后传递给CAN及数据存储任务模块;CAN及数据存储任务模块接收无线任务模块或者触摸屏人机交互任务模块控制命令,给屏蔽门各个DCU下发控制屏蔽门开、关门直接命令,同时接收来自各个DCU端的屏蔽门运行状态及故障状态的反馈,在这一过程中利用SD卡记录并存储屏蔽门运行及故障状态。触摸屏人机交互任务模块完成本地端屏蔽门运行及故障状态的显示及检测,同时在无线任务故障时通过触摸屏按键方式控制站点相应位置屏蔽门的开、关门。
图6 μC/OS-III任务模块划分
根据各个任务模块的需求依次编写MAC驱动、PHY芯片驱动、CAN驱动等相应驱动,给用户应用程序提供相应的API接口,便于各个任务模块对所需要的硬件进行正确的访问。软件设计中各个任务之间通过μC/OS-III提供的信号量、消息队列及部分全局变量进行系统任务间的任务同步、消息传递等任务间通信,通过μC/OS-III提供的任务调度、任务切换等功能保证实时操作系统μC/OS-III的正常运行。
2.1 系统应用工具移植
2.1.1 μC/OS-III操作系统
μC/OS-III作为一个嵌入式实时操作系统,拥有以下特点:没有任务数量的限制、可剥夺、可同时等待多个内核对象、防止死锁等功能[8]。为了减少移植的复杂性,在官网上下载μC/OS-III在STM32F4XX上移植好的工程文件,基于这个工程文件进行相应的修改,避免从零开始完整移植整个操作系统[9]。在下载到的工程模块的基础上进行必要的修改,举例说明,修改板级支持包bsp.c,bsp.h文件内的系统时钟、头文件内容等。
2.1.2 LwIP网络通信协议栈
LwIP是由SICS(瑞典计算机科学院)的Adam Dunkels等人开发的一个小型开源TCP/IP协议栈,只需大约13 KB的RAM和大约40 KB的ROM即可正常运行,因此其适合简单的嵌入式系统运用。移植LwIP时,下载LwIP官方例程模板,并在ST官网上下载以太网库[10]。结合例程模块、μC/OS-III系统及相应的MAC、PHY等硬件驱动,添加并修改LwIP源文件及中间文件,裁剪及配置LwIP,进而移植好整个LwIP协议栈。
2.2 以太网通信模块设计
以太网通信的网络传输模型中,LAN8720A为物理层,STM32F407ZGT6自带的MAC层为数据链路层,而LwIP提供的是网络层、传输层的功能,运用层采用HTTP(Hypertext Transfer Protocol)服务,实现监控中心与站点远程监控终端的实时通信、远程参数配置及远程数据统计等功能。
针对上述需求,监控中心和站点监控终端之间传输层采用面向连接、可靠的TCP协议,在编写PHY芯片驱动、STM32F407ZGT6自带的MAC层驱动等相应驱动层代码的基础上,利用移植好的LwIP搭建好以太网通信传输模型中的物理层、数据链路层、网络层、传输层。同时为了监控中心可以简单、快捷、有效地监控各个屏蔽门系统的运行状态,采用基于HTTP协议的应用层,使用Web浏览器直接访问站点远程监控终端,实现监控中心与监控终端的以太网通信及数据交互。
借助JS(JavaScript)技术、SSI(,服务器嵌入)技术及CGI(公共网关接口)技术,在Dreamweaver CS6软件上使用HTML(Hypertext Markup Language)语言编写监控中心的网页端监控界面,其中包含BRT运行线路主界面、BRT站点状态显示界面、BRT站点数据查询及统计界面、BRT站点远程参数配置界面、BRT站点远程控制界面。BRT运行线路主界面用于显示整条BRT运行线路上所有站点,根据监控中心的监控需求点击进入相应的站点屏蔽门系统界面;BRT站点状态显示界面用于实时监控当前站点监控终端的运行状态及故障状态;BRT站点数据查询及统计界面用于查询或者统计当前站点任意一个或者全部屏蔽门的开关门次数等站点历史信息;BRT站点远程参数配置界面用于监控中心针对BRT的实际情况配置各个站点的系统参数;BRT站点远程控制界面用于允许监控中心对站点的屏蔽门进行相应的控制。
2.3 CAN及数据存储模块设计
系统PGC与站点上各个DCU通过CAN总线进行数据通信。在整个系统运行期间,依靠SD卡及FLASH进行系统的数据存储。系统PGC端通过SDIO接口接入SD卡,在软件上移植FATFS并将SD卡挂载在FATFS文件系统上。可以接收来自DCU的运行状态及故障信息,根据信息的内容利用FATFS文件系统完成系统运行数据的本地存储,同时还能接收来自网页端参数配置命令,调用FLASH对应的API函数,进行系统参数的必要存储。
2.4 无线控制模块设计
配置系统PGC端为nRF24L01接收模式,车载遥控部分为发送模式。PGC负责接收车载遥控部分发送的开、关门无线命令,完成解码和处理任务,控制站台屏蔽门开、关门动作。
本文所设计的远程监控终端—站点屏蔽门系统PGC具备以下特点:
① 以STM32F407ZGT6为主控芯片,充分利用现有外设,搭建站点终端,以较低的成本实现屏蔽门系统的工作需求,并完成与监控中心的HTTP通信。
② 基于μC/OS-III的实时操作系统,保证系统实现以太网通信、本地端参数配置、无线控制、CAN及数据存储、触摸屏人机交互等子任务独立实时进行,实现了站点终端控制站点屏蔽门正常工作的可靠性、实时性,同时也确保监控中心与站点终端以太网通信的实时性、稳定性。
③ 以LwIP协议栈为基础,运用HTML和JS技术设计基于HTTP服务的远程通信界面,实现监控中心对站点终端的实时数据传输、远程参数配置、数据统计等功能。
[1] 王亚东. 城市快速公交系统运营效果后评价研究[D]长春:吉林大学,2014.
[2] 美国国家科学院运输研究委员会.巴士快速交通实施指南[M].王健.北京:中国建筑工业出版社,2009:6-7.
[3] 赵博.基于计算机和网络技术的地铁主控系统[D].西安:西安电子科技大学,2010.
[4] 范毅君.基于Internet的地铁屏蔽门远程监控系统研究[D].上海:华东师范大学,2009.
[5] 关丽敏,李思慧,李伟刚. STM32F107VC的嵌入式远程监控终端设计[J].单片机与嵌入式系统应用,2014(6):72-75.
[6] 张猛,房俊龙,韩雨. 基于ZigBee和Internet的温室群环境远程监控系统设计[J]. 农业工程学报,2013(S1):171-175.
[7] 高嵩. 基于HTTP协议的嵌入式远程监控系统的研究[D]. 北京:北京工业大学,2009.
[8] Jean J Labrosse. 嵌入式实时操作系统μC/OS-III[M].宫辉,译. 北京:北京航空航天大学出版社,2012.
[9] 刘渊,田彦云,张天宏. 基于μC/OS-III和ARM的空心杯电机控制器设计[J]. 单片机与嵌入式系统应用,2015(4):51-53.
[10] 谌进,马尚昌,张素娟. 基于μC/OS-II和LwIP的串口设备联网技术研究[J]. 电子设计工程,2015(10):75-78.
满庆丰(教授),主要研究领域为现场总线控制系统及工业测控网络技术、机电控制及自动化、嵌入式系统应用技术;张文杨、常磊(硕士研究生),研究领域为嵌入式技术、工业测控及自动化。
图9 SignalTap II采样波形
参考文献
[1] 杨翠军,钱敏,朱静. 基于SOPC技术的数字音频处理系统设计[J]. 通信技术,2012(06):131-134.
[2] 江一帆,江飚. 基于 Nios Ⅱ的音频录播系统设计[J]. 计算机应用,2014,34(S1):262-264.
[3] Pong P. Chu.基于Nios II的嵌入式SoPC系统设计与Verilog开发实例[M]. 金明录,门宏志,译.北京:电子工业出版社,2015.
[4] Wolfson microelectronics plc. WM8731/WM9731L datasheet,2009.
[5] Altera Corporation. Avalon Interface Specifications,2013.
[6] Altera Corporation. Guidelines for Developing a Nios II HAL Device Driver,2013.
[7] 王杰玉,杜炜,潘红兵. 基于FPGA的音频编解码芯片接口设计[J]. 现代电子技术,2009(5):179-181.
秦玉龙(讲师),主要研究方向为嵌入式系统、FPGA技术应用、信号处理。
(责任编辑:杨迪娜 收稿日期:2017-02-06)
Site Remote Monitoring Terminal for BRT Platform Screen Door System
Man Qingfeng,Zhang Wenyang,Chang Lei
(School of Mechanical Engineering&Automation,Beihang University,Beijing 100191,China)
In the paper,a remote site monitoring terminal of BRT platform screen door system is designed.The system takes STM32F407ZGT6 as CPU to build terminal hardware system.The network interface,local storage,wireless remote control and CAN communication circuit are introduced. The site terminal transplants the real-time operating system μC/OS-III in the software,it ensures that the terminal of the multi task in real-time.The protocol stack LWIP is transplanted to achieve the function of HTTP network communication and remote configuration.The experiment results show that the remote site monitoring terminal is running well,the site platform door system works normal and the real-time and safety of remote monitoring is high.
STM32F407ZGT6;LWIP;BRT;μC/OS-III;remote monitoring terminal;HTTP
TP273
A
�迪娜
2017-02-27)