四轴飞行器课件(转)

合集下载

四轴飞行器

四轴飞行器

四轴飞行器四轴飞行器是微型飞行器的其中一种,也是一种智能机器人。

是最初是由航空模型爱好者自制成功(另说是瑞士科技人员研制成功,有待考究,但据笔者了解,早在二战时四轴项目已经做出原型机,但由于缺乏先进的控制技术,高昂的造价,被否定),后来很多自动化厂商发现它可以用于多种用途而积极产于研制。

它利用有四个旋翼作为飞行引擎来进行空中飞行,它的尺寸较小、重量较轻、适合携带和使用的无人驾驶飞行器一样能够携带一定的任务载荷,具备自主导航飞行能力。

在复杂、危险的环境下完成特定的飞行任务。

同样也可以用于娱乐,比如弹钢琴曲,增强现实等虚拟游戏。

构造四轴飞行器其构造特点是在它的四个角上各装有一旋翼,由电机分别带动,叶片可以正转,也可以反转。

为了保持飞行器的稳定飞行,在四轴飞行器上装有3个方向的陀螺仪和3 轴加速度传感器组成惯性导航模块,它还通过电子调控器来保证其快速飞行。

扩展四轴的灵魂部分---飞控+电调了。

为什么电调也算是四轴的灵魂部分呢?因为四轴要用的电调,还是有所不同的。

各看官稍安勿躁,且听我慢慢道来。

先说飞控的核心组成和大概原理,四轴飞行器相对于常规航模来说,最最复杂的就是电子部分了。

之所以能飞行得很稳定,全拜电子控制部分的功劳。

在常规固定翼飞机上,陀螺仪并非常用器件,在相对操控难度大点的直机上,如果不做自动稳定系统,也只是锁尾才用到陀螺仪。

四轴飞行器与其不同的地方是必须配备陀螺仪,这是最基本要求,不然无法飞行,更谈不上飞稳了。

不但要有,还得是3轴向(X、Y、Z)都得有,这是四轴飞行器的机械结构、动力组成特性决定的。

在此基础上再辅以3轴加速度传感器,这6个自由度,就组成了飞行姿态稳定的基本部分,也是关键核心部分---惯性导航模块,简称IMU。

飞行中的姿态感测全靠这个IMU了,可见它是整架模型的核心部件。

