飞行控制方法及装置、电子设备的制造方法_2

文档序号:9436013阅读:来源:国知局
“标识”等预定义的固定信息,还包含“源地址”、“目的地址”等根据实际情况确定的变量信息。同时,仅IP头部中最短的字段“标志”的长度就达到3个字节,而整个IP头部的体积更大。
[0072]类似地,图1C示出了 TCP头部的结构。如图1C所示,TCP头部同样包含很多诸如“源端口号”、“目的端口号”等根据实际情况确定的变量信息。同时,仅TCP头部中最短的字段“头部长度”的长度就达到4个字节,而整个TCP头部的体积更大。
[0073]因此,当采用TCP/IP协议进行飞行控制操作时,由于报文头部的信息过多、体积巨大,导致整个报文十分笨重,需要占用极多资源,无法满足飞行控制过程中快速、频繁的通讯需求。
[0074]2、通信模式
[0075]http是一个客户端和服务端之间进行请求与应答的协议标准。比如将控制终端和无人机中的一方作为客户端、另一方作为服务端,那么服务端在处理完客户端发起的请求,并接收到客户端的应答后,即断开连接。因此,基于http标准的上述现有协议,每次通讯过程都需要重新建立连接,而基于飞行控制过程中的频繁通讯需求,反复建立连接的过程显然极度消耗资源。
[0076]因此,本公开通过调整飞行控制的报文结构,以解决相关技术中存在的上述技术问题。
[0077]图2是根据一示例性实施例示出的一种飞行控制方法的流程图,如图2所示,该方法用于无人机中,可以包括以下步骤。
[0078]在步骤202中,通过与控制终端建立的通信长连接,检测到所述控制终端发送的报文。
[0079]在本实施例中,仅以“无人机”为例进行说明,实际上类似的“无人车”、“无人船”等设备,均可以应用于本公开的实施例中,本公开并不对此进行限制。
[0080]在本实施例中,无人机与控制终端之间建立的通信长连接,区别于相关技术中基于http协议的短连接,该通信长连接在建立后可以长期维持,从而避免因频繁建立和断开连接而导致资源的大量消耗。
[0081]在步骤204中,读取所述报文的头部字段,当所述头部字段由预设字节数的预定义字符串构成时,判定所述报文为飞行控制报文;其中,所述飞行控制报文中还包括位于所述头部字段之后的报文长度字段。
[0082]在本实施例中,头部字段中仅包含预定义字符串,而没有TCP/IP报文中IP头部、TCP头部等包含的变量信息,因而在本公开的头部字段中,可以在确保该预定义字符串具有可靠的辨别度的基础上,尽可能地压缩头部字段的体积,比如可以压缩至一个字节,从而极大地简化了本公开的报文结构、缩小了报文体积,使得该轻量化的报文能够贴合飞行控制过程中的频繁通信需求。
[0083]在步骤206中,根据所述报文长度字段,接收所述飞行控制报文,以执行相应的飞行控制操作。
[0084]由上述实施例可知,本公开通过重构飞行控制报文的结构,使其头部字段中仅包含预定义字符串,在确保能够对飞行控制报文进行准确识别和判定的同时,实现了对头部字段的轻量化,显著降低了飞行控制报文的资源占用量,从而满足飞控场景下快速、频繁的通?目需求。
[0085]图3是根据一示例性实施例示出的另一种飞行控制方法的流程图,如图3所示,该方法可以包括以下步骤:
[0086]在步骤302中,在无人机与控制终端之间建立通信长连接。
[0087]在本实施例中,通过建立通讯长连接,无人机和控制终端在仅执行一次连接建立操作的情况下,即可完成多次报文传输操作,无需在每次报文传输时都重新建立连接,有助于节省通信资源、提升通信效率,有助于适用于飞行控制操作过程中的频繁通信需求。
[0088]在步骤304中,控制终端根据用户输入的控制需求,通过已建立的通信长连接,向无人机发送对应的飞行控制报文。
[0089]在步骤306中,无人机(该无人机的飞行控制模组,下同)检测到控制终端发送的报文时,读取接收到的报文头部字段。
[0090]在本实施例中,头部字段位于整个报文的最前端,通过读取该头部字段,即可识别出报文类型。比如在本公开的实施例中,头部字段中包含预设字节数的预定义字符串;其中,由于该头部字段中的字符串完全采用预定义形式构成,不包含任何变量信息,因而只要能够区别于其他报文或无关信息即可。
[0091]因此,如图4和图5所示的报文结构可知,该头部字段甚至可以压缩至仅包含一个字节的信息,比如该字节中包含的预定义字符串为“ΟχΑΑ”;那么,当无人机接收到字符串“10101010”时,即可确定该字符串属于控制终端发送的飞行控制报文。
[0092]在步骤308中,在确定读取的头部字段属于控制终端发送的飞行控制报文的情况下,无人机继续读取头部字段后方的其他字段。在一示例性实施例中,假定头部字段后方紧接着目标对象字段,该目标对象字段中包含该飞行控制报文的发送目标对象的标识信息;其中,当标识信息为该无人机的预定义标识信息时,正常处理该飞行控制报文,否则直接丢弃。
[0093]在该实施例中,预先为无人机设定对应的标识信息,相当于该无人机的识别ID ;举例而言,如图4和图5所示的报文结构可知,该标识信息只要能够使该无人机具有唯一性,甚至在一定时间或距离范围内的“临时”唯一性,则该目标对象字段的数据长度可以很短,甚至只需要一个字节即可。
[0094]在该实施例中,通过对目标对象字段的读取和比较,可以识别出该飞行控制报文的实际控制对象是否为当前的无人机,从而在目标对象非当前无人机时,直接丢弃该报文,无需对后续的报文内容进行接收和解析,从而有助于节省资源。
[0095]其中,当目标对象字段紧接于头部字段时,可以最大限度地避免接收和解析该报文的后续的无关信息,从而最大限度地节省资源。当然,该目标对象字段也可以位于飞行控制报文的其他任意位置,本公开并不对此进行限制。
[0096]在步骤310中,无人机读取报文长度字段,并根据读取的报文长度信息,对飞行控制报文进行完整接收。
[0097]在步骤312中,无人机读取命令标识字段,并通过提取该命令标识字段中包含的命令标识信息,确定预定义的与该命令标识信息对应的飞行控制指令,从而通过执行该飞行控制指令,实现相应的飞行控制操作。
[0098]在该实施例中,预先配置命令标识与飞行控制指令之间的对应关系,并将该对应关系以诸如列表的形式存储在无人机中。然后,在控制终端与无人机之间只需要发送数据量较小的命令标识,即可使无人机通过查阅预存储的对应关系,确定数据量较大的飞行控制指令。
[0099]在步骤314中,无人机读取详情数据字段,该详情数据字段中包含与飞行控制指令的执行操作相关的预设数据;然后,根据该预设数据执行对应的飞行控制指令。
[0100]在该实施例中,详情数据字段中包含的预设数据,与命令标识字段中的命令标识信息相匹配。
[0101]在一示例性实施方式中,当飞行控制指令用于使飞行控制报文的接收方维持对应的飞行状态时,该预设数据为该控制终端的预设状态参数。在该实施方式中,举例而言,当飞行控制指令为“返航”时,预设数据可以为控制终端的“地理位置信息”这一预设状态参数,使无人机可以将该地理位置信息作为飞行目的地,完成返航操作;类似地,对于其他的飞行控制指令,预设数据也可能是其他对应的预设状态参数。
[0102]在另一示例性实施方式中,当飞行控制指令用于升级接收方的本地程序时,预设数据为升级包数据。在该实施方式中,飞行控制指令还可以与无人机的飞行状态无关,而用于完成诸如软件升级等操作。由于飞行控制报文中的详情数据字段大小有限,因而当升级包较大时,可以按照该字段大小对该升级包的数据进行切割,然后一一将切割得到的小数据包发送至无人机,实现软件升级。
[0103]需要说明的是:
[0104]对于上述的目标对象字段、报文长度字段、命令标识字段和详情数据字段,相互之间可以采用任意方式进行排列和组合;比如图4所示,采用“目标对象字段一一报文长度字段一一命令标识字段一一详情数据字段”的顺序进行排列,或者如图5所示,采用“目标对象字段--命令标识字段--报文长度字段--详情数据字段”的顺序进行排列。
[0105]在步骤316中,无人机读取校验字段,提取该校验字段中包含的校验信息,并根据该校验信息对飞行控制报文进行前向纠错校验。
[0106]在该实施例中,通过对飞行控制报文的前向纠错校验,既能够发现报文中存在的错误,还能够在一定程度上纠正该错误,确保正确执行相应的飞行控制目的。
[0107]基于上述实施例,如图4-5所示,飞行控制报文中的头部字段、目标对象字段、报文长度字段和命令标识字段可以分别仅包含一个字节,而校验字段(即“校验位”)也可以仅为两个字节,对比图1A-1C所示的TCP/IP报文结构和长度,本公开的飞行控制报文明显具备体积小、轻量化的特点和优势,可以极大地节省占用的通信资源。
[0108]在步骤318中,无人机在接收到飞行控制报文后,可以向控制终端返回相同的该飞行控制报文。
[0109]在步骤320中,控制终端在接收到无人机返回的报文后,可以对该报文进行校验,若通过校验则表明本次报文发送成功
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1