一种基于伴随飞行器控制系统及方法技术方案

技术编号:37604867 阅读:23 留言:0更新日期:2023-05-18 11:56
一种基于伴随飞行器控制系统及方法,属于飞行器控制技术领域。本发明专利技术包括:数据获取模块通过接口将各类传感器及作动装置以中断方式获取数据,并对获取的数据进行帧格式校验,再通过消息API将数据传输至数据交互模块的消息队列;所述数据交互模块用于对数据获取模块发送来的数据进行消息分类,根据通讯协议进行数据解包操作,为每一数据定义对应的队列数据结构;以及为数据获取模块与数据应用模块提供数据输入与输出操作的API;所述数据应用模块用于通过数据交互模块消息队列获取消息数据,并实现飞控软件的算法;以及实时接收数据获取模块数据更新,按照相应的数据流规则进行对应算法计算,并将计算的结果发送至数据交互模块消息队列。消息队列。消息队列。

【技术实现步骤摘要】
一种基于伴随飞行器控制系统及方法


[0001]本专利技术涉及一种基于伴随飞行器控制系统及方法,属于飞行器控制


技术介绍

[0002]目前,飞行器组网发展趋势越来越烈,如何测量多个飞行器同时飞行达到设计效果变得越来越重要。以往的测量方式为,通常以遥测与存储方式记录空间飞行器姿态、位置、速度等变化数据,然后在地面进行分析数据。这些数据时常无法实时且直观表现出多个飞行器之间关系,需要多方人员共同协作分析,才能展现出真实结果。伴随飞行测量装置可以实现空间多个飞行器伴随跟踪飞行观察,实时记录多个飞行器空间状态,实现直观空间测量,具有较高的测量与分析数据效率。
[0003]目前方法存在的问题包括:一是无法伴随飞行、动态调整姿态、多目标跟踪的测量装置飞行器控制软件架构设计,二是面对伴随飞行器的射前检查繁杂,控制导航算法复杂、时序交错等,设计实现比较困难。

技术实现思路

[0004]本专利技术解决的技术问题是:克服现有技术的不足,提供了一种基于伴随飞行器控制系统及方法,用于对飞行器动态观察与测量,获取飞行器在飞行时空间状态数据。
[0005]本专利技术的技术解决方案是:一种基于伴随飞行器控制系统,包括数据获取模块、数据交互模块和数据应用模块,以及为各模块提供运行环境的操作系统;
[0006]所述数据获取模块通过接口将各类传感器及作动装置以中断方式获取数据,并对获取的数据进行帧格式校验,再通过消息API将数据传输至数据交互模块的消息队列;通过操作系统的API以及根据伴随飞行器控制系统需要编写的API与数据交互模块进行数据交互;
[0007]所述数据交互模块用于对数据获取模块发送来的数据进行消息分类,根据通讯协议进行数据解包操作,为每一数据定义对应的队列数据结构;以及为数据获取模块与数据应用模块提供数据输入与输出操作的API;
[0008]所述数据应用模块用于通过数据交互模块消息队列获取消息数据,并实现飞控软件的算法;以及实时接收数据获取模块数据更新,按照相应的数据流规则进行对应算法计算,并将计算的结果发送至数据交互模块消息队列。
[0009]进一步地,所述操作系统为μC/OS

III操作系统。
[0010]进一步地,所述μC/OS

III操作系统根据实际的需求及板级存储资源大小,在os_cfg.h文件中对不使用的预编译进行修改实现μC/OS

III操作系统的裁剪。
[0011]进一步地,所述飞控软件的源代码存储在μC/OS

III操作系统的FKsource文件中。
[0012]进一步地,所述操作系统为进行移植工作后的操作系统;所述移植工作包括:μC/OS

III移植、μC/CPU移植、板级支持包;其中,μC/OS

III移植包括关于CPU相关代码文件OS_CPU.H、0S_CPU_C.C和0S_CPU_A.ASM;μC/CPU移植包括CPU.h,CPU_c.h,CPU_a.asm;板级支持
包移植包括bsp.h,bsp.c,bsp_int.c,bsp_int.h;在OS_CPU.H文件中修改中数据类型8位、32位、64位,堆栈增长方向下,开关中断宏为3;在0S_CPU_C.C文件中使用OSTTaskStkInit()、OSTTaskSwHook()、OSTTaskIdleHook()、OSTInitHookBegin()函数进行初始化任务堆栈结构、基层任务切换、功耗模式配置、OS系统初始化;在0S_CPU_A.ASM文件中使用OSStart()、OSCtxSw()、OSIntCtxSw()函数进行多任务管理、任务级任务切换、中断级任务切换。
[0013]进一步地,所述数据获取模块使用的接口包括UART接口和1553B接口;其中,
[0014]IMU模块、GNSS模块、数据链模块、舵机模块、数据延时模块采用通讯方式为UART,对接收的到数据进行帧结构进行校验,包括帧头、帧尾、帧类别、帧长度、校验和,对应的操作系统中的中断序号分别为422_In1、422_In2、422_In3、422_In4、485_In5;
[0015]地面检查采用通讯方式为1553B,其数据为各种指令;对接收的到数据进行帧结构进行校验,包括帧头、帧尾、标识码、序列码、帧类别、帧长度、校验和,对应的操作系统中的中断序号为1553B_In1;
[0016]IO模块采用通讯方式为UART,其提供的数据为电平信号,对接收的到数据进行电平时间进行滤波及判断,32路IO信号对应于32位数据的每一位,对应的操作系统中的中断序号为IO_In1。
[0017]进一步地,所述μC/OS