再说说电调,四轴飞行器有四个桨(纯属费话,两两相对呈十字交叉结构,在桨的转向上分正转和反转,这样可抵消模型自身的旋转。

四轴飞行器课件(转)

四轴飞行器课件(转)

算法上的实现
• 外环: (我的外环仅仅用了p项) • 外环输出值=p*(实际姿态解算角度值-平衡位置 姿态值-控制量) • exValue.Pitch_p =expidPitch.p*(Attitude.pitchControldata_PITCH-XStaticSet ); exValue.Roll_p =expidRoll.p*(Attitude.rollControldata_ROLL-YStaticSet ); • exValue.Yaw_p =expidYaw.p* (Attitude.yawSETYAW+Controldata_YAW);
谢谢大家
限幅
• • • • • • • • • • • • • • • • • • • if( PWM_XZ<MinPeriod) PWM_XZ=MinPeriod; else if( PWM_XZ>MaxPeriod) PWM_XZ=MaxPeriod; if( PWM_XF<MinPeriod) PWM_XF=MinPeriod; else if( PWM_XF>MaxPeriod) PWM_XF=MaxPeriod; if( PWM_YZ<MinPeriod) PWM_YZ=MinPeriod; else if( PWM_YZ>MaxPeriod) PWM_YZ=MaxPeriod; if( PWM_YF<MinPeriod) PWM_YF=MinPeriod; else if( PWM_YF>MaxPeriod) PWM_YF=MaxPeriod;
内环pd
• 内环输出=p*(实际角速度值+外环输出角 度值)-d*(当前角速度-上一次角速度) • 也就是将外环输出的角度值作为期望值加 入内环控制当中。

四轴(多轴)飞行器概述

四轴(多轴)飞行器概述

四轴(多轴)飞行器概述一、简介四轴(多轴)飞行器也叫四旋翼(多旋翼)飞行器它有四个(多个)螺旋桨,四轴(多轴)飞行器也是飞行器中结构最简单的飞行器了。

前后左右各一个,其中位于中心的主控板接收来自于遥控发射机的控制信号,在收到操作者的控制后通过数字的控制总线去控制四个电调,电调再把控制命令转化为电机的转速,以达到操作者的控制要求,前后马达是顺时针转动,需要安装反桨,左右马达是逆时针转动,需要安装正桨,机械结构上只需保持重量分布的均匀,四电机保持在一个水平线上,可以说结构非常简单,做四轴的目的也是为了用电子控制把机械结构变得尽可能的简单。

二、控制原理四轴飞行器的控制原理就是,当没有外力并且重量分布平均时,四个螺旋桨以一样的转速转动,在螺旋桨向上的拉力大于整机的重量时,四轴就会向上升,在拉力与重量相等时,四轴就可以在空中悬停。

在四轴的前方受到向下的外力时,前方马达加快转速,以抵消外力的影响从而保持水平,同样其它几个方向受到外力时四轴也是可以通过这种动作保持水平的,当需要控制四轴向前飞时,前方的马达减速,而后方的马达加速,这样,四轴就会向前倾斜,也相应的向前飞行,同样,需要向后、向左、向右飞行也是通过这样的控制就可以使四轴往我们想要控制的方向飞行了,当我们要控制四轴的机头方向向顺时针转动时,四轴同时加快左右马达的转速,并同时降低前后马达的转速,因为左右马达是逆时针转动的,而左右马达的转速是一样,所以左右是保持平衡的,而前后马达是顺时针转动的,但前后马达的转速也是一样的,所以前后左右都是可以保持平衡,飞行高度也是可以保持的,但是逆时针转动的力比顺时针就大,所以机身会向反方向转动,从而达到控制机头的方向。

这也是为什么要使用两个反桨,两个正桨的原因。

三、电调我们平时用的商品电调是通过接收机上的油门通道进行控制的,这个接收机出来的控制信号一般都是20mS 间隔的PPM脉宽控制信号,而四轴为了提高响应的速度,需要控制命令的间隔更短-比如说5mS,所以就需要特殊的电调而不能用普通的商品电调,但是为什么要使用I2C总线跟电调连接呢,这个跟电路设计以及软件编写等有关,I2C总线在硬件连接上可以多个设备直接并连在总线上,它有相应的传输机制保证主机与各个从机之前顺畅沟通,这样连接就比较的方便,所以四个电调的控制线是并接在一起连到主控板上就可以了,这个也跟我们选用的芯片相关,很多单片机都有集成I2C总线的,软件设计起来也得心应手。

四轴飞行控制原理

四轴飞行控制原理

四轴(1)-飞行原理总算能抽出时间写下四轴文章,算算接触四轴也两年多了,从当初的模仿到现在的自主创作经历了不少收获了也不少。

朋友们也经常问我四轴怎么入门,今天就简单写下四轴入门的基本知识。

尽量避开专业术语和数学公式。

1、首先先了解下四轴的飞行原理。

四轴的一般结构都是十字架型,当然也有其他奇葩结构,比如工字型。

两种的力学模型稍微有些不一样,建议先从常规结构入手(其实是其他结构我不懂).常规十字型结构其他结构常规结构的力学模型如图。

力学模型对四轴进行受力分析,其受重力、螺旋桨的升力,螺旋桨旋转给机体的反扭矩力。

反扭矩影响主要是使机体自旋,可以想象一下直升机没有尾桨的情况。

螺旋桨旋转时产生的力很复杂,这里将其简化成只受一个升力和反扭矩力。

其它力暂时先不管,对于目前建模精度还不需要分析其他力,顶多在需要时将其他力设为干扰就可以了。

如需对螺旋桨受力进行详细研究可以看些空气动力学的书,推荐两本,空气螺旋桨理论及其应用(刘沛清,北航出版社)空气动力学基础上下册(徐华舫,国防科技大学)网易公开课:这个比麻省理工的那个飞行器构造更对口一些.荷兰代尔夫特理工大学公开课:空气动力学概论以上这些我是没看下去,太难太多了,如想刨根问底可以看看。

解释下反扭矩的产生:电机带动螺旋桨旋转,比如使螺旋桨顺时针旋转,那么电机就要给螺旋桨一个顺时针方向的扭矩(数学上扭矩的方向不是这样定义的,可以根据右手定则来确定方向).根据作用力与反作用力关系,螺旋桨必然会给电机一个反扭矩。

在转速恒定,真空,无能量损耗时,螺旋桨不需要外力也能保持恒定转速,这样也就不存在扭矩了,当然没有空气也飞不起来了。

反扭矩的大小主要与介质密度有关,同样转速在水中的反扭矩肯定比空气中大。

因为存在反扭矩,所以四轴设计成正反桨模式,两个正桨顺时针旋转,两个反桨逆时针旋转,对角桨类型一样,产生的反扭矩刚好相互抵消。

并且还能保持升力向上.六轴、八轴…类似。

我们控制四轴就是通过控制4个升力和4个反扭矩来控制四轴姿态。

四轴飞行器

四轴飞行器

目录摘要 (2)第一章绪论 (3)1.1引言 (3)1.2 项目内容 (3)第二章四轴飞行器的基本介绍 (4)2.1 四轴飞行器的发明与发展 (4)2.2 四轴飞行器的功能与运用 (4)2.3 四轴飞行器的特点 (5)2.4 四轴飞行器的技术难点 (6)第三章四轴飞行器的原理 (7)3.1 四轴飞行器的基本构成 (7)3.2 四轴飞行器飞行原理 (8)3.3四轴飞行器的基本运动状态 (9)垂直运动 (9)俯仰运动 (9)滚转运动 (10)偏航运动 (10)前后运动 (11)侧向运动 (11)3.4 四轴飞行器陀螺仪原理 (11)第四章飞越FY999-1 四轴飞行器 (13)4.1 FY999-1规格参数 (13)4.2 FY999-1特点- (13)4.3 FY999-1重要机械构件 (13)第五章四轴飞行器的国内外 (16)5.1 国外运用 (16)5.2国内运用 (16)第六章结论以及存在问题 (17)摘要四轴飞行器(四旋翼飞行器)也称为四旋翼直升机,简称四轴、四旋翼,是一种有4个螺旋桨且螺旋桨呈十字形交叉的飞行器,运用陀螺仪保持平衡。

它是多旋翼飞行器中最基本的一种。

近几年,得益于微型自动控制系统的发展,四旋翼飞行器发展十分迅速。

现在更多厂家参加了对四轴飞行器的研发改进的队伍,它的作用也在近几年的航空,娱乐,勘察的可见一斑。

关键词:四轴飞行器姿态陀螺仪第一章绪论1.1引言四轴飞行器最开始是由军方研发的一种新式飞行器随着MEMS传感器、单片机、电机和电池技术的发展和普及,四轴飞行器成为航模界的新锐力量。

到今天,四轴飞行器已经应用到各个领域,如军事打击、公安追捕、灾害搜救、农林业调查、输电线巡查、广告宣传航拍、航模玩具等,已经成为重要的遥感平台。

以农业调查为例,传统的调查方式为到现场抽样调查或用航空航天遥感。

抽样的方式工作量大,而且准确性受主观因素影响;而遥感的方式可以大范围同时调查,时效性和准确性都有保证,但只能得到大型作物的宏观的指标,而且成本很高。

四轴飞行器飞行原理

四轴飞行器飞行原理

四轴飞行器飞行原理四旋翼飞行器结构形式如图所示,电机1和电机3逆时针旋转的同时,电机2和电机4顺时针旋转,因此当飞行器平衡飞行时,陀螺效应和空气动力扭矩效应均被抵消。

与传统的直升机相比,四旋翼飞行器有下列优势:各个旋翼对机身所施加的反扭矩与旋翼的旋转方向相反,因此当电机1和电机3逆时针旋转的同时,电机2和电机4顺时针旋转,可以平衡旋翼对机身的反扭矩。

四旋翼飞行器在空间共有6个自由度(分别沿3个坐标轴作平移和旋转动作),这6个自由度的控制都可以通过调节不同电机的转速来实现。

其基本运动状态分别是:(1)垂直运动;(2)俯仰运动;(3)滚转运动;(4)偏航运动;(5)前后运动;(6)侧向运动;在控制飞行器飞行时,有如下技术难点:首先,在飞行过程中它不仅受到各种物理效应的作用,还很容易受到气流等外部环境的干扰,很难获得其准确的性能参数。

其次,微型四旋翼无人飞行器是一个具有六个自由度,而只有四个控制输入的欠驱动系统。

它具有多变量、非线性、强耦合和干扰敏感的特性,使得飞行控制系统的设计变得非常困难。

再次,利用陀螺进行物体姿态检测需要进行累计误差的消除,怎样建立误差模型和通过组合导航修正累积误差是一个工程难题。

这三个问题解决成功与否,是实现微型四旋翼无人飞行器自主飞行控制的关键,具有非常重要的研究价值。

下面将逐个说明飞行器的各种飞行姿态:垂直运动——在图中,因有两对电机转向相反,可以平衡其对机身的反扭矩,当同时增加四个电机的输出功率,旋翼转速增加使得总的拉力增大,当总拉力足以克服整机的重量时,四旋翼飞行器便离地垂直上升;反之,同时减小四个电机的输出功率,四旋翼飞行器则垂直下降,直至平衡落地,实现了沿z轴的垂直运动。

当外界扰动量为零时,在旋翼产生的升力等于飞行器的自重时,飞行器便保持悬停状态。

保证四个旋翼转速同步增加或减小是垂直运动的关键。

俯仰运动——在图(b)中,电机1的转速上升,电机3的转速下降,电机2、电机4的转速保持不变。

四轴

四轴

11. 外形2.工作原理旋翼对称分布在机体的前后、左右四个方向,四个旋翼处于同一高度平面,且四个旋翼的结构和半径都相同,四个电机对称的安装在飞行器的支架端,支架中间空间安放飞行控制计算机和外部设备。

结构形式如下图所示。

对于姿态测量和控制来说,两种方式差别不大.对于姿测量和控制来说两种方式差别不大考虑到可能会使用图像相关传感器,为了使视线不被遮挡,所以大部分采用X模式。

飞行器运动方向行动方向“十”字模式“X”字模式四旋翼飞行器通过调节四个电机转速来改变旋翼转速,实现升力的变化,从而控制飞行器的姿态和位置。

四旋翼飞行器是一种六自由度的垂直升降机,但只有四个输入力,同时却有六个状态输出,所以它又是一种欠驱动系统。

微型飞行器的动力学模型如图所示飞行器载体坐标系,原点固定于飞行器的重心,以坐标轴,分别指向飞行飞行器载体标系原点固飞行器标别指向飞行器的前( 横滚轴)右( 俯仰轴) 和下( 偏航轴) 方向选取导航坐标系为参考坐标系,分别指向北东和当地垂线向下方向和分别代表飞行器受到转矩和升力图,四旋翼飞行器动力学模型四旋翼飞行器产生基本动作的原理为: 电机1和3逆时针旋转驱动两个反桨产生升力,电机2和4顺时针旋转驱动两个正桨产生升力.反向旋转的两组电机和桨使其各自对机身产生的转矩相互抵消,保证4个电机转速一致时机身不发生转动。

电机1和4转速减小( 增大) ,同时电机2和3转速增大( 减小) ,产生向前( 后)()同时电机()产生向前()方向的运动.电机1和2转速减小( 增大) ,同时电机3和4转速增大( 减小) ,()方向的运动()()产生向左( 右) 方向的运动.4个电机转速同时增大( 减小) 产生向上( 向下) 的运动.对角线的电机一组转速增大,另一组转速减小产生自身旋转运动。

3.四旋翼的基本组成:3.1电机、电调、正反桨、电池、机架、遥控、飞控。

3.2电机的种类:分为有刷和无刷两类。

有刷主要有空心杯和碳刷型的直流电机,主要是可以体积做到非常小,价格相对来说便宜。

四轴飞行器PPT

四轴飞行器PPT

3.4 无刷马达旋转螺旋桨来提 供升力,以推动飞行器。与有 刷马达相比,无刷马达具有扭 % 力大、低耗损的优点,但由于 其结构,必须加上一些电路与 较为复杂的方法控制。本次使 用KV的无刷马达。见图四
Байду номын сангаас
50
图四
图三
3.5 电池提供控制板与马达电源。本 次专题使用11.1V1500mAh的锂电池( 最大放电25C,瞬间35C),如图五所 示。
映射到电机
32%
4
成果展示
2
系统整体框图
四轴飞行器的系统运作示意图如右 图所示,微控制器从传感器读取信 息,转换成飞行器姿态,飞行器上 的微控制器依此当前姿态,转换成 PWM信号控制电调,改变无刷电机 转速,来达到自主平衡与方向控制 。
传感器组
四轴飞行器
I^2C总线
PWM 单片机 电调 无刷电机
32%
3
硬件及软件设计
此次四轴飞行器的结构由两对正反桨、四颗无 刷马达、四个电子调速器(电调)、一颗电池构成 。 3.1 机身用来放置控制器、马 达、电池…等等的平台。机身 的大小,会限制螺旋桨的长度 ,进而影响到负载的大小;机 身的硬度,会使感测器受到马 达所产生震动影响的大小。本 次专题使用对角长度250mm的 机身。如图一
研究背景及意义:
近年来,由于微机电系统(Micro Electro Mechanical Systems,MEMS)技术快速发展,同时低成本、普及的传感器的产 生。便出现以算法与传感器为核心的四轴飞行器成为热门的研究课 题,其有着重量轻、体积小、结构简单、机动性高、维护方便等优 点。 四轴飞行器基于以上优点,可以应用于实时监控、地形探勘、 灾区救援及收寻。
3.7 惯性测量单元(IMU) 如图为单片机的I2C接口与传 感器的连接示意。 % 使用I2C总线即可与多个装置 通信。 本次使用MPU6050(三轴加速 度陀螺仪传感器)与HMC5883 (电子罗盘)。

四旋翼飞行器控制系统ppt课件

四旋翼飞行器控制系统ppt课件
7
四旋翼飞行器的6种 基本运动状态
8
9
总体结构
电池
电调1 电调2 电调3 电调4
传感器
飞行控制板
10
电机1 电机2 电机3 电机4
无线传输模块
控制系统电源
四旋翼飞行器采用3.7伏 锂电池供电,用1sUSB充 电器给锂电池进行充电。
11
飞行控制板
四旋翼飞行控制板计划采用STM32作 为主控制器,STM32是一款基于ARM的 32位MCU的闪存、USB、CAN、7个16 位定时器、两个ADC和9个通信接口的芯片。 STM32丰富的片上资源可满足各类传感器 通讯需求,与传统飞行控制器相比,大大的 降低了开发成本,节约了资源。是一款非常 适合本项目开发使用的单片机。
12
无线通信模块
无限通信模块采用2.4G无线收发 模块nRF24L01来实现四旋翼飞行器 与遥控器之间信息的交互,实现遥控 器对四旋翼飞行器的操控,遥控器用 一块1S锂电池经升压板输出9伏电压 作为电源。
13
传感器
为实现四旋翼飞行器的人工智能,除采用传 统的6轴传感器MPU6050,我们将尝试用超声 波传感器,红外传感器,增加摄像头,用DSP芯 片进行数据处理实现自动壁障,加入电压传感器, 实现对电源的实时监控,加入了GPS全球卫星定 位系统使其拥有了自动导航等功能,在本系统的 基础上,我们还将添加电子罗盘,将偏航角引入 到导航计算中,从而使飞行器的飞行路线更加精 确与稳定。
14
程序流程图
开始 系统初始化 接受解码遥控信号 设置相应飞行参数
3ms中断?
进行短周期数据融合 数据采集次数=160xn?
进行长周期数据融合 控制量输出
采集传感器数据
15

四 轴 飞 行 器

四 轴 飞 行 器

四轴飞行器姓名:冯毅专业:自动化学号:13061315姓名:专业:学号:姓名:专业:学号摘要四轴飞行器作为低空低成本的遥感平台,在各个领域应用广泛。

相比其他类型的飞行器,四轴飞行器硬件结构简单紧凑,而软件复杂。

可应用于军事上的地面战场侦察和监视,获取不易获取的情报。

能够执行禁飞区巡逻和近距离空中支持等特殊任务,可应对现代电子战、实现通信中继等现代战争模式。

在民用方面可用于灾后搜救、城市交通巡逻与目标跟踪等诸多方面。

工业上可以用在安全巡检,大型化工现场、高压输电线、水坝、大桥和地震后山区等人工不容易到达空间进行安全任务检查与搜救工作,能够对执行区域进行航拍和成图等。

本文主要介绍四轴飞行器的一些原理,以及在领域的应用。

目录1.引言 (2)2.四轴飞行器的国内外情况 (2)2.1.四轴飞行器的主要生产公司 (3)3.飞行器的结构特性 (4)3.1.飞行器的构成 (4)3.1.1.硬件构成 (5)3.1.2.机械构成 (5)3.1.3.电气构成 (5)4.四轴飞行器的运动原理 (5)5.四轴飞行器的应用 (9)5.1.Dronenet应用 (10)5.2.Follow Me Box 的应用 (10)6.附录 (11)1.引言四轴飞行器最开始是由军方研发的一种新式飞行器。

随着MEMS传感器、单片机、电机和电池技术的发展和普及,四轴飞行器成为航模界的新锐力量。

到今天,四轴飞行器已经应用到各个领域,如军事打击、公安追捕、灾害搜救、农林业调查、输电线巡查、广告宣传航拍、航模玩具等,已经成为重要的遥感平台。

以农业调查为例,传统的调查方式为到现场抽样调查或用航空航天遥感。

抽样的方式工作量大,而且准确性受主观因素影响;而遥感的方式可以大范围同时调查,时效性和准确性都有保证,但只能得到大型作物的宏观的指标,而且成本很高。

不连续的地块、小种作物等很难用上遥感调查。

因此,低空低成本遥感技术显得相当重要,而四轴飞行器正符合低空低成本遥感平台的要求。

四轴飞行器概述ppt课件

四轴飞行器概述ppt课件
5
Fig. 1-2 aircraft designed by University of Pennsylvania
Gabriel M. Hoffmann, Steven W. Waslander and Michael P.Vitus are come from Stanford University. They design a aircraft which fly indoor automatically. They combine the information provided by GPS/INS/EC through the extended Kalman filtering algorithm so as to control the stability of aircraft. The aircraft can travel independently through the waypoint preset, meanwhile, it can transmit the flight parameters and image information to mission station real-time through Wi-Fi. We can see the picture in Fig. 1-3.
6
Fig. 1-3 aircraft designed by Stanford University
Home
The domestic research of four rotor unmanned aerial vehicle is at the start stage , technology level is relatively low, but our country are trying to study this kind of aircraft. It is of great significance to do this in the forthcoming future. National University of Defense Technology, Harbin Institute of T7echnology and Beihang University are the leaders in our country.

四轴飞行器

四轴飞行器

四轴飞行器的前后、左右、顺时针和逆时针运动是通过姿态角(角度)来控制的,遥控器是用来设定目标姿态角的,只要测得的姿态与设定的目标姿态进行串级PID控制就可以使四轴飞行器稳定飞行了。

所以做四轴最重要、最关键的就是姿态角测量和串级PID控制。

姿态结算:测量姿态的传感器主要是三轴加速度计、三轴陀螺仪和三轴磁力计。

整个姿态描述的原理是:通过解算地理坐标系和机体坐标系的角度位置关系来得到姿态,由于传感器的测量误差(主要是陀螺仪的积分误差和振动引起的加速度计误差),导致测得的机体坐标系不准,得到的姿态也就会不准确。

因为地理坐标系中的四轴飞行器所受的重力和磁场是个常量,所以将地理坐标系中的重力向量和磁场向量转换到机体坐标系中,此时转换到机体坐标系的重力向量和磁场向量与机体坐标系中测出来的重力向量和磁场向量会有误差,只要消除此误差,就可以校正机体坐标系,进而得到准确的姿态。

消除误差的方法有卡尔曼滤波法、互补滤波法、姿态插值法等。

考虑到计算能力和现有的资料,本设计采用互补滤波法,达到的效果也比较好。

姿态解算算法步骤:姿态解算涉及到坐标的变换,还有互补滤波算法部分。

该算法的实现步骤为:姿态解算C语言算法具体实现:norm =Q_rsqrt(ax*ax + ay*ay + az*az); //加速度计数据归一化ax = ax*norm;ay = ay *norm;az = az *norm;vx = 2*(q1q3- q0q2); //转换成机体坐标系中的重力向量vy = 2*(q0q1+ q2q3);vz = q0q0 -q1q1 - q2q2 + q3q3 ;ex = (ay*vz -az*vy) ; //向量外积就是误差ey = (az*vx -ax*vz) ;ez = (ax*vy -ay*vx) ;exInt = exInt+ VariableParameter(ex) * ex * Ki;//对误差积分eyInt = eyInt+ VariableParameter(ey) * ey * Ki;ezInt = ezInt+ VariableParameter(ez) * ez * Ki;gx = gx + Kp* VariableParameter(ex) * ex + exInt; //补偿陀螺仪gy = gy + Kp* VariableParameter(ey) * ey + eyInt;gz = gz + Kp* VariableParameter(ez) * ez + ezInt;q0 = q0 +(-q1*gx - q2*gy - q3*gz)*halfT; //四元数的微分方程q1 = q1 +(q0*gx + q2*gz - q3*gy)*halfT;q2 = q2 +(q0*gy - q1*gz + q3*gx)*halfT;q3 = q3 +(q0*gz + q1*gy - q2*gx)*halfT;norm =Q_rsqrt(q0q0 + q1q1 + q2q2 + q3q3); //四元数归一化q0 = q0 *norm;q1 = q1 *norm;q2 = q2 *norm;q3 = q3 *norm;angle.pitch =asin(-2*q1q3 + 2*q0q2); //四元数转换成欧拉角angle.roll =atan2(2*q2q3 + 2*q0q1, -2*q1q1 - 2*q2q2 + 1);串级PID控制:姿态角PID+姿态角速度PID姿态角速度就是陀螺仪测量的数据,为了使四轴飞行器稳定飞行,应该使飞行器姿态稳定的时候,姿态速度也应为零,故采用角度和角速度串级PID控制器。

四轴飞行器原理教程

四轴飞行器原理教程

第三章四轴飞行器程序设计
电池越重。基本原理是用大桨,因为整体搭配下来功率高,自身升力大,为了 保证可玩时间,可选高容量,高 C,3S 以上电池。最低建议 2200mAh,20C,3S。 小四轴,因为自身升力有限,整体功率也不高,就可以考虑小容量,小 C,3S 以下电池。 平衡充电什么意思 ? 如 3S 电池,内部是 3 个锂电池,因为制造工艺原因,没办法保证每个电池完全
算法总结 姿态解算得 到姿态角 遥控器设 定目标
姿态解算
整个姿态解算的原理是:由于加速度计噪声误差和陀螺仪积分误差,导致测 得的机体坐标系不准,得到的姿态也就会不准确。因为地理坐标系中飞行器所受 的重力和磁场是个常量,如果将它们转换到机体坐标系中,转换后的重力向量和 磁场向量与实际测量的向量会有误差,只要消除此误差,就可以校正机体坐标系 得到准确的姿态。消除误差采用PI互补滤波,姿态表示用四元数(a+bi+cj+dk, 且 ) 姿态角通过串级PID控制电机转速
2.4无刷电机与螺旋桨篇
电机分为有刷电机和无刷电机,无刷是四轴的主流,它力气大,耐用,有刷电 机就是我们所说的马达,用于微型四轴。
电机的型号含义? 说什么 2212 电机,2018 电机等等, 到底是什么意思呢?这其实电机的 尺寸。不管什么牌子的电机,具体 都要对应 4 位这类数字,其中前面
2 位是电机转子的直径,后面 2 位
飞行动作
姿态解算算法的实现步骤为:
* 将滤波后的三轴加速度计值归一化,该值为机体坐标系下重力向量的测量值
* 将地理坐标系的重力向量转换到机体坐标系中
* 将地理坐标系转换到机体坐标系下的重力向量与机体坐标系测量的向量外积
(叉积),得到的就是两坐标系的误差。

四旋翼飞行器无线遥控技术PPT文档共65页

四旋翼飞行器无线遥控技术PPT文档共65页

1.3 遥测和遥控的关系及开环、闭环控制系统 (1)遥控和遥测的关系:
控制端
被控对象 监测系统
常用的监测系统:遥测、雷达和电视监控等。
(2)闭环控制系统:有完善的监测系统(设备)的遥控 系统。
(3)开环控制系统:无需监测设备的简单遥控系统(监 测常由控制者的眼睛实现)。
无线电遥控的特点 无线电遥控式使用无线电为载体来传送遥控命令的,具有较强 的辐射能力,能穿越墙壁和障碍物,遥控距离远等特点。 无线电遥控的缺点是,容易引起互相干扰。为避免互相干扰造 成误操作,也为避免其他众多的无线电发射装置所发射的无线 电波对遥控装置的干扰,在实际应用中,必须采用编码技术。
频 频分制单路遥控设备:在同一时间内仅可传送一个控制指令。 分 制 遥 控 设 备 频分制多路遥控设备:同一时间内可以同时传送多个控制指令。
➢ 遥控指令:遥控系统中由控制端向被控端传送的指示被控对象工作或如 何工作的命令(信号) 。 遥控指令的特点:特征明显、相互间易于区分(电信号)。例如 用不同频率代表不同的指令,或用不同幅度、脉宽、相位及码组特征等 表尔各种指令,也可用声音、图像、文字、数据等作为遥控用的指令信 号。
遥控指令的输入方式:按键、开关、键盘,还有声音、光信号。
所有遥控方式均由发射与接收两大部分组成。其中发射电路的主要作用 是产生载波,并由调制解调器将指令信号调制在载波上,经天线将以调 制载波发射出去。接收电路包括高频部分及解调器部分(解码器)。
指 令编 产码 生器 器
发 射 电 路
接 收 电 路
译 码 器
处 理 器
执 行 机 构
图2.无线遥控系统结构图
控制指 令
➢ 多路多通道——可在同一时间内同时传送多个遥控指令,它的 执行机件在同一时间内可同时执行或动作。多路多通道的无线
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

谢谢大家
中断函数
• void Angle_Calculate() interrupt 1 • { • Read_MPU(); • MPU_pro(); • Get_Control_Data() ; • MainControl(); • }
• 注意:我们的所有函数都是在30mz的频率下运行 的。 • 因为要控制飞行器的姿态所以要用到传感器获取 飞行器的姿态。我选用的mpu6050传感器,自带 3轴角速度和3轴重力加速度计。可以获取飞行器 的角度和角速度。所以我们需要实现获取传感器 数据的底层函数 • InitMPU6050();//初始化MPU-6050 • Read_MPU();//
限幅
• • • • • • • • • • • • • • • • • • • if( PWM_XZ<MinPeriod) PWM_XZ=MinPeriod; else if( PWM_XZ>MaxPeriod) PWM_XZ=MaxPeriod; if( PWM_XF<MinPeriod) PWM_XF=MinPeriod; else if( PWM_XF>MaxPeriod) PWM_XF=MaxPeriod; if( PWM_YZ<MinPeriod) PWM_YZ=MinPeriod; else if( PWM_YZ>MaxPeriod) PWM_YZ=MaxPeriod; if( PWM_YF<MinPeriod) PWM_YF=MinPeriod; else if( PWM_YF>MaxPeriod) PWM_YF=MaxPeriod;
个人的一些理解
• 粗略的可以认为四元数是一种描述四维空间坐标的一种方 式。可以利用它表示空间的伸缩和旋转。由于三维的复数 是不存在的(至今没有证明出),所以数学家们把目光投 向了四维复数。所以今天我们利用四元数来坐姿态的解算, 利用四元数解算世界坐标系,然后转换为欧拉角。欧拉角 是一个坐标系到另一个坐标系的变换,可以通过依次绕不 同的坐标轴的3次连续转动来定义。从物理角度看,欧拉 角表示法可能是最简单的方法之一。我们用陀螺仪和加速 度计所测得的量都是相对于世界坐标系的值,为了在控制 的上的更直观,更方便准确我们将坐标系转换为机载坐标 系,而姿态解算就是这个转换的过程。
• • • • • • • 我们需要mcu做什么? 1、驱动电机 2、获取加速度、角速度数据 3、姿态解算滤波 4、控制算法 5、接收遥控器信号 6、调试数据输出
对应于驱动程序
• • • • • • • 1、驱动电机 2、获取加速度、 角速度数据 3、姿态解算滤波 4、控制算法 5、接收遥控器信号 6、调试数据输出 • Pwm波驱动 • iic通信 • • • • 四元数+卡尔曼 串级pid Spi+2401 Uart+串口示波器
• 控制飞行器的运动方向只要我们在平衡控 制环内传入控制量,打破水平姿态即可控 制运动。
控制算法
• 由于飞行器在控制当中属于一个二阶阻尼 系统,因此采用串级pid算法可以得到比较 稳定的控制 • 串级pid:
• 飞行器中的串级pid • 外环:角度值 p 或pi • 内环:角速度 p、d
• 可能大家查过资料中有很多写的是外环p、i 内环p、i、d,我这里利用的是内环p、d,原 因是我认为i项主要用于静态误差消除,但是 对于初学者,加上i项调试比较困难,而且效 果不明显。内环利用pd已经可以稳定飞行, 当然同样希望大家努力探索出更好地控制方 法。
2、姿态解算
• 四元数与欧拉角:
• 欧拉角与四元数姿态表示方法是目前工程上最常用 的两种方法。欧拉角表示法具有简便、几何意义明 显等优点,同时姿态敏感器可以直接测出这些参数, 能较方便地求解用这些姿态参数描述的姿态动力学 方程。但采用欧拉角的姿态描述方法存在奇点问题, 且需多次三角运算。而采用四元数表示方法则可以 避免这些问题,因此目前工程上开始采用四元数来 描述飞行器运动及动力学方程中的姿态,而在设计 控制规律时,由于欧拉角的直观性和几何意义,仍 然采用欧拉角描述。
算法上的实现
• 外环: (我的外环仅仅用了p项) • 外环输出值=p*(实际姿态解算角度值-平衡位置 姿态值-控制量) • exValue.Pitch_p =expidPitch.p*(Attitude.pitchControldata_PITCH-XStaticSet ); exValue.Roll_p =expidRoll.p*(Attitude.rollControldata_ROLL-YStaticSet ); • exValue.Yaw_p =expidYaw.p* (Attitude.yawSETYAW+Controldata_YAW);
• void Time0_Init() 12T自动重载 • { • AUXR &= 0x7F; • TMOD &= 0xF0; • TL0 = 0x58; • TH0 = 0x9E; • TF0 = 0; • TR0 = 1; • EA=1; • ET0=1; • }
//10ms@30MHz 定时器0 16位 //定时器时钟12T模式 //设置定时器模式 //设置定时初值 //设置定时初值 //清除TF0标志 //定时器0开始计时
• 具体的调试过程需要写很多篇,因为时间 有限,内容过多不动手做光看也会很无聊, 所以就另写了一篇姿态解算调试文档,大 家可以课下观看。网址发给大家:
控制算法
• 四轴飞行器的飞行建立于平衡控制的基础 之上。 • 飞行器的平衡即为飞行器的x轴以及y轴平 衡。也就是飞行器的俯仰和横滚能够维持 在一个固定下效果:解算前:
解算后
• 发现滤波后的波形去除了尖峰以及抗干扰 能力明显增强,可以满足要求。
算法实现
• • • • 调节参数: #define Kp 1.0f //10.1f #define Ki 0.005f//0.011f #define halfT 0.0053f
1、pwm波驱动
• • • • • • 软件底层的需要: 首先需要设定4路pwm波来控制四路电机 15需要用timer2来设定pwm频率 建议5k-10k频率 void Time2_Init() { AUXR &= 0x7F; //定时器时钟12T模式
• T2L = 0xEB; • T2H = 0xFF; • • } • 还需要配置pwm波发生器的其他寄存器 代码在工程中的pwmgo里面 太长不粘了 • 还有一个函数控制pwm波的占空比,我们就是利用占空比来控制电机 的转速的。
内环pd
• 内环输出=p*(实际角速度值+外环输出角 度值)-d*(当前角速度-上一次角速度) • 也就是将外环输出的角度值作为期望值加 入内环控制当中。
最终的整合用于pwm输出控制四个 电机转速
• 1号电机pwm输出值=油门+pwm最小值-俯 仰控制量+横滚控制量+偏航控制量; • 2号电机pwm输出值=油门+pwm最小值+俯 仰控制量-横滚控制量+偏航控制量; • 3号电机pwm输出值=油门+pwm最小值-俯 仰控制量-横滚控制量-偏航控制量; • 4号电机pwm输出值=油门+pwm最小值+俯 仰控制量+横滚控制量-偏航控制量;
• 做完这些底层函数我们可以开始进行调节 了 • 首先介绍一下传感器
• mpu6050
重力加速度计可以换算成角度值, 角速度计输出的是角速度。 我们需要获取飞行器的姿态就 需要知道角度和角速度 下图是角度输出的波形
下图是角速度输出的波形
对比
• 可以看出角速度相对平滑,动态特性好静 态特性差,角度值动态特性查抗干扰能力 低。直接利用传感器输出的角度值不能满 足控制要求,因为干扰太大,利用角速度 积分也不可以因为积分会导致误差的累积, 最终导致系统崩溃。因此我们需要一种滤 波算法以及坐标系转换的算法来对姿态值 进行解算。
类型
十字型
Y型
飞行器的运动模型
X型
姿态控制
俯仰 横滚 偏航 Pitch Roll Yaw
垂直运动
俯仰
向前
向后
横滚
向右
向左
偏航
四轴飞行器的组成 电池
遥控器
螺 旋 桨
电 机
电 机 驱 动
稳压电源 接收机
主控
大气压力计、电 子罗盘、gps、 osd、数传….
陀螺仪
加速度计
软件篇
• void IMUupdate(float gx, float gy, float gz, float ax, float ay, float az)
• 具体解算过程、矩阵转换等等….请查询四 元数,网上资料很多,但也比较复杂。 (由于本人长时间不用复数以及矩阵转换 等,数学基础不好,为了避免误导大家, 就不和大家细说了。)
•还有一个函数控制pwm波的占空比, •我们就是利用占空比来控制电机的转速的。
•还有一个函数控制pwm波的占空比,我们就是利用占空比来控制电机的转速的。
• 然后还需要设定一个稳定的控制周期。控 制周期的意思就是每隔多长时间对姿态进 行一次控制。根据15的运行速度以及电机 的响应速度,我将控制周期设定在10ms, 每10ms控制一次。因此需要用定时器设定 一个10ms的中断。
从实践出发制作飞行器
前言:
我假定为学习本课程的同学都拥有一定的C语言基础, 并且学习过一定的单片机相关的知识,拥有一些单片机的 开发经验。课程当中 飞行器的开发主控是stc公司出品的 iap15w4k60s4芯片,这是一款基于51内核的单片机。选 择这款芯片的原因主要是为了让初学者更容易理解,底层 驱动更容易开发。当然如果你在开发领域已经是大神级, 那么你应该能够根据这节课程很容易的将程序移植到任意 一款你所喜欢的芯片当中。
我与飞行器相识的过程
讲述内容依赖的硬件
相关文档
最新文档