本发明涉及自动驾驶领域,尤其涉及一种平行驾驶的操作方法。
背景技术:
目前关于平行驾驶的系统极少,大多处于理论阶段,平行驾驶最初想法形成于20世纪90年代中期,2005年正式提出了平行驾驶的概念,将人工系统与实际系统虚实互动的思想被应用于驾驶领域,形成了当下平行驾驶理论的雏形。对自动驾驶来说,自动驾驶算法和深度学习固然重要。但是要做到自动驾驶产品的落地,降低自动驾驶产品的维护,就必须将自动驾驶和模拟驾驶相结合,实现真正意义上的平行驾驶。也就是自动驾驶模式和模拟驾驶模式之间的无缝切换工作。
自动驾驶远程监控后台领域是自动驾驶确保安全性的一个重要节点,在众多交通突发事件等机器算法不可为的前提下,需要人为进行干预和记录当前所发生的事件。作为无人驾驶车辆,在正常道路中运营驾驶时,往往会遇到一些不可抗力因素的故障问题。那么此时,车辆内部的事件回放功能无法满足于对故障的判断时,则需要专人前去将车辆给运回检修。这样会造成人力成本的增加与时间成本的增加。
技术实现要素:
本发明的目的是针对现有技术的缺陷,提供了一种平行驾驶的操作方法,通过建立操作控制端和车辆端的操作控制和操作反馈过程,能够让运营人员可以实时、精准的了解到目前无人驾驶车辆在运行中的各种周边环境状态,也使得无人驾驶车辆在一些特殊环境中,在自动驾驶功能失效等不能够让车辆自主进行运行时,运营人员可以通过远程遥控功能和视频服务进行回掉,通过网络遥控将车辆开回维修点进行维护,而不是需要专门人员前去将车辆运送回维修点,从而降低人力成本的增加与时间成本。
为了实现上述目的,本发明实施例提供了一种平行驾驶的操作方法,包括:
操作控制端中的操控台接收用户根据第一车辆状态数据输入的操控数据,并将所述操控数据发送至操作控制端中处理器;
所述处理器通过模拟设备操控模型对所述操控数据进行解析,得到车辆控制数据,并将所述车辆控制数据发送至所述服务器;所述车辆控制数据包括控制设备信息和控制参数;
所述服务器将所述控制设备信息和所述控制参数发送至所述车辆端,用以所述车辆端根据所述控制设备信息和所述控制参数工作;
所述车辆端根据所述控制设备信息和所述控制参数向所述服务器发送反馈数据和第二车辆状态数据;
当所述反馈数据不为空时,所述服务器将所述第二车辆状态数据发送至所述操作控制端中的显示器,用以所述显示器显示所述第二车辆状态数据。
优选的,在所述操作控制端中的操控台接收用户根据第一车辆状态数据输入的操控数据之前,所述方法还包括:
所述服务器接收所述车辆端发送的第一车辆状态数据;
所述操作控制端中的处理器根据获取指令获取所述服务器发送的第一车辆状态数据;
所述处理器将所述第一车辆状态数据发送至所述操作控制端中的显示器,用以所述显示器向用户显示所述第一车辆状态数据。
进一步优选的,所述车辆状态数据包括:车辆环境视频数据和车辆状态信息;所述车辆环境视频数据包括多个摄像头位置信息。
进一步优选的,所述处理器将所述第一车辆状态数据发送至所述操作控制端中的显示器,用以所述显示器向用户显示所述第一车辆状态数据具体为:
所述处理器将所述根据所述摄像头位置信息压缩所述车辆环境视频数据,得到多个压缩后的车辆环境视频数据,用以所述显示器向所述用户显示所述多个压缩后的车辆环境视频数据。
优选的,所述操控台包括:方向盘操控模块、档位操控模块、油门操控模块和刹车操控模块。
进一步优选的,所述操控数据包括:所述方向盘操控生成的方向盘转角数据、所述档位操控模块生成的档位操控数据、所述油门操控模块生成的油门操控数据和所述刹车操控模块生成刹车操控数据。
优选的,在所述处理器通过模拟设备操控模型对所述操控数据进行解析之前,所述方法还包括:
所述处理器根据所述第一时间参数获取所述操控数据;
当所述处理器根据所述第一时间参数获取的所述操控数据为空时,所述处理器将上一个车辆控制数据发送至所述服务器;
所述服务器将所述上一个车辆控制数据发送至所述车辆端,用以所述车辆端根据所述上一个车辆控制数据工作;
当所述处理器根据所述第二时间参数获取的所述操控数据为空时,所述处理器将制动指令发送至所述服务器;
所述服务器将所述制动指令发送至所述车辆端,用以所述车辆端根据所述制动指令工作。
优选的,所述操作控制端中的处理器根据获取指令接收服务器发送的车辆状态数据具体为:
所述操作控制端中的处理器根据获取指令通过第一网络协议接收服务器发送的车辆状态数据。
优选的,在所述车辆端根据所述控制设备信息和所述控制参数工作之后,所述方法还包括:
所述车辆端获取所述车辆的环境激光点数据;
当所述环境激光点数据与所述控制设备信息和所述控制参数工作不对应时,生成所述制动指令,使得所述车辆端根据所述制动指令工作;并生成报警信息,发送至所述操作控制端。
本发明实施例提供的平行驾驶的操作方法,通过建立操作控制端和车辆端的操作控制和操作反馈过程,能够让运营人员可以实时、精准的了解到目前无人驾驶车辆在运行中的各种周边环境状态,也使得无人驾驶车辆在一些特殊环境中,在自动驾驶功能失效等不能够让车辆自主进行运行时,运营人员可以通过远程遥控功能和视频服务进行回掉,通过网络遥控将车辆开回维修点进行维护,而不是需要专门人员前去将车辆运送回维修点,从而降低人力成本的增加与时间成本。
附图说明
图1为本发明实施例提供的平行驾驶的操作方法的流程图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
为了更好的理解本发明所提出的平行驾驶控制方法的执行流程,首先对平行驾驶的概念进行说明。
所谓平行驾驶就是将自动驾驶与模拟驾驶相结合,在自动驾驶模式和模拟驾驶模式之间进行安全、平稳切换,才能实现真正意义上的平行驾驶。其中,自动驾驶模式可以理解为无人驾驶车辆依靠人工智能、视觉计算、雷达、监控装置和全球定位系统协同合作,让无人驾驶车辆可以在没有任何人类主动的操作下,按所需轨迹自动安全行驶的行驶模式。模拟驾驶模式可以理解为用户通过虚拟驾驶设备,在虚拟的驾驶环境中,控制无人驾驶车辆按所需轨迹行驶的行驶模式。
本发明实施例提供的平行驾驶的操作方法,通过采集操作控制端的数据并对数据进行处理后发送至无人驾驶车辆,无人驾驶车辆在向操作控制端反馈操作数据,实现对无人驾驶车辆的远程控制。其方法流程图如图1所示,包括如下步骤:
步骤110,车辆端中的处理单元通过感知单元获取车辆状态数据;
具体的,车辆端可以理解为一辆无人驾驶车,包括处理单元、感知单元和车辆控制单元。
其中,处理单元可以理解为无人驾驶车的大脑,主要用于处理、计算各种指令得到各种控制参数。
感知单元用于获取车辆的车辆状态数据,可以理解为通过多种传感器融合的方式对车辆自身以及周围的驾驶环境进行实时监测,为车辆的自动驾驶提供详尽精确的数据信息的单元。感知单元包括用于获取代表了车辆周围驾驶环境的车辆环境视频数据的环境感知模块,以及用于获取代表了车辆自身状态的车辆状态信息的车辆状态感知模块。环境感知模块包括多个摄像装置,每个摄像装置所监测的车辆周围环境的方向不同,得到的车辆环境视频数据所代表的方位也不同,因此每个方位的车辆环境视频数据都会对应一个摄像头位置信息。这样就可以区分车辆环境视频数据来自于具体哪个方位的摄像装置了。车辆状态感知模块包括但不限于温度计、轮速计、油量传感器、剩余电量传感器、电池健康状态传感器、磨损传感器、胎压传感器中的一种或多种。
车辆控制单元可以理解为用于控制无人驾驶车的运行的单元,包括控制车辆行进方向和行进速度等。
这里需要说明的是,车辆端中所包含的各个单元不仅限于上述的处理单元、感知单元和车辆控制单元,本领域技术人员可以根据需要自行设置车辆端中所包含其他单元或组件。
在一些优选的实施例中,摄像装置为四个,分别设置于车辆的前后左右四个方位,这四个摄像装置所构成的监控角度为360°。
在一些更优的实施例中,环境感知模块除了包括多个摄像装置,还包括但不限于gps装置、惯性导航、激光雷达和毫米波雷达中的一种或多种;gps装置用于获取车体的经纬度信息,从而对车体进行定位;惯性导航根据车体六个自由度的加速度信息对车辆的运动姿态进行估计、并修正定位信息;激光雷达用于检测车道线边缘、障碍物信息、车辆与行人;毫米波雷达用于检测结构化道路上的车辆;摄像机用于检测交通信号灯、交通标志、障碍物信息、车辆、行人以及其它传感器无法准确辨别的物体。
步骤120,将车辆环境视频数据、车辆状态信息和车辆id信息发送至服务器;
具体的,处理单元根据获取指令通过第一网络协议将车辆环境视频数据、车辆状态信息和车辆的车辆id信息发送至第一服务器。车辆id信息可以理解为标识车辆唯一身份信息的标识信息。第一网络协议为websocket协议。
步骤130,服务器通过第一网络协议将车辆环境视频数据、车辆状态信息发送至操作控制端,用以操作控制端显示车辆数据状态;
具体的,操作控制端可以理解为用于用户对无人驾驶车辆进行完成控制的模拟操作台。操作控制端包括显示器、操控台和处理器。其中,操作台包括但不仅限于方向盘操控模块、档位操控模块、油门操控模块和刹车操控模块。
操作控制端中的处理器根据操控信号接收服务器发送的由第一车辆环境视频数据和第一车辆状态信息构成的第一车辆状态数据,并将第一车辆状态数据发送至操作控制端中的显示器,用以显示器向用户显示第一车辆状态数据。第一车辆状态数据可以理解为车辆在未被远程操作前的车辆状态数据;第一车辆环境视频数据可以理解为车辆在未被远程操作前的车辆周围驾驶环境的数据;第一车辆状态信息可以理解为车辆在未被远程操作前的车辆自身状态的信息。
在一些优选的实施例中,由于对不同方位的视频的清晰度要求通常也有所不同,因此在操作控制端中的处理器将第一车辆状态数据发送至操作控制端中的显示器之前,处理器会先根据摄像头的位置信息对车辆环境视频数据进行压缩处理,得到多个压缩后的车辆环境视频数据,显示器向用户显示多个压缩后的车辆环境视频数据。这一过程可以理解为根据摄像装置的具体方位选择其相应的传输图像分辨率的帧率,根据帧率对视频图像进行压缩的过程。通常,摄像头的位置信息为“前方”的车辆环境视频数据的图像分辨率要高于其他车辆环境视频数据。
在一些更优的实施例中,由于网络不通畅或其他因素可能导致处理器在获取车辆环境视频数据时存在卡顿或滞后现象,使得处理器在一段短时间内获取不到车辆环境视频数据。此时应分为两种情况处理。第一,处理器根据第一时间参数获取车辆环境视频数据,当处理器根据第一时间参数获取的车辆环境视频数据不为空时,代表了远程控制通道畅通,则显示当前所获取到的车辆环境视频数据。当处理器根据第一时间参数获取的车辆环境视频数据为空时,代表了远程控制通道不畅通,车辆环境视频数据的传输存在滞后现象,则处理器继续显示上一个车辆环境视频数据的画面。第二,当处理器根据第二时间参数获取的车辆环境视频数据仍为空时,代表了远程控制通道不畅通,车辆环境视频数据的传输存在卡顿现象,则操作控制端的处理器通过服务器和向车辆端中的处理单元发送制动指令,处理单元再将制动指令发送至车辆控制单元,用以车辆控制单元根据制动指令工作。第二时间参数所代表的时间大于第一时间参数所代表的时间。这一过程可以理解为,若处理器在一段较短时间内没有获取到车辆环境视频数据,则说明远程控制通道不畅通,则处理器会默认显示上一个环境视频画面。若处理器在一段更长时间内仍没有获取到车辆环境视频数据,则车辆紧急驻车以确保行车安全。
步骤140,向车辆端中的处理单元发送模式切换指令,使得处理单元根据模式切换指令工作;
具体的,模式切换指令可以理解为控制车辆从自动驾驶模式切换到模拟驾驶模式的指令。用户通过操作台或遥控装置向车辆端中的处理单元发送模式切换指令,使得车辆根据模式切换指令结束自动驾驶模式,开始模拟驾驶模式,等待相应操控数据。
在一些优选的实施例中,本步骤还可以是在步骤110之前执行的。也就是说,模式切换指令可以是在获取车辆状态数据之前发送给车辆的,也可以是在获取车辆状态数据之后发送的。当模式切换指令是在获取车辆状态数据之前发送给车辆端的时,车辆端的处理单元根据模式切换指令,将车辆状态数据和车辆id信息发送至服务器。这种情况可以理解为,用户在切换到模拟驾驶模式之前,无需一定看到当前车辆状态情况,获取车辆状态情况的过程可以发生在接收到模式切换指令之后。但只要用户切换到模拟驾驶模式了,用户必须根据当前车辆状态数据做出相应操作,则车辆处理单元一定会将多个方位的车辆状态数据和车辆id信息发送至服务器。而当模式切换指令是在获取车辆状态数据之后发送给车辆的时,这种情况可以理解为,用户需要根据当前车辆状态数据确定是否需要切换到模拟驾驶模式,因此获取车辆状态数据的过程是发生在接收到模式切换指令之前的。
步骤150,操控台接收用户根据第一车辆状态数据输入的操控数据,并将操控数据发送至处理器;
具体的,用户通过观察显示器所显示的车辆当前的行驶状态,利用操作台向操作控制端输入操控数据。操作台在接收到操控数据后,将操控数据发送至操作控制端的处理器中。操控数据包括但不限于方向盘操控生成的方向盘转角数据、档位操控模块生成的档位操控数据、油门操控模块生成的油门操控数据和刹车操控模块生成刹车操控数据。
在一些优选的实施例中,操作台中方向盘操控模块、档位操控模块、油门操控模块和刹车操控模块的还可以集成在一个手柄或键盘中,方便用户操作。
步骤160,处理器对操控数据进行解析,得到车辆控制数据,并将车辆控制数据发送至服务器;
具体的,处理器中存储有模拟设备操控模型,利用模拟设备操控模型可以对操控台所生成的控制数据进行解析,得到可被车辆端识别的车辆控制数据。车辆控制数据包括控制设备信息和控制参数。控制设备信息可以理解为当前操控所对应的车辆端中的设备,控制参数可以理解为当前操控对车辆端中的设备的控制参数。
步骤170,服务器将控制设备信息和控制参数发送至车辆端,用以车辆端根据控制设备信息和控制参数工作;
具体的,车辆端的处理单元根据第一时间参数从服务器中获取控制参数,当处理单元根据第一时间参数获取的控制设备信息和控制参数工作均不为空时,代表了远程控制通道畅通,则处理单元对控制设备信息和控制参数工作进行综合解析,确定车辆应该如何按照用户的远程操作指令行驶,生成对应的参数发送至车辆控制单元,使得车辆控制单元按照用户的远程操作指令行驶控制车辆行进方向和行进速度等。当处理单元根据第一时间参数获取控制设备信息和控制参数为空时,代表了远程控制通道不畅通,数据传输滞后,用户的相关数据没有传输过来,则处理单元根据上一个控制设备信息和控制参数工作,生成上一个控制设备信息和控制参数对应的参数发送至车辆控制单元,使得车辆控制单元按照用户的上一个远程操作指令行驶控制车辆行进方向和行进速度等。而当处理单元根据第二时间参数获取的控制设备信息和控制参数仍为空时,代表了远程控制通道不畅通,数据传输严重滞后,则处理单元向车辆中的车辆控制单元发送制动指令,用以车辆控制单元根据制动指令工作。第二时间参数所代表的时间大于第一时间参数所代表的时间。这一过程可以理解为,若处理单元在一段较短时间内没有接收到个控制设备信息和控制参数,则说明远程控制通道不畅通,则车辆会默认执行上一个个控制设备信息和控制参数,使得车辆仍保持当前状态行驶。若处理单元在一段更长时间内仍没有接收到个控制设备信息和控制参数,则车辆紧急驻车以确保行车安全。
在一些优选的实施例中,在用户使用操作控制端对车辆进行远程控制时,有一些特殊情况需要注意。当显示操作控制端的显示器中所显示的车辆环境画面静止不动时,可能有两种情况。一是可能由于用户通过操作台操作车辆驻车,二是可能由于远程控制通道不畅通导致处理器获取不到环境视频数据。也就是说,当用户通过操作台操作车辆驻车后,即使显示器所显示的车辆环境画面静止不动,也未必代表了驻车成功。如果只通过显示器所显示的车辆环境画面前后情况来确定驻车是否成功,在一些极端例子中会存在一些判断失误的情况。因此在本实施例中,采用对比车辆所采集到的激光点数据与控制设备信息和控制参数的方式,确定驻车是否成功。
进一步具体的,感知单元中的激光雷达模块对车辆周围环境中的物体进行激光点采集,使得感知单元可以获取到车辆的环境激光点数据。如果车辆是静止的,那么环境激光点数据应该也是成片状静止不动的。如果车辆是移动的,那么环境激光点数据应该是成多条线状移动的。当环境激光点数据在驻车时间后仍是成多条线状且是移动的,但控制设备信息和控制参数却为代表了应该在驻车时间内驻车时,代表了环境激光点数据与控制设备信息和控制参数不对应,在这种情况下,即使用户通过观察显示页面所显示的车辆环境画面是静止不动的,车辆也没有真正的驻车。则处理单元生成制动指令发送至车辆控制单元,使得车辆驻车。并且,处理单元生成报警信息发送至显示页面,用以用户可以通过显示页面显示报警信息得知可能存在远程控制通道不畅通导致显示页面获取不到环境视频数据,使得画面显示不及时,且用户的驻车操作并没有使得车辆也没有驻车的情况,需要进行相关检查。
在一些更优的实施例中,在车辆根据模式切换指令从自动驾驶模式切换到模拟驾驶模式时,车辆会先减速或停车,然后再等待相应模拟驾驶的控制设备信息和控制参数,这样可以避免因车速过高而导致的操行信息对车辆对的控制效果不及时,使得模式之间切换过程更为安全、平稳。
进一步具体的,处理单元根据模式切换指令向车辆中的车辆控制单元发送制动指令。制动这令可以理解为控制刹车指令。车辆控制单元先根据制动指令工作,也就是先根据制动指令减速或停车。然后,处理单元再接收控制设备信息和控制参数,并将控制设备信息和控制参数发送至车辆控制单元,使得车辆控制单元根据制动指令工作后,再根据控制设备信息和控制参数工作。
步骤180,车辆端根据控制设备信息和制参数向服务器发送反馈数据和第二车辆状态数据,用以显示器显示第二车辆状态数据;
具体的,反馈数据可以理解为车辆端对操作结果是否所有响应的数据。当服务器收到的反馈数据为空时,代表了车辆端对操作台的操作结果没有响应,此时,服务器生成响应失败信息发送至操作控制端,用以用户根据操作控制端中的显示器所显示的响应失败信息进行下一步的处理。当服务器收到的反馈数据不为空时,服务器将第二车辆状态数据发送至操作控制端中的显示器,用以显示器向用户显示第二车辆状态数据,使得用户可以实时查看操作时的车辆端状态。与第一车辆状态数据相对应,第二车辆状态数据可以理解为车辆在被远程操作后的车辆状态数据;第二车辆状态数据包括代表了车辆在被远程操作后的车辆周围驾驶环境的数据的第二车辆环境视频数据,以及代表了车辆在被远程操作后的车辆自身状态的信息的第二车辆状态信息。这一过程可以理解为车辆端向服务器反馈操作结果,并对车辆状态进行渲染的过程。车辆端向操作控制端反馈第二车辆状态数据的方法可参考上述步骤110-130。
本发明实施例提供的平行驾驶的操作方法,通过建立操作控制端和车辆端的操作控制和操作反馈过程,能够让运营人员可以实时、精准的了解到目前无人驾驶车辆在运行中的各种周边环境状态,也使得无人驾驶车辆在一些特殊环境中,在自动驾驶功能失效等不能够让车辆自主进行运行时,运营人员可以通过远程遥控功能和视频服务进行回掉,通过网络遥控将车辆开回维修点进行维护,而不是需要专门人员前去将车辆运送回维修点,从而降低人力成本的增加与时间成本。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、用户终端执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。