首页 / 专利库 / 生物工程 / 脑机接口 / 无人机集群编队交互式仿真验证系统及实现方法

无人机集群编队交互式仿真验证系统及实现方法

阅读:753发布:2020-10-04

专利汇可以提供无人机集群编队交互式仿真验证系统及实现方法专利检索,专利查询,专利分析的服务。并且本 发明 涉及数值仿真、 虚拟现实 、 脑机 接口 、 人机交互 、网络通信、 软件 开发等领域,为构建逼真的虚拟现实仿真场景,以无人机集群编队实时仿真数据驱动演示,通过多种人机交互设备实现人对仿真演示的干预,达到人在环(man-in-loop)的仿真效果,本发明,无人机集群编队交互式仿真验证系统及实现方法,包括分布式实时仿真器、宿主机、视景计算机即客户端、显示设备、人机交互设备,其中,由目标计算机组成仿真器负责运行实时仿真程序模拟无人机集群编队;宿主机运行 服务器 软件;视景计算机运行基于Unity开发的视景软件;人机交互设备通过视景软件集成实现人机交互。本发明主要应用于无人机仿真场合。,下面是无人机集群编队交互式仿真验证系统及实现方法专利的具体信息内容。

1.一种无人机集群编队交互式仿真验证系统,其特征是,由五部分构成:分布式实时仿真器、宿主机、视景计算机即客户端、显示设备、人机交互设备;其中,由目标计算机组成仿真器负责运行实时仿真程序模拟无人机集群编队;宿主机运行服务器软件,负责管理仿真程序的下载与运行、在线调参、状态数据传输;视景计算机运行基于Unity开发的视景软件,并接收服务器的数据驱动,在虚拟现实VR头显和大屏幕中实时显示虚拟仿真场景;人机交互设备包括语音输入设备、手势识别设备和脑机接口设备,它们与视景计算机连接起来,并通过视景软件集成实现人机交互;进一步地,视景计算机中设置有三维场景资源模,用于利用Unity引擎开发无人机集群编队任务场景,具体包括如下子模块。
2.如权利要求1所述的无人机集群编队交互式仿真验证系统,其特征是,(1)三维模型库子模块:三维资源库的构建基于外部软件与Unity结合,无人机场景所需的三维模型采用3D Studio Max建模软件建立,并生成不同细节层次LOD级别的模型,在Unity中添加LOD Group组件实现模型LOD,LOD技术是一种根据视点远近来控制模型细节层次的技术;
(2)真实地形环境子模块:三维地形资源采用WM(World Machine)软件制作,基于Unity编辑器扩展功能,设计并开发地形资源构建子模块,以图形界面的形式实现分块地形自动生成;
(3)动态管理子模块:包括三维模型、地形环境的三维资源采用prefab(预设体)形式在Unity编辑器中进行打包,在整体程序流程中基于本模块实现调用、加载、卸载操作;模块实现的核心是多线程,在Unity开发环境中,多线程的实现表现为Coroutine(协程)与异步方法的使用。
3.如权利要求2所述的无人机集群编队交互式仿真验证系统,其特征是,人机交互模块实现为用户提供人机交互功能,构建三维图形化的用户接口UI界面,将VR头显设备与手势识别设备集成到客户端的软硬件环境下,在Untiy中实现对底层设备接口与交互指令的封装,具体包括如下子模块:
(1)三维UI子模块:Hovercast是一个虚拟现实环境下的菜单式图形界面库,它可以与VR头显、手势交互设备很好地结合,并且支持Unity环境下开发,Unity自带的UGUI界面库也提供了许多基础元素,基于Unity自带的UGUI界面库、Hovercast二者结合方式设计VR交互界面,使得用户可以通过VR头显与手势交互设备参与到虚拟仿真进程中;
(2)VR头显集成:采用HTC Vive虚拟现实头显设备通过USB方式实现与视景计算机的数据连接,软件方面提供了Unity环境下的开发插件SteamVR Unity Plugin,基于Unity良好的跨平台特性;
(3)手势交互子模块:使用Leap Motion作为用户手势交互输入设备,Leap Motion是一款便携式的手势识别设备,Leap Motion提供的Orion SDK支持Unity环境开发,能够实现各种手部动作的识别,本模块根据UI界面功能设计手势交互指令,基于Orion底层识别接口进行封装,形成可复用的二次开发接口,也方便三维UI子模块的调用;
(4)语音控制子模块:基于百度语音REST API实现用户与应用程序的语音交互,通过该模块集成在线语音识别功能,平台使用者可以模拟对无人机的语音控制和指挥;
(5)脑机接口子模块:采用的BCI属于EEG类型,设备采集脑电信号并交付matlab数据分析平台进行处理,将处理后的结果通过UDP(用户数据报协议)通信协议传输给视景应用,实现脑控飞行模拟,脑机接口模块用于实现SSVEP(稳态视觉诱发电位)和运动想象两种范式,SSVEP原理是当受到一个固定频率的视觉刺激时,人的大脑视觉皮层会产生一个连续的与刺激频率有关的响应,通过采集该响应并与响应频率刺激信号相匹配来识别人脑所传递的信息;本模块在视景应用中构建一个包含不同频闪数字的SSVEP刺激界面,并将各数字对应于不同的控制指令,从而实现脑控飞行模拟。
4.如权利要求2所述的无人机集群编队交互式仿真验证系统,其特征是,网络通信模块基于传输层TCP/IP协议,基于.NET开发框架Socket套接口与异步模式开发应用层通信中间件,设计上述两部分应用层协议格式,分别实现客服两端数据的打包与解包,其中服务器端开放接口,以便于实现基于xPC宿主机-目标机仿真架构的平台二次开发,网络传输需要对应用层协议数据包进行序列化与反序列化。
5.一种无人机集群编队交互式仿真验证方法,其特征是,利用分布式实时仿真器、宿主机、视景计算机即客户端、显示设备、人机交互设备实现,其中,由目标计算机组成仿真器负责运行实时仿真程序模拟无人机集群编队;宿主机运行服务器软件,负责管理仿真程序的下载与运行、在线调参、状态数据传输;视景计算机运行基于Unity开发的视景软件,并接收服务器的数据驱动,在虚拟现实VR头显和大屏幕中实时显示虚拟仿真场景;人机交互设备包括语音输入设备、手势识别设备和脑机接口设备,它们与视景计算机连接起来,并通过视景软件集成实现人机交互;进一步地,视景计算机中设置有三维场景资源模块,用于利用Unity引擎开发无人机集群编队任务场景,具体如下:
(1)三维模型库构建:三维资源库的构建基于外部软件与Unity结合,无人机场景所需的三维模型采用3D Studio Max建模软件建立,并生成不同LOD级别的模型,在Unity中添加LOD Group组件实现模型LOD,LOD技术是一种根据视点远近来控制模型细节层次的技术;
(2)真实地形环境构建:三维地形资源采用WM(World Machine)软件制作,基于Unity编辑器扩展功能,设计并开发地形资源构建子模块,以图形界面的形式实现分块地形自动生成;
(3)动态管理:包括三维模型、地形环境的三维资源采用prefab形式在Unity编辑器中进行打包,在整体程序流程中基于本模块实现调用、加载、卸载操作;模块实现的核心是多线程,在Unity开发环境中,多线程的实现表现为Coroutine与异步方法的使用。
6.如权利要求5所述的无人机集群编队交互式仿真验证方法,其特征是,人机交互需构建三维图形化的UI界面,将VR头显设备与手势识别设备集成到客户端的软硬件环境下,在Untiy中实现对底层设备接口与交互指令的封装,具体如下:
(1)三维UI:采用的Hovercast是一个虚拟现实环境下的菜单式图形界面库,它可以与VR头显、手势交互设备很好地结合,并且支持Unity环境下开发,Unity自带的UGUI界面库也提供了许多基础元素,基于Unity自带的UGUI界面库、Hovercast二者结合方式设计VR交互界面,使得用户可以通过VR头显与手势交互设备参与到虚拟仿真进程中;
(2)VR头显集成:采用HTC Vive虚拟现实头显设备通过USB方式实现与视景计算机的数据连接,软件方面提供了Unity环境下的开发插件SteamVR Unity Plugin,基于Unity的跨平台特性;
(3)手势交互:使用Leap Motion作为用户手势交互输入设备,Leap Motion是一款便携式的手势识别设备,Leap Motion提供的Orion SDK支持Unity环境开发,能够实现各种手部动作的识别,本模块根据UI界面功能设计手势交互指令,基于Orion底层识别接口进行封装,形成可复用的二次开发接口,也方便三维UI子模块的调用;
(4)语音控制:基于百度语音REST API实现用户与应用程序的语音交互,通过该模块集成在线语音识别功能,平台使用者可以模拟对无人机的语音控制和指挥;
(5)脑机接口:采用的BCI属于EEG类型,设备采集脑电信号并交付matlab数据分析平台进行处理,将处理后的结果通过UDP通信协议传输给视景应用,实现脑控飞行模拟,脑机接口模块用于实现SSVEP和运动想象两种范式,SSVEP原理是当受到一个固定频率的视觉刺激时,人的大脑视觉皮层会产生一个连续的与刺激频率有关的响应,通过采集该响应并与响应频率刺激信号相匹配来识别人脑所传递的信息;本模块在视景应用中构建一个包含不同频闪数字的SSVEP刺激界面,并将各数字对应于不同的控制指令,从而实现脑控飞行模拟。

