基于TRDP网络的列车人机交互系统

2023-06-21 01:09曹朝煜杜延鹏吴连军
仪表技术与传感器 2023年5期
关键词:发送数据内核显示屏

曹朝煜,杜延鹏,邱 岳,栾 赛,吴连军

(中车工业研究院(青岛)有限公司,山东青岛 266108)

0 引言

在轨道交通列车驾驶室中,列车司机通过列车人机交互显示屏掌握列车当前运行的各项运行参数并控制列车正常运行,因此列车驾驶室的人机交互显示屏是控制列车安全稳定运行的重要组成单元。人机交互系统HMI(human machine interface)作为列车控制及监控系统TCMS(train control and management system)的重要组成部分[1],承担着列车运行状态的控制、监测、故障汇报、信息共享等工作。随着列车智能化的提升,列车显示屏需要获取大量数据、视频、语音等,这就对显示屏与列车数据交互性能提出了更高要求。列车显示屏普遍采用多功能车辆MVB(multifunction vehicle bus)总线、RS-485总线、CAN总线等通信手段。列车实时以太网TRDP(train real-time data protocol)具有列车网络专用、数据传输量大、可靠性高、成本低等优势[2],可以考虑作为列车通信网络。结合上述通信总线的广泛运用和积累的技术经验,以太网的广泛运用还需时日,这需要更多集成了列车实时以太网的产品运用到列车通信网络中,只有经过实际运行数据才能积累其未来在列车通信领域的应用价值。

本文基于TRDP通信方式,在兼容当前列车网络正常运行的基础上,通过实时以太网TRDP,显示屏获得列车运行的各项数据,确保列车平稳、安全、可靠运行。

1 系统方案设计

系统整体设计由硬件系统和软件系统设计组成[3]。在硬件系统设计方面,采用I.MX8作为核心处理器,其他硬件功能采用模块化电路设计,包含110 V直流供电模块、TRDP通信模块、LCD显示模块、音/视频模块、CAN通讯模块、RS-232通讯模块、RS-485通讯模块以及USB模块组成[4]。列车显示屏通过通信模块与列车通信网络进行各项数据的传输,在经过列车显示屏CPU处理后,列车驾驶员通过人机交互的方式从显示屏获取的信息数据。硬件系统控制框图如图1所示。

图1 系统控制框图

列车HMI作为人机交互平台,其软件操作系统具有运行稳定、操作简洁、开发快捷、维护方便等优点,基于QT界面的Linux操作系统作为软件开发环境[5]。其中Linux 系统具有系统开放源码、便于移植、资源丰富、免费等优势[6],同时与PC 端的Linux同出一个内核,所以可以先在 PC 上开发编译,然后移植到其他架构的硬件,为交叉开发提供了便利,在列车HMI系统开发领域得到广泛应用。

2 硬件系统设计

列车人机交互显示屏采用高性能多核处理器I.MX8为核心搭建硬件系统;具备高性能、低功耗四核Cortex-A53处理器,最高主频达1.8 GHz;具备多媒体和显示应用,支持高清视频1080p、H.264解码;支持多屏显示MIPI、LVDS、HDMI等丰富视频接口;具备高速通信接口,可支持TRDP、CAN、RS-232、RS-485等通信接口[7];提供语音、触摸屏、USB等人机交互接口;车载级宽温达工业级温宽测试-40~+125 ℃,满足车规级要求;支持多种操作系统(LINUX+QT、Android、Yocto)开发。根据功能需求把硬件系统划分为110 V电源、人交互组成、列车网络通信3组模块,每组模块又根据实际需求进行电路模块设计。列车显示屏硬件结构图如图2所示。

图2 显示屏硬件结构图

2.1 电源供电电路

本系统供电电源为110 V直流电源,由列车共母线辅助供电系统提供,考虑该供电系统由受电弓AC25KV经AC-DC变换而来,并同时向列车控制电源、车厢照明、蓄电池等供电,110 V输入电源不可避免会掺杂各频段的干扰谐波,为避免电压波动和供电电源的不纯净而引起显示屏工作异常[8],110 V供电转换工作电路的设计就显得非常重要。

首先电源正、负接22 μH(L1、L2)滤波电感对电源进行一级滤波,依据显示屏额定工作功率加T3.15A(F1)保险丝并加压敏电阻(R1)保护后端电路;其次设计电磁滤波电路进行二级电磁滤波,组成主要包括滤波电容、共模扼流器,其中共模扼流器(FL1)对流经的共模信号进行有效抑制,薄膜电容X(C1、C9)电容的作用在于滤除差模干扰,安规电容Y(C2、C3)电容中心点接大地,能有效降低共模干扰;然后采用高效率、宽电压隔离稳压DC-DC电源芯片V110C5T75BG,将110 V直流电源转换成低压5 V直流电源,最后在经过三级滤波电路得到可靠的5 V直流供电,110 V转5 V电路如图3所示。图4为5 V转3.3 V供电电路,采用DC-DC开关稳压芯片LMR14050SDDA,具有输出电压稳定、5 A持续输出电流、40 μA超低静态工作电流等优势。

