智能乘客服务终端的设计与实现

黄志威,赵伟慧,汪晓臣,孙同庆

中国铁道科学研究院集团有限公司电子计算技术研究所,北京 100081

【摘要】本文研究了智能乘客服务终端的软件设计方案和实现方法,通过分析智能乘客资讯系统的架构和智能乘客服务终端的功能需求,探讨既有乘客信息系统的不足,提出具备可交互功能的智能乘客服务终端的软件需求。文章基于先进的MVVM技术理念,结合智能乘客服务终端的业务特点,逐步构建并优化智能乘客服务终端的软件架构,实现了智能乘客服务终端的分层模块化功能,实现模块解耦和业务解耦,解决关键技术难点。

【关键词】智能乘客服务;可交互式智能服务;MVVM架构;智慧车站;乘客信息系统

Design and Implementation of Intelligent Passenger Service Terminal

Huang Zhiwei, Zhao Weihui, Wang Xiaochen, Sun Tongqing

Institute of Computing TechnologyChina Academy of Railway Sciences Corporation LimitedBeijing 100081

Abstract: This paper studies the architecture of the intelligent passenger information system. By analyzing the functional requirements of the intelligent passenger service terminal and the shortcomings of the existing passenger information system, this paper discusses puts forward the soft-ware requirements of the intelligent passenger service terminal with interactive function. Based on the advanced MVVM architecture, combined with the characteristics of the intelligent passenger service terminal, this paper gradually constructs and optimizes the software architecture of the intelligent passenger service terminal, realizes the hierarchical modular function of the intelligent passenger service terminal, realizes the module decoupling and business decoupling, and solves the key tech-nical difficulties.

Key words:intelligent passenger service;passenger interaction terminal;MVVM architecture;smart station;PIS

1 引言

城市轨道交通是服务大众出行的重要交通组成部分,轨道交通车站内的乘客服务设备体现了车站对乘客的智能化服务水平,是城市轨道交通乘客服务信息化、智能化出行体验的必要组成。乘客通过地铁站点的各类显示终端,能及时了解列车的运行信息、公共信息及安全事项等,同时该系统在列车运行空隙时间可播放天气预报、时事新闻、娱乐节目等内容,除了传统意义上的出行服务外,还兼有城市宣传、城市文化传播等特点。这些信息服务能够有效提升地铁服务质量,解决乘客出行信息化需求,提高车站运营服务水平。城市轨道交通建设正面临着从数字化向智慧车站的过渡,乘客信息系统作为传统乘客服务系统,其服务内容固定,形式单一,终端展示信息有限,服务能力已经不能满足目前乘客出行的智能化服务需求。

2 智能乘客资讯系统概述

智能乘客资讯系统基于乘客信息系统(PIS)的服务内容拓展而来,随着智慧车站的建设和完善,PIS播放终端亟待提供具备乘客交流服务能力的智能显示终端,构建开放的、多业务的、智慧的综合乘客服务系统。智能乘客资讯系统便是基于乘客的智能互动服务需求开发的一套可交互的综合服务终端,为智慧车站建设提供智能化乘客综合服务的系统。

智能乘客资讯系统作为城市轨道交通对外宣传、提升自身的整体形象、为进入轨道交通内部的乘客提供服务指南的重要窗口,能起到发布业务信息、发布商业广告、提供车站周边环境及车站周边地图、线网地图信息及各项服务的介绍、提供信息查询等功能;为轨道交通的信息沟通提供重要手段。此外,通过计算机网络系统实现终端远程监控,使设备安装、系统管理、系统升级、系统维护等实现方便、快捷、准确。

2.1 传统PIS播放终端的不足

传统PIS的多媒体播放终端(简称播放终端)通过视频、文字、图片向乘客展示到站信息、运营信息、媒体信息等综合服务信息。PIS信息的传递是由运营到乘客的单向传递,信息显示从运营视角传递必要的行车信息、运营信息、视频信息,数据来源单一,缺少乘客反馈,无法提供乘客服务按需自助服务的途径。随着智能化、网络化的发展,传统方式已经无法适应乘客对服务个性化和快速响应的需求,PIS功能亟待通过技术创新提出更加智能化的服务内容。

2.2 智能乘客服务终端的特点

