技术领域
本发明涉及数据传输领域,特别涉及支持远程语音下达和实时监听的平调系统实现方法。
背景技术
目前平调系统主要采用外加终端控制模块的方法将语音数据通过有线网络在集中调度中心和区长台之间相互传输,该类方法存在可移植性低、实现成本较高、系统设备冗余,可维护性较差等缺点。针对上述存在的问题,采用websocket通信和多线程分包数据处理的方法实现远程语音下达和实时监听的功能。相对于目前使用的方法,该实现方法具备通信模式安全可靠性高,可移植性强,系统结构精简,实现成本和维护成本较低等特点。
针对以上所述的现有铁路平调系统对现场数据监控和维护的方法而言,在目前的现有技术中:专利CN205336277U提出了一种交通运输的平调系统的设计组成结构,该设计结构中主要是依靠蓝牙,运用重传机制和跳频技术,提升了终端与电台的近距离通信的可靠性,抗干扰、信息安全等特性,其中运用了中心数据服务器对平调数据维护,WEB服务器提供访问中心服务器数据的服务。专利CN205336277U主要是提出了一种平调现场数据维护和调阅的系统设计结构,并未表述具体的数据维护实现方法和远程语音下达和监控的实现流程。
专利CN205417661U提出了一种铁路数字平面调车远程控制系统,该系统通过将远程控制终端(包括平板电脑、控制单元(包括电源单元、音频模块、对外接口模块、扬声器)、送受话器)安装在调度中心,通过传输网络传输数据的方式将控制终端的数据传输至装在信号楼的区长台,区长台与机控器及手持台依靠400MHz的无线网络进行语音通信,实现了调度中心远程监控调车组在调车场内作业的需求。专利CN205417661U通过网络传输的方式实现了语音传输及监听功能,达到远程控制效果。但在实现方式上需要加装远程控制终端盒以及送受话器,以上方法具有成本投入高、设备维护较为分散,可维护性较差,系统设备冗余的缺点。
针对以上两种系统的缺点,采用网页端的方式,通过websocket实现平调语音数据及控制指令的前后端交互,通过基于UDP协议的多线程分包处理机制可以很好地解决远端系统的数据实时传输和处理的困难,并且通过站码及IP等参数的校验,保证通信会话的安全性和可靠性。相对于目前使用的方法,该种方式的实时性较高,时延低,数据处理效率和稳定性较高。可以远程维护服务器程序,统一管理、可维护性高,利用车站的办公电脑安装浏览器即可使用,实现成本较低,具体更高的普适性。
发明内容
针对上述问题,本发明涉及一种支持远程语音下达和实时监听的平调系统实现方法,可实现对区长台远程语音传输和监听控制,其特征在于:
步骤一,通过网页端实现值班员的平调语音下达和控制指令的下达;
步骤二,通过websocket协议实时地将语音内容和控制指令数据包传输至远端WEB服务器;
步骤三,通过WEB服务器的后端程序将车站相应站码和调号及其I P地址进行绑定核对;
步骤四,通过UDP协议实现实时平调语音数据和指令数据的传输;
步骤五,通过特定指令发起对车站区长台发起语音下达控制请求和监听请求;
步骤六,通过对相应区长台数据上传的传输接口,将相应调车组的语音数据传输至WEB服务器;
步骤七,通过网页端音频播放组件和控件对上传的现场调车组语音的自动播放。
一种支持远程语音下达和实时监听的平调系统实现方法,其特征在于:通过websocket协议实时地将语音内容和控制指令数据包传输至远端WEB服务器,进一步包括:
步骤201,运用javascript语言编写具有调用PC端录音设备和鼠标键盘输入的录音软件功能模块,网页前端页面按下“建立连接”的控制命令,相应车站的IP地址对应的websocket会话通道完成所有初始化,并建立Session用于前后端http数据报文的交互;
步骤202,在按下“按住讲话”按键的同时,控制指令由前端生成并通过websocket发送至web服务器的后台程序,由WEB服务器后台程序将该指令识别并发送至区长台;
步骤203,相应IP绑定的区长台收到WEB服务器发来的语音下达控制请求指令后,控制PTT按键的电平,使得PTT按键为按下状态,区长台工作状态由收态转发态,同时区长台通过该UDP传输通道的固定端口,发送区长台接收web端语音状态准备就绪的相应协议指令至web服务器,主控程序开启等待web服务器语音数据包传入的线程等待;
步骤204,在按下“按住讲话”按键的同时,web端开启语音录入和压缩编码的线程,将PC端采集的wav数据流进行分包压缩、编码,使之成为单声道,帧率为8k,采样率为8bit的固定大小的blob数据包,并通过websocket发送至web服务器,web服务器收到数据包后再次对其进行分包、数据包在发送队列完成数据编码和协议处理等操作,并依次存储至Buffer缓冲池中,采用JavaNIO中datagramChannal的方式,将所有的语音数据打包成UDP数据报通过固定端口发送至已绑定IP的区长台,完成语音数据包的发送操作。
步骤205,当语音数据包到达区长台后,区长台按照约定的通信协议依次解码,解压缩,组包,并在广播电路中进行语音的播放,广播至同频调车组的其他电台设备;
步骤206,当语音讲话结束时,值班员再次鼠标单击“按住讲话”按键,按键抬起,网页端录音线程停止,录音动作结束,同时发送结束讲话的控制指令至WEB服务器,WEB服务器端在传输完最后一包语音包后,发送结束控制指令到区长台。
步骤207,区长台收到控制指令后,控制PTT按键的电平,使得PTT按键为抬起状态,区长台工作状态由发态转收态,由网页端至区长台的平调系统语音下达的完整过程至此完成。
步骤208,当值班员在前端页面用鼠标单击“点击监听”按键时,前端将生成监听动作相应的控制指令,并通过websocket将控制指令传输至后端程序,同样由WEB服务器后台程序将该指令识别并通过datagramChannal发送至相应IP绑定的区长台;
步骤209,区长台收到来自网页端的实时监听请求后,将所有的收/发状态下播放的语音内容,打包成以UDP包的形式,通过固定端口号发送至WEB服务器;
步骤210,WEB服务器收到来自区长台的语音数据包后,依次对上传的语音包按照通信协议进行识别和解析,并通过传输队列依次组包,后通过websocket发送至网页端,由网页端的线程完成语音数据包的加载并通过播放控件播放出来,该步骤状态可以一直保持,值班员即可实时的监听现场平调作业组的语音动态;
步骤211,当值班员再次在前端页面用鼠标单击“点击监听”按键时,监听按键状态重置,网页端生成结束监听指令,并通过websocket将该指令发送至WEB服务器后台程序,后台程序启动结束监听的系列响应,将响应结束监听指令以UDP数据报文的形式发送给区长台;
步骤212,区长台收到“结束监听”的指令后,主控程序关闭语音数据上传的相应线程,监听动作至此结束,WEB服务器不再收到区长台上传的语音数据包;
步骤213,当值班员单击相应车站的前端页面“x”,关闭该车站的界面时,相应车站的websocket会话将会断开连接,与之相关的所有前/后端线程立即停止,前后端所有websocket会话通道立即重置。
一种支持远程语音下达和实时监听的平调系统实现方法,其特征在于:通过UDP协议实现实时平调语音数据和指令数据的传输,进一步包括:
步骤401,对于网页端通过Ajax或者WebSocket传入的数据,首先在WEB服务器端,后台线程一中进行数据内容校验识别,然后再分类,进入做不同的处理;
步骤402,对于“建立连接”,使用Ajax获取后台程序车站站码和ID,与前台所打开页面进行一致性校对,若获取成功,则提示准备连接,若获取失败,则提示连接失败;
步骤403,对于“开始讲话”指令,网页端发起开始讲话的控制指令后,web服务器后台线程一对来自前端的指令进行识别,调用开始讲话的函数,在线程二中获取该指令类型,并通过UDP协议报文的方式,发至区长台,区长台收到报文后,确认PTT按键按下后,同样以UDP数据包的形式,回馈WEB服务器,示意区长台已接收语音下达状态准备就绪。
步骤404,此时WEB服务器用于接收区长台消息的线程三,收到来自区长台的确认报文后,开始按照通信协议核实校验区长台站码、IP、接收状态等内容,核实成功后,将参数传至下一步操作;
步骤405,发包线程五,对来自前端的数据包分别进行处理,并将其依次按照通信协议进行包头报文处理和编码,使其依次进入数据包发送队列,并在线程六中以缓冲池读取缓存的方式,将其通过UDP协议的通信方式发送至指定已绑定该IP地址的区长台;
步骤406,对于“结束讲话”指令,实现过程与步骤403相似,区长台收到来自于WEB服务器端的结束讲话指令后,重置PTT按键,使之呈抬起状态,结束语音从区长台到调车组的组播。WEB服务器端发送完最后一包控制指令后不再发送数据;
步骤407,对于“点击监听”指令,是由WEB服务器先识别来自网页端的监听请求指令,并将其在线程一中进行指令核对确认,确认完成后在线程二中完成指令信息的协议转换和编码,以UDP报文的形式将其发送至指定IP绑定的区长台,区长台开始实时上传所有语音通讯内容,WEB服务器端在线程三中对上传的语音信息进行实时处理,并在线程一中将其通过websocket传输至用户打开需监听车站的相对应的网页端,网页端通过监听线程对数据进行解码并在浏览器播放组件中还原语音进行实时播放。
本专利的创新之处在于整个视频监控的流程,包括:
A、基于websocket的前后端平调语音加指令控制交互模式。
B、站码、ID、IP地址同步校验机制。
C、基于UDP协议的多线程分包处理和传输模式。
D、WEB服务器与区长台之间的指令控制模式。
本发明采用网页端的方式,通过websocket实现平调语音数据及控制指令的前后端交互,通过基于UDP协议的多线程分包处理机制可以很好地解决远端系统的数据实时传输和处理的困难,通过站码及IP等参数的校验,保证通信会话的安全性和可靠性。相对于目前使用的方法,该种方式的实时性较高,时延低,数据处理效率和稳定性较高,可以远程维护服务器程序,统一管理、可维护性高,利用车站的办公电脑安装浏览器即可使用,实现成本较低,并且具有更高的普适性。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所指出的结构来实现和获得。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了平调系统实现方法。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地说明,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
平面调车在铁路客/货运输工作中非常普遍,现存的铁路平调系统主要是运用超短波为传输媒介进行语音通讯。该种通信方式为视距传输,受地形和天线高度的限制,在不进行中继通信的情况下,相邻两站之间的通信距离有限。现为了适应铁路平调集中调度的发展方向,精简值班人员,降低运营成本,运用无线通信加有线网络传输的模式,实现值班员远程实时监听平调作业组(机车司机、调车长、连接员)语音和指令,替代站场值班员实时下达语音并广播至平调作业组,达到低成本实现远程指挥和货运机车调度的效果。
为了实现对区长台远程语音传输和监听控制,提出了以下方案,包括:
A、通过网页端实现值班员的平调语音下达和控制指令的下达。
B、通过websocket协议实时地将语音内容和控制指令数据包传输至远端WEB服务器。
C、通过WEB服务器的后端程序将车站相应站码和调号及其IP地址进行绑定核对。
D、通过UDP协议实现实时平调语音数据和指令数据的传输。
E、通过特定指令发起对车站区长台发起语音下达控制请求和监听请求。
F、通过对相应区长台数据上传的传输接口,将相应调车组的语音数据传输至WEB服务器。
G、通过网页端音频播放组件和控件对上传的现场调车组语音的自动播放。
本方案的技术路线包括以下几个方面:
(1):基于websocket协议的平调语音和指令数据交互模式。
本方案的具体步骤如下:
①运用javascript语言编写具有调用PC端录音设备和鼠标键盘输入的录音软件功能模块,网页前端页面按下“建立连接”的控制命令,相应车站的IP地址对应的websocket会话通道完成所有初始化,并建立Session用于前后端http数据报文的交互。
②在按下“按住讲话”按键的同时,控制指令由前端生成并通过websocket发送至web服务器的后台程序,由WEB服务器后台程序将该指令识别并发送至区长台。
③相应IP绑定的区长台收到WEB服务器发来的语音下达控制请求指令后,控制PTT按键的电平,使得PTT按键为按下状态,区长台工作状态由收态转发态,同时区长台通过该UDP传输通道的固定端口,发送区长台接收web端语音状态准备就绪的相应协议指令至web服务器,主控程序开启等待web服务器语音数据包传入的线程等待。
④在按下“按住讲话”按键的同时,web端开启语音录入和压缩编码的线程,将PC端采集的wav数据流进行分包压缩、编码,使之成为单声道,帧率为8k,采样率为8bit的固定大小的blob数据包,并通过websocket发送至web服务器,web服务器收到数据包后再次对其进行分包、数据包在发送队列完成数据编码和协议处理等操作,并依次存储至Buffer缓冲池中,采用JavaNIO中datagramChannal的方式,将所有的语音数据打包成UDP数据报通过固定端口发送至已绑定IP的区长台,完成语音数据包的发送操作。
⑤当语音数据包到达区长台后,区长台按照约定的通信协议依次解码,解压缩,组包,并在广播电路中进行语音的播放,广播至同频调车组的其他电台设备。
⑥当语音讲话结束时,值班员再次鼠标单击“按住讲话”按键,按键抬起,网页端录音线程停止,录音动作结束,同时发送结束讲话的控制指令至WEB服务器,WEB服务器端在传输完最后一包语音包后,发送结束控制指令到区长台。
⑦区长台收到控制指令后,控制PTT按键的电平,使得PTT按键为抬起状态,区长台工作状态由发态转收态,由网页端至区长台的平调系统语音下达的完整过程至此完成。
⑧当值班员在前端页面用鼠标单击“点击监听”按键时,前端将生成监听动作相应的控制指令,并通过websocket将控制指令传输至后端程序,同样由WEB服务器后台程序将该指令识别并通过datagramChannal发送至相应IP绑定的区长台。
⑨区长台收到来自网页端的实时监听请求后,将所有的收/发状态下播放的语音内容,打包成以UDP包的形式,通过固定端口号发送至WEB服务器。
⑩WEB服务器收到来自区长台的语音数据包后,依次对上传的语音包按照通信协议进行识别和解析,并通过传输队列依次组包,后通过websocket发送至网页端,由网页端的线程完成语音数据包的加载并通过播放控件播放出来,该步骤状态可以一直保持,值班员即可实时的监听现场平调作业组的语音动态。
(2):基于UDP协议的多线程数据包分类处理和发送。
①对于网页端通过Ajax或者WebSocket传入的数据,首先在WEB服务器端,后台线程一中进行数据内容校验识别,然后再分类,进入做不同的处理。
②对于“建立连接”,使用Ajax获取后台程序车站站码和ID,与前台所打开页面进行一致性校对,若获取成功,则提示准备连接,若获取失败,则提示连接失败。
③对于“开始讲话”指令,网页端发起开始讲话的控制指令后,web服务器后台线程一对来自前端的指令进行识别,调用开始讲话的函数,在线程二中获取该指令类型,并通过UDP协议报文的方式,发至区长台,区长台收到报文后,确认PTT按键按下后,同样以UDP数据包的形式,回馈WEB服务器,示意区长台已接收语音下达状态准备就绪。
④此时WEB服务器用于接收区长台消息的线程三,收到来自区长台的确认报文后,开始按照通信协议核实校验区长台站码、IP、接收状态等内容,核实成功后,将参数传至下一步操作。
⑤此时发包线程五,对来自前端的数据包分别进行处理,并将其依次按照通信协议进行包头报文处理和编码,使其依次进入数据包发送队列,并在线程六中以缓冲池读取缓存的方式,将其通过UDP协议的通信方式发送至指定已绑定该IP地址的区长台。
⑥对于“结束讲话”指令,实现过程与步骤③相似,区长台收到来自于WEB服务器端的结束讲话指令后,重置PTT按键,使之呈抬起状态,结束语音从区长台到调车组的组播。WEB服务器端发送完最后一包控制指令后不再发送数据。
⑦对于“点击监听”指令,是由WEB服务器先识别来自网页端的监听请求指令,并将其在线程一中进行指令核对确认,确认完成后在线程二中完成指令信息的协议转换和编码,以UDP报文的形式将其发送至指定IP绑定的区长台,区长台开始实时上传所有语音通讯内容,WEB服务器端在线程三中对上传的语音信息进行实时处理,并在线程一中将其通过websocket传输至用户打开需监听车站的相对应的网页端,网页端通过监听线程对数据进行解码并在浏览器播放组件中还原语音进行实时播放。
尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
机译: 一种实现语音信箱消息实时监听的方法,允许在接收消息期间建立呼叫。 (通过Google翻译进行机器翻译,没有法律约束力)
机译: 远程语音方向更改通过支持系统实现双当前语音方向更改圈
机译: 存储用于实现该方法的远程支持程序的记录介质以及钻井推进单元的远程支持系统和远程支持方法