图3 5 V供电转换电路

2.2 TRDP通信电路

TRDP通信电路设计选用D013E-TR板卡,D013E是多用途的10/100 Mbit以太网接口组件,其以太网接口符合IEEE802.3标准,其内部逻辑已适用于“轨道交通电子设备列车通信网络TCN”标准[9]。D013E设计有2个冗余网口分别为TRDP1和TRDP2,同时该网口还可以应用在单以太网链路用于星拓扑,双以太网链路用于环/线拓扑,因此在实际应用场景中可以灵活设计。该板卡在列车通信网络中具有传输数据量大、工作稳定可靠、成本低、体积小等优势,所以本系统采用该型号板卡,在实际硬件电路设计中,TRDP板卡的电路原理如图5所示。

图5 D013E电路图

3 系统软件设计

列车人机交互平台作为列车驾驶员操控列车平稳运行的重要单元,其软件操作系统要做到系统运行稳定、操作简洁、开发快捷、维护方便等多个方面。本系统采用Linux+QT开发软件系统,人机交互软件系统主要有硬件层、内核层、应用层架构模块组成,具体结构如图6所示。

3.1 硬件程序加载模块

硬件层作为支撑系统加载与运行的平台,主要包含上电引导加载程序、硬件系统。Linux系统启动需要Bootloader程序,本系统选择Uboot作为系统引导程序进行启动,上电引导加载程序流程如图7所示。

图7 上电引导加载程序

首先硬件系统上电,Linux系统执行ATF加载流程,检查电源状态和系统控制与管理接口;判断核心板卡启动要求是否可信任,判断结果正常执行Uboot spl,启动主要有供电电源启动、调试串口定制、修改外部DDR 的静态参数、启动EMMC特定设备。在Uboot spl完成后,Uboot启动,读取设备树以驱动模型,加载以太网、ESPI、串口、GPIO、MIPI口等驱动。当Uboot启动后没有输入指令则启动Linux内核,当有输入指令时则进入控制台命令解析。硬件系统由内部存储和外部硬盘组成,其中LPDDR4是四代低功耗双倍数据率同步动态随机存储器,用于暂时存放处理器中的运算数据,以及与硬盘等外部储存器交换的数据[11];EMMC硬盘是计算机的主要存储介质,操作系统、安装的软件、文件和资料以数据(0和1)的形式存储在“仓库”中,软件的操作也是先将数据调用到内存中。

3.2 内核驱动模块

内核层采用可加载的模块化设计,主要有根文件系统模块、进程控制系统、操作系统内核模块、硬件设备驱动模块。根文件系统就是针对特定的操作系统的架构、特定的文件夹、文件夹之间的关系,以高速缓存方式与其他功能模块通信,支持Linux系统正常工作的各类文件以及文件系统之间的组合。根文件的开发要根据显示屏的功能需求进行跟文件系统定制开发,如图8所示,其开发流程如下:确定根文件系统需求;修改YOCTO根文件系统编译脚本,编译原始根文件系统;制作系统替换文件、增加文件;制作修改脚本,在原始根文件系统基础上修改和增加内容,并执行脚本;生成HMI定制根文件系统。

图8 根文件系统开发流程

进程控制系统模块设计由进程调度、进程间通信和内存管理3部分组成[12]。进程调度用于管理核心处理器现有的各项进程资源,在下达进程指令后可以让各个进程快速的访问CPU资源;进程间通信是内核为进程之间交换数据,而在内核中开辟一块缓存区用于进程之间相互通信的工作方式;内存管理用于系统各进程运行时共享的暂时存储区域资源,提高内存的有效利用,保证各进程间流畅运行。

系统设备驱动程序是软件操作系统与硬件电子设备连接的桥梁,包括CPU驱动和硬件设备驱动[13]。系统内核驱动是Linux系统自带得能够支持挂载外部硬件设备的前提,只有系统本身存在支持特定设备的系统内核驱动,才能与硬件设备驱动交互,CPU驱动和硬件设备驱动在内核层驱动系统之间的关系如图9所示。硬件设备驱动以设备树挂载的方式通过总线通信接口与硬件电子设备连接,本系统根据设计功能需求,将硬件设备驱动分为3类,并进行底层硬件驱动程序的开发,其中TRDP、CAN、RS-232等数据通信接口为网络设备;固态硬盘、U盘等存储文件类为块设备;显示屏、按键、背光等能单个字节读取的为字符设备。