随着云计算、人工智能、5G、物联网等技术的普及,我们通过移动终端能够获得各种功能丰富且便捷的应用,这些便捷应用的重要体现是通过人机互动完成的。很明显,当前PIS的服务能力受到制约条件之一是不具备人机互动能力,智能乘客资讯系统与人工智能、物联网等技术结合,通过智能乘客服务终端(简称服务终端)提供智能化的交互式乘客服务。

如果将PIS的播放终端比作是我们客厅内传统的电视机,那么智能乘客资讯系统的服务终端就是现在的智能电视机。传统的PIS可以类似我们传统收看电视节目的形式,只能收看当前时段电视台播出的节目,不能选择其他内容。而智能电视机的观众可以选择收看电视节目,也可以选择观看电影、游戏互动、网上购物等其他功能,用户可以根据自己的需求选择不同的服务内容。同样,服务终端能够弥补PIS播放终端无法为乘客提供互动式服务的缺憾。乘客可以根据实际出行需求,自助使用服务终端提供的各种智能化查询、资讯等个性服务功能。

传统PIS显示终端通常采用上挂方式,在乘客无法接触的位置进行信息展示。智能服务终端采用落地或者嵌入墙体、屏蔽门等方式,使乘客可以使用终端的触控服务功能。显示终端具备触摸屏、拾音器等输入设备和感知设备,能够采集使用者需求提供对应的服务信息,为每一位乘客提供个性化服务。

3 服务终端需求分析

3.1 智能乘客资讯系统整体架构

智能乘客资讯系统的整体架构由中心系统、车站系统、终端系统3层构成,如图1所示。

图1 智能乘客资讯系统整体架构

中心层是中心计算和存储云平台,具备中心统一运维管理、信息发布、媒体编播、地理信息、数据查询等系统功能,为车站提供智能化管理以及专业的编播服务和地理信息服务。

车站层主要有车站交换机、车站服务器、车站管理工作站,能够管理站内各个终端设备,具备设备监控,运维统计等车站维护功能。

终端层即智能乘客服务终端提供了乘客交互式智能化服务体验,集成了控制器、显示屏、光传输器、触摸屏、传感器等设备,为乘客提供多功能的智能化服务体验。

根据层级化分,中心功能主要是专业功能服务和统一管理,车站主要功能是站内设备维护管理,终端设备主要功能是面向乘客的智能化服务。

3.2 服务终端的硬件组成

为给乘客提供智能化、便利化的服务体验,智能乘客服务终端设备除显示屏、控制器,还具备触摸屏、温度传感器、摄像头、传声器阵列等传感设备。控制器可以通过调用这些硬件传感设备结合人工智能(AI)算法提供人性化服务。终端控制器采用高性能的x86控制板,能够满足4K播放显示和虚拟现实(VR)的3D显示的解码能力,同时满足播放画面监视回传的共性能编码能力。

智能乘客服务终端与PIS播放终端的不同是将终端控制设备前置,与终端显示设备集成为整体终端设备。PIS播放控制器通过光传输器一分八的功能进行多路输出,这种硬件结构导致无法实现终端屏和乘客的一对一交互。通过前置终端控制器,实现了每个屏独立的服务能力。与PIS播放器上挂式的安装方式不同,智能乘客服务终端通常采用落地式竖屏显示方式,满足乘客能够触控操作的服务需求。

3.3 服务终端功能分析

智能乘客服务终端具备PIS传统播放终端功能,同时提供更加丰富的乘客互动功能。通过对地铁运营单位的调研,以及对乘客需求的调研,我们将面向乘客可交互的服务终端定义为八个功能模块。

如图2所示,服务终端的主要显示功能业务有:周边信息展示、文化旅游景点介绍、线网信息查询、商业广告及媒体、日期及时间展示、线路运营信息、出行路径查询、图片宣传信息。

图2 交互式终端的显示功能模块

(1)周边信息展示 可以包含周边建筑信息、周边道路信息、周边公交换乘信息等,帮助乘客了解周边站点和周边地图。通过采用周边地图和3D站内图的方式,直观地展示周边信息。

(2)文化旅游景点介绍 对于通过高铁、飞机等交通工具到达本市的非本市乘客,乘坐城市内的轨道交通是市内出行重要的公共出行方案之一。对这部分乘客而言,本市的文化旅游景点介绍是展示城市文化风貌的重要方式,可以提升城市整体形象。

(3)线网信息查询 城市轨道交通通常是网络化运行的,线网图的展示能够直观地向乘客展示通过轨道交通能够到达的目的地,方便乘客出行。通过站点查询,也可以便捷地查询目的站需要换乘的地铁线路。

