CN113949438A - 一种无人机通讯方法、装置、设备及存储介质 - Google Patents
一种无人机通讯方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113949438A CN113949438A CN202111125242.XA CN202111125242A CN113949438A CN 113949438 A CN113949438 A CN 113949438A CN 202111125242 A CN202111125242 A CN 202111125242A CN 113949438 A CN113949438 A CN 113949438A
- Authority
- CN
- China
- Prior art keywords
- key value
- instruction
- value pair
- unmanned aerial
- aerial vehicle
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/14—Relay systems
- H04B7/15—Active relay systems
- H04B7/185—Space-based or airborne stations; Stations for satellite systems
- H04B7/18502—Airborne stations
- H04B7/18506—Communications with or from aircraft, i.e. aeronautical mobile service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Astronomy & Astrophysics (AREA)
- Aviation & Aerospace Engineering (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Communication Control (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种无人机通讯方法,该方法用于地面监控设备,包括以下步骤:接收用户对目标指令控件的选择操作;基于选择操作,建立操作指令对应的目标指令键值对,操作指令与选择操作对应;根据目标指令键值对,在编码键值对表中查找出目标指令键值对对应的目标编码对象,其中,编码键值对表中包括若干指令键值对以及所述若干指令键值对对应的编码对象;调用编码对象的编码方法,对编码对象进行编码,获得二进制数值;将二进制数值写入数据帧,并将写入二进制数值的数据帧发送。解决了ICD文件的加载效率不高,导致无人机通讯效率低的技术问题,实现了提高ICD文件的加载效率,进一步也提高了无人机通讯效率。
Description
技术领域
本申请涉及通讯技术领域,尤其涉及一种无人机通讯方法、装置、设备及存储介质。
背景技术
无人机地面监控软件部署于地面计算机中,可通过无线或有线对无人机进行监控通讯,包括发送指令对无人机进行控制,实时显示无人机的状态信息。无人机地面监控通讯软件一般包括用于飞行时监控无人机的地面站控制软件和用于维护检测无人机的综合检测软件。ICD是监控通讯软件与被监控设备之间的协议文件,二者通过数据帧进行交互。具体到无人机地面监控软件ICD,规定了监控软件与无人机之间的通讯类型、周期、信号格式、信号数量和信号值等各类信息,是无人机整个生命周期中非常重要的文件。
在与无人机通讯时,ICD文件是监控通讯软件必须使用的文件,目前使用方法可以分为直接使用和间接使用。直接使用为软件运行时将ICD以文件形式动态加载到软件中;间接使用则是在软件设计时人工将ICD文件转换为程序代码编译到软件中。直接使用方法具有更改免编译、管理方便的优势,已经成为主流方法。但就目前技术而言,当与无人机通讯时,ICD文件的加载效率不高,导致无人机通讯效率低。
发明内容
本申请的主要目的在于提供一种无人机通讯方法、装置、设备及存储介质,旨在解决ICD文件的加载效率不高,导致无人机通讯效率低的技术问题。
为实现上述目的,本申请提供一种无人机通讯方法,用于地面监控设备,所述无人机通讯方法包括以下步骤:
接收用户对目标指令控件的选择操作;
基于所述选择操作,建立操作指令对应的目标指令键值对,所述操作指令与所述选择操作对应;
根据所述目标指令键值对,在编码键值对表中查找出所述目标指令键值对对应的目标编码对象,其中,所述编码键值对表中包括若干指令键值对以及所述若干指令键值对对应的编码对象;
调用所述编码对象的编码方法,对所述编码对象进行编码,获得二进制数值;
将所述二进制数值写入数据帧,并将写入所述二进制数值的数据帧发送。
可选地,所述接收用户对目标指令控件的选择操作的步骤之前,所述方法还包括:
初始化ICD文件;
根据元素类型,使用ICD录入工具进行ICD文件录入和编辑,生成元素树状结构;
将所述元素树状结构进行xml格式转化,生成所述元素树状结构对应的树形结构文件;
根据所述树形结构文件生成所述编码键值对表以及树形解码表。
可选地,所述无人机通讯方法还包括:
所述ICD文件中的元素分为根节点、枝节点和叶节点,一份ICD文件可以包含多棵树,树的根节点为数据帧,枝节点为复合型元素,叶节点为基础型元素,枝节点可以包含枝节点或叶节点,叶节点为终端节点,其中所述基础型元素包括固定型、枚举型、缩放型、文本型、单精度浮点型、双精度浮点型和备用型;所述复合型元素包括位域型以及复用型。
可选地,所述接收用户对目标指令控件的选择操作的步骤之前,所述方法还包括:
生成界面控件,其中所述界面控件包括显示控件、指令控件以及与所述指令对应的参数控件,所述指令控件包括目标指令控件。
可选地,基于所述选择操作,建立操作指令对应的目标指令键值对的步骤,包括:
基于所述选择操作,更新所述目标指令控件与所述参数控件绑定的指令键值对,从而建立所述目标指令键值对,其中,指令名称和指令参数名称为键,指令枚举值和指令参数值为值。
可选地,所述无人机通讯方法还包括:
接收状态信息字节流;
根据所述树形解码表对所述状态信息字节流进行解析,取出解码变量;
调用所述解码变量的解码方法,建立与所述状态信息字节流对应解析值键值对;
根据所述解析值键值对,在显示键值对表中查找出所述解析值键值对对应的目标显示控件指针,其中,所述显示键值对表中包括若干解析值键值对以及所述若干解析值键值对对应的显示控件指针;
调用所述目标显示控件指针,所述显示控件显示所述解析键值对的解析值所代表的信息。
可选地,根据所述树形解码表对所述状态信息字节流进行解析,取出解码变量的步骤,包括:
解析所述树形解码表的枝节点变量;
所述枝节点变量为复合型元素变量;
根据复用型元素变量,得到控制字值,其中所述复合型元素变量包括位域型元素变量以及复用型元素变量;
解析所述控制字值,得到枝节点解码变量。
此外,为实现上述目的,本申请还提供一种无人机通讯装置,所述无人机通讯装置包括:
界面控件模块,所述界面控件模块包括若干显示控件模块、指令控件模块以及参数控件模块,所述指令控件模块用于用户对无人机进行通讯;所述参数控件模块用于用户对无人机进行参数设定;所述显示控件模块用于无人机通讯对用户的反馈;
编码模块,用于对用户指令的编码,从而与无人机进行通讯;
发送模块,用于对所述数据帧的收发。
此外,为实现上述目的,本申请还提供一种电子设备,所述电子设备包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序,实现上述的方法。
此外,为实现上述目的,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,处理器执行所述计算机程序,实现上述的方法。
本申请所能实现的有益效果。
本申请实施例提出的一种无人机通讯方法、装置、设备及存储介质,通过接收用户对目标指令控件的选择操作,从而建立目标指令键值对,利用目标指令键值对在编码键值对表中进行查找目标指令键值对对应的编码对象,再调用编码方法对目标编码对象进行编码,将编码后获得的二进制值通过数据帧进行发送,其中,由于提前建立好了编码键值对表,而且编码对象与指令键值对的对应关系,在编码对象的获取过程中只需要查表即可获得编码对象,相对于现有的方法中需要进行实时匹配计算,其消耗的时间显著减少,因此,基于用户的选择操作所建立的指令键值对在编码键值对表中进行查找编码对象的方法,解决了ICD文件的加载效率不高,导致无人机通讯效率低的技术问题,实现了提高ICD文件的加载效率,进一步也提高了无人机通讯效率。
附图说明
图1为本申请实施例涉及的硬件运行环境的电子设备结构示意图;
图2为本申请的实施例提供的一种无人机通讯方法中编码方法的流程示意图;
图3为本申请的实施例提供的一种生成编码键值对表和树形解码表方法的流程示意图;
图4为本申请的实施例提供的一种无人机通讯方法中解码方法流程示意图;
图5为图4中步骤S420的一种具体实施方法的流程示意图;
图6为本申请的实施例提供的一种无人机通讯方法的编码键值对表中的对应关系示意图;
图7为本申请的实施例提供的一种无人机通讯方法的解码树形表中的对应关系示意图;
图8为本申请的实施例提供的一种无人机通讯装置的功能模块示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例的主要解决方案是:接收用户对目标指令控件的选择操作;基于所述选择操作,建立操作指令对应的目标指令键值对,所述操作指令与所述选择操作对应;根据所述目标指令键值对,在编码键值对表中查找出所述目标指令键值对对应的目标编码对象,其中,所述编码键值对表中包括若干指令键值对以及所述若干指令键值对对应的编码对象;调用所述编码对象的编码方法,对所述编码对象进行编码,获得二进制数值;将所述二进制数值写入数据帧,并将写入所述二进制数值的数据帧发送。
无人机地面监控软件部署于地面计算机中,可通过无线或有线对无人机进行监控通讯,包括发送指令对无人机进行控制,实时显示无人机的状态信息。无人机地面监控通讯软件一般包括用于飞行时监控无人机的地面站控制软件和用于维护检测无人机的综合检测软件。ICD是监控通讯软件与被监控设备之间的协议文件,二者通过数据帧进行交互。具体到无人机地面监控软件ICD,规定了监控软件与无人机之间的通讯类型、周期、信号格式、信号数量和信号值等各类信息,是无人机整个生命周期中非常重要的文件。
由于现有技术中,在与无人机通讯时,由于直接使用方法具有更改免编译、管理方便的优势,因此通过直接使用方式已经成为ICD文件对无人机进行监控通讯的主流方法,由于每个人撰写软件代码方式的不同,从而导致以下问题:
1、由于没有针对无人机ICD信息表达的统一格式和规范,包括信号类型分类,结构层次关系、附加信息等,造成ICD文件表达方式不统一,不仅在ICD信息录入时难理解、效率慢,易出错,而且在不同型号软件中也难以通用;
2、其次作为监控软件,监控界面元素和ICD元素的对应关系不直观,需要查表或源代码,使试验现场无法直观的确定元素和控件的对应关系,不利于排故;
3、最后数据进行编码解码时,未考虑无人机监控软件ICD的特点,造成分支语句和冗余判断过多,导致效率不高。
为此,本申请提供一种解决方案,如图1所示,通过接收用户对目标指令控件的选择操作;基于所述选择操作,建立操作指令对应的目标指令键值对,所述操作指令与所述选择操作对应;根据所述目标指令键值对,在编码键值对表中查找出所述目标指令键值对对应的目标编码对象,其中,所述编码键值对表中包括若干指令键值对以及所述若干指令键值对对应的编码对象;调用所述编码对象的编码方法,对所述编码对象进行编码,获得二进制数值;将所述二进制数值写入数据帧,并将写入所述二进制数值的数据帧发送,解决了ICD文件表达方式不统一,而且通讯界面元素和ICD元素的对应关系不直观,使试验现场无法直观的确定元素和控件的对应关系,导致效率不高的问题,实现了ICD文件表达方式的统一,也实现了通讯界面元素和ICD元素的直观对应,从而使得元素和控件的对应关系能直观的表现,提高了工作效率。
参照图1,图1为本申请实施例方案涉及的硬件运行环境的电子设备结构示意图。
如图1所示,该电子设备可以包括:处理器1001,例如中央处理器(CentralProcessing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless-FIdelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM)存储器,也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、数据存储模块、网络通信模块、用户接口模块以及电子程序。
在图1所示的电子设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明电子设备中的处理器1001、存储器1005可以设置在电子设备中,所述电子设备通过处理器1001调用存储器1005中存储的无人机通讯装置,并执行本申请实施例提供的无人机通讯方法。
参照图2,基于前述实施例的电子设备(在本实施例中一般为无人机的地面站或者是地面控制设备),本申请的实施例提供一种无人机通讯方法。在无人机通讯过程中,会涉及到通信协议编码和解码的过程,本实施例中主要介绍通讯过程中编码过程;
本实施例的方法包括:
S210、接收用户对目标指令控件的选择操作;
在具体实施过程中,目标指令控件是指客户端控件中能完成所需功能的指令控件,客户端控件包括web控件以及html控件,通常来说,指令控件与数据库连接,通过对控件的操作从而实现系统和用户之间进行交互和信息交换。选择操作是用户对于页面(浏览器)上的控件进行人为点击或语音选定等操作。用户对能实现其所需功能的指令控件进行点击或语音选定等操作通过计算机进行接收。
在一个实施例中,所述接收用户对目标指令控件的选择操作的步骤之前,所述方法还包括:
生成界面控件,其中所述界面控件包括显示控件、指令控件以及与所述指令对应的参数控件,所述指令控件包括目标指令控件,ICD编码的指令和参数来源于界面控件,ICD解码后的显示终端也是界面控件,方便用户与无人机之间的交互通讯。
S220、基于所述选择操作,建立操作指令对应的目标指令键值对,所述操作指令与所述选择操作对应;
在具体实施过程中,由于指令控件是与数据库连接,因此,每个指令控件对应一个或多个信息值,以操作指令为键,以参数为值,从而建立起目标指令键值对,当计算机接收到用户对能实现其所需功能的指令控件进行点击或语音选定等操作时,根据其操作指令就能显示对应的参数。
在一个实施例中,基于所述选择操作,建立操作指令对应的目标指令键值对的步骤,包括:
基于所述选择操作,更新所述目标指令控件与所述参数控件绑定的指令键值对,从而建立所述目标指令键值对,其中,指令名称和指令参数名称为键,指令枚举值和指令参数值为值,对指令键值对进行更新,保证目标指令键值对根据用户的选择操作同步,保证实时性。
S230、根据所述目标指令键值对,在编码键值对表中查找出所述目标指令键值对对应的目标编码对象,其中,所述编码键值对表中包括若干指令键值对以及所述若干指令键值对对应的编码对象;
在具体实施过程中,根据目标指令键值对在由若干个指令键值对以及与若干个指令键值对对应的编码对象所组成的编码键值对表中查找的目标编码对象,由于每个指令键值对单独对应一个编码对象,因此可以提高查找编码对象的效率,准确性也有一定的提高,也便于后期排故。
S240、调用所述编码对象的编码方法,对所述编码对象进行编码,获得二进制数值;
在具体实施过程中,编码方法是已经抽象好的基本变量基类,基类是指在面向对象设计中,被定义为包含所有实体共性的class类型,基本变量基类则是包含了所有基本变量的class类型。继承性是面向对象程序设计的一个最重要的概念。继承性允许在构成软件系统的层次结构中利用已经存在的类并扩充它们,以支持新的功能。这使得编程者只需要在新类中定义已经存在的类中所没有的成分来建立新类,从而大大提高了软件的可重用性和可维护性。
对于客观世界中既有共性又有差别的两个类别以上的实体是不可能被抽象成一个class类型来描述的,编程者往往采用继承的方法。首先定义一个包含所有实体共性的class类型作为“基类”,然后,从该基类中继承所有信息,再添加新的信息,来构成新的类。
在构建新类的过程中,新建立的类被称为“子类”或者“派生类”;而被继承的包含相同特征的类称为“父类”或者“基类”。派生类继承了基类的全部成员,并且可以增加基类所没有的数据成员和成员函数,以满足描述新对象的需求。
二进制(binary)是在数学和数字电路中指以2为基数的记数系统,是以2为基数代表系统的二进位制。这一系统中,通常用两个不同的符号0(代表零)和1(代表一)来表示。数字电子电路中,逻辑门的实现直接应用了二进制,因此现代的计算机和依赖计算机的设备里都用到二进制。每个数字称为一个比特(byte)。计算机使用二进制主要原因:1、二进位计数制仅用两个数码,0和1,所以,任何具有二个不同稳定状态的元件都可用来表示数的某一位。这样就能大大提高机器的抗干扰能力,提高可靠性。2、二进位计数制的四则运算规则十分简单。3、在电子计算机中采用二进制表示数可以节省设备。4、二进制的符号“1”和“0”恰好与逻辑运算中的“对”(true)与“错”(false)对应,便于计算机进行逻辑运算。
编码方法将目标编码对象转换为二进制,便于计算机识别与工作。
S250、将所述二进制数值写入数据帧,并将写入所述二进制数值的数据帧发送,
在具体实施过程中,所谓数据帧(Data frame),就是数据链路层的协议数据单元,它包括三部分:帧头,数据部分,帧尾。其中,帧头和帧尾包含一些必要的控制信息,比如同步信息、地址信息、差错控制信息等;数据部分则包含网络层传下来的数据,比如IP数据包,等等。数据链路层把网络层传下来得数据封装成帧,然后发送到链路上去;在接收端,数据链路层把收到的帧中的数据取出并交给网络层。不同的数据链路层协议对应着不同的帧。将已经转化好的二进制封装进数据帧内,通过数据帧将二进制数据传入网络层,从而实现计算机与无人机之间的通讯。
由此可见,本实施例的无人机通讯方法,通过接收用户对目标指令控件的选择操作,从而建立目标指令键值对,利用目标指令键值对在编码键值对表中进行查找目标指令键值对对应的编码对象,再调用编码方法对目标编码对象进行编码,将编码后获得的二进制值通过数据帧进行发送,其中,由于提前建立好了编码键值对表,而且编码对象与指令键值对的对应关系,在编码对象的获取过程中只需要查表即可获得编码对象,相对于现有的方法中需要进行实时匹配计算,其消耗的时间显著减少,因此,基于用户的选择操作所建立的指令键值对在编码键值对表中进行查找编码对象的方法,解决了ICD文件的加载效率不高,导致无人机通讯效率低的技术问题,实现了提高ICD文件的加载效率,进一步也提高了无人机通讯效率。
参照图3,基于前述实施例的方法步骤,本申请还提供一种可选的实施例,在该实施例中,所述接收用户对目标指令控件的选择操作的步骤(即步骤S210)之前,还包括:
S102、初始化ICD文件;
在具体实施过程中,所述ICD文件中的元素分为根节点、枝节点和叶节点,一份ICD文件可以包含多棵树,树的根节点为数据帧,枝节点为复合型元素,叶节点为基础型元素,枝节点可以包含枝节点或叶节点,叶节点为终端节点,其中所述基础型元素包括固定型、枚举型、缩放型、文本型、单精度浮点型、双精度浮点型和备用型;所述复合型元素包括位域型以及复用型,其中,元素类型判断方法如下,元素值为固定数值的为固定型;元素值为离散取值的为枚举型;元素值为连续取值且需要进行比例尺转换的为缩放型;元素值为一串文本字符的为文本型;元素值类型为单精度浮点型的为单精度浮点型;元素值类型为双精度浮点型的为双精度浮点型;元素名称和值暂不确定的为备用型;元素值占固定比特位大小,由多个基础型元素组成的为位域型;元素值所占空间大小被多组元素集合共享的为复用型。
具体的,初始化意思是把变量赋为默认值,把控件设为默认状态,把没准备的准备好。但是如果是整个系统初始化那就不一样了。在汇编语言中,为变量分配空间时,初始化过的变量的初值位于可执行文件代码段数据后,会占用一定空间,不必要的初始化会造成磁盘空间的浪费。在C语言等高级语言中,为每一个变量赋初值被视为良好的编程习惯,有助于减少出现Bug的可能性。因此,是否对不必要的变量初始化依情况而定。初始化ICD文件可以提前为ICD文件开辟存储空间,从而便于计算且节约磁盘空间。
S104、根据元素类型,使用ICD录入工具进行ICD文件录入和编辑,生成元素树状结构;
在具体实施过程中,元素类型分为复合型元素以及基础型元素,复合型元素包括位域型以及复用型;基础型元素包括固定型、枚举型、缩放型、文本型、单精度浮点型、双精度浮点型和备用型;其中,元素类型判断方法如下,元素值为固定数值的为固定型;元素值为离散取值的为枚举型;元素值为连续取值且需要进行比例尺转换的为缩放型;元素值为一串文本字符的为文本型;元素值类型为单精度浮点型的为单精度浮点型;元素值类型为双精度浮点型的为双精度浮点型;元素名称和值暂不确定的为备用型;元素值占固定比特位大小,由多个基础型元素组成的为位域型;元素值所占空间大小被多组元素集合共享的为复用型。
ICD录入工具是为方便ICD文件的录入和编辑而撰写的软件工具。
如图5所示,元素树状图是以ICD文件为可以分为多棵树,其中,数据帧数据为根节点,复合型元素为枝节点,基础元素为叶节点。
S106、将所述元素树状结构进行xml格式转化,生成所述元素树状结构对应的树形结构文件。其中树形结构中的节点对应xml文件中的标签,节点的信息对应xml文件的标签属性;
在具体实施过程中,xml文件为可扩展标记语言,标准通用标记语言的子集。是一种用于标记电子文件使其具有结构性的标记语言,xml文件中的标签指计算机所能理解的信息符号,通过此种标签,计算机之间可以处理包含各种的信息比如文章等,其中,标签是成对出现的。标签属性提供有关标签的额外信息,且属性值必须被引号包围,单引号和双引号均可使用。按照树形结构图进行xml格式转化,能更好的方便计算机对树状结构图这种处理分布式结构信息进行处理,提高计算机的工作效率。
S108、根据所述树形结构文件生成所述编码键值对表以及树形解码表。
在具体实施过程中,编码键值对表,是将ICD文件生成的树形结构文件中的基础元素与指令键值对对应,其中,基础元素为上述实施例中的编码对象。如图6所示,当解析对象为基础元素1时,则直接对应指令键值对1,当解析对象为复合元素1时,则需要对复合元素进行再次解析,得到基础元素1-1以及基础元素1-2,此时才能在编码键值对表中查找与之对应的指令键值对1-1以及指令键值对1-2,当解析复合元素后还具有复合元素时,则对其解析出的复合元素还需要再次解析,直至得到的全为基础元素,如图6中复合元素2所示,最终,复合元素2对应的指令键值对分别为指令键值对2-1,指令键值对2-2-1以及指令键值对2-2-2。树形解码表中解码对象与显示控件指针一一对应,解码对象均为基础元素。如图7所示,同编码键值对表相同的是当解析值为基础元素时,直接对应一个显示控件指针,例如基础元素1直接对应显示控件指针1,当解析的元素为复合元素是,复合元素包括复用元素以及位域元素,位域元素与复用元素解析方式不同,当位域元素时,由于位域元素是有一个或多个基础元素组成,则直接将位域元素解析成单个的基础元素,便能找到对应的显示控件指针,如图中位域元素3所示,解析出对应的基础元素3-1,从而得到显示控件指针3-1,而解析复用元素时,是通过控制字来进行解析,因为复用元素是为了节约存储空间而建立的共享空间,因此,在ICD文件录入时为复用元素设定好一个控制字值,当需要解析复用元素时则直接解析该复用元素对应的控制字值,其中,控制字值通常由一个或多个基础元素组成。因此,当解析复用元素2和复用元素4时,直接解析该复用元素对应的控制字2-1以及控制字4-1,从而得到基础元素2-1-1、基础元素4-1-1、基础元素4-1-2以及基础元素4-1-3,查询树形解码表,得到显示控件指针2-1-1、显示控件指针4-1-1、显示控件指针4-1-2以及显示控件指针4-1-3,通过建立编码键值对表以及树形解码表让编解码变量在表中进行一一对应查找,可以提高ICD的编解码效率,而且在一定程度上能提高编解码的准确率。
参照图4,基于前述实施例的方法步骤,本申请的实施例还提供一种无人机通讯方法,本实施例中主要介绍通讯过程中解码过程;
本实施例的方法包括:
S410、接收状态信息字节流;
在具体实施过程中,编码是工作人员对无人机单方面的进行交流,若要想无人机对工作人员进行状态的反馈,则需要对无人机的状态进行接收,将无人机需要反馈的状态转化为字节流,字节流,顾名思义是由字节组成的流,流是指程序输入或输出的一个连续的字节序列,由于计算机的传输本质都是字节,将无人机状态转化为字节流,方便计算机对其进行状态处理。
S420、根据所述树形解码表对所述状态信息字节流进行解析,取出解码变量;
在具体实施过程中,根据状态信息字节流进行树状解析,从而从树形解码表中查找解码变量,解码变量能方便计算机对其进一步解析。
S430、调用所述解码变量的解码方法,建立与所述状态信息字节流对应解析值键值对;
在具体实施过程中,解码方法同编码方法一样,是定义好的一个基本变量基类,定义好的基本变量基类方便软件随取随用,提高计算机的工作效率,解析值键值对是指,通过解码方法建立的状态字节流与解码变量之间的对应键值对,其中,键为解码变量名,值为解析得到的变量值和所需形式。以解析值键值对形式能方便的查找解码变量以及与之对应的变量值和所需形式。
S440、根据所述解析值键值对,在显示键值对表中查找出所述解析值键值对对应的目标显示控件指针,其中,所述显示键值对表中包括若干解析值键值对以及所述若干解析值键值对对应的显示控件指针;
在具体实施过程中,以解析值键值对为键,显示控件指针为值建立显示键值对表,从而利用显示控件显示所述解析键值对的解析值所代表无人机状态信息。以表格的形式进行匹配查找,可以提高查找编码对象的效率,准确性也有一定的提高,也便于后期排故。
S450、调用所述目标显示控件指针,所述显示控件显示所述解析键值对的解析值所代表的信息。
在具体实施过程中,通过查表匹配后的目标显示控件指针,计算机进行调用,便就能向操作人员显示解析键值对所代表的信息,即无人机的状态信息,通过查表提高人机之间的信息交流速率,方便操作人员对无人机状态的实时把控。
参照图5,基于前述实施例的方法步骤,在一种可选的实施例中,根据所述树形解码表对所述状态信息字节流进行解析,取出解码变量的步骤(即步骤S420、),包括:
S510、解析所述树形解码表的枝节点变量;
在具体实施过程中,树形解码表中包括根节点变量,枝节点变量以及叶节点变量,叶节点变量可通过解码方法直接进行解码,而枝节点变量以及根节点变量则需要进一步的进行解析从而进行解码。
S520、所述枝节点变量为复合型元素变量;
在具体实施过程中,复合型元素变量包括位域型元素变量以及复合型元素变量,若枝节点变量为位域型元素变量,由于位域型元素变量是由固定型、枚举型、缩放型和备用型混合组成,位域型元素变量其根本为基础元素变量,可层层解析得到一个或多个基础元素变量,可直接进行解码。
S530、根据复用型元素变量,得到控制字值,其中所述复合型元素变量包括位域型元素变量以及复用型元素变量;
在具体实施过程中,由于复用型表示所占空间为共享空间,大小为任意比特位。共享此空间的元素为基础类型或复合类型中的一个或多个,共享此空间的元素含义由此空间外的元素取值确定,因此,在ICD文件录入时,为复合型元素规定了一个控制字,利用控制字值来确定复用型元素变量的元素含义,这样大大减小的查找的时间,同一个时间段内,控制字取值有且仅有一个,这样的操作能更大限度的提高准确率。
S540、解析所述控制字值,得到枝节点解码变量。
在具体实施过程中,控制字值一般为一个基础型元素变量,通过解析枝节点的复用型元素变量,得到的唯一的控制字值,再解析控制字值,得到一个基础型元素变量,便于解码的进行,而且提高的计算机的工作效率。
具体的,ICD文件录入时,每个复用型元素变量都分配好一个控制字,当解码表的枝节点为复用型元素变量时,枝节点上的元素是该复用型元素变量所关联的控制字。待接收到二进制状态信息字节流需要解码时,从树形解码表连接根部的枝节点和叶节点开始层层遍历解析,叶节点解析直接调用变量指针的解码接口传入字节流结合存储的元素信息进行解析,枝节点解析则先解析枝节点变量,得到控制字取值,控制字值为一个基本元素,再根据控制字值决定解析哪一组变量组合,从而得到解码变量进行解码。复用型元素变量表示所占空间为共享空间,大小为任意比特位。共享此空间的元素为基础类型或复合类型中的一个或多个,共享此空间的元素含义由此空间外的元素取值确定,采用共享空间的方式可以更好的为数据节省空间。
此外,在一个实施例中,还提供一种电子设备,所述设备包括处理器,存储器以及存储在所述存储器中的计算机程序,所述计算机程序被处理器运行时实现前述实施例中方法的步骤。
此外,在一个实施例中,本申请还提供一种计算机存储介质,所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器运行时实现前述实施例中方法的步骤。
在一个实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。计算机可以是包括智能终端和服务器在内的各种计算设备。
在一个实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器/随机存取存储器、磁碟、光盘)中,包括若干指令用以使得一台多媒体终端设备(可以是手机,计算机,电视接收机,或者网络设备等)执行本申请各个实施例所述的方法
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种无人机通讯方法,其特征在于,所述无人机通讯方法用于地面监控设备,所述方法包括以下步骤:
接收用户对目标指令控件的选择操作;
基于所述选择操作,建立操作指令对应的目标指令键值对,所述操作指令与所述选择操作对应;
根据所述目标指令键值对,在编码键值对表中查找出所述目标指令键值对对应的目标编码对象,其中,所述编码键值对表中包括若干指令键值对以及所述若干指令键值对对应的编码对象;
调用所述编码对象的编码方法,对所述编码对象进行编码,获得二进制数值;
将所述二进制数值写入数据帧,并将写入所述二进制数值的数据帧发送。
2.如权利要求1所述的无人机通讯方法,其特征在于,所述接收用户对目标指令控件的选择操作的步骤之前,所述方法还包括:
初始化ICD文件;
根据元素类型,使用ICD录入工具进行ICD文件录入和编辑,生成元素树状结构;
将所述元素树状结构进行xml格式转化,生成所述元素树状结构对应的树形结构文件;
根据所述树形结构文件生成所述编码键值对表以及树形解码表。
3.如权利要求2所述的无人机通讯方法,其特征在于,所述无人机通讯方法还包括:
所述ICD文件中的元素分为根节点、枝节点和叶节点,一份ICD文件可以包含多棵树,树的根节点为数据帧,枝节点为复合型元素变量,叶节点为基础型元素变量,枝节点可以包含枝节点或叶节点,叶节点为终端节点,其中所述基础型元素变量包括固定型、枚举型、缩放型、文本型、单精度浮点型、双精度浮点型和备用型;所述复合型元素变量包括位域型以及复用型。
4.如权利要求2所述的无人机通讯方法,其特征在于,所述接收用户对目标指令控件的选择操作的步骤之前,所述方法还包括:
生成界面控件,其中所述界面控件包括显示控件、指令控件以及与所述指令对应的参数控件,所述指令控件包括目标指令控件。
5.如权利要求4所述的无人机通讯方法,其特征在于,所述基于所述选择操作,建立操作指令对应的目标指令键值对的步骤,包括:
基于所述选择操作,更新所述目标指令控件与所述参数控件绑定的指令键值对,从而建立所述目标指令键值对,其中,指令名称和指令参数名称为键,指令枚举值和指令参数值为值。
6.如权利要求2-5所述的无人机通讯方法,其特征在于,所述无人机通讯方法还包括:
接收状态信息字节流;
根据所述树形解码表对所述状态信息字节流进行解析,取出解码变量;
调用所述解码变量的解码方法,建立与所述状态信息字节流对应解析值键值对;
根据所述解析值键值对,在显示键值对表中查找出所述解析值键值对对应的目标显示控件指针,其中,所述显示键值对表中包括若干解析值键值对以及所述若干解析值键值对对应的显示控件指针;
调用所述目标显示控件指针,所述显示控件显示所述解析键值对的解析值所代表的信息。
7.如权利要求6所述的无人机通讯方法,其特征在于,根据所述树形解码表对所述状态信息字节流进行解析,取出解码变量的步骤,包括:
解析所述树形解码表的枝节点变量;
所述枝节点变量为复合型元素变量;
根据复用型元素变量,得到控制字值,其中,复合型元素变量包括位域型元素变量以及复用型元素变量;
解析所述控制字值,得到枝节点解码变量。
8.一种无人机通讯装置,其特征在于,包括:
界面控件模块,所述界面控件模块包括若干显示控件模块、指令控件模块以及参数控件模块,所述指令控件模块用于用户对无人机进行通讯;所述参数控件模块用于用户对无人机进行参数设定;所述显示控件模块用于无人机通讯对用户的反馈;
编码模块,用于对用户指令的编码,从而与无人机进行通讯;
发送模块,用于对所述数据帧的收发。
9.一种电子设备,其特征在于,该电子设备包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序,实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,处理器执行所述计算机程序,实现如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111125242.XA CN113949438B (zh) | 2021-09-24 | 2021-09-24 | 一种无人机通讯方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111125242.XA CN113949438B (zh) | 2021-09-24 | 2021-09-24 | 一种无人机通讯方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113949438A true CN113949438A (zh) | 2022-01-18 |
CN113949438B CN113949438B (zh) | 2022-11-18 |
Family
ID=79328791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111125242.XA Active CN113949438B (zh) | 2021-09-24 | 2021-09-24 | 一种无人机通讯方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113949438B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117395326A (zh) * | 2023-10-11 | 2024-01-12 | 广东保伦电子股份有限公司 | 一种指令生成方法、指令解析方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005111824A2 (en) * | 2004-05-19 | 2005-11-24 | Silverkite Inc. | Method and system for processing of text content |
CN103902056A (zh) * | 2012-12-28 | 2014-07-02 | 华为技术有限公司 | 虚拟键盘输入方法、设备及系统 |
CN109104405A (zh) * | 2018-06-28 | 2018-12-28 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 二进制协议编码、解码方法和装置 |
CN111190928A (zh) * | 2019-12-24 | 2020-05-22 | 平安普惠企业管理有限公司 | 缓存处理方法、装置、计算机设备以及存储介质 |
CN111930532A (zh) * | 2020-07-09 | 2020-11-13 | 西北工业大学 | 航电数据集成方法及装置 |
CN112035706A (zh) * | 2019-06-04 | 2020-12-04 | 上海哔哩哔哩科技有限公司 | 编码、解码方法、计算机设备及可读存储介质 |
CN112286512A (zh) * | 2020-10-30 | 2021-01-29 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 航空电子仿真测试平台ui管理子系统 |
-
2021
- 2021-09-24 CN CN202111125242.XA patent/CN113949438B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005111824A2 (en) * | 2004-05-19 | 2005-11-24 | Silverkite Inc. | Method and system for processing of text content |
CN103902056A (zh) * | 2012-12-28 | 2014-07-02 | 华为技术有限公司 | 虚拟键盘输入方法、设备及系统 |
CN109104405A (zh) * | 2018-06-28 | 2018-12-28 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 二进制协议编码、解码方法和装置 |
CN112035706A (zh) * | 2019-06-04 | 2020-12-04 | 上海哔哩哔哩科技有限公司 | 编码、解码方法、计算机设备及可读存储介质 |
CN111190928A (zh) * | 2019-12-24 | 2020-05-22 | 平安普惠企业管理有限公司 | 缓存处理方法、装置、计算机设备以及存储介质 |
CN111930532A (zh) * | 2020-07-09 | 2020-11-13 | 西北工业大学 | 航电数据集成方法及装置 |
CN112286512A (zh) * | 2020-10-30 | 2021-01-29 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 航空电子仿真测试平台ui管理子系统 |
Non-Patent Citations (1)
Title |
---|
丁健: "多目标监控的大型无人机综合测控站系统设计", 《中国优秀博硕士学位论文全文数据库(硕士) 工程科技Ⅱ辑》, 15 September 2018 (2018-09-15), pages 1 - 76 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117395326A (zh) * | 2023-10-11 | 2024-01-12 | 广东保伦电子股份有限公司 | 一种指令生成方法、指令解析方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113949438B (zh) | 2022-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109522018B (zh) | 页面处理方法、装置及存储介质 | |
CN106598574B (zh) | 页面渲染的方法和装置 | |
CN100389572C (zh) | 一种远程调用通信组件的系统及方法 | |
US20020073091A1 (en) | XML to object translation | |
CN109460220A (zh) | 报文预定义代码生成方法、装置、电子设备和存储介质 | |
CN113434175B (zh) | 数据处理方法、装置、存储介质及设备 | |
CN114331416A (zh) | 数据处理的方法、装置、电子设备及存储介质 | |
CN113949438B (zh) | 一种无人机通讯方法、装置、设备及存储介质 | |
CN108664546B (zh) | Xml数据结构转换方法和装置 | |
CN110825412A (zh) | 基于LabVIEW的控制器程序的刷写系统及方法 | |
CN110704394B (zh) | 报表配置修改方法及装置 | |
CN114594927A (zh) | 低代码开发方法、装置、系统、服务器及存储介质 | |
CN113157523B (zh) | 服务监控方法、装置、计算机设备及存储介质 | |
JP2005301985A (ja) | 情報処理装置、オブジェクト生成方法、オブジェクト変換方法、オブジェクト生成プログラム、オブジェクト変換プログラム及び記録媒体 | |
CN112947900A (zh) | web应用开发方法、装置、服务器及开发终端 | |
CN111049813B (zh) | 报文组装方法、解析方法、装置及存储介质 | |
CN113360139A (zh) | 前端框架的集成方法、装置、电子设备及存储介质 | |
CN115509668A (zh) | 前端页面解析型框架的构建方法、装置、设备及存储介质 | |
CN114757159A (zh) | 一种多功能数据表格组件的封装开发方法及系统 | |
CN102486731A (zh) | 增强软件的软件调用栈的可视化的方法、设备和系统 | |
CN114371886A (zh) | 前端框架组件转换方法、装置、计算机设备及存储介质 | |
CN102541564A (zh) | 一种ui复用方法及装置 | |
CN114721929A (zh) | 测试方法、装置、存储介质及设备 | |
US20160231936A1 (en) | In-memory variable meta data system and method | |
CN117234576A (zh) | 无编码软件开发方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |