CN106571022A - 一种基于μC/OS‑III的四轴飞行器控制系统和方法 - Google Patents
一种基于μC/OS‑III的四轴飞行器控制系统和方法 Download PDFInfo
- Publication number
- CN106571022A CN106571022A CN201610908952.2A CN201610908952A CN106571022A CN 106571022 A CN106571022 A CN 106571022A CN 201610908952 A CN201610908952 A CN 201610908952A CN 106571022 A CN106571022 A CN 106571022A
- Authority
- CN
- China
- Prior art keywords
- aircraft
- module
- remote control
- data
- wireless communication
- 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
Classifications
-
- G—PHYSICS
- G08—SIGNALLING
- G08C—TRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
- G08C17/00—Arrangements for transmitting signals characterised by the use of a wireless electrical link
- G08C17/02—Arrangements for transmitting signals characterised by the use of a wireless electrical link using a radio link
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63H—TOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
- A63H30/00—Remote-control arrangements specially adapted for toys, e.g. for toy vehicles
- A63H30/02—Electrical arrangements
- A63H30/04—Electrical arrangements using wireless transmission
Abstract
本发明提供一种基于μC/OS‑III的四轴飞行器控制系统和方法,系统包括遥控器和飞行器;本发明克服了传统遥控器操作传统,功能单一,结构封闭等不足以及飞控APP硬件上的缺陷,本发明提出新型飞行器控制器方法,可以摆脱传统遥控器的摇杆,一方面利用加速度计重力感应操作遥控飞机,另一方面运用触控屏幕去设置飞机参数等;本发明可以将飞机的实时状态显示在显示器上;本发明可以模糊操作实现多种用户预制的自动飞行功能。
Description
技术领域
本发明涉及四轴飞行器控制领域,尤其涉及一种基于μC/OS-III的四轴飞行器控制系统和方法。
背景技术
目前,市面上比较成熟的四轴飞行器仅是作为一种玩具或者工具出售,主要控制模式是基于“遥控器-飞行器”模式,用户通过传统摇杆式遥控器来操控飞行器,也有部分通过基于四轴飞行器控制APP。基于遥控器的产品操作传统,功能单一,结构封闭。没有提供图形用户界面,使用摇杆控制;只能在可视范围内手动遥控飞行器;结构封闭,虽然基于智能设备的APP部分解决了上述问题,但仍存硬件支持不充分的问题:智能设备遥控并不具备专业化的性质,以及其一般只携带有蓝牙和WIFI模块,而这些模块存在信号传输距离短、穿透能力差的问题,并不适宜对飞行器的遥控。
发明内容
为了克服上述技术问题,本发明提出了一种基于μC/OS-III的四轴飞行器控制系统,包括遥控器和飞行器;
所述的遥控器包括遥控器控制模块、和分别与遥控器控制模块连接的LCD显示屏、output模块、input模块、第一电源模块、遥控器2.4GHz无线通信模块;
所述的电源模块分别为控器控制模块、LCD显示屏、output模块、input模块、遥控器2.4GHz无线通信模块供电;
所述的飞行器包括飞行器控制模块、和分别与飞行器控制模块连接的飞行器2.4GHz无线通信模块、电机调速器、惯性测量单元、气压传感器、卫星定位模块、超声波测距模块、第二电源模块和红外线感应模块连接;
所述的飞行器2.4GHz无线通信模块分别与电机调速器、惯性测量单元、气压传感器、卫星定位模块、超声波测距模块、第二电源模块和红外线感应模块连接;
所述的无刷电机和电机调速器连接;
所述的第二电源模块分别为飞行器控制模块、飞行器2.4GHz无线通信模块、电机调速器、无刷电机、惯性测量单元、气压传感器、卫星定位模块、超声波测距模块和红外线感应模块供电。
进一步的,所述的output模块包括蜂鸣器,LED指示灯;所述的气压传感器包括气压计MS5611;所述的飞行器2.4GHz无线通信模块和遥控器2.4GHz无线通信模块采用NRF24L01型无线通讯模块。
进一步的,所述的惯性测量单元包括MPU6050加速度计、陀螺仪、L5883重力传感器。
进一步的,所述的遥控器控制模块和飞行器控制模块分别包括第一模数转换模块和第二模数转换模块。
一种基于μC/OS-III的四轴飞行器控制方法,包括以下步骤:
步骤1:准备阶段;所述的准备阶段包括如下步骤;
步骤1.1:初始化,包括遥控器2.4GHz无线通信模块与飞行器2.4GHz无线通信模块配对;output模块、input模块、惯性测量单元、气压传感器、卫星定位模块、超声波测距模块、红外线感应模块的初始化,第一电源模块和第二电源初始化,LCD显示器初始化;
步骤1.2:用户通过触摸屏或input模块输入起飞指令,通过遥控器2.4GHz无线通信模块和飞行器2.4GHz无线通信模块配对,建立通信;
步骤1.3:起飞指令通过遥控器2.4GHz无线通信模块和飞行器2.4GHz无线通信模块的通讯发送给飞行器;
步骤1.4:飞行器通过红外线感应模块检测螺旋桨周围的障碍物,通过飞行器2.4GHz无线通信模块和遥控器2.4GHz无线通信模块通讯然后将数据发回遥控器,遥控器将数据通过LCD显示屏展示给用户;
步骤2:飞行阶段;所述的飞行阶段包括如下步骤;
步骤2.1:飞行器起飞后,飞行器读取气压传感器和卫星定位模块数据,并发送给遥控器;
步骤2.2:在飞行过程中,飞行器通过超声波测距模块检测周围的障碍物并将信息传送至遥控器;
步骤2.3:利用飞行器上面的惯性测量单元,测量飞行器在空间中的姿态,经过计算转换成遥控飞机的参数,再发送给飞机;所述的步骤2.3具体包括步骤:
步骤2.3.1:遥控器读取飞行器上的加速度计的数据,经过互补滤波处理,如
公式1,得到重力在飞行器各个坐标轴上的分量;
式1中,表示第n次相较于第n-1次飞行的旋转增量;表示重力在飞行器各个坐标上的分量;而表示第n次即当前飞行器的飞行姿态,表示上一次第n-1次飞行器的飞行姿态,表示两者叉积运算;通过坐标分量计算出相对应的旋转增量,之后与第n-1次的飞行姿态进行计算便得到当前飞行姿态;
步骤2.3.2:将飞行器飞行姿态的四元数换算成欧拉角,如公式2;
其中,欧拉角有多种定义方式,这里定义x轴正方向为航向,绕z轴旋转的角度为偏航角(yaw),记为y;绕y轴转的角度为俯仰角(pitch),记为p;绕x轴转的角度为滚转角(roll),记为r;wq、zq、xq、yq表示四元数q的四实数分量,通过上述公式便可以将当前的飞行器在各个坐标轴上的当前姿态的坐标转换为相对应的偏航角ya、俯仰角pa与滚转角ra。
步骤2.3.3:以步骤2.3.2得到的欧拉角经过期望处理后得到期望欧拉角,作为对飞机的期望姿态发送给飞机;飞行器得到遥控器发来的期望欧拉角后,变成螺旋桨转速参数控制飞行。
步骤3:降落阶段;当用户输入降落指令后,该指令发送给飞行器,飞行器会利用底部的超声波测距模块测量自身距离地面的高度,并减缓螺旋桨转速,直至平稳着陆。
进一步的,所述的步骤2中,飞行器通过超声波测距模块检测周围的障碍物并将信息传送至遥控器;或者飞行器控制模块根据超声波测距模块探测周围的障碍物的距离自行躲避。
进一步的,所述的步骤1.1初始化后,遥控器控制模块和飞行器控制模块按照周期分别对第一电源模块和第二电源进行测量,间隔为1分钟;具体的是根据遥控器控制模块和飞行器控制模块分别调用第一模数转换模块和第二模数转换模块对第一电源模块和第二电源模块进行测量进行测量,并计算出剩余电量在LCD显示器显示,并在预先设定的阈值电量时向用户发出警告;具体的是在output模块中的蜂鸣器和LED指示灯提醒。
进一步的,所述的步骤1.2之后,遥控器和飞行器之间通过DMA直接存储器进行数据收发,在遥控器发送消息时,先调用遥控器2.4GHz无线通讯模块,并通过DMA直接存储器访问将数据存入遥控器2.4GHz无线通讯模块缓存,之后由遥控器2.4GHz无线通讯模块发送至飞行器2.4GHz无线通讯模块,在数据发送完毕后,检测数据是否发送成功,如果数据发送成功,该数据将自行销毁,否则该数据会重新发生数据。
进一步的,所述的步骤1.2之后,飞行器和遥控器之间通过DMA直接存储器访问读取重力传感器的数据,并对数据进行滤波处理,之后计算成欧拉角,最后通过指针将欧拉角返回给LCD显示器显示。
进一步的,所述的步骤1.2之后,若遥控器2.4GHz无线通信模块接收数据中断,遥控器控制模块通过DMA直接存储器访问将数据从遥控器2.4GHz无线通信模块的缓存中读入该数据,并进行经校验;如果校验成功,将数据存入系统数据处理队列,等待相应任务处理;否则,丢弃该数据,并视数据类型决定是否要求飞行器重发;在完成以上操作后,该任务自行销毁。
本发明的有益效果是:
本发明克服了传统遥控器操作传统,功能单一,结构封闭等不足以及飞控APP硬件上的缺陷,本发明提出新型飞行器控制器系统,1.可以摆脱传统遥控器的摇杆,一方面利用加速度计重力感应操作遥控飞机,另一方面运用触控屏幕去设置飞机参数等。2.可以将飞机的实时状态显示在显示器上。3.可以模糊操作实现多种用户预制的自动飞行功能。
附图说明
图1是本发明的系统结构示意图。
具体实施方式
为了便于理解本发明提出一种基于μC/OS-III的四轴飞行器控制系统和方法,结合附图对本发明进行详细描述:
如图1,一种基于μC/OS-III的四轴飞行器控制系统,包括遥控器和飞行器;
所述的遥控器包括遥控器控制模块、和分别与遥控器控制模块连接的LCD显示屏、output模块、input模块、第一电源模块、遥控器2.4GHz无线通信模块;
所述的电源模块分别为控器控制模块、LCD显示屏、output模块、input模块、遥控器2.4GHz无线通信模块供电;
所述的飞行器包括飞行器控制模块、和分别与飞行器控制模块连接的飞行器2.4GHz无线通信模块、电机调速器、惯性测量单元、气压传感器、卫星定位模块、超声波测距模块、第二电源模块和红外线感应模块连接;
所述的飞行器2.4GHz无线通信模块分别与电机调速器、惯性测量单元、气压传感器、卫星定位模块、超声波测距模块、第二电源模块和红外线感应模块连接;
所述的无刷电机和电机调速器连接;
所述的第二电源模块分别为飞行器控制模块、飞行器2.4GHz无线通信模块、电机调速器、无刷电机、惯性测量单元、气压传感器、卫星定位模块、超声波测距模块和红外线感应模块供电。
所述的output模块包括蜂鸣器,LED指示灯;所述的气压传感器包括气压计MS5611;所述的飞行器2.4GHz无线通信模块和遥控器2.4GHz无线通信模块采用NRF24L01型无线通讯模块。
所述的惯性测量单元包括MPU6050加速度计、陀螺仪、L5883重力传感器。
所述的遥控器控制模块和飞行器控制模块分别包括第一模数转换模块和第二模数转换模块。
各模块的作用:
LCD显示屏:遥控器上的彩色显示器,支持触控。
output模块:包括蜂鸣器,LED指示灯等信息输出模块。
input模块:包括按键等,是用户输入信息的模块。
第一电源模块和第二电源模块都包括充电控制模块、电量检测模块,用于充电和向遥控器传输电量信息。
遥控器2.4GHz无线通信模块和飞行器2.4GHz无线通信模块:用于飞行器发射遥控信号和遥控器传输数据。
电机调速器:用于驱动无刷电机,输出的PWM信号以控制电机转速。
无刷电机:这是飞行器飞行动力的来源。
蜂鸣器:用于警告用户飞机处于不良状态。
惯性测量单元:用于测量飞行器的姿态。
气压传感器:用于辅助计算飞行器的飞行高度。
卫星定位模块:用为飞行器的定位。
超声波测距模块:分别安装在飞行器前后左右和下方五个位置,用于检测飞行器四周及下方的障碍物。
红外线感应模块:分别安装在飞行器的四个螺旋桨下方,用于检测螺旋桨四周的障碍物,确保螺旋桨旋转不受阻碍。
一种基于μC/OS-III的四轴飞行器控制方法,包括以下步骤:
步骤1:准备阶段;所述的准备阶段包括如下步骤;
步骤1.1:初始化,包括遥控器2.4GHz无线通信模块与飞行器2.4GHz无线通信模块配对;output模块、input模块、惯性测量单元、气压传感器、卫星定位模块、超声波测距模块、红外线感应模块的初始化,第一电源模块和第二电源初始化,LCD显示器初始化;
步骤1.2:用户通过触摸屏或input模块输入起飞指令,通过遥控器2.4GHz无线通信模块和飞行器2.4GHz无线通信模块配对,建立通信;
步骤1.3:起飞指令通过遥控器2.4GHz无线通信模块和飞行器2.4GHz无线通信模块的通讯发送给飞行器;
步骤1.4:飞行器通过红外线感应模块检测螺旋桨周围的障碍物,通过飞行器2.4GHz无线通信模块和遥控器2.4GHz无线通信模块通讯然后将数据发回遥控器,遥控器将数据通过LCD显示屏展示给用户;
步骤2:飞行阶段;所述的飞行阶段包括如下步骤;
步骤2.1:飞行器起飞后,飞行器读取气压传感器和卫星定位模块数据,并发送给遥控器;
步骤2.2:在飞行过程中,飞行器通过超声波测距模块检测周围的障碍物并将信息传送至遥控器;
步骤2.3:利用飞行器上面的惯性测量单元,测量飞行器在空间中的姿态,经过计算转换成遥控飞机的参数,再发送给飞机;所述的步骤2.3具体包括步骤:
步骤2.3.1:遥控器读取飞行器上的加速度计的数据,经过互补滤波处理,如
公式1,得到重力在飞行器各个坐标轴上的分量;
式1中,表示第n次相较于第n-1次飞行的旋转增量;表示重力在飞行器各个坐标上的分量;而表示第n次即当前飞行器的飞行姿态,表示上一次第n-1次飞行器的飞行姿态,表示两者叉积运算;通过坐标分量计算出相对应的旋转增量,之后与第n-1次的飞行姿态进行计算便得到当前飞行姿态;
步骤2.3.2:将飞行器飞行姿态的四元数换算成欧拉角,如公式2;
其中,欧拉角有多种定义方式,这里定义x轴正方向为航向,绕z轴旋转的角度为偏航角(yaw),记为y;绕y轴转的角度为俯仰角(pitch),记为p;绕x轴转的角度为滚转角(roll),记为r;wq、zq、xq、yq表示四元数q的四实数分量,通过上述公式便可以将当前的飞行器在各个坐标轴上的当前姿态的坐标转换为相对应的偏航角ya、俯仰角pa与滚转角ra。
步骤2.3.3:以步骤2.3.2得到的欧拉角经过期望处理后得到期望欧拉角,作为对飞机的期望姿态发送给飞机;飞行器得到遥控器发来的期望欧拉角后,变成螺旋桨转速参数控制飞行。
步骤3:降落阶段;当用户输入降落指令后,该指令发送给飞行器,飞行器会利用底部的超声波测距模块测量自身距离地面的高度,并减缓螺旋桨转速,直至平稳着陆。
所述的步骤2中,飞行器通过超声波测距模块检测周围的障碍物并将信息传送至遥控器;或者飞行器控制模块根据超声波测距模块探测周围的障碍物的距离自行躲避。
所述的步骤1.1初始化后,遥控器控制模块和飞行器控制模块按照周期分别对第一电源模块和第二电源进行测量,间隔为1分钟;具体的是根据遥控器控制模块和飞行器控制模块分别调用第一模数转换模块和第二模数转换模块对第一电源模块和第二电源进行测量进行测量,并计算出剩余电量在LCD显示器显示,并在预先设定的阈值电量时向用户发出警告;具体的是在output模块中的蜂鸣器和LED指示灯提醒。
所述的步骤1.2之后,遥控器和飞行器之间通过DMA直接存储器进行数据收发,在遥控器发送消息时,先调用遥控器2.4GHz无线通讯模块,并通过DMA直接存储器访问将数据存入遥控器2.4GHz无线通讯模块缓存,之后由遥控器2.4GHz无线通讯模块发送至飞行器2.4GHz无线通讯模块,在数据发送完毕后,检测数据是否发送成功,如果数据发送成功,该数据将自行销毁,否则该数据会重新发生数据。
所述的步骤1.2之后,飞行器和遥控器之间通过DMA直接存储器访问读取重力传感器的数据,并对数据进行滤波处理,之后计算成欧拉角,最后通过指针将欧拉角返回给LCD显示器显示。
所述的步骤1.2之后,若遥控器2.4GHz无线通信模块接收数据中断,遥控器控制模块通过DMA直接存储器访问将数据从遥控器2.4GHz无线通信模块的缓存中读入该数据,并进行经校验;如果校验成功,将数据存入系统数据处理队列,等待相应任务处理;否则,丢弃该数据,并视数据类型决定是否要求飞行器重发;在完成以上操作后,该任务自行销毁。
对于以上控制过程在软件上的实现,本发明中主要采用的μC/OS-III操作系统将整体系统的任务分配与实现如下:
void RC_Init(void),遥控系统初始化任务。在系统上电后执行一次,对遥控器和飞行器自身进行自检并初始化外设(包括遥控器2.4GHz无线通信模块与飞行器2.4GHz无线通信模块配对;output模块、input模块、惯性测量单元、气压传感器、卫星定位模块、超声波测距模块、红外线感应模块的初始化,第一电源模块和第二电源初始化,LCD显示器初始化;)
void RC_Main(void),遥控系统主任务。该任务由void RC_Init(void)遥控系统初始化任务调用,其作用是向用户展示一个主界面,以便用户进行下面的操作(类似手机的主界面)。当用户选择一个应用后会调用相应的μC/OS-III任务,并将自己挂起(suspend),在用户应用执行结束后重新开始运行。
void RC_Battery(void*battery),遥控系统电池电量读取任务。该任务为系统后台任务,由void RC_Init(void)遥控系统初始化任务调用,并周期执行,间隔为1分钟。该任务会调用遥控器控制模块和飞行器控制模块上的第一模数转换模块和第二模数转换模块对第一电源模块和第二电源进行测量进行测量,并计算出剩余电量在LCD显示器右上角显示,并在电量过低时向用户发出警告。
void RC_Gsensor(void*euler),遥控系统重力传感器读取任务。该任务为系统辅助任务,由用户应用程序void RC_RemoteControl(void)遥控系统预设用户应用任务调用。当用户启动void RC_RemoteControl(void)遥控系统预设用户应用任务应用后,会自动调用该任务。该任务的作用是不断在后台通过DMA读取重力传感器的数据,并对数据进行滤波处理,之后计算成欧拉角,最后通过指针将欧拉角返回给void RC_RemoteControl(void)遥控系统预设用户应用任务。
void RC_Sender(void*data),遥控系统数据发送任务。遥控器在运行过程中,所有向飞行器发送数据的请求都通过该任务实现。该任务通过指针从父任务获得要发送的数据,然后调用遥控器2.4GHz无线通信模块,并通过DMA将数据存入遥控器2.4GHz无线通信模块,之后由遥控器2.4GHz无线通信模块发送给飞行器端,在数据发送完毕后,该任务会检测数据是否发送成功,如果数据发送成功,该任务将自行销毁,否则该任务会重新发生数据。
void RC_Receiver(void),遥控系统数据接受任务。遥该任务由遥控器2.4GHz无线通信模块中断处理函数调用。遥控器在运行过程中,所有飞行器发送的数据都通过该任务进行接收和处理。若遥控器2.4GHz无线通信模块接收数据后会产生中断,遥控器2.4GHz无线通信模块中断处理函数会调用该任务。之后,该任务会通过DMA将数据从遥控器2.4GHz无线通信模块存中读入该任务的堆栈中,并进行经校验。如果校验成功,该任务会将数据存入系统数据处理队列,等待相应任务处理。否则,丢弃该数据,并视数据类型决定是否要求飞行器重发。在完成以上操作后,该任务会自行销毁。
void RC_SelfChecking(void),遥控系统预设用户应用任务。若用户从主界面调用该任务,该任务将通过void RC_Sender(void*data)遥控系统数据发送任务向飞行器发送自检命令,并处理飞行器发回的自检数据。之后将飞行器自检数据以可视化样式通过LCD显示器展现给用户。用户结束该任务后,void RC_Main(void)遥控系统主任务会重新开始执行,并在LCD显示器上展示主界面。
void RC_RemoteControl(void),遥控系统预设用户应用任务。若用户从主界面调用该任务,将会进入遥控操作界面。该任务会调用void RC_Gsensor(void*euler)遥控系统重力传感器读取任务任务以获得遥控器的欧拉角,随后将该欧拉角数据进行滤波处理生成飞行器期望欧拉角并通过RC_Sender发送给飞行器。在飞行器飞行期间,该任务会不断读取系统数据处理队列中关于飞行器姿态的数据,并将该数据以可视化样式通过LCD显示器展现在用户面前。飞行器飞行过程中用户不允许结束该任务,当该任务确定飞行器已经着陆后用户方可结束它。用户结束该任务后,void RC_Main(void)遥控系统主任务会重新开始执行,并在LCD显示器上展示主界面。
综上所述,提及的所有功能只说明本发明的主要的技术构思及实现方法,旨在让读者能清晰了解本发明基本实现思想并能够总结出相应实施方案,但本发明的保护范围并不局限于此,根据本发明中心思想进行相应等价变化或修改,都应该属于本发明的保护范围之内。
Claims (10)
1.一种基于μC/OS-III的四轴飞行器控制系统,其特征在于:包括遥控器和飞行器;
所述的遥控器包括遥控器控制模块、和分别与遥控器控制模块连接的LCD显示屏、output模块、input模块、第一电源模块、遥控器2.4GHz无线通信模块;
所述的电源模块分别为控器控制模块、LCD显示屏、output模块、input模块、遥控器2.4GHz无线通信模块供电;
所述的飞行器包括飞行器控制模块、和分别与飞行器控制模块连接的飞行器2.4GHz无线通信模块、电机调速器、惯性测量单元、气压传感器、卫星定位模块、超声波测距模块、第二电源模块和红外线感应模块连接;
所述的飞行器2.4GHz无线通信模块分别与电机调速器、惯性测量单元、气压传感器、卫星定位模块、超声波测距模块、第二电源模块和红外线感应模块连接;
所述的无刷电机和电机调速器连接;
所述的第二电源模块分别为飞行器控制模块、飞行器2.4GHz无线通信模块、电机调速器、无刷电机、惯性测量单元、气压传感器、卫星定位模块、超声波测距模块和红外线感应模块供电。
2.根据权利要求1所述的一种基于μC/OS-III的四轴飞行器控制系统,其特征在于,所述的output模块包括蜂鸣器,LED指示灯;所述的气压传感器包括气压计MS5611;所述的飞行器2.4GHz无线通信模块和遥控器2.4GHz无线通信模块采用NRF24L01型无线通讯模块。
3.根据权利要求1所述的一种基于μC/OS-III的四轴飞行器控制系统,其特征在于,所述的惯性测量单元包括MPU6050加速度计、陀螺仪、L5883重力传感器。
4.根据权利要求1所述的一种基于μC/OS-III的四轴飞行器控制系统,其特征在于,所述的遥控器控制模块和飞行器控制模块分别包括第一模数转换模块和第二模数转换模块。
5.一种基于μC/OS-III的四轴飞行器控制方法,其特征在于,包括以下步骤:
步骤1:准备阶段;所述的准备阶段包括如下步骤;
步骤1.1:初始化,包括遥控器2.4GHz无线通信模块与飞行器2.4GHz无线通信模块配对;output模块、input模块、惯性测量单元、气压传感器、卫星定位模块、超声波测距模块、红外线感应模块的初始化,第一电源模块和第二电源初始化,LCD显示器初始化;
步骤1.2:用户通过触摸屏或input模块输入起飞指令,通过遥控器2.4GHz无线通信模块和飞行器2.4GHz无线通信模块配对,建立通信;
步骤1.3:起飞指令通过遥控器2.4GHz无线通信模块和飞行器2.4GHz无线通信模块的通讯发送给飞行器;
步骤1.4:飞行器通过红外线感应模块检测螺旋桨周围的障碍物,通过飞行器2.4GHz无线通信模块和遥控器2.4GHz无线通信模块通讯然后将数据发回遥控器,遥控器将数据通过LCD显示屏展示给用户;
步骤2:飞行阶段;所述的飞行阶段包括如下步骤;
步骤2.1:飞行器起飞后,飞行器读取气压传感器和卫星定位模块数据,并发送给遥控器;
步骤2.2:在飞行过程中,飞行器通过超声波测距模块检测周围的障碍物并将信息传送至遥控器;
步骤2.3:利用飞行器上面的惯性测量单元,测量飞行器在空间中的姿态,经过计算转换成遥控飞机的参数,再发送给飞机;所述的步骤2.3具体包括步骤:
步骤2.3.1:遥控器读取飞行器上的加速度计的数据,经过互补滤波处理,如公式1,得到重力在飞行器各个坐标轴上的分量;
式1中,表示第n次相较于第n-1次飞行的旋转增量;表示重力在飞行器各个坐标上的分量;而表示第n次即当前飞行器的飞行姿态,表示上一次第n-1次飞行器的飞行姿态,表示两者叉积运算;通过坐标分量计算出相对应的旋转增量,之后与第n-1次的飞行姿态进行计算便得到当前飞行姿态;
步骤2.3.2:将飞行器飞行姿态的四元数换算成欧拉角,如公式2;
其中,欧拉角有多种定义方式,这里定义x轴正方向为航向,绕z轴旋转的角度为偏航角(yaw),记为y;绕y轴转的角度为俯仰角(pitch),记为p;绕x轴转的角度为滚转角(roll),记为r;wq、zq、xq、yq表示四元数q的四实数分量,通过上述公式便可以将当前的飞行器在各个坐标轴上的当前姿态的坐标转换为相对应的偏航角ya、俯仰角pa与滚转角ra;
步骤2.3.3:以步骤2.3.2得到的欧拉角经过期望处理后得到期望欧拉角,作为对飞机的期望姿态发送给飞机;飞行器得到遥控器发来的期望欧拉角后,变成螺旋桨转速参数控制飞行;
步骤3:降落阶段;当用户输入降落指令后,该指令发送给飞行器,飞行器会利用底部的超声波测距模块测量自身距离地面的高度,并减缓螺旋桨转速,直至平稳着陆。
6.根据权利要求5所述的一种基于μC/OS-III的四轴飞行器控制方法,其特征在于,所述的步骤2中,飞行器通过超声波测距模块检测周围的障碍物并将信息传送至遥控器;或者飞行器控制模块根据超声波测距模块探测周围的障碍物的距离自行躲避。
7.根据权利要求5所述的一种基于μC/OS-III的四轴飞行器控制方法,其特征在于,所述的步骤1.1初始化后,遥控器控制模块和飞行器控制模块按照周期分别对第一电源模块和第二电源模块进行测量,间隔为1分钟;具体的是根据遥控器控制模块和飞行器控制模块分别调用第一模数转换模块和第二模数转换模块对第一电源模块和第二电源进行测量进行测量,并计算出剩余电量在LCD显示器显示,并在预先设定的阈值电量时向用户发出警告;具体的是在output模块中的蜂鸣器和LED指示灯提醒。
8.根据权利要求5所述的一种基于μC/OS-III的四轴飞行器控制方法,其特征在于,所述的步骤1.2之后,遥控器和飞行器之间通过DMA直接存储器进行数据收发,在遥控器发送消息时,先调用遥控器2.4GHz无线通讯模块,并通过DMA直接存储器访问将数据存入遥控器2.4GHz无线通讯模块缓存,之后由遥控器2.4GHz无线通讯模块发送至飞行器2.4GHz无线通讯模块,在数据发送完毕后,检测数据是否发送成功,如果数据发送成功,该数据将自行销毁,否则该数据会重新发生数据。
9.根据权利要求5所述的一种基于μC/OS-III的四轴飞行器控制方法,其特征在于,所述的步骤1.2之后,飞行器和遥控器之间通过DMA直接存储器访问读取重力传感器的数据,并对数据进行滤波处理,之后计算成欧拉角,最后通过指针将欧拉角返回给LCD显示器显示。
10.根据权利要求5所述的一种基于μC/OS-III的四轴飞行器控制方法,其特征在于,所述的步骤1.2之后,若遥控器2.4GHz无线通信模块接收数据中断,遥控器控制模块通过DMA直接存储器访问将数据从遥控器2.4GHz无线通信模块的缓存中读入该数据,并进行经校验;如果校验成功,将数据存入系统数据处理队列,等待相应任务处理;否则,丢弃该数据,并视数据类型决定是否要求飞行器重发;在完成以上操作后,该任务自行销毁。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610908952.2A CN106571022B (zh) | 2016-10-18 | 2016-10-18 | 一种基于μC/OS-III的四轴飞行器控制系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610908952.2A CN106571022B (zh) | 2016-10-18 | 2016-10-18 | 一种基于μC/OS-III的四轴飞行器控制系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106571022A true CN106571022A (zh) | 2017-04-19 |
CN106571022B CN106571022B (zh) | 2019-03-19 |
Family
ID=58533700
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610908952.2A Active CN106571022B (zh) | 2016-10-18 | 2016-10-18 | 一种基于μC/OS-III的四轴飞行器控制系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106571022B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107784841A (zh) * | 2017-11-22 | 2018-03-09 | 成都大学 | 基于飞行器的交通监测系统及监测方法 |
CN110471446A (zh) * | 2019-08-23 | 2019-11-19 | 深圳市千代创新电子科技有限公司 | 遥控飞行器的控制方法、装置及系统 |
CN113741535A (zh) * | 2021-09-17 | 2021-12-03 | 北京航空航天大学 | 仿载波监听机制的无人机集群避障系统及其方法 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1014577A1 (en) * | 1998-12-16 | 2000-06-28 | Sharp Kabushiki Kaisha | Remote controller and controlled apparatus for improved remote control system |
CN101382426A (zh) * | 2007-09-05 | 2009-03-11 | 中国科学院自动化研究所 | 一种无人直升机自动导航系统 |
CN101726295A (zh) * | 2008-10-24 | 2010-06-09 | 中国科学院自动化研究所 | 考虑加速度补偿和基于无迹卡尔曼滤波的惯性位姿跟踪方法 |
CN202758243U (zh) * | 2012-09-06 | 2013-02-27 | 北京工业大学 | 一种无人机飞行操控系统 |
CN203350718U (zh) * | 2013-06-13 | 2013-12-18 | 昊翔电能运动科技(昆山)有限公司 | 遥控系统及其飞行器控制系统 |
CN104020777A (zh) * | 2014-06-17 | 2014-09-03 | 成都华诚智印科技有限公司 | 一种体感跟随式飞行控制系统及其控制方法 |
CN104133379A (zh) * | 2014-08-15 | 2014-11-05 | 哈尔滨工业大学 | 四旋翼飞行器仿真方法 |
CN104238551A (zh) * | 2013-06-13 | 2014-12-24 | 昊翔电能运动科技(昆山)有限公司 | 智能显示遥控器和飞行控制系统 |
CN204116962U (zh) * | 2014-01-08 | 2015-01-21 | 谢强 | 支持自动避障和定高飞行的四轴飞行器 |
CN105388913A (zh) * | 2015-12-29 | 2016-03-09 | 上海中科深江电动车辆有限公司 | 基于四轴飞行器的智能停车场及导航方法 |
CN105786011A (zh) * | 2016-03-07 | 2016-07-20 | 重庆邮电大学 | 一种遥控飞行器的控制方法及设备 |
CN205396532U (zh) * | 2016-02-26 | 2016-07-27 | 厦门大学嘉庚学院 | 用于直升型飞行器的语音遥控系统及直升型遥控飞行器 |
-
2016
- 2016-10-18 CN CN201610908952.2A patent/CN106571022B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1014577A1 (en) * | 1998-12-16 | 2000-06-28 | Sharp Kabushiki Kaisha | Remote controller and controlled apparatus for improved remote control system |
CN101382426A (zh) * | 2007-09-05 | 2009-03-11 | 中国科学院自动化研究所 | 一种无人直升机自动导航系统 |
CN101726295A (zh) * | 2008-10-24 | 2010-06-09 | 中国科学院自动化研究所 | 考虑加速度补偿和基于无迹卡尔曼滤波的惯性位姿跟踪方法 |
CN202758243U (zh) * | 2012-09-06 | 2013-02-27 | 北京工业大学 | 一种无人机飞行操控系统 |
CN203350718U (zh) * | 2013-06-13 | 2013-12-18 | 昊翔电能运动科技(昆山)有限公司 | 遥控系统及其飞行器控制系统 |
CN104238551A (zh) * | 2013-06-13 | 2014-12-24 | 昊翔电能运动科技(昆山)有限公司 | 智能显示遥控器和飞行控制系统 |
CN204116962U (zh) * | 2014-01-08 | 2015-01-21 | 谢强 | 支持自动避障和定高飞行的四轴飞行器 |
CN104020777A (zh) * | 2014-06-17 | 2014-09-03 | 成都华诚智印科技有限公司 | 一种体感跟随式飞行控制系统及其控制方法 |
CN104133379A (zh) * | 2014-08-15 | 2014-11-05 | 哈尔滨工业大学 | 四旋翼飞行器仿真方法 |
CN105388913A (zh) * | 2015-12-29 | 2016-03-09 | 上海中科深江电动车辆有限公司 | 基于四轴飞行器的智能停车场及导航方法 |
CN205396532U (zh) * | 2016-02-26 | 2016-07-27 | 厦门大学嘉庚学院 | 用于直升型飞行器的语音遥控系统及直升型遥控飞行器 |
CN105786011A (zh) * | 2016-03-07 | 2016-07-20 | 重庆邮电大学 | 一种遥控飞行器的控制方法及设备 |
Non-Patent Citations (2)
Title |
---|
常敏等: "四轴飞行器姿态控制系统设计", 《通信电源技术》 * |
陆伟男: "基于四轴飞行器的双闭环PID控制", 《科学技术与工程》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107784841A (zh) * | 2017-11-22 | 2018-03-09 | 成都大学 | 基于飞行器的交通监测系统及监测方法 |
CN110471446A (zh) * | 2019-08-23 | 2019-11-19 | 深圳市千代创新电子科技有限公司 | 遥控飞行器的控制方法、装置及系统 |
CN113741535A (zh) * | 2021-09-17 | 2021-12-03 | 北京航空航天大学 | 仿载波监听机制的无人机集群避障系统及其方法 |
CN113741535B (zh) * | 2021-09-17 | 2024-04-02 | 北京航空航天大学 | 仿载波监听机制的无人机集群避障系统及其方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106571022B (zh) | 2019-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10824149B2 (en) | System and method for automated aerial system operation | |
CN106227234B (zh) | 无人机、无人机起飞控制方法及装置 | |
CN105793792B (zh) | 无人机的飞行辅助方法和系统、无人机和移动终端 | |
CN107037819B (zh) | 一种飞行器的起飞控制方法和起飞控制装置 | |
WO2018209702A1 (zh) | 无人机的控制方法、无人机以及机器可读存储介质 | |
CN202758243U (zh) | 一种无人机飞行操控系统 | |
CN107074377A (zh) | 一种控制方法、装置、设备及无人机 | |
CN106020220B (zh) | 无人机、无人机飞行控制方法及装置 | |
CN111694376B (zh) | 飞行模拟方法、装置、电子设备及无人机 | |
CN108062108A (zh) | 一种基于机载计算机的智能多旋翼无人机及其实现方法 | |
CN208110387U (zh) | 一种室内视觉导航无人机集群飞行控制系统 | |
CN106571022A (zh) | 一种基于μC/OS‑III的四轴飞行器控制系统和方法 | |
CN106647788B (zh) | 无人机飞行控制方法及装置 | |
WO2018187916A1 (zh) | 云台随动控制方法及控制设备 | |
CN109562830A (zh) | 无人飞行物体和控制无人飞行物体的方法 | |
CN106292799A (zh) | 无人机、遥控装置及其控制方法 | |
JP6829513B1 (ja) | 位置算出方法及び情報処理システム | |
CN107608378A (zh) | 控制无人机起飞的方法及装置、存储介质及无人机 | |
CN111587409A (zh) | 无人机发射方法与系统 | |
US20210181769A1 (en) | Movable platform control method, movable platform, terminal device, and system | |
CN107977014A (zh) | 一种无人机自动悬停方法 | |
CN107491084A (zh) | 控制无人机锁桨方法、装置、存储介质及无人机 | |
WO2023025202A1 (zh) | 云台方向的控制方法、装置及终端 | |
CN207650653U (zh) | 基于Leap Motion的手势控制四旋翼飞行器 | |
CN111279399B (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 |