飞行器数据转发方法、控制系统、设备及存储介质技术方案

技术编号:39246162 阅读:11 留言:0更新日期:2023-10-30 11:58
本申请涉及飞行器技术领域,提供了飞行器数据转发方法、控制系统、设备及存储介质,该方法用于飞行器控制系统,飞行器控制系统设有多个串口,各个串口所连接的通信电台的通信频段互不相同,该方法首先在任一串口接收到飞行器数据且发生串口中断时,将飞行器数据存储至与串口匹配的第一缓存器,并利用与串口匹配的第一处理线程将飞行器数据从第一缓存器中取出并对飞行器数据进行解析,然后在第一处理线程对飞行器数据解析成功后,获取与串口匹配的端口,并确定与端口匹配的第二缓存器,及将飞行器数据存储至第二缓存器,最后基于与端口匹配的第二处理线程将解析后的飞行器数据发送至与端口对应的应用程序。该方法能够提高飞行器数据转发的稳定性。数据转发的稳定性。数据转发的稳定性。

【技术实现步骤摘要】
飞行器数据转发方法、控制系统、设备及存储介质


[0001]本申请涉及飞行器
,尤其涉及一种飞行器数据转发方法、控制系统、设备及存储介质。

技术介绍

[0002]飞行器数据的转发包括数据接收和数据发送两个部分,在现有技术中,飞行器数据的转发通常只能在一种通信频段下实现,在受到信号干扰时,现有的飞行器数据转发方法稳定性差,容易导致飞行器在运行的过程中出现不可预测的安全隐患,因此,亟需一种方法来解决这一问题。

技术实现思路