III操作系统中消息队列相关结构体包括OS_Q、OS_MSG_Q、OS_MSG;其中,OS_Q结构体包含消息队列的名称、等待的消息队列的列表;OS_MSG_Q结构体为消息队列本体,包含指向消息队列的头与尾,消息队列的最大长度、历史长度及当前长度;OS_MSG为消息队列中的消息本体,包含消息内容、大小、时间戳。
[0018]进一步地,所述算法包括矩阵乘法、矩阵加减、矩阵转置、四元数转换矩阵、坐标系转换矩阵、姿态解算、速度解算、位置解算、过载指令解算、PID参数插值计算、等效舵片分解计算、指令滤波计算、数据融合算法。
[0019]根据所述的基于伴随飞行器控制系统实现的一种基于伴随飞行器控制方法,包括:
[0020]通过接口将各类传感器及作动装置以中断方式获取数据,并对获取的数据进行帧格式校验,再通过消息API将数据传输至消息队列;通过操作系统的API以及自定义根据伴随飞行器控制系统需要编写的API与数据交互模块进行数据交互;
[0021]对数据获取模块发送来的数据进行消息分类,根据通讯协议进行数据解包操作,为每一数据定义对应的队列数据结构;以及为数据获取模块与数据应用模块提供数据输入与输出操作的API;
[0022]通过消息队列获取消息数据,并实现飞控软件的算法;以及实时接收驱动层数据获取模块数据更新,按照相应的数据流规则进行对应算法计算,实现伴随飞行器控制。
[0023]一种计算机可读存储介质,所述的计算机可读存储介质存储有计算机程序,所述的计算机程序被处理器执行时实现所述一种基于伴随飞行器控制方法的步骤。
[0024]本专利技术与现有技术相比的优点在于:
[0025](1)本专利技术通过伴随飞行器控制系统,实现动态调整姿态、多目标跟踪的测量,相对以往地面测量方式实现了全过程、动态高精度测量;
[0026](2)本专利技术通过伴随飞行器控制系统移植方法,实现飞行控制系统模块化设计,相对以往控制系统的非结构化、非模块化,提高系统设计可维护性,可重复利用性,可移植性;
[0027](3)本专利技术通过伴随飞行器控制方法,实现繁杂检查,复杂控制导航算法、交错时序的设计,相对以往控制方法实现了设备深度可靠性检查,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于伴随飞行器控制系统,其特征在于,包括数据获取模块、数据交互模块和数据应用模块,以及为各模块提供运行环境的操作系统;所述数据获取模块通过接口将各类传感器及作动装置以中断方式获取数据,并对获取的数据进行帧格式校验,再通过消息API将数据传输至数据交互模块的消息队列;通过操作系统的API以及根据伴随飞行器控制系统需要编写的API与数据交互模块进行数据交互;所述数据交互模块用于对数据获取模块发送来的数据进行消息分类,根据通讯协议进行数据解包操作,为每一数据定义对应的队列数据结构;以及为数据获取模块与数据应用模块提供数据输入与输出操作的API;所述数据应用模块用于通过数据交互模块消息队列获取消息数据,并实现飞控软件的算法;以及实时接收数据获取模块数据更新,按照相应的数据流规则进行对应算法计算,并将计算的结果发送至数据交互模块消息队列。2.根据权利要求1所述的一种基于伴随飞行器控制系统,其特征在于,所述操作系统为μC/OS

III操作系统。3.根据权利要求2所述的一种基于伴随飞行器控制系统,其特征在于,所述μC/OS

III操作系统根据实际的需求及板级存储资源大小,在os_cfg.h文件中对不使用的预编译进行修改实现μC/OS

III操作系统的裁剪。4.根据权利要求2所述的一种基于伴随飞行器控制系统,其特征在于,所述飞控软件的源代码存储在μC/OS

III操作系统的FKsource文件中。5.根据权利要求2所述的一种基于伴随飞行器控制系统,其特征在于,所述操作系统为进行移植工作后的操作系统;所述移植工作包括:μC/OS

III移植、μC/CPU移植、板级支持包;其中,μC/OS

III移植包括关于CPU相关代码文件OS_CPU.H、0S_CPU_C.C和0S_CPU_A.ASM;μC/CPU移植包括CPU.h,CPU_c.h,CPU_a.asm;板级支持包移植包括bsp.h,bsp.c,bsp_int.c,bsp_int.h;在OS_CPU.H文件中修改中数据类型8位、32位、64位,堆栈增长方向下,开关中断宏为3;在0S_CPU_C.C文件中使用OSTTaskStkInit()、OSTTaskSwHook()、OSTTaskIdleHook()、OSTInitHookBegin()函数进行初始化任务堆栈结构、基层任务切换、功耗模式配置、OS系统初始化;在0S_CPU_A.ASM文件中使用OSStart()、OSCtxSw()、OSIntCtxSw()函数进行多任务管理、...

【专利技术属性】
技术研发人员:张超秦卓程光耀鞠晓燕王玥兮方海红董春杨王东东凌咸庆张甜苏连明张竑颉李焕东宋景亮王晨蔡志旭王菁华李德标谢雨霖司文文王洁
申请(专利权)人:北京航天长征飞行器研究所
类型:发明
国别省市:

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

1