名称:一种使用手机与无人机交互通讯的通讯系统

专利号:202610208827.4

专利权人:赵佳锦

技术领域

本发明涉及无人机技术领域,更具体的说是涉及一种使用手机与无人机交互通讯的通讯系统。

背景技术

传统的无人机遥控系统主要由地面端的专用遥控器(发射机)和空中端的接收机构成,二者通过2.4GHz或5.8GHz等特定无线通信协议建立点对点的直接数据链路。这种方式的缺点在于:用户必须携带额外的专用遥控器,增加了出行负担;且专用遥控器的通信距离有限,易受地理环境遮挡,功能相对单一,扩展性差。

随着智能手机(以及包括平板电脑)的普及,其强大的处理能力、多样的联网方式(蜂窝网络、WiFi)以及丰富的交互界面(触摸屏、语音)为无人机控制提供了新的可能。然而,如何实现手机通过互联网对远距离无人机进行稳定、实时、安全的双向控制,并解决网络地址转换(NAT)穿透、通信延迟、指令安全等问题,是本领域需要解决的技术难题。

因此,提出一种使用手机与无人机交互通讯的通讯系统,来解决现有技术存在的局限与不足。

发明内容

有鉴于此,本发明提供了一种使用手机与无人机交互通讯的通讯系统,利用手机的强大功能和公共移动通信网络,实现一种功能丰富、使用便利、通信可靠且安全的远程无人机控制系统。

为了实现上述目的,本发明提供如下技术方案:

一种使用手机与无人机交互通讯的通讯系统,包括:无人机端、手机端和服务器端;其中,

无人机端包括嵌入式系统,与服务器的第一输入/输出端连接,嵌入式系统集成有移动通信模块和主控芯片组,并运行WebSocket客户端程序;

手机端,与服务器的第二输入/输出端连接,安装有控制APP,控制APP集成WebSocket客户端SDK,用于通过WebSocket协议与服务器通信;

服务器,为部署于公网的WebSocket服务器,用于验证无人机端和手机端的双方身份并绑定会话,实现手机APP与无人机之间通过服务器中转的双向实时数据转发。

可选的,手机APP向无人机发送的指令类型包括:单项指令,单向指令组、双向指令组、大指令、大指令自定义扩展、任务级指令;其中,

单项指令,常规的单个标准指令或基本指令;

单向指令组,手机APP连续发出一串多个指令,无人机接收后暂存于指令缓冲区并按顺序依次执行;

双向指令组,手机APP按顺序发出单个指令,无人机每执行完一个指令后向手机APP反馈执行结果信号,手机APP确认后再发出下一个指令,直至指令组全部执行完毕;

大指令,为预定义的指令组标识,无人机接收后解析并执行对应的固件预存指令组,固件预存指令组为多个基本指令的集合;

大指令自定义扩展,为用户自定义预设置的指令组标识,手机APP预存储或服务器预存储的多个基本指令的集合;多个大指令还可以自定义预设编组为任务级指令,任务级指令可重用/重执行;

任务级指令,经过现场实地执行飞行作业任务后的全过程遥控指令记录集,预存入特定任务区并命名后,可重用/重执行;

其中,任务级指令有三种执行方式,包括:

a.用户在手机APP调用某任务指令时,由手机APP自动依次发送任务指令,遥控无人机飞行;

b.用户通过手机APP向服务器发出调用服务命令/请求,由服务器自动依次发送指令集的指令遥控无人机飞行;

c.用户通过手机APP一次发送任务指令集的全部指令序列集预存入无人机接收指令的指令缓冲区,并按顺序执行飞行作业任务。

可选的,单向指令组和双向指令组均支持两种模式:

原厂预设指令组模板;

用户根据手机APP提供的功能自定义的预设指令组;

任务级指令支持两种模式:

安全模式:包括指令的完整性数据校验与无人机执行遥控指令后的回馈信息;

交互确认模式:在此模式下的遥控飞行是交互式的,无人机接收到遥控指令后反馈信息以及执行指令任务完成再反馈信息,手机APP接收到无人机回馈的信息,确认前一条指令正常执行,再按次序发送后一条指令给无人机,确保无人机始终在正常飞行状况中依次执行飞行任务。

可选的,无人机端的嵌入式系统还包括安全控制模块,用于:

在检测到与手机APP的通讯信号中断超过第一预设时间阈值时,控制无人机自动进入悬停状态;

在既处于通讯信号中断状态又悬停超过第二预设时间阈值时,控制无人机根据飞行过程中记录的航线节点记录表自动返航。