[0003]本申请提供一种飞行器数据转发方法、控制系统、设备及存储介质,以提高飞行器数据转发的稳定性。
[0004]第一方面,本申请提供一种飞行器数据转发方法,所述方法用于飞行器控制系统,所述飞行器控制系统设有多个串口,各个所述串口所连接的通信电台的通信频段互不相同,所述方法包括:在任一所述串口接收到飞行器数据且发生串口中断时,基于所述串口确定第一缓存器;其中,所述第一缓存器是与所述串口匹配的接收缓存器;将所述飞行器数据存储至所述第一缓存器,并基于所述串口确定第一处理线程,及向所述第一处理线程发送信号,以使所述第一处理线程将所述飞行器数据从所述第一缓存器中取出并对所述飞行器数据进行解析;其中,所述第一处理线程是与所述串口匹配的处理线程;获取所述飞行器数据的解析结果,并基于所述解析结果判断所述第一处理线程对所述飞行器数据是否解析成功;若所述第一处理线程对所述飞行器数据解析成功,获取与所述串口匹配的端口,并基于所述端口确定第二缓存器;其中,所述第二缓存器为与所述端口匹配的发送缓存器;将解析后的所述飞行器数据存储至所述第二缓存器,并基于所述端口确定第二处理线程,及向所述第二处理线程发送信号,以使所述第二处理线程将解析后的所述飞行器数据从所述第二缓存器中取出并将解析后的所述飞行器数据发送至与所述端口对应的应用程序;其中,所述第二处理线程为与所述端口匹配的处理线程。
[0005]在一种实现方式中,在所述将解析后的所述飞行器数据存储至所述第二缓存器之前,所述方法还包括:检测互斥锁是否被释放;若所述互斥锁被释放,将所述互斥锁添加至解析后的所述飞行器数据的存储线程;其中,所述存储线程为将解析后的所述飞行器数据存储至所述第二缓存器的存储线程;在所述将解析后的所述飞行器数据存储至所述第二缓存器之后,所述方法还包括
释放所述互斥锁。
[0006]在一种实现方式中,所述释放所述互斥锁的方法包括:获取所述互斥锁的标识码,并基于所述标识码在预设的互斥锁释放函数数据库中获取与所述互斥锁匹配的互斥锁释放函数;基于所述互斥锁释放函数释放所述互斥锁,并将所述互斥锁标记为未使用状态。
[0007]在一种实现方式中,所述第一处理线程采用mavlink协议对所述飞行器数据进行解析。
[0008]在一种实现方式中,在将所述飞行器数据存储至所述第一缓存器之前,所述方法还包括对所述飞行器数据进行加密处理。
[0009]在一种实现方式中,所述加密处理的方法,包括:获取第一标识码和第二标识码;其中,所述第一标识码为所述第一缓存器的标识码,所述第二标识码为所述第二缓存器的标识码;将预设的标准编码表的字符列中的所有字符进行随机排序后依次填入所述字符列中,得到目标编码表;基于所述目标编码表获取第一数组和第二数组;其中,所述第一数组为所述第一标识码对应的数组,所述第二数组为所述第二标识码对应的数组;在所述第一数组中提取所述第二数组中未出现的数字,并在所述第二数组中提取所述第一数组中未出现的数字;将提取的所有所述数字进行随机排序,得到第一加密数组;利用随机数发生器生成第二加密数组;基于所述第一加密数组和所述第二加密数组对解析后的所述飞行器数据进行加密处理。
[0010]在一种实现方式中,所述基于所述第一加密数组和所述第二加密数组对解析后的所述飞行器数据进行加密处理,包括:获取所述端口的端口号,并判断所述端口号在指定位置的数字的奇偶性;基于所述端口号在指定位置的数字的奇偶性,分别在所述第一加密数组和所述第二加密数组中提取目标数字;将提取到的所有所述目标数字进行随机排序,得到目标加密数组;利用所述目标加密数组对所述飞行器数据进行加密。
[0011]第二方面,本申请提供一种飞行器控制系统,所述飞行器控制系统设有多个串口,各个所述串口所连接的通信电台的通信频段互不相同,所述飞行器控制系统包括:第一确定模块,用于在任一所述串口接收到飞行器数据且发生串口中断时,基于所述串口确定第一缓存器;其中,所述第一缓存器是与所述串口匹配的接收缓存器;第二确定模块,用于将所述飞行器数据存储至所述第一缓存器,并基于所述串口确定第一处理线程,及向所述第一处理线程发送信号,以使所述第一处理线程将所述飞行器数据从所述第一缓存器中取出并对所述飞行器数据进行解析;其中,所述第一处理线程是与所述串口匹配的处理线程;第一获取模块,用于获取所述飞行器数据的解析结果,并基于所述解析结果判断所述第一处理线程对所述飞行器数据是否解析成功;
第二获取模块,用于若所述第一处理线程对所述飞行器数据解析成功,获取与所述串口匹配的端口,并基于所述端口确定第二缓存器;其中,所述第二缓存器为与所述端口匹配的发送缓存器;第三确定模块,将解析后的所述飞行器数据存储至所述第二缓存器,并基于所述端口确定第二处理线程,及向所述第二处理线程发送信号,以使所述第二处理线程将解析后的所述飞行器数据从所述第二缓存器中取出并将解析后的所述飞行器数据发送至与所述端口对应的应用程序;其中,所述第二处理线程为与所述端口匹配的处理线程。
[0012]第三方面,本申请提供一种终端设备,所述终端设备包括处理器、存储器以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中,所述计算机程序被所述处理器执行时,实现如上所述的任一种飞行器数据转发方法。
[0013]第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其中,所述计算机程序被处理器执行时,实现如上所述的任一种飞行器数据转发方法。
[0014]本申请提供一种飞行器数据转发方法、控制系统、设备及存储介质,其中,所述方法用于飞行器控制系统,所述飞行器控制系统设有多个串口,各个所述串口所连接的通信电台的通信频段互不相同,所述方法首先在任一所述串口接收到飞行器数据且发生串口中断时,将所述飞行器数据存储至与所述串口匹配的接收缓存器,并利用与所述串口匹配的第一处理线程将所述飞行器数据从所述第一缓存器中取出并对所述飞行器数据进行解析,然后在所述第一处理线程对所述飞行器数据解析成功后,获取与所述串口匹配的端口,并确定与所述端口匹配的第二缓存器,及将所述飞行器数据存储至所述第二缓存器,最后基于与所述端口匹配的第二处理线程将解析后的所述飞行器数据发送至与所述端口对应的应用程序。该方法能够提高飞行器数据转发的稳定性。
附图说明
[0015]为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种飞行器数据转发方法,其特征在于,所述方法用于飞行器控制系统,所述飞行器控制系统设有多个串口,各个所述串口所连接的通信电台的通信频段互不相同,所述方法包括:在任一所述串口接收到飞行器数据且发生串口中断时,基于所述串口确定第一缓存器;其中,所述第一缓存器是与所述串口匹配的接收缓存器;将所述飞行器数据存储至所述第一缓存器,并基于所述串口确定第一处理线程,及向所述第一处理线程发送信号,以使所述第一处理线程将所述飞行器数据从所述第一缓存器中取出并对所述飞行器数据进行解析;其中,所述第一处理线程是与所述串口匹配的处理线程;获取所述飞行器数据的解析结果,并基于所述解析结果判断所述第一处理线程对所述飞行器数据是否解析成功;若所述第一处理线程对所述飞行器数据解析成功,获取与所述串口匹配的端口,并基于所述端口确定第二缓存器;其中,所述第二缓存器为与所述端口匹配的发送缓存器;将解析后的所述飞行器数据存储至所述第二缓存器,并基于所述端口确定第二处理线程,及向所述第二处理线程发送信号,以使所述第二处理线程将解析后的所述飞行器数据从所述第二缓存器中取出并将解析后的所述飞行器数据发送至与所述端口对应的应用程序;其中,所述第二处理线程为与所述端口匹配的处理线程。2.根据权利要求1所述的飞行器数据转发方法,其特征在于,在所述将解析后的所述飞行器数据存储至所述第二缓存器之前,所述方法还包括:检测互斥锁是否被释放;若所述互斥锁被释放,将所述互斥锁添加至解析后的所述飞行器数据的存储线程;其中,所述存储线程为将解析后的所述飞行器数据存储至所述第二缓存器的存储线程;在所述将解析后的所述飞行器数据存储至所述第二缓存器之后,所述方法还包括释放所述互斥锁。3.根据权利要求2所述的飞行器数据转发方法,其特征在于,所述释放所述互斥锁的方法包括:获取所述互斥锁的标识码,并基于所述标识码在预设的互斥锁释放函数数据库中获取与所述互斥锁匹配的互斥锁释放函数;基于所述互斥锁释放函数释放所述互斥锁,并将所述互斥锁标记为未使用状态。4.根据权利要求1所述的飞行器数据转发方法,其特征在于,所述第一处理线程采用mavlink协议对所述飞行器数据进行解析。5.根据权利要求1所述的飞行器数据转发方法,其特征在于,在将所述飞行器数据存储至所述第一缓存器之前,所述方法还包括对所述飞行器数据进行加密处理。6.根据权利要求5所述的飞行器数据转发方法,其特征在于,所述加密处理的方法,包括:获取第一标识码和第二标识码;其中,所述第一标识码为所述第一缓存器的标识码,所述第二标识码为所述第二缓存器的标识码;将预设的标准编码表的字符列中的所有字符进行随机排序后依次填入所述字符列中,得到目标编码表;
基于所述目标编码表获取...

【专利技术属性】
技术研发人员:邱草谋张浩刘听翁海敏
申请(专利权)人:深圳市边界智控科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1