基于虚拟现实的仿生扑翼飞行机器人远程控制系统和方法与流程

文档序号:18564446发布日期:2019-08-30 23:51阅读:659来源:国知局
基于虚拟现实的仿生扑翼飞行机器人远程控制系统和方法与流程

本发明涉及飞行器控制技术领域,特别是指一种基于虚拟现实的仿生扑翼飞行机器人远程控制系统和方法。



背景技术:

扑翼飞行机器人是一种模仿鸟类飞行方式的新型飞行器,在军事和工业领域具有广阔的应用前景:如低空侦察,城市作战,环境监测等。它的隐蔽性和低能耗等优点,使得它在军事和民用领域都具有重要的发展潜力。对于某些隐蔽的飞行任务如敌情检测,地形勘察等活动,如何实现对扑翼机的远程控制就显得尤为重要。

现有的扑翼机控制方法主要采用遥控器控制,由操作员根据飞行器的当前位置或者摄像头传输的图像发送飞行指令,指导飞行。然而,这种方法在扑翼机摄像头存在信号干扰或照明情况不良的情况下无法正常使用。为了解决这一问题,本发明提出一种新型的远程遥控方法,通过对扑翼机所处物理环境及机身进行建模,实时获取扑翼机姿态和位置,将真实模型映射到虚拟控制平台,通过对虚拟平台的观测来发送控制指令。相比于传统的远程遥控方法,本发明方法能更准确地判断周围环境,规避障碍物,确保飞行安全。



技术实现要素:

本发明要解决的技术问题是提供一种基于虚拟现实的仿生扑翼飞行机器人远程控制系统和方法。

该系统包括扑翼机和虚拟控制平台,扑翼机设置姿态传感器、飞控板、gps和无线串口模块a,虚拟控制平台包括无线串口模块b、上位机和遥控器;飞控板上设置姿态传感器和gps,飞控板和无线串口模块a相连,遥控器控制上位机,上位机与无线串口模块b进行数据传输,无线串口模块a和无线串口模块b进行数据传输。

应用该系统的方法包括步骤如下:

s1:真实扑翼机根据信号飞行;

s2:获取真实扑翼机姿态和位置信息;

s3:虚拟扑翼机模型根据s2中获得的真实扑翼机的信息在虚拟控制平台做出对应完全相同的动作;

s4:根据gps定位对应加载扑翼机所在环境场景,虚拟环境与真实场景保持完全一致;

s5:观测虚拟控制平台画面,通过遥控器手柄控制扑翼机飞行状态,如果扑翼机继续飞行,则返回s1,如果扑翼机完成飞行任务,则通过遥控手柄控制扑翼机降落。

其中,s2中真实扑翼机的姿态信息包括飞行姿态角和飞行高度。

s2中真实扑翼机的姿态和位置信息通过无线传输模块传输到虚拟控制平台。

虚拟控制平台载有物理引擎,能够检测碰撞,设置刚体组件。

虚拟控制平台为unity3d平台。

s4具体过程如下:

(1)遥测数据回传至地面站虚拟控制平台;

(2)地面站虚拟控制平台对回传数据解析处理;

(3)虚拟控制平台的仿真界面定位扑翼机当前位置并加载环境模型同时显示扑翼机姿态,实现扑翼机当前飞行状态重构与环境模型融合。

s5中通过遥控器手柄控制的扑翼机飞行状态包括航向左右变化、俯仰角变化、飞行速度高低变化,所述遥控器手柄可以替换为手机、键盘等任意一种输入设备。

本发明的上述技术方案的有益效果如下:

(1)上述基于虚拟现实交互技术的扑翼机远程控制方法操作简单,拓宽用户与扑翼机飞行视野,对于执行特定飞行任务的飞行器来说,具有有效的指导预测作用。

(2)场景和模型皆为三维显示,组件之间采用刚体结构,检测真实碰撞,还原物理特性。可以展现真实视觉效果,可用于虚拟现实同步。

(3)相较于传统的采用摄像头观测环境,本发明方法提供了一种观测扑翼机飞行过程的新方法,更加直观、清晰、有益于指导飞行。

(4)单次飞行过程的数据可以以视频形式留存,以便后续飞行积累经验。相较于传统的数字和曲线等数据留存方式,飞行器与环境的交互过程都被记录下来,有利于后期数据分析。

(5)在夜间或者照明不良的情况下,或者摄像头无法保证清晰的观测视野的条件下,本发明方法也能根据虚拟环境模型判断周围环境,规避障碍物,确保飞行安全。

附图说明

图1为本发明的基于虚拟现实的仿生扑翼飞行机器人远程控制系统结构示意图;

