运用Qt集成的中国标准动车组显示屏模拟操作软件设计

2019-05-24 09:07王中尧
轨道交通装备与技术 2019年2期
关键词:控件显示屏按键

王中尧

(1.中车长春轨道客车股份有限公司国家工程技术中心 吉林 长春 130000;2.大连交通大学电信学院 辽宁 大连 116033)

拥有完全自主化知识产权的中国标准动车组“复兴号”已经在京沪线投入运营,并在2017年9月21日起实现350 km/h时速运营,这一里程碑式的跨越也标志着中国高铁运用技术的成熟和车辆技术的进步。

车辆在配属运用前,需要对各运用部门进行大量的培训,为了满足用户对“复兴号”动车组操作功能的深入学习和了解,同时降低主机企业对用户培训的人力资源成本,特别开发了中国标准动车组显示屏模拟操作软件,既为后续主机厂对用户的培训指导提供了便捷,也为日后“复兴号”的远程应急指挥提供了指导工具。

依据“复兴号”列车网络控制逻辑,通过Qt平台设计完成了中国标准动车组司机显示屏模拟操作软件,下面对此进行介绍。

1 标准动车组显示屏模拟操作软件设计流程

1.1 开发环境搭建

中国标准动车组司机显示屏模拟操作软件平台开发应该具备较强的可扩展性能,便于使用者进行维护与二次开发,同时需要具备丰富的图形界面编辑功能,综合以上考虑,选取Qt软件作为中国标准动车组司机显示屏模拟操作软件的开发平台。

Qt是一款跨平台的C++图形用户界面应用程序框架。它既可以用于开发GUI程序,也可以开发非GUI程序,允许真正地组件编程,并且很容易扩展,具备了应用软件开发所建立美观图形用户界面所需的所有功能[1]。

Qt支持Windows平台和绝大部分类UNIX系统,拥有良好的可扩展性及跨平台性。Qt本身使用C++语言编写,这使得它的模块化程度比较高,可重用性较好,利于标准化开发。Qt还提供了一种称为signal/slot(信号/槽)的机制而替代了一般GUI库中所使用的回调函数机制[2]。信号和槽可以带有任意数量和类型的参数,并且一个信号可以连接到任意多个槽,同样,一个槽也可以被任意多个信号激发。在这种机制下,只要开发者完成了信号与槽的连接,当信号被激发时,系统会自动调用当前信号相对应的槽所描述的响应函数并且完成参数传递过程[3-4]。

中国标准动车组司机模拟操作软件是基于Windows平台运用Qt Creator进行集成开发的一款软件,使用者可在PC终端点击封装好的可执行性文件直接打开模拟操作软件进行使用。

1.2 程序框架搭建

根据中国标准动车组司机显示屏统型文件要求,显示屏结构树如图1所示。

图1 显示屏界面结构图

由图中可以看出,司机显示界面由主界面、1级界面、2级界面组成,显示屏模拟操作软件应满足各界面间的跳转。

显示界面根据内容分为公共显示区A、主要显示区B、公共显示区C、主要显示区D,其中公共显示区A会将时间、车速、故障等情况进行实时显示;主要显示区B根据不同界面之间的切换显示相应的界面信息,其中主显示屏默认为牵引主界面,辅助显示屏默认为制动主界面;公共显示区C会显示状态图标,对司机进行提示;主要显示区D分布有10个界面跳转按键。区域分布如图2所示。

图2 中国标准动车组模拟操作软件主界面

公共显示区A从左至右集中显示信息为当前日期、北京时间、当前速度、运行模式、运行模式对应的设定速度或级位、故障提示图标。其中当前速度以及运行模式对应的设定速度或级位在车辆触发限速时字体由白色改为红色,代表当前有限速发生。

主要显示区B会根据界面跳转显示不同界面的不同信息,具体界面呈现根据中国标准动车组显示屏统型界面要求执行。

公共显示区C显示车辆状态提示图标,从左至右的图标显示依次为全列门状态、主断路器状态、换端标识、外接电源、乘客报警触发、司机警惕触发、火灾报警触发、空转滑行,在车辆触发相关信号时,显示屏会出现信号标识,同时乘客紧急触发、火灾报警触发、司机警惕触发和空转滑行触发时会有语音报警提示。

