Page 72 - 智慧地铁建设实践与创新研究
P. 72

智慧地铁建设实践与创新研究
                    Research on the Practice and Innovation of Smart Metro Construction
























                               图 2-16 智慧地铁自动售票机状态转换

                利用状态模式的思想,每个状态封装成一个单独的类,建立售票软件的状态
            结构图。语音控制状态是售票机新增状态,所以对语音控制状态类的设计进行详

            细阐述。此状态下需要售票机加载语音消息输入信息界面和路径信息查询结果界
            面,在这两个界面中完成语音定义车票。语音控制状态下,需要对传进来的语音
            消息解析并处理,根据处理结果判断是否进入下一状态。同时每个界面都有存在

            时限,当存在时间倒置为零时,进入何种状态以及在倒置过程中的处理都是语音
            状态下应该考虑的问题。语音状态控制的两个页面应该能够相互转换,才能给乘

            客提供更大的操作空间,更加人性化。因为特殊原因,需要回退至上一状态,这
            是每个状态应该具备的特性,这不仅提高了售票软件的容错率还带给乘客舒适的
            操作体验,对维护人员和乘客都是十分友好的。除了回退至上一状态,还能主动

            进入下一状态,这是状态转换的前提条件。至此,语音控制状态的设计思想已经
            完整说明。
                3. 语音售票过程的工作流程与实现

                状态模式充分体现了 C++ 语言多态性的特点,接口的功能随着不同子类的
            不同实现而发生差异。本部分主要针对语音控制状态类的接口实现过程进行阐
            述。智慧地铁自动售票机在运营时,开始处于空闲状态,当乘客靠近时,自动进

            入语音控制状态,触发条件是模组中的摄像头捕获到乘客人脸图像。此外,当状
            态自动变换失效时,可以通过人为进行状态转换,实现方式是在初始界面留有进



            ·60·
   67   68   69   70   71   72   73   74   75   76   77