说明书全文

无人机集群编队交互式仿真验证系统及实现方法

技术领域

[0001] 本发明涉及数值仿真、虚拟现实脑机接口人机交互、网络通信、软件开发等领域,尤其涉及一种基于虚拟仿真的无人机集群编队控制方法验证领域,具体来说,是一种基于虚拟现实(VR)和人机交互技术的无人机集群编队控制算法的仿真验证平台。

背景技术

[0002] 在无人机集群编队的研究领域,仿真技术具有重要地位。无人机集群编队的研发往往具有实验成本高、研究周期长等特点,利用仿真可以对前期研究的结论进行验证和评估,根据仿真的结果逐步完善系统方案的设计,缩短开发周期、节约开发成本。根据仿真层次的不同,传统的仿真技术可以分为全数字仿真和半实物仿真。全数字仿真将研究对象的数学模型和控制算法,编写成计算机可执行的程序,在仿真机上进行计算,输出反映仿真结果的数据、曲线等;半实物仿真在全数字仿真的基础上,将实际系统中的有关部件加入到仿真回路中,得到的结果更加接近实际情况。然而,两种传统仿真技术各有其局限性:全数字仿真仅依靠数据可视化,缺乏结果的直观性;半实物仿真系统搭建及其复杂,研发周期长、成本高。在现今航空航天研究领域,多机编队、人机协同、智能化成为趋势,对传统仿真技术带来了新的发展需求。
[0003] 上世纪末,伴随着计算机图形学理论的突破性进展,虚拟仿真技术得到了越来越广泛的应用。虚拟仿真技术在传统的全数字仿真基础上,采用3D图形技术模拟真实环境与仿真对象,以图形化的方式来展现仿真结果,将使用者从繁琐的数据中解脱出来。相比于全数字仿真,虚拟仿真以三维可视化的形式展现仿真过程,结果更加直观;与半实物仿真相比,虚拟仿真充分利用当前过剩的计算机性能,采用虚拟方式模拟仿真过程,极大地节约了成本和开发周期。此外,基于人机交互技术实现人在回路(Man-In-Loop)仿真,以进行人—机协同系统的模拟,通过提高沉浸感来增强仿真或训练的效果,是虚拟仿真的另一大特点。美国国防高级研究计划署(DARPA)一直将虚拟仿真作为重点项目,从上世纪90年代开始陆续研发了SIMNET、JMASS等军用分布式虚拟仿真平台。各研究机构也有相当丰富的研究成果,比如德莱顿飞行研究中心的飞行器模拟驾驶系统实现了人机协同仿真,NASA喷气推进实验室虚拟火星探测系统等。目前,网络技术日趋成熟,图形渲染感知、交互、VR/AR等技术应用逐渐成为市场和科研的热领域,学科的交叉为虚拟仿真技术带来了新的突破。
[0004] 虚拟现实(VR)技术在近年来被广泛应用于虚拟仿真中。虚拟现实基于显示(Display)、跟踪(Tracking)、三维注册(Registration)、交互(Interaction)等关键技术,使用户进入一个“沉浸式”的虚拟环境中。VR的实现通常需要特殊的显示设备,最常见的就是头戴式的显示设备(HMD-Head Mounted Device)。2016年4月,三大HMD厂商HTC、索尼和Oculus 几乎同时将自己的PC端HMD设备开放销售,这标志着VR技术正式走进了人们的生活,2016 年也被称为“VR元年”。VR技术的兴起也带动了新型交互技术的发展。基于丰富的感知技术和设备,新型交互技术允许人们使用语音、手势、肢体动作等自然的交互语言与计算机进行交互。在VR沉浸式环境中,传统按键与鼠标的交互方式对于用户变得不友好,使用手势和语音与虚拟场景交互成为了人们期待的方式,目前Leap Motion、Fingo等产品已经很好地实现了对手部多自由度姿态追踪,而以百度语音、科大讯飞为代表的产品能够较为准确地实现语音识别。VR与交互设备既为用户提供了沉浸式的虚拟仿真环境,还实现了人在环仿真,如今硬件设备技术的成熟与成本的降低使其在虚拟仿真平台中的应用变得更加容易。
[0005] 脑机接口(BCI)是近年来的新型技术领域,它连接人脑神经信号计算机程序,是实现“意念控制”的终极交互方式。目前脑机接口的研究集中于EEG(脑电图描述器)实现,采集用户脑电波,计算机通过模式识别机器学习等先进算法成功识别出人脑所传递的信息。 BCI在航空航天领域的意义十分重大,普通的飞行员或无人机飞手需要先经过大脑“想”,再传递给肢体去“做”;而脑控飞行只需大脑“想”便可实现对无人机的控制,这在某些场合具有远超传统控制的优势。结合VR的虚拟仿真平台能够很好地满足脑控飞行仿真的需求,所构建的虚拟场景可以用来对飞手进行训练,因此虚拟仿真平台集成BCI具有重要意义。
[0006] 综上所述,虚拟仿真平台搭建对于无人机编队、控制等方法的研究具有重要意义。基于 VR的仿真结果可视化具有直观性,能够在研究阶段充分验证方案的可行性;平台人机交互功能使研究者可以更好地观察仿真结果,并实现人在环仿真;通过集成BCI验证脑控飞行方法的可行性,使平台在人机协同方法仿真验证方面功能更加完善。