可选的,安全控制模块在无人机起飞后自动开启航线节点记录功能,按照预设的平面距离间隔或时间间隔记录无人机的定位坐标值,形成用于自动返航的航线节点记录表。

可选的,无人机端的嵌入式系统还包括飞行信息记录模块,用于按时间轴记录飞行过程中的传感器数据,并定期通过WebSocket连接上传至WebSocket服务器进行数据备份。

可选的,手机APP与WebSocket服务器、无人机与WebSocket服务器之间均采用WSS协议进行加密传输;手机APP下发的指令附加有数字签名,无人机端验证签名合法后执行。

可选的,手机APP提供简易菜单、图形化界面和语音指令三种交互模式进行切换;

在简易菜单模式下,指令分类在多个级联菜单项,用于选择并点击发送;

在语音指令模式下,APP内置的智能音译模块将用户的语音输入转译为文字,再匹配预设指令库生成对应的无人机操控指令;

在图形化界面模式下,用户直观使用遥控无人机的功能。

可选的,图形化界面包括多个符号键,分别为东键、西键、南键、北键、西南键、西北键、东南键、东北键、上升键、下降键、悬停键、降落键、自动返航键和预设飞行任务键。

可选的,本系统有三种工作模式:

a.直通模式,手机APP借助服务器通道具遥控无人机;

b.代理模式,由服务器代理遥控无人机;

c.混合模式,正常状态是直通模式,遇到手机信号中断或掉线,则服务器自动接管,手机信号恢复则又自动切换回直通模式。

经由上述的技术方案可知,与现有技术相比,本发明提供了一种使用手机与无人机交互通讯的通讯系统,具有以下有益效果:

(1)本发明利用智能手机作为控制终端,无需携带专用遥控器,通过手机APP的图形界面或语音指令即可实现复杂控制,用户体验更佳,功能扩展性强,借助4G/5G等公共移动网络和互联网,突破了传统遥控器距离限制,可实现真正意义上的超视距远程控制;

(2)本发明采用WebSocket协议替代传统的HTTP轮询,建立了全双工的长连接,实现了低延迟、低带宽消耗的双向实时通信;通过服务器中转解决了NAT穿透问题;

(3)本发明设计了单向/双向指令组机制,适应不同场景的可靠性需求;结合WSS加密、Token认证、指令签名等多重安全措施,有效防止数据泄露和指令篡改;

(4)本发明具备通信中断后的自动悬停和自动返航功能,并结合创新的航线节点记录,提高了无人机飞行的安全系数。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明提供的一种使用手机与无人机交互通讯的通讯系统结构示意图;

图2为本发明提供的简易菜单模式界面示意图;

图3为本发明提供的手机APP界面发送指令记录功能区界面示意图;

图4为本发明提供的图形化界面示意图;

图5为本发明提供的语音指令模式界面示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

参见图1所示,本发明公开了一种使用手机与无人机交互通讯的通讯系统,包括:无人机端、手机端和服务器端;其中,

无人机端包括嵌入式系统,与服务器的第一输入/输出端连接,嵌入式系统集成有移动通信模块和主控芯片组,并运行WebSocket客户端程序;

手机端,与服务器的第二输入/输出端连接,安装有控制APP,控制APP集成WebSocket客户端SDK,用于通过WebSocket协议与服务器通信;

服务器,为部署于公网的WebSocket服务器,用于验证无人机端和手机端的双方身份并绑定会话,实现手机APP与无人机之间通过服务器中转的双向实时数据转发。

具体的,控制APP集成的WebSocket客户端SDK(软件开发工具包),包括库文件/API:这是SDK的核心,是一些预先写好的、实现特定功能的代码块,比如建立WebSocket连接、处理数据加密、身份验证等;需要时进行调用即可;开发工具:辅助开发的软件,如编译器、调试器、模拟器等;详细的文档:说明书,解释如何安装、配置和使用这个SDK;代码示例:现成的、可以运行的小程序,供开发者参考和学习。

具体的,手机端包括手机与平板电脑,手机包括主控手机与备用手机;

一个手机APP通过与服务器建立网络连接关系的无人机的自身固件ID号识别与管理/遥控多架无人机;

一架无人机也可以有主控手机与备用手机切换管理/遥控,以备某部手机故障或者信号中断。

进一步的,如图3所示,手机APP向无人机发送的指令类型包括:单项指令,单向指令组、双向指令组、大指令、大指令自定义扩展、任务级指令;其中,

单项指令,常规的单个标准指令或基本指令;

单向指令组,手机APP连续发出一串多个指令,无人机接收后暂存于指令缓冲区并按顺序依次执行;

