发明内容
为了解决利用单一地面站对无人载具进行控制时,操控人员需要不断移动地面站,以确保对远距离巡航的无人载具进行有效控制,导致控制难度较高且稳定性较差的问题,本发明实施例提供了一种无人载具控制方法、装置及系统。所述技术方案如下:
第一方面,提供了一种无人载具控制方法,所述方法包括:
接收主地面站发送的控制权限转让报文,所述主地面站用于控制无人载具,所述控制权限转让报文中包含目标从地面站的标识;
向所述目标从地面站发送第一请求报文,所述第一请求报文用于请求所述目标从地面站接收控制权限;
检测预定时长内是否接收到所述目标从地面站发送的第一响应报文,所述第一响应报文是所述目标从地面站接收到所述第一请求报文后发送的;
若在所述预定时长内接收到所述第一响应报文,则将所述目标从地面站设置为新的主地面站。
在可选的实施例中,所述检测预定时长内是否接收到所述目标从地面站发送的第一响应报文之后,还包括:
若未在所述预定时长内接收到所述第一响应报文,则向所述主地面站发送第二请求报文,所述第二请求报文用于请求所述主地面站接收退回的控制权限;
检测所述预定时长内是否接收到所述主地面站发送的第二响应报文,所述第二响应报文是所述主地面站接收到所述第二请求报文后发送的;
若在所述预定时长内接收到所述第二响应报文,则重新设置所述主地面站为新的主地面站。
在可选的实施例中,所述接收主地面站发送的控制权限转让报文之前,包括:
接收所述主地面站发送的注册列表请求报文,所述注册列表请求报文用于请求获取所述无人载具中存储的注册列表,所述注册列表中包含的各个地面站已完成注册;
向所述主地面站发送所述注册列表,所述目标从地面站的标识是从所述注册列表中选择的地面站的标识。
在可选的实施例中,所述接收主地面站发送的控制权限转让报文之前,还包括:
接收所述主地面站发送的地面站枚举请求报文,所述地面站枚举请求报文中包含预设枚举次数;
当当前枚举次数未达到所述预设枚举次数时,广播枚举报文,所述枚举报文中包含枚举列表,所述枚举列表中包括已枚举到的地面站的标识;
接收地面站发送的枚举响应报文,所述枚举响应报文是地面站检测到所述枚举列表中不包含自身标识时发送的;
将所述枚举响应报文中包含的地面站的标识添加到所述枚举列表;
当当前枚举次数达到所述预设枚举次数时,停止广播所述枚举报文,并向所述主地面站发送所述枚举列表;
接收所述主地面站发送的注册列表,所述注册列表中包含所述枚举列表中通过注册的各个地面站的标识。
在可选的实施例中,所述接收主地面站发送的控制权限转让报文之前,还包括:
接收所述主地面站发送的注册列表,所述注册列表中包含的各个地面站已完成注册;
对所述注册列表进行存储。
在可选的实施例中,所述接收主地面站发送的控制权限转让报文之前,还包括:
接收地面站发送的主地面站申请报文,所述主地面站申请报文中包含第一密钥;
检测所述第一密钥与存储的第二密钥是否相同;
若所述第一密钥与所述第二密钥相同,则将所述地面站初始设置为主地面站。
第二方面,提供了一种无人载具控制方法,所述方法包括:
向无人载具发送状态获取报文,所述状态获取报文用于获取所述无人载具的状态数据;
接收所述无人载具发送的所述状态数据;
向所述无人载具发送控制权限转让报文,所述控制权限转让报文中包含目标从地面站的标识,所述无人载具用于根据所述控制权限转让报文向所述目标从地面站发送第一请求报文,并在预定时长内接收到所述目标从地面站发送的第一响应报文时,将所述目标从地面站设置为新的主地面站。
在可选的实施例中,所述向所述无人载具发送控制权限转让报文之后,包括:
接收所述无人载具发送的第二请求报文,所述第二请求报文是所述无人载具在所述预定时长内未接收到所述第一响应报文时发送的,用于请求所述主地面站接收退回的控制权限;
向所述无人载具发送第二响应报文,所述第二响应报文用于指示重新设置主地面站。
在可选的实施例中,向所述无人载具发送控制权限转让报文,包括:
向所述无人载具发送注册列表请求报文,所述注册列表请求报文用于请求获取所述无人载具中存储的注册列表,所述注册列表中包含的各个地面站已完成注册;
接收所述无人载具发送的所述注册列表;
获取从所述注册列表中选择的所述目标从地面站的标识;
根据所述目标从地面站的标识发送所述控制权限转让报文。
在可选的实施例中,所述向所述无人载具发送控制权限转让报文之前,还包括:
向所述无人载具发送地面站枚举请求报文,所述地面站枚举请求报文中包含预设枚举次数;
接收所述无人载具发送的枚举列表,所述枚举列表是所述无人载具在当前枚举次数达到所述预设枚举次数时发送的,所述枚举列表中包括已枚举到的地面站的标识;
向所述无人载具发送注册列表,所述注册列表中包含所述枚举列表中通过注册的各个地面站的标识。
在可选的实施例中,所述向所述无人载具发送控制权限转让报文之前,还包括:
向所述无人载具发送注册列表,所述注册列表中包含的各个地面站已完成注册。
在可选的实施例中,所述向无人载具发送心跳请求报文之前,还包括:
向所述无人载具发送主地面站申请报文,所述主地面站申请报文中包含第一密钥,所述无人载具用于在所述第一密钥与存储的第二密钥相同时,将发送所述主地面站申请报文的地面站初始设置主地面站。
第三方面,提供了一种无人载具控制方法,所述方法包括:
接收无人载具发送的第一请求报文,所述第一请求报文用于请求接收控制权限;
向所述无人载具发送第一响应报文,所述无人载具用于在预定时长内接收到所述第一响应报文时,将发送所述第一响应报文的地面站设置为主地面站。
在可选的实施例中,所述接收无人载具发送的第一请求报文之前,包括:
接收所述无人载具广播的枚举报文,所述枚举报文中包含枚举列表,所述枚举列表中包括已枚举到的地面站的标识;
检测所述枚举列表中是否包含自身标识;
若所述枚举列表中不包含自身标识,则向所述无人载具发送枚举响应报文,所述枚举响应报文中包含自身标识。
第四方面,提供了一种无人载具控制装置,所述装置包括:
第一接收单元,用于接收主地面站发送的控制权限转让报文,所述主地面站用于控制无人载具,所述控制权限转让报文中包含目标从地面站的标识;
第一发送单元,用于向所述目标从地面站发送第一请求报文,所述第一请求报文用于请求所述目标从地面站接收控制权限;
第一检测单元,用于检测预定时长内是否接收到所述目标从地面站发送的第一响应报文,所述第一响应报文是所述目标从地面站接收到所述第一请求报文后发送的;
第一设置单元,用于若在所述预定时长内接收到所述第一响应报文,则将所述目标从地面站设置为新的主地面站。
在可选的实施例中,所述装置,还包括:
第二发送单元,用于若未在所述预定时长内接收到所述第一响应报文,则向所述主地面站发送第二请求报文,所述第二请求报文用于请求所述主地面站接收退回的控制权限;
第二检测单元,用于检测所述预定时长内是否接收到所述主地面站发送的第二响应报文,所述第二响应报文是所述主地面站接收到所述第二请求报文后发送的;
第二设置单元,用于若在所述预定时长内接收到所述第二响应报文,则重新设置所述主地面站为新的主地面站。
在可选的实施例中,所述装置,包括:
第三接收单元,用于接收所述主地面站发送的注册列表请求报文,所述注册列表请求报文用于请求获取所述无人载具中存储的注册列表,所述注册列表中包含的各个地面站已完成注册;
第一列表发送单元,用于向所述主地面站发送所述注册列表,所述目标从地面站的标识是从所述注册列表中选择的地面站的标识。
在可选的实施例中,所述装置,还包括:
第四接收单元,用于接收所述主地面站发送的地面站枚举请求报文,所述地面站枚举请求报文中包含预设枚举次数;
广播单元,用于当当前枚举次数未达到所述预设枚举次数时,广播枚举报文,所述枚举报文中包含枚举列表,所述枚举列表中包括已枚举到的地面站的标识;
第四接收单元,用于接收地面站发送的枚举响应报文,所述枚举响应报文是地面站检测到所述枚举列表中不包含自身标识时发送的;
添加单元,用于将所述枚举响应报文中包含的地面站的标识添加到所述枚举列表;
第二列表发送单元,用于当当前枚举次数达到所述预设枚举次数时,停止广播所述枚举报文,并向所述主地面站发送所述枚举列表;
第五接收单元,用于接收所述主地面站发送的注册列表,所述注册列表中包含所述枚举列表中通过注册的各个地面站的标识。
在可选的实施例中,所述装置,还包括:
第六接收单元,用于接收所述主地面站发送的注册列表,所述注册列表中包含的各个地面站已完成注册。
在可选的实施例中,所述装置,还包括:
第七接收单元,用于接收地面站发送的主地面站申请报文,所述主地面站申请报文中包含第一密钥;
第三检测单元,用于检测所述第一密钥与存储的第二密钥是否相同;
第三设置单元,用于若所述第一密钥与所述第二密钥相同,则将所述地面站初始设置为主地面站。
第五方面,提供了一种无人载具控制装置,所述装置包括:
第三发送单元,用于向无人载具发送状态获取报文,所述状态获取报文用于获取所述无人载具的状态数据;
第八接收单元,用于接收所述无人载具发送的所述状态数据;
第四发送单元,用于向所述无人载具发送控制权限转让报文,所述控制权限转让报文中包含目标从地面站的标识,所述无人载具用于根据所述控制权限转让报文向所述目标从地面站发送第一请求报文,并在预定时长内接收到所述目标从地面站发送的第一响应报文时,将所述目标从地面站设置为新的主地面站。
在可选的实施例中,所述装置,包括:
第九接收单元,用于接收所述无人载具发送的第二请求报文,所述第二请求报文是所述无人载具在所述预定时长内未接收到所述第一响应报文时发送的,用于请求所述主地面站接收退回的控制权限;
第五发送单元,用于向所述无人载具发送第二响应报文,所述第二响应报文用于指示所述无人载具重新设置主地面站。
在可选的实施例中,第二发送单元,用于:
向所述无人载具发送注册列表请求报文,所述注册列表请求报文用于请求获取所述无人载具中存储的注册列表,所述注册列表中包含的各个地面站已完成注册;
接收所述无人载具发送的所述注册列表;
获取从所述注册列表中选择的所述目标从地面站的标识;
根据所述目标从地面站的标识发送所述控制权限转让报文。
在可选的实施例中,所述装置,还包括:
第六发送单元,用于向所述无人载具发送地面站枚举请求报文,所述地面站枚举请求报文中包含预设枚举次数;
第十接收单元,用于接收所述无人载具发送的枚举列表,所述枚举列表是所述无人载具在当前枚举次数达到所述预设枚举次数时发送的,所述枚举列表中包括已枚举到的地面站的标识;
第七发送单元,用于向所述无人载具发送注册列表,所述注册列表中包含所述枚举列表中通过注册的各个地面站的标识。
在可选的实施例中,所述装置,还包括:
第八发送单元,用于向所述无人载具发送注册列表,所述注册列表中包含的各个地面站已完成注册。
在可选的实施例中,所述装置,还包括:
第九发送单元,用于向所述无人载具发送主地面站申请报文,所述主地面站申请报文中包含第一密钥,所述无人载具用于在所述第一密钥与存储的第二密钥相同时,将发送所述主地面站申请报文的地面站初始设置主地面站。
第六方面,提供了一种无人载具控制装置,所述装置包括:
第十一接收单元,用于接收无人载具发送的第一请求报文,所述第一请求报文用于请求接收控制权限;
第十发送单元,用于向所述无人载具发送第一响应报文,所述无人载具用于在预定时长内接收到所述第一响应报文时,将发送所述第一响应报文的地面站设置为主地面站。
在可选的实施例中,所述装置,包括:
第十二接收单元,用于接收所述无人载具广播的枚举报文,所述枚举报文中包含枚举列表,所述枚举列表中包括已枚举到的地面站的标识;
第五检测单元,用于检测所述枚举列表中是否包含自身标识;
第十一发送单元,用于若所述枚举列表中不包含自身标识,则向所述无人载具发送枚举响应报文,所述枚举响应报文中包含自身标识。
第七方面,提供了一种无人载具,所述无人载具包括处理器、与所述处理器相连的存储器,以及存储在所述存储器上的程序指令,所述处理器执行所述程序指令时实现如第一方面所述的无人载具控制方法。
第八方面,提供了一种地面站,所述地面站包括处理器、与所述处理器相连的存储器,以及存储在所述存储器上的程序指令,所述处理器执行所述程序指令时实现如第二方面或第三方面所述的无人载具控制方法。
第九方面,提供了一种计算机可读存储介质,其上存储有程序指令,所述程序指令被处理器执行时实现如权利要求第一方面、第二方面或第三方面所述的无人载具控制方法。
第十方面,提供了一种无人载具控制系统,所述系统包括:无人载具和至少两个地面站,所述至少两个地面站中包括一个主地面站以及至少一个从地面站;
所述无人载具包括如第四方面所述的无人载具控制装置;
所述主地面站包括如第五方面所述的无人载具控制装置;
所述从地面站包括如第六方面所述的无人载具控制装置。
本发明实施例提供的技术方案带来的有益效果是:
通过接收主地面站发送的控制权限转让报文,并根据该控制权限转让报文向目标从地面站发送第一请求报文,在接收到目标从地面站根据第一请求报文反馈的第一响应报文时,确定控制权限转让成功,从而由目标从地面站取代原先的主地面站对无人载具进行控制,实现了多地面站对无人载具的协同控制;采用本发明实施例提供的方法,当无人载具需要进行远距离巡航时,通过控制权限的转让即可实现对无人载具的有效控制,无需操控人员移动地面站,进而降低了控制难度,并提高了无人载具控制过程的稳定性。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
请参考图1,其示出了本发明一个实施例提供的无人载具控制系统的结构示意图。该系统包括:无人载具110和至少两个地面站,其中,至少两个地面站中包括一个主地面站121以及至少一个从地面站122。
无人载具110是一种利用无线电进行遥控的电子设备。无人载具110可以为无人机(包括无人固定翼机、无人垂直起降机、无人飞艇、无人直升机、无人多旋翼飞行器或无人伞翼机等等)、无人车辆或无人船舶等等。示意性的,如图1所示,该无人载具110为无人多旋翼飞行器。
地面站是用于控制无人载具110的控制设备,该地面站为固定地面站、可移动箱式地面站或手持式遥控器等等。图1所示的各个地面站中,主地面站121具有对无人载具110的控制权限,并能够接收到无人载具110回传的图像及状态信息。本发明实施例提供的无人载具控制系统中,仅主地面站121能够将无人载具110的控制权限转让至其他从地面站122;相应的,从地面站122获取控制权限后,即能够对无人载具110进行控制。
可选的,各个地面站和无人载具110中均设置有无线电通讯装置和射频收发机,主地面站121采用无线电向无人载具110发送控制指令,无人载具110则在2.4GHz或5.8GHz频段上,利用射频发射机向主地面站121回传图像和状态信息。
可选的,主地面站121与从地面站122之间通过有线网络或无线网络相连,从而与各个从地面站122进行数据交互。
需要说明的是,为了达到较大的控制范围,本发明实施例中各个地面站呈分散式分布,且各个地面站对应的有效控制范围之间存在交集,本发明实施例并不对地面站的具体分布方式进行限定。
请参考图2A,其示出了本发明一个实施例提供的无人载具控制方法的流程图。本实施例以该无人载具控制方法应用于图1所示的无人载具控制系统来举例说明,该方法包括如下步骤。
步骤201,主地面站向无人载具发送状态获取报文,状态获取报文用于获取无人载具的状态数据。
在一种可能的实施方式中,当地面站中的主地面站登陆无人载具,即主地面站与无人载具建立无线电通信后(主地面站具有对无人载具的控制权限),主地面站与无人载具通过心跳报文保持长连接,且主地面站通过发送状态获取报文的方式,请求获取无人载具当前的状态数据,其中,该状态数据包括无人载具的当前转速、当前速度、当前坐标等数据。可选的,为了使无人载具知悉该状态获取报文的发送方,该状态获取报文中包含主地面站的标识。
比如,当无人载具为无人旋翼飞行器时,主地面站每隔100ms向无人载具发送心跳请求报文,请求获取无人旋翼飞行器各个旋翼的转速、当前飞行高度、当前飞行速度、当前坐标以及当前飞行距离等数据。
示意性的,如图2B所示,当主地面站的标识为1时,主地面站即向无人载具发送get_uav_status(1)。
步骤202,无人载具根据状态获取报文向主地面站发送状态数据。
在一种可能的实施方式中,无人载具接收到状态获取报文,并检测到该状态获取报文中包含的主地面站的标识时,即通过广播的方式发送包含当前状态数据的状态响应报文。
示意性的,如图2B所示,无人载具向各个地面站广播uav_status(1)。
步骤203,主地面站接收无人载具发送的状态数据。
可选的,主地面站接收无人载具发送的状态响应报文,并对该状态响应报文中包含的状态数据进行显示。无人载具在运行状态下重复执行上述步骤201至203确保与主地面站时刻保持连接。
步骤204,主地面站向无人载具发送控制权限转让报文,控制权限转让报文中包含目标从地面站的标识。
由于无线电通信的范围有限,当主地面站的位置保持不变时,无人载具仅能够在主地面站无线电信号覆盖范围内运行。为了确保无人载具在超越主地面站控制范围时,仍能够受到操控人员有效控制,主地面站向无人载具发送权限转让报文,请求将无人载具控制权限转让至其他从地面站,该权限转让报文中即包含获取控制权限的目标从地面站的标识。
在一种可能的实施方式中,无人载具发送的状态数据中包含当前坐标,当根据当前坐标确定无人载具与主地面站之间的距离大于距离阈值时,主地面站即提示用户进行控制权限转让,并根据用户设置的目标从地面站的标识发送控制权限转让报文。
示意性的,如图2B所示,当目标从地面站的标识为2时,主地面站即向无人载具发送auth_assign_req(2)。
步骤205,无人载具接收主地面站发送的控制权限转让报文。
在一种可能的实施方式中,无人载具接收到主地面站发送的控制权限转让报文后保持当前位置。比如,当无人载具为无人旋翼飞行器时,无人载具接收到控制权限转让报文后保持悬浮状态。
步骤206,无人载具向目标从地面站发送第一请求报文,第一请求报文用于请求目标从地面站接收控制权限。
接收到控制权限转让包报文后,无人载具根据目标从地面站的标识生成并发送第一请求报文,以告知目标从地面站接手无人载具的控制权限。
可选的,无人载具采用广播的方式发送第一请求报文,该第一请求报文中即包含目标从地面站的标识。
示意性的,如图2B所示,无人载具向各个地面站广播uav_status(2)。
步骤207,目标从地面站接收无人载具发送的第一请求报文。
可选的,无人载具广播第一请求报文时,当目标从地面站位于无人载具的广播范围内,且处于工作状态时,该目标从地面站即能够接收到该第一请求报文。
步骤208,目标从地面站向无人载具发送第一响应报文。
可选的,目标从地面站接收到第一请求报文,并检测到第一请求报文中包含自身标识时,向无人载具发送包含自身标识的第一响应报文,以获取主地面站转让的控制权限。
需要说明的是,位于广播范围内的其他非目标从地面站接收到该第一请求报文后,由于该第一请求报文中包含的目标从地面站的标识与自身标识不符,因此,非目标从地面站并不响应第一请求报文。
示意性的,如图2B所示,目标从地面站向无人载具发送get_uav_status(2)。
步骤209,无人载具检测预定时长内是否接收到目标从地面站发送的第一响应报文。
在实际实施过程中,当目标从地面站未处于工作状态,或,从地面站发送的第一响应报文未正确送达至无人载具时,为了避免控制权限转让后无人载具无法得到有效控制,无人载具发送第一请求报文后,在预定时长内检测是否接收到目标从地面站回传的第一响应报文;若在预定时长内接收到该第一响应报文,则确定与目标从地面站之间的通讯顺畅,并执行步骤210;若在预定时长内未接收到该第一响应报文,则确定与目标从地面站之间的通讯异常。
比如,当无人载具在1000ms内接收到目标从地面站发送的第一响应报文时,确定与从地面站之间的通讯顺畅。
步骤210,若在预定时长内接收到第一响应报文,无人载具则将目标从地面站设备为新的主地面站。
当确定与目标从地面站之间的通讯顺畅时,无人载具即确定控制权限转让成功,控制权限转让成功后,目标从地面站即成为新的主地面站,并能够对无人载具进行控制。
在一种可能的实施方式中,无人载具为目标从地面站设置主地面站标识,从而完成新的主地面站设置。
控制权限转让成功后,成为主地面站的目标从地面站仍旧与无人载具之间保持心跳连接。
示意性的,如图2B所示,完成控制权限转让后,无人载具向(已成为主地面站的)目标从地面站发送uav_status(2)。
综上所述,本实施例提供的无人载具控制方法,通过接收主地面站发送的控制权限转让报文,并根据该控制权限转让报文向目标从地面站发送第一请求报文,在接收到目标从地面站根据第一请求报文反馈的第一响应报文时,确定控制权限转让成功,从而由目标从地面站取代原先的主地面站对无人载具进行控制,实现了多地面站对无人载具的协同控制;采用本发明实施例提供的方法,当无人载具需要进行远距离巡航时,通过控制权限的转让即可实现对无人载具的有效控制,无需操控人员移动地面站,进而降低了控制难度,并提高了无人载具控制过程的稳定性。
当无人载具在预定时长内未接收到目标从地面站发送的第一响应报文时,为了避免控制权限无人接手,导致无人载具处于失控状态,在图2A的基础上,如图2C所示,上述步骤209之后还包括如下步骤。
步骤211,若未在预定时长内接收到第一响应报文,无人载具则向主地面站发送第二请求报文,第二请求报文用于请求主地面站接收退回的控制权限。
若未在预定时长内接收到第一响应报文,无人载具则向先前的主地面站发送第二请求报文,以此向主地面站回退控制权限。
在一种可能的实施方式中,无人载具采用广播的方式发送第二请求报文,且该第二请求报文中即包含主地面站的标识。
示意性的,如图2D所示,当在预定时长内未接收到第一响应报文时,即出现Timeout(超时)时,无人载具即向各个地面站广播uav_status(1)。
步骤212,主地面站接收无人载具发送的第二请求报文。
经过上述步骤204后,主地面站处于监听状态,监听无人载具发送的报文,当监听到无人载具发送的第二请求报文时,主地面站即知悉控制权限转让失败。由于控制权限转让过程中,无人载具的位置未发生变化,因此,主地面站能够顺利接收到该第二响应报文。
步骤213,主地面站向无人载具发送第二响应报文。
为了使无人载具知悉主地面站已接收到第二请求报文,主地面站向无人载具发送包含自身标识(即主地面站的标识)的第二响应报文。
示意性的,如图2D所示,主地面站向无人载具发送get_uav_status(1)。
需要说明的是,当无人载具广播第二请求报文时,除主地面站外的其他从地面站接收到第二请求报文后,由于该第二请求报文中包含的主地面站的标识与自身标识不符,因此,从地面站并不响应第二请求报文。
步骤214,无人载具检测预定时长内是否接收到第二响应报文。
与上述步骤209相似的,无人载具发送第二请求报文后,在预定时长内检测是否接收到第二响应报文,若接收到第二响应报文,则执行步骤215;若未接收到第二响应报文,则根据存储的起点坐标位置进行返航操作。
步骤215,若在预定时长内接收到第二响应报文,无人载具则将发送第二响应报文的地面站重新设置为主地面站。
当接收到第二响应报文时,无人载具确定控制权限回退至主地面站,重新将先前的主地面站设置为主地面站,并与主地面站重新建立心跳连接。
示意性的,如图2D所示,无人载具接收到第二响应报文后,重新向主地面站发送uav_status(1)。
可选的,控制权限回退至主地面站后,主地面站可以重新通过上述步骤204至210发起控制权限转移,本发明实施例在此不再赘述。
本实施例中,当从地面站未能成功接手控制权限时,无人载具通过控制权限回退机制重新启用主地面站对无人载具进行控制,避免因控制权限无人接手,导致无人载具处于失控状态。
在实际实施过程中,为了避免因设置的目标从地面站不正确,导致控制权限转让失败,在一种可能的实施方式中,主地面站向无人载具发送控制权限转让请求报文前,获取无人载具中存储的注册列表,从而基于该注册列表发送控制权限转让请求报文。在图2A的基础上,如图2E所示,上述步骤204可以被替换为如下步骤。
步骤216,主地面站向无人载具发送注册列表请求报文,注册列表请求报文用于请求获取无人载具中存储的注册列表。
无人载具中预先存储有注册列表,该注册列表中包含的各个地面站已完成注册。本发明实施例中,该注册列表中至少包含图1所示无人载具控制系统中的各个地面站的标识。
可选的,针对不同类型的地面站,该注册列表中还包括各个地面站对应的控制权限。后续无人载具接收到地面站发送的控制报文时,即检测该控制报文是否在该地面站对应的控制权限访问内,若在控制权限范围内,则对该控制报文进行响应;若在控制权限范围外,则不对该控制报文进行响应。
在一种可能的实施方式中,固定地面站的控制权限>可移动箱式地面站的控制权限>手持式遥控器的控制权限。
比如,无人载具中存储的注册列表如表一所示。
表一
示意性的,如图2F所示,主地面站向无人载具发送get_sn_list,以获取无人载具中存储的注册列表。
步骤217,无人载具接收主地面站发送的注册列表请求报文。
步骤218,无人载具向主地面站发送注册列表。
无人载具接收到注册列表请求报文后,即向主地面站发送存储的注册列表。
示意性的,如图2F所示,无人载具通过send_sn_list(1,2,…,n)向主地面站发送地面站列表,其中,(1,2,…,n)为各个地面站的标识。
步骤219,主地面站获取无人载具发送的注册列表。
步骤220,主地面站获取注册列表中选择的目标从地面站的标识。
可选的,主地面站对获取到的注册列表进行显示,并接收操控人员触发的选择信号,并获取该选择信号所指示地面站的标识,即获取目标从地面站的标识。
在一种可能的实施方式中,为了确保选择的目标从地面站位于无人载具的广播范围内,主地面站获取各个从地面站的坐标以及无人载具当前的坐标,从而根据两者的坐标计算出无人载具与各个从地面站之间的距离,并根据该距离标记出在无人载具广播范围内的地面站,供操控人员选择。本发明实施例并不对获取从地面站标识的具体方式进行限定。
步骤221,主地面站根据目标从地面站的标识发送控制权限转让报文。
进一步的,主地面站根据目标从地面站的标识生成控制权限转让报文,并发送给无人载具。
本实施例中,主地面站向无人载具发送控制权限转让请求报文前,获取无人载具中存储的注册列表,从而基于该注册列表发送控制权限转让请求报文,避免了因从地面站不正确,导致控制权限转让失败,提高了控制权限的转让成功率。
针对上述实施例中注册列表的生成方式,在一种可能的实施方式中,无人载具采用自动枚举的方式获取包含各个地面站标识的枚举列表,并根据主地面站用户指示,基于该枚举列表生成注册列表;在另一种可能的实施方式中,主地面站可以直接将主地面站用户手动配置的注册列表发送给无人载具,由无人载具进行存储。
示意性的,如图3A所示,通过枚举的方式生成注册列表时,该方法该包括如下步骤。
步骤222,主地面站向无人载具发送地面站枚举请求报文,地面站枚举请求报文中包含预设枚举次数。
为了使各个地面站均能够在无人载具端完成枚举,主地面站与无人载具建立通信连接后,即向无人载具发送地面站枚举请求报文,指示无人载具向广播范围内的各个地面站发送枚举报文,并接收地面站上报的自身标识。
在一种可能的实施方式中,该地面站枚举请求报文中包含操控人员设置的预设枚举次数i,i≥1,该预设枚举次数为无人载具广播枚举报文的次数上限;可选的,该地面站枚举请求报文中还包含广播枚举报文的时间间隔。
示意性的,如图3B所示,主地面站向无人载具发送auto_enum_req(i,2000),指示无人载具进行i次枚举,且每次枚举的时间间隔为2000ms。
步骤223,无人载具接收主地面站发送的地面站枚举请求报文。
相应的,无人载具接收到主地面站发送的地面站枚举请求报文后,即知悉需要采用自动枚举的方式获取广播范围内各个地面站的标识。
步骤224,当当前枚举次数未达到预设枚举次数时,无人载具广播枚举报文,枚举报文中包含枚举列表,该枚举列表中包括已枚举到的地面站的标识。
对于每一次枚举过程,无人载具检测当前枚举次数是否达到预设枚举次数,并在当前枚举次数为达到预设枚举次数时,广播枚举报文,该枚举报文中即包含已枚举的地面站的标识。
示意性的,如图3B所示,在第一次枚举过程中(1st enum process),由于仅主地面站在无人载具端进行了注册,因此,无人载具广播的枚举报文中仅包含主地面站的标识,即无人载具广播start_enum(1)。
步骤225,地面站接收无人载具广播的枚举报文。
相应的,位于无人载具广播范围内的各个地面站接收该枚举报文。
步骤226,从地面站检测枚举列表中是否包含自身标识。
接收到枚举报文后,地面站获取该枚举报文中包含枚举列表,并进一步检测枚举列表中是否包含自身标识。当检测到枚举列表中不包含自身标识时,执行步骤227,当检测到枚举列表中包含自身标识时,地面站确定完成枚举,并不响应该枚举报文。
步骤227,若枚举列表中不包含自身标识,从地面站则向无人载具发送枚举响应报文,枚举响应报文中包含自身标识。
当检测到枚举列表中不包含自身标识,即地面站未完成枚举时,地面站即向无人载具发送包含自身标识的枚举响应报文,请求在无人载具端将自身标识存储到枚举列表中,以完成枚举过程。
示意性的,如图3B所示,对于第一次枚举过程,由于无人载具广播的枚举列表中仅包含主地面站的标识,因此,主地面站以外的其他从地面站均向无人载具发送携带自身标识的枚举响应报文,即向无人载具发送enum_report_sn(2),…,enum_report_sn(n)。
步骤228,无人载具接收地面站发送的枚举响应报文,并将枚举响应报文中包含的地面站的标识添加到枚举列表。
受限于接收端口的数量,无人载具只能对部分地面站发送的枚举响应报文进行接收处理,即无人载具每次只能添加部分地面站的标识,因此无人载具需要进行多次枚举才能完整添加各个地面站的标识。
示意性的,如图3B所示,第一次枚举过程后,无人载具仅对地面站3和地面站4的标识进行存储,因此,在第二次枚举过程中(2nd enum process),无人载具广播的枚举报文中包含地面站的标识(1,3,4),此时,主地面站、地面站3、地面站4以外的其他地面站将继续发送枚举响应报文,即向无人载具发送enum_report_sn(2),enum_report_sn(5),…,enum_report_sn(n)。
而在第i次枚举过程中,无人载具广播的枚举报文中包含地面站的标识(1,2,…,4),因此,各个地面站均不响应该枚举报文。
步骤229,当当前枚举次数达到预设枚举次数时,无人载具停止广播枚举报文,向主地面站发送枚举列表。
当当前枚举次数达到预设枚举次数时,无人载具确定枚举结束,停止广播枚举报文,并将存储的枚举列表发送至主地面站。
由于在进行第i次枚举前,无人载具可能已经存储所有地面站的标识,因此,为了节省枚举过程所耗费时间,在一种可能的实施方式中,无人载具在连续k(k≥2)次枚举过程中未接收到枚举响应报文时,停止广播枚举报文,本发明实施例并不对此进行限定。
步骤230,主地面站接收无人载具发送的枚举列表。
步骤231,主地面站向无人载具发送注册列表,注册列表中包含枚举列表中通过注册的各个地面站的标识。
在一种可能的实施方式中,主地面站对接收到的枚举列表进行显示,主地面站用户根据需求,确定枚举列表中的部分地面站通过注册(在显示的枚举列表中手动选择),并根据通过注册的地面站生成注册列表,从而将生成的注册列表发送至无人载具。
示意性的,主地面站接收到枚举列表中包括地面站1、2、3、4、5、6,且主地面站用户选中地面站1、2、3、4、5通过注册,主地面站向无人载具发送的注册列表中即包含地面站1、2、3、4、5的标识。
步骤232,无人载具接收主地面站发送的注册列表。
步骤233,无人载具对注册列表进行存储。
无人载具对接收到的注册列表进行存储,以便后续接收到主地面站发送的控制权限转让报文时读取调用。
在实际实施过程中,当地面站位于无线载具广播范围之外时,采用自动枚举的方式将无法完成在无线载具端的枚举及注册。为了确保各个地面站均能够完成枚举,在一种可能的实施方式中,如图3C所示,上述步骤222至步骤233可以被替换为如下步骤。
步骤234,主地面站向无人载具发送注册列表,注册列表中包含的各个地面站已完成注册。
采用手动设置的方式生成注册列表时,主地面站接收操控人员预先配置的注册列表,并将该注册列表发送至无人载具,其中,该注册列表中即已注册的各个地面站的标识。
示意性的,如图3D所示,主地面站接收配置的注册列表(input_sn_list),并向无人载具发送该注册列表(set_sn_list)。
步骤235,无人载具接收主地面站发送的注册列表。
步骤236,无人载具对注册列表进行存储。
可选的,无人载具接收到注册列表后,对该注册列表进行存储,并对该注册列表进行广播,告知主地面站完成接收。
示意性的,如图3D所示,无人载具接收到注册列表后,广播该注册列表(即发送ack_(set_sn_list))。接收到无人载具广播的注册列表后,主地面站与无人载具之间即通过心跳请求报文(get_uav_status(1))和心跳响应报文(uav_status(1))保持心跳连接。
在多控一模式下,多个地面站中的某一地面站需要首先作为主地面站与无人载具建立通信连接,并对无人载具进行控制,在一种可能的实施方式中,如图3E所示,
步骤237,地面站向无人载具发送主地面站申请报文,主地面站申请报文中包含第一密钥。
在一种可能的实施方式中,地面站上电后,即监听无人载具广播的报文,并检测该报文中是否包含心跳响应报文,当检测到包含心跳响应报文时,地面站确定无人载具当前与其他地面站建立有心跳连接;当检测到不含心跳响应报文时,地面站确定无人载具当前处于空闲态,并向无人载具发送包含第一密钥的主地面站申请报文,其中,第一密钥为预先与无人载具约定的密钥。
可选的,地面站检测到包含心跳响应报文时,进一步获取该心跳响应报文中包含的地面站的标识,当该标识指示无人载具当前连接的地面站不支持多控一模式时(即不支持控制权限转让),操控人员需要关闭当前建立连接的地面站;当该标识指示无人载具当前连接的地面站支持多控一模式时(即支持控制权限转让),操控人员可以控制主地面站将控制权限转让至当前地面站。其中,地面站是否支持多控一模式可以通过心跳响应报文中的预设标识位进行标识。
需要说明的是,当检测到无人载具广播的报文中包含心跳响应报文时(即无人载具当前处于受控状态),地面站向无人载具发送主地面站申请报文后,仍旧无法成为主地面站,即无法对无人载具进行控制(需要与当前主地面站申请进行控制权限转让)。
步骤238,无人载具接收地面站发送的主地面站申请报文。
步骤239,无人载具检测第一密钥与存储的第二密钥是否相同。
无人载具接收到主地面站申请报文后,进一步检测该第一密钥与自身存储的第二密钥是否相同,若相同,则执行下述步骤240,若不同,则广播申请失败报文,指示地面站申请失败的原因。
步骤240,若第一密钥与第二密钥相同,无人载具则将发送主地面站申请报文的地面站初始设置为主地面站。
在一种可能的实施方式中,当第一密钥与第二密钥相同时,无人载具为该地面站设置主地面站标识,从而完成主地面站初始设置。申请成为主地面站成功后,无人载具即与主地面站保持心跳连接,并在主地面站的控制下工作。
需要说明的是,本发明各个实施例提供的无人载具控制方法中,以无人载具为执行主体的步骤可单独实现成为无人载具侧的无人载具控制方法,以主地面站为执行主体的步骤可单独实现成为主地面站侧的无人载具控制方法,以地面站/目标从地面站为执行主体的步骤可单独实现成为从地面站侧的无人载具控制方法,本发明实施例在此不再赘述。
请参考图4,其示出了本发明一个实施例提供的无人载具控制装置的结构图。该装置可以通过软件、硬件或者两者的结合实现成为图1中无人载具110的全部或者一部分。该装置可以包括:第一接收单元410,第一发送单元420,第一检测单元430和第一设置单元440。
第一接收单元410,用于接收主地面站发送的控制权限转让报文,所述主地面站用于控制无人载具,所述控制权限转让报文中包含目标从地面站的标识;
第一发送单元420,用于向所述目标从地面站发送第一请求报文,所述第一请求报文用于请求所述目标从地面站接收控制权限;
第一检测单元430,用于检测预定时长内是否接收到所述目标从地面站发送的第一响应报文,所述第一响应报文是所述目标从地面站接收到所述第一请求报文后发送的;
第一设置单元440,用于若在所述预定时长内接收到所述第一响应报文,则将所述目标从地面站设置为新的主地面站。
可选的,所述装置,还包括:
第二发送单元,用于若未在所述预定时长内接收到所述第一响应报文,则向所述主地面站发送第二请求报文,所述第二请求报文用于请求所述主地面站接收退回的控制权限;
第二检测单元,用于检测所述预定时长内是否接收到所述主地面站发送的第二响应报文,所述第二响应报文是所述主地面站接收到所述第二请求报文后发送的;
第二设置单元,用于若在所述预定时长内接收到所述第二响应报文,则重新设置所述主地面站为新的主地面站。
可选的,所述装置,包括:
第三接收单元,用于接收所述主地面站发送的注册列表请求报文,所述注册列表请求报文用于请求获取所述无人载具中存储的注册列表,所述注册列表中包含的各个地面站已完成注册;
第一列表发送单元,用于向所述主地面站发送所述注册列表,所述目标从地面站的标识是从所述注册列表中选择的地面站的标识。
可选的,所述装置,还包括:
第四接收单元,用于接收所述主地面站发送的地面站枚举请求报文,所述地面站枚举请求报文中包含预设枚举次数;
广播单元,用于当当前枚举次数未达到所述预设枚举次数时,广播枚举报文,所述枚举报文中包含枚举列表,所述枚举列表中包括已枚举到的地面站的标识;
第四接收单元,用于接收地面站发送的枚举响应报文,所述枚举响应报文是地面站检测到所述枚举列表中不包含自身标识时发送的;
添加单元,用于将所述枚举响应报文中包含的地面站的标识添加到所述枚举列表;
第二列表发送单元,用于当当前枚举次数达到所述预设枚举次数时,停止广播所述枚举报文,并向所述主地面站发送所述枚举列表;
第五接收单元,用于接收所述主地面站发送的注册列表,所述注册列表中包含所述枚举列表中通过注册的各个地面站的标识。
可选的,所述装置,还包括:
第六接收单元,用于接收所述主地面站发送的注册列表,所述注册列表中包含的各个地面站已完成注册。
可选的,所述装置,还包括:
第七接收单元,用于接收地面站发送的主地面站申请报文,所述主地面站申请报文中包含第一密钥;
第三检测单元,用于检测所述第一密钥与存储的第二密钥是否相同;
第三设置单元,用于若所述第一密钥与所述第二密钥相同,则则将所述地面站初始设置为主地面。
请参考图5,其示出了本发明一个实施例提供的无人载具控制装置的结构图。该装置可以通过软件、硬件或者两者的结合实现成为图1中主地面站121的全部或者一部分。该装置可以包括:第三发送单元510,第八接收单元520和第四发送单元530。
第三发送单元510,用于向无人载具发送状态获取报文,所述状态获取报文用于获取所述无人载具的状态数据;
第八接收单元520,用于接收所述无人载具发送的所述状态数据;
第四发送单元530,用于向所述无人载具发送控制权限转让报文,所述控制权限转让报文中包含目标从地面站的标识,所述无人载具用于根据所述控制权限转让报文向所述目标从地面站发送第一请求报文,并在预定时长内接收到所述目标从地面站发送的第一响应报文时,将所述目标从地面站设置为新的主地面站。
可选的,所述装置,包括:
第九接收单元,用于接收所述无人载具发送的第二请求报文,所述第二请求报文是所述无人载具在所述预定时长内未接收到所述第一响应报文时发送的,用于请求所述主地面站接收退回的控制权限;
第五发送单元,用于向所述无人载具发送第二响应报文,所述第二响应报文用于指示所述无人载具重新设置主地面站。
可选的,第三发送单元,用于:
向所述无人载具发送注册列表请求报文,所述注册列表请求报文用于请求获取所述无人载具中存储的注册列表,所述注册列表中包含的各个地面站已完成注册;
接收所述无人载具发送的所述注册列表;
获取从所述注册列表中选择的所述目标从地面站的标识;
根据所述目标从地面站的标识发送所述控制权限转让报文。
可选的,所述装置,还包括:
第六发送单元,用于向所述无人载具发送地面站枚举请求报文,所述地面站枚举请求报文中包含预设枚举次数;
第十接收单元,用于接收所述无人载具发送的枚举列表,所述枚举列表是所述无人载具在当前枚举次数达到所述预设枚举次数时发送的,所述枚举列表中包括已枚举到的地面站的标识;
第七发送单元,用于向所述无人载具发送注册列表,所述注册列表中包含所述枚举列表中通过注册的各个地面站的标识。
可选的,所述装置,还包括:
第八发送单元,用于向所述无人载具发送注册列表,所述注册列表中包含的各个地面站已完成注册。
可选的,所述装置,还包括:
第九发送单元,用于向所述无人载具发送主地面站申请报文,所述主地面站申请报文中包含第一密钥,所述无人载具用于在所述第一密钥与存储的第二密钥相同时,将发送所述主地面站申请报文的地面站初始设置主地面站。
请参考图6,其示出了本发明一个实施例提供的无人载具控制装置的结构图。该装置可以通过软件、硬件或者两者的结合实现成为图1中从地面站122的全部或者一部分。该装置可以包括:第十一接收单元610和第十发送单元620。
第十一接收单元610,用于接收无人载具发送的第一请求报文,所述第一请求报文用于请求接收控制权限;
第十发送单元620,用于向所述无人载具发送第一响应报文,所述无人载具用于在预定时长内接收到所述第一响应报文时,将发送所述第一响应报文的地面站设置为主地面站。
可选的,所述装置,包括:
第十二接收单元,用于接收所述无人载具广播的枚举报文,所述枚举报文中包含枚举列表,所述枚举列表中包括已枚举到的地面站的标识;
第五检测单元,用于检测所述枚举列表中是否包含自身标识;
第十一发送单元,用于若所述枚举列表中不包含自身标识,则向所述无人载具发送枚举响应报文,所述枚举响应报文中包含自身标识。
需要说明的是,上述实施例提供的装置在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图7示出了本发明一个示例性实施例所涉及的无人载具的结构示意图。该无人载具包括:处理器711、存储器714和总线715。
处理器711包括一个或者一个以上处理核心,存储器714通过总线715与处理器711相连,存储器714用于存储程序指令,处理器711执行存储器714中的程序指令时实现上述各个方法实施例提供的无人载具侧的无人载具控制方法。
可选地,存储器714可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随时存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
可选地,该无人载具还包括驱动组件、显示组件、通信组件等其他必要的部件,本发明实施例并不对无人载具的具体结构进行限定。
图8示出了本发明一个示例性实施例所涉及的地面站的结构示意图。该地面站包括:处理器811、存储器814和总线815。
处理器811包括一个或者一个以上处理核心,存储器814通过总线815与处理器811相连,存储器814用于存储程序指令,处理器811执行存储器814中的程序指令时实现上述各个方法实施例提供的地面站侧的无人载具控制方法。
可选地,存储器814可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随时存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
可选地,该地面站还包括显示组件、通信组件等其他必要的部件,本发明实施例并不对地面站的具体结构进行限定。
请参考图9,其示出了本发明一个实施例提供的无人载具控制系统的系统结构图。该系统中包括:无人载具910、主地面站920和至少一个从地面站930。
无人载具910包括如图4所示的无人载具控制装置;
主地面站920包括如图5所示的无人载具控制装置;
从地面站930包括如图6所示的无人载具控制装置。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。