图2为本发明基于虚拟现实的仿生扑翼飞行机器人远程控制方法的逻辑流程图;

图3为本发明远程控制方法的软件流程图;

图4为扑翼机模型姿态重构与环境融合的软件流程图。

具体实施方式

为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。

本发明提供一种基于虚拟现实的仿生扑翼飞行机器人远程控制系统和方法。

如图1所示,该系统扑翼机和虚拟控制平台,扑翼机设置姿态传感器、飞控板、gps和无线串口模块a,虚拟控制平台包括无线串口模块b、上位机和遥控器;飞控板上设置姿态传感器和gps,飞控板和无线串口模块a相连,遥控器控制上位机,上位机与无线串口模块b进行数据传输,无线串口模块a和无线串口模块b进行数据传输。

应用该系统的方法包括步骤如下:

s1:真实扑翼机根据信号飞行;

s2:获取真实扑翼机姿态和位置信息;

s3:虚拟扑翼机模型根据s1中获得的真实扑翼机的信息在虚拟控制平台做出对应完全相同的动作;

s4:根据gps定位对应加载扑翼机所在环境场景;

s5:观测虚拟控制平台画面,通过遥控器手柄控制扑翼机飞行状态(遥控器左侧摇杆在水平方向的移动对应扑翼机航向的左右变化,竖直方向对应扑翼机俯仰角变化。遥控器右侧摇杆竖直方向的移动对应扑翼机飞行速度的高低变化),如果扑翼机继续飞行,则返回s1,如果扑翼机完成飞行任务,则通过遥控手柄控制扑翼机降落。

本发明方法的被控主体以扑翼飞行器为例,实际应用过程中也可以有效兼容包括四旋翼、固定翼在内的其他小型无人机。

其中扑翼机部分主要用以飞控板为核心的飞行控制系统(以下简称飞控系统)表示。飞控板上搭载姿态传感器、gps定位系统以及无线传输模块a。

这里需要做出特殊说明的是:大部分可操纵的扑翼机都具有飞控系统,并携带无线传输模块、姿态传感器和gps导航模块,可以直接移植并应用到本方法的软件上位机。本发明方法主要对未搭载以上传感器的扑翼机做出进一步解释:

本方法需要用到的设备包括wt901b姿态传感器模块和as69-t20无线串口模块以及gps导航模块,其中姿态传感器模块可检测三轴加速度、三轴陀螺仪、三轴欧拉角、三轴磁力计以及气压和高度信息,本实施例选择的数据回传内容为三轴欧拉角信息和高度信息,用于获取扑翼机当前三轴姿态角(俯仰角、偏航角、滚转角)和高度;gps导航模块用于获取当前扑翼机的位置信息;无线串口模块用于实现扑翼机与虚拟控制平台的信息交互。

其中,以上三个模块分别与飞控板连接,其中,数据传输方向为:姿态传感器模块和gps导航模块检测飞行数据,传递到飞控板,由飞控板上的串口与无线串口模块a进行数据交互,再通过无线串口模块a的发送端将姿态等信息以16进制数发送给无线串口模块b的接收端。

串口a和串口b使用无线连接,连接方式为两串口设置同一通信波特率,根据姿态传感器模块的串口通信协议进行数据编码和解码,从而实现扑翼机与虚拟控制平台的数据传输。以上模块为了减小体积和重量,可集成化。根据飞行需要,飞控系统还可以增加其它传感器如摄像头模块。

虚拟控制平台由无线传输模块b、上位机软件以及输入设备组成。无线串口传输模块和输入设备都是通过usb接口与电脑进行连接,从而使虚拟控制平台能够获取串口数据和输入指令。其中上位机软件是基于unity3d开发的,可实现如下功能:接收遥控器操作指令、接收无线传输模块数据信息并解码、通过ui界面与用户进行交互、实时显示环境模型以及扑翼机模型运动姿态、记录和保存飞行过程、通过串口模块向真实扑翼机发送控制指令等功能。

本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的模块的限定,具体电子模块可以包括比图中所示更多或更少的部件,或者选用其他型号,或者组合某些部件,或者具有不同的部件布置。

参见附图2-4所示,基于虚拟现实交互技术的扑翼机远程控制方法包括以下步骤:

步骤一:扑翼机根据遥控信号飞行。

具体地,用户通过输入设备对虚拟控制平台发出控制指令,虚拟控制平台接收用户遥控信号经由无线串口b转发至真实扑翼机。扑翼机根据遥控信号改变飞行方向或调整飞行速度。该指令包括但不限于左转,右转,上仰,俯冲、滑行等。

步骤二:获取扑翼机飞行数据。

无线串口模块a将扑翼机姿态传感器的姿态信息和导航模块的位置信息由串口发送端传输到无线串口模块b。