(4)商业广告及媒体 商业广告及媒体宣传信息是PIS的组成部分。运营企业可以通过投入商业广告产生收益,在服务乘客的同时能够获得广告收益。同时视频媒体宣传也是重要媒体宣传手段,可以投放城市宣传片、乘客宣传视频、公益广告等,提升城市形象,宣传城市文化。乘客在等车的同时也能够通过视频媒体避免枯燥乏味的等待。

(5)日期及时间展示 包括日期时间展示、天气展示、周边温湿度展示、客流密度信息展示等。

(6)线路运营信息 包括车站文字信息、失物招领等滚动文字信息,周末班车时刻表、列车到站信息等列车运行信息,客流密度、温湿度等站内传感信息。

(7)出行路径查询 通过乘客输入的出发地和目的地查询乘客出行路线,同时查看需要乘坐地铁的出发站和目的站,让乘客可以知道需要如何换乘和在哪站下车。

(8)图片宣传信息 本功能结合地铁站内设置宣传橱窗功能,使综合资讯终端具备动态的宣传图片切换播放功能,运营人员可以选择不同区域发布不同的图片宣传信息,支持多图多效果的轮播功能。

(9)维护监控功能 终端设备除显示服务功能,还具备维护监控功能,主要有:设备状态上报、设备画面截图、设备实时画面监控、设备定时开关机、设备远程开关机、设备远程重启、设备音量调节等。

4 服务终端软件设计方案

4.1 传统PIS播控软件架构

良好的软件设计架构是软件产品稳定性和可维护性的必要条件,因此在软件开发中要格外注重软件的设计架构。当前互联网的WEB技术发展迅速,UI展示方式多样化,这与其灵活框架是密不可分的。在PIS播控软件的架构设计上,我们充分借鉴了WEB灵活的UI设计模式。播放终端软件采用了先进的MVC设计理念,将业务数据作为Model层,通过REST服务以JSON数据为载体与后台系统进行业务数据通信;前端显示的View层提供各种业务的显示模块,通过Controller控制器,控制Model数据在View组件中展示。这种方式实现了显示和业务的最低耦合,有利于业务拓展。按照MVC理念设计的播放终端软件的简化架构如图3所示。

4.2 服务终端软件架构设计

服务终端软件既具备PIS播放软件的播放显示功能,同时拓展了乘客可交互的服务功能。因此在软件设计上我们充分借鉴已有的PIS播放终端的先进理念,然而这种MVC的播控软件设计框架的数据是单向传递,在服务终端软件架构中,我们需要将前端显示的用户输入指令传递给后台服务,那么就需要构建非常复杂的Controller控制器,实现数据的回传,使其无法有效地从架构层面解耦。基于这种思考,通过对互动式终端业务分析,将终端软件数据流进行整理拆分,优化改进既有框架,结合MVVM框架构建了新的服务终端软件架构,通过数据的双向绑定,实现了业务和显示的解耦。

图3 PIS播放终端MVC架构

MVVM是Model-View-ViewModel的简写。它本质上就是MVC的改进版。MVVM将其中的显示抽象为视图和数据,分开业务逻辑和显示视图,即模型-视图-视图模型。模型指的是后端传递的数据,视图指的是所看到的页面。视图模型是MVVM模式的核心,它是连接View和Model的桥梁。ViewModel有两个功能(图4):一是将模型转化成视图,即将后端传递的数据转化成所看到的页面,实现的方式是数据绑定。二是将视图转化成模型,即将所看到的页面转化成后端的数据,实现的方式是事件监听。两者结合,我们称之为数据的双向绑定。

图4 MVVM模型

在成熟的WEB框架中,ViewModel的工作已经在框架中自动完成。服务终端软件中,我们利用事件监听和数据绑定开发了服务终端软件的ViewModel组件模块。依据MVVM模型,我们根据智能服务终端的业务将整体的原MVC框架的Controller剥离出多个ViewModel,原框架的Controller控制所有View显示和Model数据。ViewModel并不是简单替代Controller,而是将Controller的业务逻辑提取出来,实现的是业务逻辑组件的重用。在MVVM框架中,ViewModel设计为一对一的View显示,简化控制模块。实际业务中,一个模型可以用多个数据源,也可以被多个显示界面使用,基于这种初始需求我们设计了交互式终端的基本框架,通过基础框架一步步的演变优化,构建出符合智能服务终端业务需求的最终框架。服务终端基础框架如图5所示。