发明内容

[0007] 为克服现有技术的不足,本发明旨在构建逼真的虚拟现实仿真场景,以无人机集群编队实时仿真数据驱动演示,通过多种人机交互设备实现人对仿真演示的干预,达到人在环 (man-in-loop)的仿真效果。为此,本发明采用的技术方案是,无人机集群编队交互式仿真验证系统,分为五部分,分布式实时仿真器、宿主机、视景计算机即客户端、显示设备、人机交互设备,其中,由目标计算机组成仿真器负责运行实时仿真程序模拟无人机集群编队;宿主机运行服务器软件,负责管理仿真程序的下载与运行、在线调参、状态数据传输;视景计算机运行基于Unity开发的视景软件,并接收服务器的数据驱动,在虚拟现实VR头显和大屏幕中实时显示虚拟仿真场景;人机交互设备包括语音输入设备、手势识别设备和脑机接口设备,它们与视景计算机连接起来,并通过视景软件集成实现人机交互;进一步地,视景计算机中设置有三维场景资源模,用于利用Unity引擎开发无人机集群编队任务场景,具体包括如下子模块:
[0008] (1)三维模型库子模块:三维资源库的构建基于外部软件与Unity结合,无人机场景所需的三维模型采用3D Studio Max建模软件建立,并生成不同LOD(细节层次)级别的模型,在Unity中添加LOD Group组件实现模型LOD,LOD技术是一种根据视点远近来控制模型细节层次的技术;
[0009] (2)真实地形环境子模块:三维地形资源采用WM(World Machine)软件制作,基于 Unity编辑器扩展功能,设计并开发地形资源构建子模块,以图形界面的形式实现分块地形自动生成;
[0010] (3)动态管理子模块:包括三维模型、地形环境的三维资源采用prefab(预设体)形式在Unity编辑器中进行打包,在整体程序流程中基于本模块实现调用、加载、卸载操作;模块实现的核心是多线程,在Unity开发环境中,多线程的实现表现为Coroutine(协程)与异步方法的使用。
[0011] 人机交互模块
[0012] 本模块的实现为用户提供人机交互功能,构建三维图形化的UI(用户接口)界面,将 VR头显设备与手势识别设备集成到客户端的软硬件环境下,在Untiy中实现对底层设备接口与交互指令的封装,具体包括如下子模块
[0013] (1)三维UI子模块:Hovercast是一个虚拟现实环境下的菜单式图形界面库,它可以与 VR头显、手势交互设备很好地结合,并且支持Unity环境下开发,Unity自带的UGUI界面库也提供了许多基础元素,基于Unity自带的UGUI界面库、Hovercast二者结合方式设计VR 交互界面,使得用户可以通过VR头显与手势交互设备参与到虚拟仿真进程中;
[0014] (2)VR头显集成:采用HTC Vive虚拟现实头显设备通过USB方式实现与视景计算机的数据连接,软件方面提供了Unity环境下的开发插件SteamVR Unity Plugin,基于Unity良好的跨平台特性;
[0015] (3)手势交互子模块:使用Leap Motion作为用户手势交互输入设备,Leap Motion是一款便携式的手势识别设备,Leap Motion提供的Orion SDK支持Unity环境开发,能够实现各种手部动作的识别,本模块根据UI界面功能设计手势交互指令,基于Orion底层识别接口进行封装,形成可复用的二次开发接口,也方便三维UI子模块的调用;
[0016] (4)语音控制子模块:基于百度语音REST API实现用户与应用程序的语音交互,通过该模块集成在线语音识别功能,平台使用者可以模拟对无人机的语音控制和指挥;
[0017] (5)脑机接口子模块:采用的BCI属于EEG类型,设备采集脑电信号并交付matlab 数据分析平台进行处理,将处理后的结果通过UDP(用户数据报协议)通信协议传输给视景应用,实现脑控飞行模拟,脑机接口模块用于实现SSVEP(稳态视觉诱发电位)和运动想象两种范式,SSVEP原理是当受到一个固定频率的视觉刺激时,人的大脑视觉皮层会产生一个连续的与刺激频率有关的响应,通过采集该响应并与响应频率刺激信号相匹配来识别人脑所传递的信息;本模块在视景应用中构建一个包含不同频闪数字的SSVEP刺激界面,并将各数字对应于不同的控制指令,从而实现脑控飞行模拟。
[0018] 网络通信模块基于传输层TCP/IP协议,基于.NET开发框架Socket套接口与异步模式开发应用层通信中间件,设计上述两部分应用层协议格式,分别实现客服两端数据的打包与解包, 其中服务器端开放接口,以便于实现基于xPC宿主机-目标机仿真架构的平台二次开发,网络传输需要对应用层协议数据包进行序列化与反序列化。
[0019] 无人机集群编队交互式仿真验证方法,利用分布式实时仿真器、宿主机、视景计算机即客户端、显示设备、人机交互设备实现,其中,由目标计算机组成仿真器负责运行实时仿真程序模拟无人机集群编队;宿主机运行服务器软件,负责管理仿真程序的下载与运行、在线调参、状态数据传输;视景计算机运行基于Unity开发的视景软件,并接收服务器的数据驱动,在虚拟现实VR头显和大屏幕中实时显示虚拟仿真场景;人机交互设备包括语音输入设备、手势识别设备和脑机接口设备,它们与视景计算机连接起来,并通过视景软件集成实现人机交互;进一步地,视景计算机中设置有三维场景资源模块,用于利用Unity引擎开发无人机集群编队任务场景,具体如下:
[0020] (1)三维模型库构建:三维资源库的构建基于外部软件与Unity结合,无人机场景所需的三维模型采用3D Studio Max建模软件建立,并生成不同LOD级别的模型,在Unity中添加LOD Group组件实现模型LOD,LOD技术是一种根据视点远近来控制模型细节层次的技术;
[0021] (2)真实地形环境构建:三维地形资源采用WM(World Machine)软件制作,基于Unity 编辑器扩展功能,设计并开发地形资源构建子模块,以图形界面的形式实现分块地形自动生成;
[0022] (3)动态管理:包括三维模型、地形环境的三维资源采用prefab形式在Unity编辑器中进行打包,在整体程序流程中基于本模块实现调用、加载、卸载操作;模块实现的核心是多线程,在Unity开发环境中,多线程的实现表现为Coroutine与异步方法的使用。
[0023] 人机交互需构建三维图形化的UI界面,将VR头显设备与手势识别设备集成到客户端的软硬件环境下,在Untiy中实现对底层设备接口与交互指令的封装,具体如下:
[0024] (1)三维UI子模块:Hovercast是一个虚拟现实环境下的菜单式图形界面库,它可以与 VR头显、手势交互设备很好地结合,并且支持Unity环境下开发,Unity自带的UGUI界面库也提供了许多基础元素,基于Unity自带的UGUI界面库、Hovercast二者结合方式设计VR 交互界面,使得用户可以通过VR头显与手势交互设备参与到虚拟仿真进程中;
[0025] (2)VR头显集成:采用HTC Vive虚拟现实头显设备通过USB方式实现与视景计算机的数据连接,软件方面提供了Unity环境下的开发插件SteamVR Unity Plugin,基于Unity良好的跨平台特性;
[0026] (3)手势交互子模块:使用Leap Motion作为用户手势交互输入设备,Leap Motion是一款便携式的手势识别设备,Leap Motion提供的Orion SDK支持Unity环境开发,能够实现各种手部动作的识别,本模块根据UI界面功能设计手势交互指令,基于Orion底层识别接口进行封装,形成可复用的二次开发接口,也方便三维UI子模块的调用;
[0027] (4)语音控制子模块:基于百度语音REST API实现用户与应用程序的语音交互,通过该模块集成在线语音识别功能,平台使用者可以模拟对无人机的语音控制和指挥;
[0028] (5)脑机接口子模块:采用的BCI属于EEG类型,设备采集脑电信号并交付matlab 数据分析平台进行处理,将处理后的结果通过UDP通信协议传输给视景应用,实现脑控飞行模拟,脑机接口模块用于实现SSVEP和运动想象两种范式,SSVEP原理是当受到一个固定频率的视觉刺激时,人的大脑视觉皮层会产生一个连续的与刺激频率有关的响应,通过采集该响应并与响应频率刺激信号相匹配来识别人脑所传递的信息;本模块在视景应用中构建一个包含不同频闪数字的SSVEP刺激界面,并将各数字对应于不同的控制指令,从而实现脑控飞行模拟。
[0029] 本发明的特点及有益效果是:
[0030] 本发明搭建了一个交互式的无人机集群编队虚拟仿真平台,在提供逼真的沉浸式无人机集群编队虚拟仿真场景显示的同时,基于语音、手势、脑机接口的交互控制手段,实现人在仿真进程中的参与,迎合了当前无人机集群编队人机协同、群体智能等特性,具备很高的应用价值。对比传统的无人机编队视景仿真,本发明的核心优势如下:
[0031]
[0032] 本发明可以在民用和军用等多个应用领域带来相应的效益。在军事领域,本发明可以用于无人机集群编队人-机一体化作战系统仿真,为无人机集群编队作战任务仿真验证提供一个低成本的快速原型系统,对该类系统的设计与开发提供良好的验证支持,从而加快实物系统的研发速度。在民用方面,可以根据民事部门需要,承担对危险区域的探测、监视、搜索等任务,如大面积海上搜救任务。此外,本发明对于无人机集群编队控制方法的研究和发展也具有十分重要的意义。该平台为无人机集群编队任务分配、轨迹优化、控制算法提供了一个实时仿真环境,可对算法的实时性、有效性、可行性进行测试和验证。仿真结果不仅可以为无人机集群编队系统的早期设计提供虚拟验证和演示支持,同时为无人机集群编队系统理论的发展提供一个良好的实验平台。附图说明:
[0033] 图1平台总体结构图。
[0034] 图2人机交互流程图
[0035] 图3客户端程序逻辑流程图。
[0036] 图4场景对象动态管理逻辑流程图。
[0037] 图5基于Socket套接口的网络通信模块流程图。
[0038] 图6无人机编队控制方法Simulink仿真模型框图
[0039] 图7VR交互效果图。
[0040] 图8语音控制效果图。
[0041] 图9脑机接口交互效果图。
[0042] 图10无人机编队视景仿真效果图。