主要显示区D是各界面下方的软按键,通过按键索引可以跳转到目标界面进行查看或操作。主要显示区D下方共10个软按键,对应显示屏面板上的0~9数字硬键。

1.3 显示界面设计

显示屏界面根据统型文件要求,不同主机厂设计生产的中国标准动车组司机操作界面是面向用户软件开发很重要的一环,界面安排是否合理、清晰,使用是否方便、易操作等都是要考虑的重点[5-6]。

遵循硬件800*600分辨率大小的显示屏进行设计,运用Qt Designer进行可拖拽的图形界面编辑,设计步骤如下:(1)进入Qt Designer;(2)新建基于Qwidget的界面;(3)修改界面名称等属性,添加按钮并修改属性;(4)连接需要的现有信号和槽;(5)查看界面效果图,并保存为“.ui”文件,退出[7]。

Qt Designer设计窗口如图3所示。

图3 Qt图形化编辑界面窗口示意图

图形化实现方法如下:

(1)创建UI界面并命名。在界面中创建一个Qlabel控件,右键点击“改变对象名称”对控件进行命名,如图4所示。

图4 控件命名

(2)界面编辑完成后,进行保存。

(3)在可执行文件中关联对应UI界面。

(4)创建函数,并对不同状态显示图标关联相关变量。

(5)ui槽与变量进行关联。

控件所关联变量均在头文件中进行定义,每个变量根据端口位置通过配置文件一一对应,底层程序处理后可以与列车总线进行通信。在Qt Designer图形化的设计过程中,将UI文件与可执行文件进行定义关联,每个控件为单一信号槽,在可执行文件中使用变量与信号槽进行关联,通过自定义函数将变量的变化与图形库中的图形进行结合,最后在显示屏界面中顺利呈现图形化状态。

1.4 模拟操作软件操作按键区界面设计

按键操作区通过Qt Designer进行图形化编程设计,根据司机台布局以及司机操作习惯,将主要司机操控按键合理分布在按键操作区当中并实现功能[8]。按键区主要功能有钥匙占用、方向占用、主断路器开关、受电弓开关、车门开关。

操作按键区域界面如图5所示。

2 标准动车组显示屏模拟操作软件功能实现与验证

(1)钥匙占用及方向开关占用后,界面出现钥匙标识及方向标识,此时代表车辆已经占用,具备操作条件;操作区操作受电弓升起按键后,车辆按照逻辑自动升起后弓,同时车辆具备主断路器闭合条件,如图6所示。

(2)在受电弓升起的条件下,操作主断路器闭合按键,主断路器自动闭合,此时车辆所有设备正常工作如图7所示。

(3)切换至车门界面,车门默认为全列关闭状态,操作门打开按键,全列车门进行的操作如图8所示。

图5 中国标准动车组模拟操作软件操作界面

图6 受电弓升起

图7 设备正常工作状态

3 结束语

图8 全列门关闭

“复兴号”中国标准动车组作为拥有自主化知识产权的动车组,其核心技术列车网络控制系统已被我国完全掌握,司机显示屏在列车网络控制系统中扮演了重要的角色,既将列车的网络信号通过显示屏传递给司机,同时也将司机指令通过显示屏发送到网络系统,所以车辆在运行途中,远程应急指挥能够快速地指挥机械师通过显示屏找到故障信息,提供快速高效的应急指挥方案,是本款软件开发的重要意义。

目前中国标准动车组显示屏模拟操作软件已经在中国国家铁路局集团有限公司多个路局的应急指挥及用户培训工作中进行使用,提高了培训效果也提升了应急指挥的效率,得到了用户的认可。后续将显示屏模拟操作软件功能继续开发完善,制作成为动车组标准化平台,供所有产品使用。

猜你喜欢
控件显示屏按键
一块布就是一个显示屏?
基于有限状态机的按键检测程序设计
基于.net的用户定义验证控件的应用分析
苍蝇迷恋显示屏
关于.net控件数组的探讨
按键消抖在单片机和FPGA实验教学中的应用
LG申请欧盟商标 或布局MicroLED显示屏
一种多方向导光按键结构设计
未来五年LED显示屏出货将保持16%增长
B超机按键的替换与维护