具体地,姿态传感器模块通过模块自身携带的传感器获得三轴姿态角和高度,导航模块获得当前经纬度信息,根据串口传输协议,通过串口模块a,以16进制数据发送到串口模块b。

步骤三:打开unity3d平台,显示扑翼机位姿信息。

本发明方法的虚拟控制平台基于unity3d软件,是整个装置的主体部分。用于处理收到的数据以及显示扑翼机飞行,呈现三维物理环境以及发送控制指令。实例实现过程为:打开虚拟控制平台,插入串口模块,搜索串口所在的端口号并实现连接。

步骤四:判断是否正确接收串口数据,若是,执行步骤五,否则,返回步骤三。

为避免由于飞行环境影响或者偶然因素引起无线串口传输模块无法正确传输数据,需要对串口状态进行检测,具体地,若正确连接串口,则虚拟控制平台可即时显示飞行的三轴姿态角和高度信息以及扑翼机定位(以数据形式)。相应的,虚拟扑翼机模型也会实时呈现飞行姿态。

若未正确连接串口,则该平台会打印错误提示信息,显示界面静止,飞行姿态等数据栏为空。

步骤五:定位扑翼机位置,实时显示当前飞行姿态。

具体地,若串口a和b正确连接,无线传输模块之间实现了数据的正常通信,即串口b接收到正确的数据;串口b与上位机软件正确连接,则虚拟控制平台可根据传输协议解码串口b传输回来的16进制数据信息,并将其转化为扑翼机模型的运动,同时将定位信息加载到真实扑翼机所在环境的场景模型,复现其运动状态。

对应于图3本发明远程控制方法的软件流程图步骤如下:

1.遥测数据回传至地面站虚拟控制平台。

2.地面站虚拟控制平台对回传数据解析处理。

3.虚拟仿真界面定位扑翼机当前位置并加载环境模型同时显示扑翼机姿态,实现扑翼机当前飞行状态重构与环境模型融合:

其中参见图4扑翼机姿态重构与环境融合的具体软件流程如下:

(1)设置unity工作环境,完成初始化过程。

(2)创建场景导入扑翼机模型。

(3)调用c#脚本,应用datareceive函数读取缓冲区中姿态和位置信息。其中c#为unity软件指定的编程语言,datareceive函数主要的功能为将上述串口a、b传输的16进制数据包解码成可直观理解的十进制数据。具体地,在此得到经纬度和三轴姿态角度。

(4)根据当前回传姿态信息设定三维模型绕unity世界坐标系的旋转角度重构扑翼机飞行姿态,使扑翼机模型在unity界面可以呈现与实际扑翼机相同的运动姿态。同时,根据当前回传位置信息加载对应环境模型。

(5)渲染场景实现扑翼机模型和环境模型的融合,包括检测物理碰撞和相对位置。

(6)定时刷新unity界面窗口,返回步骤(3),再次获取缓冲区信息,以实现实时交互。

(7)程序退出释放资源。

举例说明,在某次飞行任务中,根据gps模块的信息显示,扑翼机位于“北京科技大学五环广场”正中央位置,平稳飞行,则虚拟控制平台加载出预先构建好的“北京科技大学五环广场”模型,定位扑翼机的具体位置,使扑翼机模型与环境模型的相对位置与真实场景一致,飞行姿态也与实物扑翼机一致,从而复现真实扑翼机的运动姿态。

步骤六:根据界面,判断是否发出控制指令。若仍需扑翼机进一步飞行,则返回步骤一;若已完成飞行任务,则可平稳降落,结束。

4.操作虚拟控制平台产生控制指令。

5.最终实现远程遥控扑翼机。

由于扑翼机和环境模型是与真实场景一一对应的,虚拟扑翼机的飞行状态和与周遭环境的相对位置都是与真实场景一致的,因此,当真实扑翼机远离用户视野时,我们可以通过观察上位机界面的虚拟模型飞行情况来给出控制指令。

具体地,用户通过软件界面窗口观察扑翼机飞行过程,给出左右转向,上仰,俯冲等飞行指令;举例来说,当上位机界面显示扑翼机左前方出现障碍物,此时我们可以给出避障的指令,该指令可以通过遥控器手柄的左右摇杆给出,将右侧摇杆下压,降低飞行速度,将左侧摇杆右压,使扑翼机向右方飞行,躲避障碍物。

此时发出的控制指令给到真实扑翼机身上,扑翼机根据遥控信号飞行。即回到步骤一,实现了新一轮的运动,因此,在此控制过程中,只要未完成飞行任务,实物平台和仿真平台总能完成持续的双向交互,直至完成飞行任务。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可储存于存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1