具体实施方式

[0043] 本发明的目的是构建逼真的虚拟现实仿真场景,以无人机集群编队实时仿真数据驱动演示,通过多种人机交互设备实现人对仿真演示的干预,达到人在环(man-in-loop)的仿真效果。通过该平台可以实现无人机集群编队快速原型设计的视景演示验证,能够在具体任务场景下,完成对无人机控制算法有效性的测试;同时为无人机操控和指挥人员搭建实时模拟环境,从而在整体上加快无人机控制系统研发速度,最终达到节约经济与时间成本的目的。
[0044] 平台网络体系采用C/S架构,通过局域网实现数据共享。软件结构基于模块化、可复用性的原则进行设计:在应用层封装实现了通信协议,并提供了协议格式和编程接口,服务器端可以部署在任意实时仿真环境下;客户端提供丰富的虚拟场景库,用户可以根据仿真需求配置演示场景。本发明以视景仿真应用需求为核心,结合了虚拟现实、脑机接口、手势识别、语音识别、网络通信等多种先进技术,实现了交互式无人机集群编队仿真验证平台,具有如下功能和特点:
[0045] 1.分布式的实时仿真验证环境
[0046] 本发明基于xPC宿主机-目标机分布式结构搭建实时仿真环境,运行无人机集群编队实时仿真程序。组建局域网实现平台数据共享,并基于面向对象的思想设计C/S结构的网络通信中间件。基于Socket套接口调用系统网络I/O资源,基于Protobuf框架实现语言和平台独立的网络数据协议定制,满足实时状态数据传输、交互仿真功能实现等开发需求。
[0047] 2.大规模虚拟场景构建
[0048] 本发明基于Unity引擎实现了大规模的虚拟场景构建方法,结合VR沉浸式体验使得虚拟环境更加逼真。基于3ds max软件建立包括多种无人机、建筑、自然景物等三维模型,导入 Unity进行编辑形成模型库。基于World Machine软件构建山脉、河流、平原、高地、湖泊等地形,构建多种地形环境资源库。为实现接近真实的广阔地形环境,设计并实现大规模场景管理方案,完成对场景所需资源的动态调用,提高仿真应用的性能。建立内容丰富的场景库,能够在多种场景下进行仿真验证。
[0049] 3.多视点VR视景显示
[0050] 本发明基于HTC公司的虚拟现实(VR)头盔产品Vive实现视景显示。VR显示的最大特点是带给用户沉浸式的参与体验,在本发明中可以让观察者对无人机的飞行状态及虚拟环境有身临其境般的感受。随着计算机图形软硬件技术的发展,以HMD(头戴显示设备)为代表的VR设备逐渐成熟,本发明采用的HTC Vive就是其中的代表。此外,为了能够全面地演示仿真过程,本发明基于VR头盔设计了多视点观察及切换功能。
[0051] 4.基于脑控、手势和语音的人机交互
[0052] 本发明在虚拟场景显示画面中设计了许多UI元素,包括一个动态三维图形用户界面,以及沙盘、视切换等人机交互功能,并基于UGUI、Hovercast等界面库实现。交互信号输入设备采用了BCI(脑机接口)与Leap Motion,并基于百度语音用户通过脑控与手势结合的方式完成与仿真应用的交互,实现人在环仿真。
[0053] BCI设备能够对人脑电波进行采集,通过对信号的分析与处理,解读人脑神经信号传递的思维信息,是实现“意念”控制的终极交互设备。本发明中的BCI设备为neuracle(博睿康)公司的64导无线数字脑电采集系统,采用基于Matlab的数据采集与实时分析平台,对该平台的Matlab通信模块进行拓展,实现了基于SSVEP、运动想象原理的脑机接口在线系统,从而实现了脑控人机交互功能。
[0054] 本发明基于Leap Motion手部识别设备开发手势交互功能。与脑机接口技术相比,手势识别技术更加成熟。Leap Motion可以对双手进行26自由度的跟踪识别,从而使用户与视景应用的交互手势多样化。该设备完全实现了裸手交互,与VR头显完美结合。本平台使用者不需要使用任何外设(如手柄),用户只需带上头显,伸出双手,即可以在虚拟世界中畅游。此外,基于百度语音REST API在线识别,可为用户提供语音交互方式,能够实现语音控制功能。
[0055] 交互式无人机集群编队仿真验证平台主要由三维场景资源模块、人机交互模块、网络通信模块三大部分组成,各模块的技术方案如下:
[0056] 1.三维场景资源模块
[0057] 本发明基于Unity引擎开发无人机集群编队任务场景。Unity引擎是由Unity Technologies公司开发的一个3D游戏集成开发环境,它的突出特点及为本发明带来的开发优势包括:强大可扩展编辑器、顶级图形渲染性能、业界领先的多平台支持以及高效的开发模式等。本模块的内容包括构建场景所需的三维模型、地形资源,在Unity中编辑相应组件进行二次加工,同时开发场景对象的动态管理子模块。
[0058] (1)三维模型库构建:三维资源库的构建基于外部软件与Unity结合。无人机等场景所需的三维模型采用3D Studio Max建模软件建立,并生成不同LOD级别的模型,在Unity中添加LOD Group组件实现模型LOD。LOD技术是一种根据视点远近来控制模型细节层次的技术,可以有效减少GPU渲染的顶点与多边形数目,从而有效提升程序性能。
[0059] (2)真实地形环境搭建:三维地形资源采用World Machine(简称WM)软件制作,WM 可以制作场景所需的山脉、河流、高原、平原等丰富的地形地貌,并提供逼真的腐蚀(Erosion)、阶梯(Terrace)等自然效果,同时WM支持地形资源对Unity的导入。为了使场景更加真实,基于Unity Terrain Engine组件添加树木、草等静态景物,采用shader技术实现河流、湖泊所需的动态效果,同时在场景中加入、雨、等模拟天气效果。由于大规模真实地形对于内存消耗巨大,地形资源的构建往往采用分块的方式,并在运行时进行动态管理。分块地形的贴图制作基于Splatmap技术,混合多种纹理颜色,实现雪山、草地、岩石等环境色。针对上述分块地形资源构建过程,基于Unity编辑器扩展功能,设计并开发地形资源构建子模块,以图形界面的形式实现分块地形自动生成的功能。
[0060] (3)动态管理子模块:如前文所述,场景由对象组成,而对象依赖于资源,该子模块实现了场景中对象及其资源的动态管理。动态管理的好处是能够在资源需要时调用,不需要时将它从内存中卸载,从而节省内存资源、提升程序性能,增强了平台的适应性。上述三维资源采用prefab形式在Unity编辑器中进行打包,在整体程序流程中基于本模块实现调用、加载、卸载等操作。模块实现的核心是多线程技术,它是指在主线程外开辟新的线程并行执行某些任务,充分利用多核CPU的性能,避免了因为资源管理而阻塞程序的主逻辑进行。在Unity 开发环境中,多线程的实现表现为Coroutine与异步方法的使用。
[0061] 2.人机交互模块
[0062] 人机交互模块所依托硬件,即语音输入设备、手势识别设备、脑机接口设备和VR设备,均运行在视景计算机上。依托各自的软件工具,即百度语音REST API、Orion SDK、脑电数据分析平台和SteamVR,以不同形式集成到视景软件中,并开发相应子模块实现所需功能。其中百度语音REST API、Orion SDK和SteamVR均采用插件的方式在开发阶段集成到Unity 中,并随软件共同发布;脑电数据分析平台软件为neuracle公司提供,单独运行在视景计算机上,并在运行时与视景软件进行数据通信,从而实现脑机接口模块的功能。
[0063] 本模块的实现为用户提供人机交互功能,构建三维图形化的UI界面,将VR头显设备与手势识别设备集成到客户端的软硬件环境下,在Untiy中实现对底层设备接口与交互指令的封装。
[0064] (1)三维UI子模块:Hovercast是一个虚拟现实环境下的菜单式图形界面库,它可以与VR头显、手势交互设备很好地结合,并且支持Unity环境下开发。Unity自带的UGUI界面库也提供了许多基础元素,基于二者结合方式设计VR交互界面,使得用户可以通过VR头显与手势交互设备参与到虚拟仿真进程中。
[0065] (2)VR头显集成:本发明采用的HTC Vive虚拟现实头显设备通过USB方式实现与视景计算机的数据连接,软件方面提供了Unity环境下的开发插件SteamVR Unity Plugin,基于 Unity良好的跨平台特性,项目可以很方便地输出到Vive头显中。该设备可以追踪头部动作,基于虚拟相机实现用户在VR世界中的视角变换。
[0066] (3)手势交互子模块:本发明使用Leap Motion作为用户手势交互输入设备。Leap Motion 是一款便携式的手势识别设备,它可以实现对双手共26自由度姿态的追踪,将该设备置于头盔前部可以形成大范围的手势追踪区域。Leap Motion提供的Orion SDK支持Unity环境开发,可以实现各种手部动作的识别。本模块根据UI界面功能设计手势交互指令,基于Orion 底层识别接口进行封装,形成可复用的二次开发接口,也方便三维UI子模块的调用。
[0067] (4)语音控制子模块:本发明基于百度语音REST API实现用户与应用程序的语音交互。 REST API是百度语音提供的在线语音识别开发框架,为开发者提供一个通用的HTTP接口,来实现百度语音提供的各种功能。与其他的语音控制系统相比REST API具备开发成本低、效率高的优势,无需安装其他的文件,也不需要载入任何的SDK开发包。通过该模块集成在线语音识别功能,平台使用者可以模拟对无人机的语音控制和指挥等功能。
[0068] (5)脑机接口子模块:本发明采用的BCI属于EEG类型,设备采集脑电信号并交付matlab 数据分析平台进行处理,将处理后的结果通过UDP通信协议传输给视景应用,实现了脑控飞行模拟。EEG类型BCI的工作需要依赖于一定的范式,即人脑按照规定的模式来产生BCI的输入脑电信号,脑机接口模块实现了SSVEP和运动想象两种范式。SSVEP原理是当受到一个固定频率的视觉刺激时,人的大脑视觉皮层会产生一个连续的与刺激频率有关的响应,通过采集该响应并与响应频率刺激信号相匹配来识别人脑所传递的信息。本模块在视景应用中构建一个包含不同频闪数字的SSVEP刺激界面,并将各数字对应于不同的控制指令,从而实现了脑控飞行模拟。运动想象并不需要SSVEP那样的刺激响应界面,因此模块只需要实现不同的控制指令即可。运动想象的实现需要多次实验采集使用者的大量脑电数据,并基于BCI数据分析平台进行深度学习,最终得到良好的控制指令识别效果。
[0069] 3.网络通信模块
[0070] 网络通信模块基于传输层TCP/IP协议,基于.NET开发框架Socket套接口与异步模式开发应用层通信中间件。设计上述两部分应用层协议格式,分别实现客服两端数据的打包与解包。其中服务器端开放接口,以便于实现基于xPC宿主机-目标机仿真架构的平台二次开发。网络传输需要对应用层协议数据包进行序列化与反序列化,本平台基于Google公司开发的 Protobuf框架实现。它的好处首先在于速度快,与常用的格式化语言json、xml等方案相比,具备更加优越的实时性;其次支持多种数据类型,用户可以根据平台的不同仿真需求,定义不同类型的数据包;另外Protobuf与具体采用哪种编程语言,以及哪种开发环境无关,可极大地增强平台软件的适用性。
[0071] 结合附图对本发明作进一步详述。
[0072] 图1所示的是本发明的平台总体结构示意图。虚拟仿真平台在硬件结构上分为五部分, xPC分布式实时仿真器、xPC宿主机、高性能视景计算机(客户端)、显示设备、人机交互设备。其中,由xPC目标机组成仿真器负责运行实时仿真程序模拟无人机集群编队;xPC宿主机运行服务器软件,负责管理仿真程序的下载与运行、在线调参、状态数据传输等功能;视景计算机运行基于Unity开发的视景软件,并接收服务器的数据驱动,在VR头显和大屏幕中实时显示虚拟仿真场景;人机交互设备包括语音输入设备、手势识别设备和脑机接口设备,它们与视景计算机连接起来,并通过视景软件集成实现人机交互功能。
[0073] 图2所示为平台人机交互工作流程图,该部分基于脑机接口、手势、语音实现了人在环仿真。客户端视景软件通过虚拟场景与图形界面显示仿真信息,用户接受信息反馈的同时可以使用界面提供的交互功能与仿真进行交互。脑机接口部分实现基于SSVEP与运动想象范式的脑机交互界面,用户接受该界面的视觉刺激产生反应信号,由BCI设备采集并交付Matlab 数据分析平台进行处理;手势识别部分通过Leap Motion获取实时手部动作,并基于Orion 识别模块分析得到手势控制指令;语音控制部分通过与VR设备兼容的麦克风等输入设备,采集语音信号交付百度语音REST平台进行分析;上述三个过程得到的控制指令通过网络模块打包后发送到服务器端。服务器端网络模块按照协议首先对数据包进行解析,将得到的指令交付底层实时仿真环境进行在线调参(在线调参是xPC实时仿真环境的基本功能之一),根据用户的指令改变仿真模型的相应参数,从而实现了交互式的飞行模拟。通过控制指令的巧妙设计,基于该交互式平台的功能,可以充分模拟操纵者或指挥员对无人机集群编队仿真对象的控制。
[0074] 图3所示为客户端(视景)软件逻辑流程图。客户端软件将任务分为三个并行的线程:主线程、UI线程与网络线程。主线程负责程序的所有初始化工作、主逻辑实现及状态更新, UI线程负责处理用户输入,网络线程负责与服务器端进行数据传输。程序开始运行后,主线程进行资源、场景、线程的初始化,并开始第一,每一帧的工作流程为:
[0075] (1)接受其它线程发送的消息,包括UI线程的交互输入请求与网络线程的数据包。
[0076] (2)程序主逻辑对收到的消息进行处理,并返回正确的响应,包括对UI线程输出结果显示,以及将用户请求交付网络线程,后者负责转发给服务器端。
[0077] (3)进行仿真对象的状态更新,包括位置、姿态等,由Unity引擎底层实现该帧渲染。至此该帧工作结束,若用户没有发出退出指令,返回(1)步继续进行下一帧循环。
[0078] 图4所示为场景对象动态管理逻辑流程图,描述了主线程一帧内动态管理子模块的工作流程。该模块的核心为由三个队列组成的对象池,分别是Request(查询)队列、Loaded(加载)队列和Remove(移除)队列。模块由Unity内置C#脚本编写实现,每个队列采用字典 (Dictionary)数据结构,它的特点是查找与添加/删除的操作速度快,符合动态管理模块的需求。主线程进入该模块工作阶段后的工作流程如下:
[0079] (1)计算需要加载的对象,创建并将对象放入Request队列,同时开始对象资源的异步加载。由于是异步方式当前线程并不阻塞,程序继续计算场景不再需要显示的对象,并将它们从Loaded队列移至Remove队列。
[0080] (2)以顺序方式对Request队列中的元素进行查询,若其完成资源加载,则将对象实例化并移至Loaded队列;若加载未完成,则跳过该元素继续查询下一个,直至Request队列全部查询完毕(各查询了一次)。
[0081] (3)移除Remove队列中的所有元素,销毁对象并卸载资源,释放内存。至此该帧工作结束,下一帧仍从(1)开始进行。
[0082] 图5所示为基于Socket套接口的网络通信模块流程图。该模块实现分为用户请求响应和仿真数据实时传输两部分,每一部分的工作均由客户端和服务器端共同完成,流程如下:
[0083] (1)用户请求响应:该部分基于传输层TCP协议,通过绑定Socket套接口建立客户端与服务器端的连接。客户端首先接收上层用户消息,经过应用层协议打包后转发给服务器;服务器对数据包进行解包与分析,访问所需数据,打包后再回发给客户端;不断循环上述流程,直至用户产生退出消息,关闭连接。
[0084] (2)仿真数据实时传输:该部分由于实时性的要求,基于传输层UDP协议实现。客户端首先发出开始仿真的请求到服务器,服务器确认请求后开始向客户端发送仿真数据包;客户端接受数据,解包后交付主线程进行状态更新;重复上述循环至仿真停止,关闭Socket释放资源。
[0085] 下面给出具体实例:
[0086] 1.系统软硬件配置
[0087] 根据本节图1所示平台总体结构,本实例采用硬件配置如下表所示:
[0088]
[0089] 本实例的软件实现方式包括:xPC实时仿真程序采用Matlab/Simulink开发;服务器端软件基于C#语言和Visual Studio 2010编写;客户端软件基于Unity 3d引擎,及SteamVR、Orion SDK、百度语音REST API插件开发。
[0090] 2.无人机集群编队控制方法仿真实例
[0091] 建立无人机质点运动模型,设计编队控制器。采用内外环控制结构,其中外环获取期望运动状态,设计PID(比例-积分-微分)控制器求取内环姿态的期望姿态,内环跟踪期望姿态计算得到最终的控制输出。对于编队中的每一架仿真无人机,搭建Simulink仿真模型如图 6所示,并将其编译成外部模式下的xPC目标机实时仿真程序,下载到分布式实时仿真环境中运行。
[0092] 3.实验结果
[0093] 本实例在实验平台系统下进行了无人机编队控制实验,图7至图10所示分别为实验平台及仿真效果示意图。图7所示为客户端VR及人机交互实验环境。图8所示为无人机语音控制效果图。图9所示为脑机接口控制无人机编队队形效果图。图10所示为无人机编队视景仿真效果图。该无人机集群编队控制方法实例在本平台下取得了良好的交互式仿真效果,验证了本发明的可行性。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