双向指令组,手机APP按顺序发出单个指令,无人机每执行完一个指令后向手机APP反馈执行结果信号,手机APP确认后再发出下一个指令,直至指令组全部执行完毕;

大指令,为预定义的指令组标识,无人机接收后解析并执行对应的固件预存指令组,固件预存指令组为多个基本指令的集合;

大指令自定义扩展,为用户自定义预设置的指令组标识,手机APP预存储或服务器预存储的多个基本指令的集合;多个大指令还可以自定义预设编组为任务级指令,任务级指令可重用/重执行;

任务级指令,经过现场实地执行飞行作业任务后的全过程遥控指令记录集,预存入特定任务区并命名后,可重用/重执行;

其中,任务级指令有三种执行方式,包括:

a.用户在手机APP调用某任务指令时,由手机APP自动依次发送任务指令,遥控无人机飞行;

b.用户通过手机APP向服务器发出调用服务命令/请求,由服务器自动依次发送指令集的指令遥控无人机飞行;

c.用户通过手机APP一次发送任务指令集的全部指令序列集预存入无人机接收指令的指令缓冲区,并按顺序执行飞行作业任务。

进一步的,单向指令组和双向指令组均支持两种模式:

原厂预设指令组模板;

用户根据手机APP提供的功能自定义的预设指令组;

任务级指令支持两种模式:

安全模式:包括指令的完整性数据校验与无人机执行遥控指令后的回馈信息;

交互确认模式:在此模式下的遥控飞行是交互式的,无人机接收到遥控指令后反馈信息以及执行指令任务完成再反馈信息,手机APP接收到无人机回馈的信息,确认前一条指令正常执行,再按次序发送后一条指令给无人机,确保无人机始终在正常飞行状况中依次执行飞行任务。

进一步的,无人机端的嵌入式系统还包括安全控制模块,用于:

在检测到与手机APP的通讯信号中断超过第一预设时间阈值时,控制无人机自动进入悬停状态;

在既处于通讯信号中断状态又悬停超过第二预设时间阈值时,控制无人机根据飞行过程中记录的航线节点记录表自动返航。

进一步的,安全控制模块在无人机起飞后自动开启航线节点记录功能,按照预设的平面距离间隔或时间间隔记录无人机的定位坐标值,形成用于自动返航的航线节点记录表。

具体的,第一预设时间阈值、第二预设时间阈值、预设的平面距离间隔、时间间隔可以根据需要进行设置。

进一步的,无人机端的嵌入式系统还包括飞行信息记录模块,用于按时间轴记录飞行过程中的传感器数据,并定期通过WebSocket连接上传至WebSocket服务器进行数据备份。

进一步的,手机APP与WebSocket服务器、无人机与WebSocket服务器之间均采用WSS协议进行加密传输;手机APP下发的指令附加有数字签名,无人机端验证签名合法后执行。

进一步的,手机APP提供简易菜单、图形化界面和语音指令三种交互模式进行切换;

在简易菜单模式下,指令分类在多个级联菜单项,用于选择并点击发送;

在语音指令模式下,APP内置的智能音译模块将用户的语音输入转译为文字,再匹配预设指令库生成对应的无人机操控指令;

在图形化界面模式下,用户直观使用遥控无人机的功能。

具体的,图2为简易菜单模式界面:底部导航条是各模式的切换按钮,顶部是各模式具备的菜单栏,界面的下半部是指令区(用户选择指令,设置参数,确认发出),界面的上半部是实时交互区(滚动记录用户发出的遥控指令以及无人机回馈的信息(包括无人机的飞行状况与执行指令的情况));

图5为语音指令模式界面:界面下半部是语音输入指令区,手机APP的相应功能模块识别语音转化为文字,再匹配相对应的指令,确认后发出遥控指令;界面上半部是实时交互区,滚动显示发出的指令以及无人机的回馈信息的记录集;

接收菜单项对应的界面可查看无人机回传的图像信息以及文字信息;底部导航条的设置按钮可以预先设置好各个默认参数值。

进一步的,如图4所示,图形化界面包括多个符号键,分别为东键、西键、南键、北键、西南键、西北键、东南键、东北键、上升键、下降键、悬停键、降落键、自动返航键和预设飞行任务键。

具体的,如图4所示,左侧为20节速度(将此无人机能达到的飞行最快的速度均分20段)供选择设置速度参数;界面右上半部是飞行平面坐标系的8个方向符号键(东键、西键、南键、北键、西南键、西北键、东南键、东北键),以及中间圆点是悬停键;界面右下半部是飞行立面坐标系的Z轴方向,包括上升键与下降键,菱形键是降落键,右旁边的弧形键是自动返航键,左旁边的交叉键是预设飞行任务键执行预设的飞行任务或者执行就近返航应急方案。