图5 服务终端基础框架

这个整体框架中,后台提供了基于REST的服务接口,终端调用后台服务接口实现统一管理。为进一步详细区分终端软件和后台接口,我们可以将图5细分为后台服务部分和终端软件部分,如图6所示。

图6 服务终端前后台分离

图6中,通过数据流细分我们可以进一步优化。一个Model通过调用多个后台服务实现终端数据通信和业务功能,而ViewModel通过多个Model数据控制View的UI显示。我们将接口业务和UI的Model模型分开,确保ViewModel和Model是一一对应的关系,并且确保MVVM的双向绑定模型,以及业务处理和后台接口服务是一一对应关系。这样简化了我们需要实现的ViewModel功能复杂度,同时也简化了业务处理的复杂度,数据流模型优化如图7所示。

图7 模型优化

从图7中可以看到,业务复杂点就在于UI的Model模型和业务处理之间的交互。为降低模块间交互复杂的问题,我们引入了事件总线,降低模块间交互难度,提高可维护性,其结构如图8所示。

图8 事件总线结构

通过这一模型,我们已经极大地简化了软件结构,将模块间逻辑充分解耦。软件的另一个设计难点在于前端UI的高度可定制化,我们通过后台播放计划控制终端所有显示内容,将View-ViewModel-Model封装为具有单一完备功能的UI显示模型,我们称之为ViewModule,同时引入控制器,控制器通过播放计划,控制各个显示模型的创建、销毁,并绘制整个显示区域。业务模块通过事件总线控制显示模块的详细显示内容,达到高度定制化显示的目的,同时使各个业务充分解耦。基于MVVM的架构优化如图9所示。

图9 基于MVVM的架构优化

通过智能服务终端的业务分析进行模型优化,我们参照MVVM的特点构建其软件架构模型。我们将整体架构分为显示层、控制器、事件总线、业务层4部分,整体功能架构如图10所示。显示层完成终端界面展示和交互功能,封装了基于MVVM显示方式的数据绑定和时间监听;控制器作为界面整体控制模块,实现软件显示控制功能,实时处理模块的显示调度和任务调度;事件总线提供了业务数据和显示层、控制器的传输通道,统一通过事件监听的方式实现层级间复杂调用,解耦业务关联;业务层进行后台数据通信处理后台业务相关的服务调用,降低业务间耦合度。

图10 软件架构

5 软件功能实现

在软件实现方面,我们采用Java开发语言结合JNI技术调用驱动层C++语言实现智能服务终端的开发,软件功能关键技术如图11所示。Java具有良好的跨平台特性,软件可以方便地部署在基于x86平台的Windows和Linux环境中。

图11 软件功能关键技术

5.1 显示技术

(1)基于Java的双向绑定技术 在MVVM的框架下,视图和模型之间的桥梁是该架构的关键,实现ViewModel的双向绑定功能是智能服务终端技术难点之一。Java语言提供了属性值的数据绑定,也提供了观察者模式的时间监听,利用Java的属性类Property数据绑定、事件监听以及绑定计算等技术,我们可以实现显示界面View和显示模型Model的双向绑定,通过Java属性类绑定的特点完成我们各个视图模块中ViewModel组件的编写。

(2)视频播放及直播切换技术 服务终端软件具备多种视频格式的解析能力,能够支持标清、高清、超高清视频解码。采用Java的JNI技术调用VLC提供的开源媒体播放器,实现嵌入JPanel多媒体播放。同时,为提供直播播放的高可用性,我们在播放器中增加了直播流检测功能,主备多直播地址时,播放器能够通过数据流量自动监测直播地址稳定性并切换直播地址,达到播放的高可用性。

(3)周边信息VR显示引擎 随着显示技术的不断创新,VR展示技术的出现为乘客提供了更加直观的车站及周边介绍,通过采用3D模型,服务终端方便显示周边信息的场景和站内导航场景。利用VR显示技术,可以立体呈现车站信息、城市线路信息、周边信息和景点信息。服务终端VR技术采用基于WebGL的3D渲染引擎,打造与真实场景一致的虚拟现实场景,为使用者提供更好的信息显示体验。

5.2 控制调度

