[发明专利]具有多任务自调度的模块化飞控系统及其设计方法有效
申请号: | 201810811397.0 | 申请日: | 2018-07-23 |
公开(公告)号: | CN109062246B | 公开(公告)日: | 2021-11-09 |
发明(设计)人: | 唐兴;禹洁;胡偲聪;王俊杰;苏岩 | 申请(专利权)人: | 南京理工大学 |
主分类号: | G05D1/10 | 分类号: | G05D1/10 |
代理公司: | 南京理工大学专利中心 32203 | 代理人: | 朱沉雁 |
地址: | 210094 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 具有 任务 调度 模块化 系统 及其 设计 方法 | ||
1.一种具有多任务自调度的模块化飞控系统,其特征在于:包括数据采集模块、导航解算模块、控制解算模块、PWM辅助模块和空地通信模块;数据采集模块对多传感器数据进行实时采集,创建数据采集共享内存;导航解算模块访问数据采集共享内存,通过条件判断自调度合适解算算法,解算无人机状态并创建导航共享内存:控制解算模块访问导航共享内存,通过条件判断自调度合适控制算法,根据无人机状态和控制指令解算控制量,并创建飞行控制共享内存;PWM辅助模块访问飞行控制共享内存,控制执行机构,同时还监视其自身的运行状态,获取地面控制信号;空地通信进程负责将数据采集共享内存、导航共享内存、飞行控制共享内存中的无人机状态定时通过无线电台发送给地面站,同时接收地面站的指令;
所述导航解算模块包括联邦卡尔曼滤波结算模块和神经网络解算模块,联邦卡尔曼滤波结算模块进行联邦卡尔曼滤波算法,神经网络解算模块进行神经网络解算算法,通过导航解算模块的API自调用功能,首先将联邦卡尔曼滤波算法和神经网络解算算法API化,然后设置定时器进行工作时间判断:
不大于10s时,访问数据采集共享内存获得相关量测数据,调用联邦卡尔曼滤波算法进行解算;大于10s后,访问数据采集共享内存获得相关量测数据,调用神经网络解算算法进行解算;
所述控制解算模块,包括将PID控制模块和积分反演控制模块,其中PID控制模块采用PID控制算法,积分反演控制模块采用积分反演控制算法;首先将PID控制算法和积分反演控制算法API化,然后进行当前飞行模式判断:
当飞行模式为指令飞行时,访问导航解算共享内存选择控制律参数调用PID控制算法;当飞行模式为手动或自主飞行时,进行空气动压大小判断,当动压不大于245Pa时,访问导航解算共享内存选择控制律参数调用PID控制算法;当动压大于245Pa时,访问导航解算共享内存选择控制律参数调用积分反演控制算法。
2.根据权利要求1所述的具有多任务自调度的模块化飞控系统,其特征在于:所述PWM辅助模块包括STM32最小系统和PWM信号切换电路,STM32最小系统选择PWM信号切换电路的输入信号作为执行机构模块的输入。
3.根据权利要求1所述的具有多任务自调度的模块化飞控系统,其特征在于:所述数据采集模块包括并列设置的9轴IMU采集模块、气压高度计采集模块、空速计采集模块和GPS采集模块。
4.一种基于权利要求1-3中任意一项所述的具有多任务自调度的模块化飞控系统实现多任务自调度的方法,其特征在于,步骤如下:
步骤a、综合考虑任务模块实时性需求和轮转性需求,对任务模块进行优先级排序,转入步骤b;
步骤b、通过任务进程模块属性结构体进行任务优先级自设定,转入步骤c;
步骤c、综合考虑进程代码消耗特性和任务模块重要性,对任务模块进行CPU绑定配置,转入步骤d;
步骤d、Linux内核通过自查找、比较自设定的结构体优先级数值,通过自查找CPU绑定配置,实现多任务自调度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京理工大学,未经南京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810811397.0/1.html,转载请声明来源钻瓜专利网。