进一步的,本系统有三种工作模式:

a.直通模式,手机APP借助服务器通道具遥控无人机;

b.代理模式,由服务器代理遥控无人机;

c.混合模式,正常状态是直通模式,遇到手机信号中断或掉线,则服务器自动接管,手机信号恢复则又自动切换回直通模式。

实施例1

1、系统搭建:

服务器端:采用Node.js框架配合ws库,在具备公网IP的云服务器上部署WebSocket服务,并配置SSL证书启用WSS协议,服务器开放443端口;

无人机端:选用集成有4G模块(如移远EC20)的嵌入式主控板(如STM32系列),在嵌入式系统中移植轻量级WebSocket客户端库(如libwebsockets),编写程序实现:上电后4G模块拨号联网,随后与指定的WSS服务器地址建立连接,并进行设备身份认证(如发送设备唯一SN码);

手机APP端:开发Android/iOS应用,集成WebSocket客户端SDK,APP界面提供起飞、降落、航线飞行等虚拟按钮,以及语音输入接口;APP启动后,用户登录并绑定目标无人机SN码,随后与WSS服务器建立连接。

2、工作流程:

连接建立:无人机和手机APP分别与公网WebSocket服务器成功建立WSS长连接,服务器将两者的会话进行绑定。

指令发送(以双向指令组为例):用户在APP上选择“精确降落”指令组(此为一种双向指令组),APP首先通过WSS连接向服务器发送“准备降落”指令,服务器转发给无人机,无人机执行预备动作(如调整姿态),完成后通过服务器向APP回复“准备就绪”,APP收到确认后,再发送“下降至10米”指令,如此往复,直至降落完成,此过程确保了每个关键步骤的可靠性;

安全控制:飞行过程中,若无人机因飞入信号盲区与服务器断开连接,嵌入式系统会启动计时器,超过5秒(第一阈值)未恢复连接,则自动悬停;悬停超过30秒(第二阈值)仍无连接,则系统调用航线节点记录表,按原路径反向飞行,直至返回起飞点。

3、数据安全

APP下发指令时,使用HMAC-SHA256对指令内容生成签名,随指令一起发送;

无人机端接收到指令后,首先验证签名是否合法,非法指令直接丢弃;

所有通信数据均通过TLS层进行加密传输。

4、数据安全优化

传输加密:禁用明文WS,改用WSS(TLS/SSL),嵌入式端验证服务器证书(防止中间人攻击);

身份认证:WebSocket握手时携带Token(JWT),服务器验证设备合法性;

指令签名:APP下发指令添加MD5/SHA256签名,嵌入式端验证签名防止篡改。

实施例2

本实施示例以一个应用场景的各个阶段流程举例具体说明。

对于用户,用户的手机和手机APP,以及对应的无人机,服务器平台实行注册制与信息变更备案制。

准备阶段,无人机电源开启通电自检完成就绪(开始与服务器建立网络连接,完成此项任务之后特定指示灯/信号灯亮),手机APP打开进入工作界面(此时开始与服务器建立网络连接,完成此项任务之后显示特定信号或信息,然后手机APP开始通过服务器与无人机建立连接关系,完成此项任务后,手机APP会显示相对应的信息或信号),以使用图形化界面为例,点击图像按钮进入此界面显示模拟器图像之后,先点击速度(左侧表格细分为20节速度),再点击向上升键,手机APP就向无人机发出起飞的遥控指令,无人机上升过程中,点击悬停键,无人机接收到此遥控指令后,即将飞行状态更改为空中悬停。(若是使用菜单模式,可先设置各个参数:升空的速度与高度,再选择发出升空指令)图形化界面的上半部是代表平面坐标系的8个飞行方向的符号键,点击哪个方向的符号键,手机APP就向无人机发出相应的遥控指令。如果通讯信号中断达到预设阈值,无人机自动将飞行状态更改为空中悬停待命(等待通讯恢复以及新的遥控飞行指令),若通讯信号中断时间超过第二预设阈值,无人机自动按原路返航,或者若有预设应急飞行方案(比如选择飞达就近位置点降落)则优先执行,若如预设应急飞行方案,默认是按原路返航。用户也可以点击原路返航的符号键遥控无人机执行原路返航的飞行方案。

降落阶段,用户点击降落键,无人机接收到手机APP发出的遥控指令后,飞行状态更改为降落(飞控系统智能化调节安全落地)。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。