图9 驱动系统逻辑架构

3.3 应用界面开发模块

应用层作为用户与设备交互的窗口为其提供所需的应用服务,基于QT界面开发的操作界面包含HMI系统应用程序和函数库,应用层的程序开发是根据不同型号轨道列车应用场景开发具体的用户层的程序,并运行在用户空间中满足设计功能需求。本项目通过研究列车显示屏本身以及其人机接口,开发了应用层的测试程序,验证底层硬件驱动程序与应用层调用接口是否通信正常,保证系统整体运行;函数库在Linux 系统中分为静态库和动态库,本系统根据系统运行实际需求调用不同功能的库函数。

显示屏界面采用QT Creator进行设计,Qt是跨平台的图形用户界面应用程序框架,简单地说,就是在一个平台上生成另一个平台上的可执行代码[14]。本系统的开发基于搭建了一套X86平台开发环境,如图10所示。

图10 QT开发环境搭建

首先安装VMware虚拟机;其次安装Ubuntu18.04版本操作系统[15];然后搭建安装Qt Creator5.9.5集成开发环境;安装交叉工具链;最终配置Qt Creator各项参数,完成开发系统环境的搭建。通过在x86系统搭建开发环境中编译出在HMI主机上运行的QT应用程序,通过交叉编译工具可以在ARM平台运行的程序[16]。 这充分利用了PC机的运行速度高、平台资源充足、编译环境支持度高等优势,提高了在Linux框架下显示屏系统的开发效率。

4 实验测试

根据系统硬件电路设计提供110V直流电源,并在列车显示屏设计的RS-232串口处连接串口调试工具,通过串口调试上位机软件对显示屏软件系统进行连接调试。110 V上电后,可以通过上位机串口调试软件获取上电加载引导程序打印信息。加载完成成后,此时显示屏显示HMI系统功能测试平台界面工作正常。HMI系统功能测试平台界面依据显示屏人机接口进行设计,针对每个人机接口开发测试端口界面,如测试TRDP1/2对应接口的收、发通信功能是否正常运行,需要进入测试界面的显示的人机接口功能模块。

显示屏TRDP通信接口的功能测试需要自带上位机TRDP主站软件,待硬件测试环境搭建完成后,需要配置测试上位机TRDP主站软件与下位机显示屏通信参数。

HMI测试平台中设置发送数据信息,ComID设为1001,字节数设为5,周期设为100 ms,发送方式设置为单播,目标IP设置为192.168.1.100(上位机软件IP地址),发送数据设为aa bb cc dd ee,勾选十六进制发送;上位机TRDP主站软件设置接收数据信息,ComID设为1001,字节数设为5,接收周期设为100 ms,发送方式设置为单播,目标IP设置为192.168.1.20(下位机设备IP地址),勾选十六进制接收。配置完成后开始测试TRDP通信的发送和接收功能。

4.1 TRDP发送数据功能测试

在显示屏显示界面中,选中发送数据窗口,输入发送数据为aa bb cc dd ee,点击右下角发送按钮,可以在上位机TRDP主站软件接收数据窗口接收到显示屏发送的实时数据,验证显示屏对外发送数据功能正常,测试界面如图11所示。

4.2 TRDP接收数据功能测试

在TRDP主站软件显示界面中,选中发送数据窗口,输入发送数据为11 22 33 44 55,点击右下角发送按钮,可以在下位机显示屏接收数据窗口中接收到TRDP主站软件发送的实时数据,验证显示屏对外接收数据功能正常,测试界面如图12所示。

图12 TRDP接收数据功能测试

5 结束语

本文针对传统列车显示屏总线无法满足大数据量传输的情况,提出了一种基于TRDP网络通信的列车人机交互显示技术,满足列车显示屏的实时大数据传输要求,比如列车的实时控制系统、视频监控系统、语音广播系统等;同时对列车显示屏软、硬件系统进行深入研究,设计了丰富的通信接口、开发了基于QT界面的Linux操作系统、实现了系统的开放性、灵活性和可扩展性。随着国内高速速列车快速发展,列车HMI显示技术仍旧需要不断研究,例如融合HUD 、智能语音识别、手势操作等人机交互前沿技术,实现轨道列车在驾驶上向着更加智能化方向发展。

猜你喜欢
发送数据内核显示屏
移动自组网中MAC层协议研究
一块布就是一个显示屏?
强化『高新』内核 打造农业『硅谷』
苍蝇迷恋显示屏
基于嵌入式Linux内核的自恢复设计
Linux内核mmap保护机制研究
基于马尔科夫链的LoRaWAN网络节点性能分析
带标记方式的CRDSA++协议性能分析*
使用IPSec安全传输数据
微生物内核 生态型农资