(1)定制化界面显示技术 显示画面可定制化,是互动式终端的主要特点,其显示方式不同于通常我们的程序交互界面,运营人员可以根据需要设置不同位置的终端设备显示不同的服务内容。例如,在出入口显示周边地图、路径查询功能等,在站台的设备显示列车到达信息、车厢拥挤度、车厢空调强弱等信息。这就需要智能服务终端具备灵活的播放画面定制功能,能够使运营人员自主设计终端显示内容,实现灵活、丰富的展示形式。

为实现这项技术,我们对既有的MVVM架构增加了额外的控制模块,能够根据中心数据展示不同的显示画面,做到全画面可定制。这里使用的关键技术是基于JSON格式的版式定制技术,我们将整个画面进行业务分析,制订了计划、布局、播表、媒体的4级嵌套显示结构的编播协议,可以灵活绘制布局区域、编辑区域内容、编排节目计划等。

(2)节目计划调度及同步播放 服务终端的视频节目播放功能提供了按照时间的节目单制作功能,能够严格按照时间编排节目单,准确播放对应视频节目。软件通过精准的节目单编排和时钟同步技术,在播放过程中按照时间精确控制播放进度,实现不同终端间的同步播放和节目调度。

(3)消息级别调度 相同的消息发布区域在不同用户向同一设备发布消息时会产生冲突,为解决消息显示冲突的问题,服务终端提供了按照消息发送级别的调度播放机制。消息级别调度采用秒级准实时调度算法,通过高级别覆盖低级别,依次播放、撤销的显示原则,精准调度多种用户级别的消息,控制消息有序播放显示。

5.3 业务处理

(1)基于REST的服务调用 业务模块与后台通信采用了基于REST的微服务远程调用,通过后台服务提供的智能化服务接口,既能实现版式计划、节目播放、下载上报等终端编播服务,也可以实现列车到站信息查询、智能出行规划、语音输入查询等智能化的乘客服务体验。同时,服务终端可以提供基于REST的设备状态、设备截屏等设备监控的服务接口。

(2)远程实时监视 服务终端播放画面的远程实时监视是运维人员查看现场实际播放情况的直观方式,通过远程播放调看功能,运维人员可以随时查看设备工作状态,便于维护。远程调看采用RTSP方式回传播放画面,通过Java调用FFMPEG开源多媒体框架,构建本地RTSP服务,后台管理人员使用拉流方式查看服务终端的画面。

(3)远程控制服务 服务终端提供了方便维护的远程控制服务,便于中心管理系统对设备进行远程操控。功能包括远程关机、开机、重启、音量调节等设备控制功能。通过Java调用系统层命令实现设备控制。

5.4 事件总线

软件内部的模块间通信采用事件总线技术是模块解耦的关键。通过事件总线可以解除业务间相互依赖,不同业务间即使在相同的区域显示也不会彼此影响,也可以解决界面显示的单线程处理和多业务并发执行间的数据分发处理问题。时间总线通过发布者、订阅者模式实现一对一、一对多、多对多等不同应用场景的数据通信。

6 结语

本文结合传统PIS播放终端的不足,构建了具备可交互功能的智能乘客服务终端软件,分析了智能服务终端软件的功能特性,在PIS终端架构基础上通过数据流分析优化交互式特点的服务终端软件架构,提出具备高可靠和易维护的软件架构模型。智能乘客服务终端有丰富的可交互功能特性,用户体验更加便捷,是未来乘客服务系统的发展趋势之一。智能服务终端人机交互功能可以很好地结合人工智能技术、5G技术,物联网技术实现更加优质的服务,如语音互连、线上互动、站内实时反馈等。交互式智能、实时服务可以很大地拓宽服务内容,提升服务质量,是服务终端智能化发展的趋势。

参考文献

[1]阚庭明.城市轨道交通乘客信息系统技术发展趋势探讨 [J]. 铁路计算机应用,2009,18(1):37-39.

[2]周成尧,刘畅,邓瑾,等.城市轨道交通智能列车乘客服务系统研究 [J]. 现代城市轨道交通,2020(8):20-26.

[3]游俊慧.MVC、MVP、MVVM三种架构模式的对比 [J]. 办公自动化,2020,25(22):11-12,27.

[4]李嘉,赵凯强,李长云.Web前端开发技术的演化与MVVM设计模式研究 [J]. 电脑知识与技术,2018,14(2):221-222,251.

[5]刘立.MVVM模式分析与应用 [J]. 微型电脑应用,2012,28(12):57-60.