基于STM32的四旋翼飞行器设计
基于STM32的四轴飞行器设计

基于STM32的四轴飞行器设计引言:四轴飞行器(Quadcopter)是一种重量轻、机动性强的飞行器,在无人机技术中应用广泛。
本文将介绍基于STM32的四轴飞行器设计。
一、STM32介绍:STM32是意法半导体公司推出的一款高性能32位微控制器系列,它具有强大的计算处理能力和丰富的外设资源,非常适合用于四轴飞行器的设计和控制。
二、硬件设计:1.处理器选择:选用性能较高的STM32系列微控制器作为飞行器的主控制单元,可根据实际需求选择合适的型号。
考虑到计算处理能力和外设资源的要求,建议采用高性能的STM32F4系列或STM32H7系列微控制器。
2.传感器:四轴飞行器需要借助多种传感器来获取飞行状态的信息,包括陀螺仪、加速度计、磁力计等。
这些传感器可以通过I2C或SPI接口与主控制单元连接,以获取实时的飞行姿态和姿态控制信息。
3.无线通信模块:可选择适合的无线通信模块,如Wi-Fi模块或蓝牙模块,用于与地面站或其他设备进行数据传输和控制指令的交互。
通过无线通信模块,可以实现四轴飞行器的遥控操作和数据传输。
4.电机和电调:四轴飞行器需要四个无刷电机和相应的电调来实现动力推力的控制。
电机和电调的选择应根据载荷和预期飞行能力来确定,同时需要考虑与主控制单元的通信接口兼容性。
5.电源系统:四轴飞行器需要一种可靠的电源系统来驱动其各个部件。
主要包括锂电池、电流传感器和稳压模块。
电流传感器用于监测整个系统的功耗,稳压模块用于为主控制单元和其他模块提供稳定的电源。
6.启动与显示模块:飞行器需要一种方便的启动与显示模块来显示系统状态和预警信息。
可以选择配备一块小型的液晶显示屏或LED指示灯,以及相关的按键和蜂鸣器。
三、软件设计:1.实时操作系统(RTOS):可以选择合适的RTOS系统,如FreeRTOS或CMSIS-RTOS,用于实现四轴飞行器的任务管理和调度。
RTOS可以提供任务优先级调度、实时中断处理等相关功能,保证飞行器的实时性和稳定性。
基于STM32的四旋翼无人机设计

基于STM32的四旋翼无人机设计无人机技术的发展已经逐渐成为科技领域的热门话题,而四旋翼无人机则是其中一种应用广泛的无人机类型。
它可以应用于农业、航拍、物流等各种领域,具有很大的市场潜力。
本文将介绍基于STM32的四旋翼无人机设计,讨论其硬件构架和软件系统,希望可以为无人机爱好者提供一些技术方面的参考和帮助。
一、硬件构架1. 电机和螺旋桨四旋翼无人机采用四个电机驱动四个螺旋桨来产生上升力和姿态控制。
选择合适的电机和螺旋桨对于无人机的飞行性能至关重要。
电机需要具备足够的功率和转速来推动螺旋桨产生足够的升力,并且要求响应速度快,可以方便地实现姿态控制。
螺旋桨的尺寸、材质和设计也需要仔细选择和匹配,以确保其具有良好的气动性能和结构强度。
在选用电机和螺旋桨时,还需要考虑整机的配比和平衡,以保证无人机的飞行平稳性和操控性。
2. 传感器系统无人机的传感器系统是其智能化和自主飞行的关键。
常见的传感器包括陀螺仪、加速度计、罗盘、气压计等。
这些传感器可以实现无人机的姿态感知、空间定位和高度控制等功能,从而保证无人机的飞行稳定性和精准性。
在选择传感器时,需要考虑其精度、响应速度、通信接口和适应环境等因素,以保证传感器系统可以满足无人机的实际飞行需求。
3. 控制系统基于STM32的四旋翼无人机设计通常采用飞控主板来实现飞行控制和数据处理。
飞控主板集成了微处理器、传感器接口、无线通信模块等功能,可以实现无人机的自主控制和遥控操作。
在设计控制系统时,需要考虑飞行控制算法、通信协议、数据处理速度等因素。
飞控主板还可以通过扩展接口连接其他外围设备,如GPS模块、避障传感器、摄像头等,实现更丰富的功能和应用。
二、软件系统1. 飞行控制算法飞行控制算法是基于传感器数据和飞行器状态信息,实现对电机转速和螺旋桨姿态的智能控制。
常见的飞行控制算法包括PID控制、自适应控制、模糊控制等。
这些算法可以根据无人机的动力学特性和环境变化,实现稳定的姿态控制、高效的空间定位和精准的高度控制。
采用STM32设计的四轴飞行器飞控系统

采用STM32设计的四轴飞行器飞控系统四轴飞行器飞控系统是一种应用于四轴飞行器上的关键控制设备。
它包括硬件和软件两个部分,用于控制飞行器的姿态、稳定性和导航等功能。
其中,采用STM32设计的四轴飞行器飞控系统因其高性能、低功耗和丰富的外设资源而受到广泛关注。
一、硬件设计:1.处理器模块:采用STM32系列微控制器作为处理核心。
STM32系列微控制器具有较高的计算能力和丰富的外设资源,能够满足飞行控制的计算需求。
2.传感器模块:包括加速度计、陀螺仪、磁力计和气压计等传感器。
加速度计用于测量飞行器的线性加速度,陀螺仪用于测量飞行器的角速度,磁力计用于测量飞行器的方向,气压计用于测量飞行器的高度。
3.无线通信模块:采用无线通信模块,如蓝牙、Wi-Fi或者无线射频模块,用于与地面站进行通信,实现飞行参数的传输和遥控指令的接收。
4.电源管理模块:对飞行器的电源进行管理,确保各个模块的正常运行。
包括电池管理、电量检测和电源开关等功能。
5.输出控制模块:用于控制飞行器的电机、舵机等执行机构,实现对飞行器的姿态和动作的控制。
二、软件设计:1.飞行控制程序:运行在STM32微控制器上的程序,用于实时读取传感器数据、运算控制算法、输出控制信号。
该程序包括姿态解算、飞行控制和导航等模块。
-姿态解算模块:根据加速度计、陀螺仪和磁力计等传感器数据,估计飞行器的姿态信息,如俯仰角、横滚角和偏航角。
-飞行控制模块:根据姿态信息和目标控制指令,计算出电机和舵机的控制信号,保证飞行器的稳定性和灵敏度。
-导航模块:利用GPS等导航设备获取飞行器的位置和速度信息,实现自动驾驶功能。
2.地面站程序:在地面计算机上运行的程序,与飞行器的无线通信模块进行数据交互。
地面站程序可以实时监测飞行器的状态和参数,并发送控制指令给飞行器。
总结:采用STM32设计的四轴飞行器飞控系统是一种高性能、低功耗的控制设备,包括硬件和软件两个部分。
硬件包括处理器模块、传感器模块、无线通信模块、电源管理模块和输出控制模块。
基于STM32的四旋翼飞行器设计

摘要四轴飞行器是一种结构紧凑、飞行方式独特的垂直起降式飞行器,与普通飞行器相比,具有结构简单、故障率低和单位体积能够产生更大升力等优点,所以在军事和民用多个领域都有广阔的应用前景,非常适合在狭小空间内执行任务。
本设计采用stm32f103zet6作为主控芯片,3轴加速度传感器mpu6050作为惯性测量单元,通过2.4G无线模块和遥控板进行通信,最终使用PID控制算法以PWM方式控制电子调速器驱动电机实现了四轴飞行器的设计。
关键词:四轴飞行器,stm32;mpu6050,2.4G无线模块.PID.PWMAbstractQuadrocopter has broad application prospect in the area of military and civilian because of its advantages of simple structure. Small size, low failure rate, taking off and landing ertically . etc. it is suitable for having task in narrow space.This design uses STM32f103zet6 as the master chip, and triaxial accelerometer mpu6050 inertial measurement unit, via 2.4G wireless module and remote control panel for communication. Finally using pid control algorithm with pwm drives the electronic speed controller to change moto to realize the design of quadrocopter.Key word : quadrocopter,stm32,mpu6050,2.4G wireless module ;pid; pwm目录第一章作品难点与创新 (1)1.1作品难点 (1)1.2创新点 (1)第二章方案论证与设计 (2)2.1飞控部分硬件框图 (2)2.2遥控器部分硬件框图 (2)2.3各部分元器件介绍 (3)2.3.1 stm32介绍 (3)2.3 .2电子调速器 (4)2.3.3 mpu6050六轴传感器 (5)2.3.4 无线通信NRF24L01 (6)第三章原理分析与硬件电路图 (8)3.1 飞行器空气动力学分析 (8)3.2飞控部分硬件电路图设计 (10)3.3 遥控部分硬件电路图设计 (10)第四章软件设计与流程 (11)4.1 pid算法分析 (11)4.2串级pid系数的整定 (12)4.3串级pid系统框图 (13)4.3.1 飞控部分程序设计 (14)4.3.2遥控部分程序设计 (14)第五章系统测试与误差分析 (15)第六章总结 (19)参考文献 (21)第一章作品难点与创新1.1作品难点对于一种芯片,最麻烦的就是底层的驱动了,很多驱动得自己编写,为了最大发挥处理器的性能,做了很多驱动优化,将不必要的延时降到最低,比如I2C 总线驱动,官方的代码不符合自己的要求,通信效率低,我们花了几天的时间去优化这个驱动,使用了模拟的IIC接口,最后在保证稳定性的前提下,速度提高了一倍。
基于STM32的四轴飞行器设计

基于STM32的四轴飞行器设计四轴飞行器是一种常见的航空模型,它由四个电动马达驱动,通过调整转速控制飞行器的姿态和位置。
在本文中,我将介绍如何使用STM32微控制器设计一个四轴飞行器。
这项设计需要以下四个组成部分:飞行控制器、传感器、电动机和通信模块。
首先,我们需要一个飞行控制器来处理飞行器的姿态控制和位置控制。
我们可以使用STM32微控制器作为飞行控制器,因为它具有强大的计算能力和高性能的外设。
STM32微控制器通常具有多个通用输入/输出引脚,用于连接传感器和电动机。
此外,STM32微控制器还可以运行飞行控制算法并控制电动机的转速。
其次,我们需要一些传感器来感知飞行器的姿态和位置。
常见的传感器包括陀螺仪、加速度计和磁力计。
陀螺仪可以测量飞行器的旋转速度和方向,加速度计可以测量飞行器的加速度和倾斜角度,磁力计可以测量飞行器相对于地球磁场的方向。
这些传感器的测量数据将用于计算和控制飞行器的姿态和位置。
第三,我们需要四个电动机来驱动飞行器的运动。
每个电动机都连接到飞行控制器的输出引脚,并通过调整电动机转速来调整飞行器的姿态和位置。
通过控制四个电动机的转速,我们可以实现飞行器在空中的稳定飞行和准确控制。
最后,我们需要一个通信模块来与飞行器进行通信。
通常,我们使用无线通信模块,如蓝牙或无线局域网,来控制飞行器的飞行和监控其状态。
通过与通信模块连接,我们可以使用智能手机或其他设备来发送指令和接收飞行器的数据。
在设计四轴飞行器时,我们需要首先将传感器和电动机连接到STM32微控制器。
然后,我们需要编写飞行控制算法并将其加载到STM32微控制器上。
接下来,我们可以使用通信模块与飞行器连接并发送控制指令。
最后,我们可以启动电动机并观察飞行器的飞行和姿态控制效果。
总之,基于STM32微控制器的四轴飞行器设计是一个复杂而有趣的工程项目。
通过合理选择传感器、编写飞行控制算法和使用通信模块,我们可以实现一个高度稳定和可控的四轴飞行器。
基于STM32的四旋翼飞行器设计

基于STM32的四旋翼飞行器设计四旋翼无人机是一种多轴飞行器,由四个电机驱动四个旋翼产生升力来进行飞行。
它具有简单结构、灵活机动、携带能力强等特点,被广泛应用于航空航天、电力、农业、测绘和娱乐等领域。
本文将基于STM32微控制器,设计一个基本的四旋翼飞行器。
首先,我们需要选用一款合适的STM32微控制器作为核心控制单元。
根据不同需求,可以选择不同型号的STM32芯片。
需要考虑的因素包括处理器性能、输入输出接口、通信接口等。
接下来,我们需要选用合适的电机和电调。
电机和电调是四旋翼飞行器的动力系统,直接影响飞行器的性能。
选择电机时需要考虑电机功率、转速、扭矩等参数。
而选择合适的电调则需要考虑电流容量、控制方式等因素。
四旋翼飞行器还需要传感器来获取飞行状态和环境信息。
常见的传感器包括陀螺仪、加速度计、磁力计和气压计等。
这些传感器将实时提供飞行器的姿态、加速度、地理位置和气压等数据,用于飞行控制。
在飞行控制方面,我们需要实现飞行器稳定的控制算法。
PID控制器是常用的控制算法之一,通过调节电机转速来控制飞行器的姿态。
PID控制器的参数需要根据实际情况进行调整,以实现稳定的飞行。
此外,四旋翼飞行器还需要通信功能,以便与地面站进行数据传输。
常见的通信方式有蓝牙、Wi-Fi和无线电调制解调器等。
通信功能可以实现飞行器的遥控和数据传输,使飞行器具备更广阔的应用空间。
最后,为了实现全自动飞行,还可以加入GPS导航系统和图像处理系统。
GPS导航系统可以提供精准的飞行位置和速度信息,通过编程实现预设航点飞行。
图像处理系统可以通过摄像头获取实时图像,并进行目标识别和跟踪,实现智能飞行等功能。
综上所述,基于STM32的四旋翼飞行器设计需要考虑微控制器选型、电机电调选择、传感器使用、飞行控制算法、通信功能等方面。
通过合理的设计和编程,可以实现一个功能齐全、性能稳定的四旋翼飞行器。
基于STM32的四旋翼飞行器姿态测量系统设计

基于STM32的四旋翼飞行器姿态测量系统设计曹延超【期刊名称】《软件》【年(卷),期】2015(000)001【摘要】With the development of unmanned aerial vehicles, four-rotor aircraft attracts more and more researchers' attention. This paper presents a rotor aircraft attitude measurement system design based on the STM32. The attitude mea-surement platform based on STM32 is a data acquisition and attitude calculation platform. In this paper, the system on the STM32 transplants themC / OS-Ⅲ operating system, which gathers acceleration, angular velocity, and data from other sensors, and uses quaternion algorithm, Kalman filtering to achieve attitude measurement data. At last, this platform trans-ports attitude measurement data to PC soft through the wireless module. With wireless receiver module, PC soft can display attitude acquisition. Finally, through a comprehensive experiment on this platform, it has verified the platform's feasibility and effectiveness, which can get the effective attitude measurement data in time.%随着无人飞行器的发展,四旋翼飞行器逐渐受到更多研究者的关注。
基于STM32的四旋翼飞行器控制系统设计

基于STM32的四旋翼飞行器控制系统设计引言:四旋翼无人机近年来逐渐走向商业化和日常生活化,广泛应用于航拍、货运、农业等领域。
为了保证飞行器的平稳、安全飞行,需要设计一个可靠的控制系统。
本文基于STM32单片机,设计了一种适用于四旋翼飞行器的控制系统。
一、硬件设计1.主控板主控板采用STM32单片机,该单片机具有高性能、低功耗、强大的控制能力等优势。
它能够完成飞行器的数据处理、控制输出等任务。
2.传感器为了获取飞行器的姿态信息,需要使用加速度传感器和陀螺仪。
加速度传感器用于测量飞行器的加速度,陀螺仪用于测量飞行器的角速度。
这些传感器通常被集成在一块模块上,直接连接到主控板。
3.遥控器为了实现飞行器的遥控操作,需要使用遥控器。
遥控器通过无线通信与主控板进行数据传输,控制飞行器的起降、悬停、转向等操作。
4.电源管理飞行器控制系统需要提供可靠的电源供电。
因此,需要设计一个电源管理模块,包括锂电池、电池充电管理电路和电源开关等。
二、软件设计1.姿态估计通过加速度计和陀螺仪的数据,使用滤波算法(如卡尔曼滤波)对飞行器的姿态进行估计。
根据姿态的估计结果,可以计算出飞行器的控制输出。
2.控制算法针对四旋翼飞行器,常用的控制算法有PID控制算法和模糊控制算法。
PID控制算法通过比较飞行器的期望姿态和实际姿态,计算出相应的控制输出。
模糊控制算法可以根据模糊规则和模糊集合来计算出控制输出。
3.通信模块为了实现与遥控器之间的无线通信,需要使用无线通信模块,例如蓝牙模块或者无线射频模块。
通过与遥控器进行数据传输,可以实现遥控操作,并接收遥控器发送的命令。
三、控制流程1.初始化飞行器启动时,首先进行传感器的初始化,包括加速度传感器和陀螺仪的初始化。
然后进行电源管理的初始化,确保电源供电正常。
2.传感器数据采集通过传感器采集飞行器的姿态数据,包括加速度和角速度。
3.姿态估计根据传感器采集的数据,使用滤波算法对飞行器的姿态进行估计。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
摘要四轴飞行器是一种结构紧凑、飞行方式独特的垂直起降式飞行器,与普通飞行器相比,具有结构简单、故障率低和单位体积能够产生更大升力等优点,所以在军事和民用多个领域都有广阔的应用前景,非常适合在狭小空间内执行任务。
本设计采用stm32f103zet6作为主控芯片,3轴加速度传感器mpu6050作为惯性测量单元,通过2.4G无线模块和遥控板进行通信,最终使用PID控制算法以PWM方式控制电子调速器驱动电机实现了四轴飞行器的设计。
关键词:四轴飞行器,stm32;mpu6050,2.4G无线模块.PID.PWMAbstractQuadrocopter has broad application prospect in the area of military and civilian because of its advantages of simple structure. Small size, low failure rate, taking off and landing ertically . etc. it is suitable for having task in narrow space.This design uses STM32f103zet6 as the master chip, and triaxial accelerometer mpu6050 inertial measurement unit, via 2.4G wireless module and remote control panel for communication. Finally using pid control algorithm with pwm drives the electronic speed controller to change moto to realize the design of quadrocopter.Key word : quadrocopter,stm32,mpu6050,2.4G wireless module ;pid; pwm目录第一章作品难点与创新 (1)1.1作品难点 (1)1.2创新点 (1)第二章方案论证与设计 (2)2.1飞控部分硬件框图 (2)2.2遥控器部分硬件框图 (2)2.3各部分元器件介绍 (3)2.3.1 stm32介绍 (3)2.3 .2电子调速器 (4)2.3.3 mpu6050六轴传感器 (5)2.3.4 无线通信NRF24L01 (6)第三章原理分析与硬件电路图 (8)3.1 飞行器空气动力学分析 (8)3.2飞控部分硬件电路图设计 (10)3.3 遥控部分硬件电路图设计 (10)第四章软件设计与流程 (11)4.1 pid算法分析 (11)4.2串级pid系数的整定 (12)4.3串级pid系统框图 (13)4.3.1 飞控部分程序设计 (14)4.3.2遥控部分程序设计 (14)第五章系统测试与误差分析 (15)第六章总结 (19)参考文献 (21)第一章作品难点与创新1.1作品难点对于一种芯片,最麻烦的就是底层的驱动了,很多驱动得自己编写,为了最大发挥处理器的性能,做了很多驱动优化,将不必要的延时降到最低,比如I2C 总线驱动,官方的代码不符合自己的要求,通信效率低,我们花了几天的时间去优化这个驱动,使用了模拟的IIC接口,最后在保证稳定性的前提下,速度提高了一倍。
这个设计遇到的最大问题就是怎样保持飞行器的平衡。
开始的时候,我们以为很简单,不就是简单的闭环控制么,随着深入研究和实验,发现有些东西已经不能用我现有的知识来解答了,比如姿态的解算。
我想姿态解算也是这个项目的难点,怎样时时刻刻都准确的跟踪到飞行器的姿态。
很多人都知道使用加速度和陀螺仪检测物体的姿态,很多手机就有这些传感器,但是这两传感器在飞行器上貌似水土不服,陀螺仪随时间推移漂移了,加速度计由于电机的高速运转震动基本上处于半瞎状态。
所以我们使用了串级pid算法,并且优化了串级pid算法,使得在只用一个mpu6050的情况下,可以实现稳定的飞行,并且在飞行20层楼层的高度时可以飞出定高的效果。
调试过程中,采用无线通信芯片nrf24l01和stm32单片机作为控制端,同时用匿名四轴上位机显示状态。
1.2创新点设计的创新点有两个,一是在于遥控器的控制方面,传统的飞行器控制飞行在于通过遥杆控制,通过对遥杆的物理操作实现飞机的左右前后飞行,我们则采用感应式姿态控制,通过遥控器上板载的mpu6050,去跟踪手的姿势,然后将手的物理动作对应到相应的角度,发送给飞控部分,飞控部分将接受到的信号作为期望的角度,实现飞行器的左右前后飞行。
本次设计的第二个创新点在于优化pid算法,单纯的pid算法是不足以控制动力如此大的大四轴,再加上只有一个六轴传感器mpu6050是不足以控制好大四轴的,通常市面上的飞行器姿态测量这方面会用到多个传感器,以实现飞行器姿态的跟踪。
但是我们只用了一个六轴传感器mpu6050就可以做到非常稳定的飞行,主要原因在于对算法的优化。
第二章方案论证与设计本次设计选择的材料如下:主控芯片:STM32F103ZET6无线通信:NRF24L01传感器:MPU6050六轴传感器遥控主芯片:STM32F407ZGT6机架的型号: F450,重量282克。
电机轴距450mm,螺旋桨采用1045型。
电机则采用银燕MT-2216,810KV无刷电机,最高转速2极马达210000 转/分钟,重量:37g 。
电调为好盈20A电子调速器,持续电流30A,短时电流40A。
电池则采用了2200mah锂电池。
2.1飞控部分硬件框图图2-1从图中可以看出,STM32是电路的核心,它受5v电源控制,它负责和mpu6050,nrf24l01进行通信,处理数据,输出pwm信号给电子调速器,以得到控制电机的转速,实现飞行姿态的调整。
2.2遥控器部分硬件框图图2-2遥控部分STM32F407ZGT6作为主要芯片,nrf24l01f负责和飞控部分无线通信,遥杆主要控制油门大小,mpu6050负责跟踪手的姿势。
2.3各部分元器件介绍本次设计主要的工作在于程序的编写,所以就需要对所需要的主芯片和各个模块有一个详细的了解,接下来给大家介绍下我们所用的芯片口和模块介绍。
2.3.1 stm32介绍内核:ARM 32位的Cortex-M3,最高72MHz工作频率,在存储器的0等待周期访问时可达1.25DMips/MHZ(DhrystONe2.1)单周期乘法和硬件除法。
存储器:从32K到512K字节的闪存程序存储器(STM32F103XXXX中的第二个X表示FLASH容量,其中:“4”=16K,“6”=32K,“8”=64K,B=128K,C=256K,D=384K,E=512K),最大64K字节的SRAM。
电源管理:2.0-3.6V供电和I/O引脚,上电/断电复位(POR/PDR)、可编程电压监测器(PVD),4-16MHZ晶振振荡器,内嵌经出厂调教的8MHz的RC振荡器,内嵌带校准的40KHz的RC振荡器,产生CPU时钟的PLL,带校准的32KHz的RC 振荡器低功耗:睡眠、停机和待机模式,Vbat为RTC和后备寄存器供电。
模数转换器:2个12位模数转换器,1us转换时间(多达16个输入通道),转换范围:0至3.6V,双采样和保持功能,温度传感器。
DMA:2个DMA控制器,共12个DMA通道:DMA1有7个通道,DMA2有5个通道。
支持的外设:定时器、ADC、SPI、USB、IIC和UART,多达112个快速I/O 端口(仅Z系列有超过100个引脚),26/37/51/80/112个I/O口,所有I/O口一块映像到16个外部中断;几乎所有的端口均可容忍5V信号。
调试模式:串行单线调试(SWD)和JTAG接口,多达8个定时器,3个16位定时器,每个定时器有多达4个用于输入捕获/输出比较/PWM或脉冲计数的通道和增量编码器输入,1个16位带死区控制和紧急刹车,用于电机控制的PWM高级控制定时器,2个看门狗定时器(独立的和窗口型的),系统时间定时器:24位自减型计数器。
多达9个通信接口:2个I2C接口(支持SMBus/PMBus),3个USART接口(支持ISO7816接口,LIN,IrDA接口和调制解调控制),2个SPI接口(18M位/秒),CAN接口(2.0B主动),USB 2.0全速接口。
计算单元:CRC计算单元,96位的新批唯一代码。
封装:ECOPACK封装。
图2-32.3 .2电子调速器电调全称电子调速器,英文Electronic Speed Control,简称ESC。
针对电机不同,可分为有刷电调和无刷电调。
它根据控制信号调节电动机的转速。
本文采用好盈电调20A。
对于它们的连接,一般情况下是这样的:1、电调的输入线与电池连接;2、电调的输出线(有刷两根、无刷三根)与电机连接;3、电调的信号线与接收机连接;另外,电调一般有电源输出功能,即在信号线的正负极之间,有5V左右的电压输出,通过信号线为接收机供电,接收机再为舵机等控制设备供电。
电调的输出为三~四个舵机供电是没问题的。
因此,电动的飞机,一般都不需要单独为接收机供电,除非舵机很多或对接收机电源有很高的要求。
2.3.3 mpu6050六轴传感器MPU6050是InvenSense公司推出的全球首款整合性6轴运动处理组件,内带3轴陀螺仪和3轴加速度传感器,并且含有一个第二IIC接口,可用于连接外部磁力传感器,利用自带数字运动处理器(DMP: Digital Motion Processor)硬件加速引擎,通过主IIC接口,可以向应用端输出完整的9轴姿态融合演算数据。
有了DMP,我们可以使用InvenSense公司提供的运动处理资料库,非常方便的实现姿态解算,降低了运动处理运算对操作系统的负荷,同时大大降低了开发难度。
DMP 是 InvenSense 公司的 MPU 器件独特的硬件功能,它能够直接从传感器读出计算好的四元数的数据,获取设备的姿态。
DMP功能保存在主处理机的易失性内存中,若需要使用DMP功能,则每次芯片上电后都需要初始化。
DMP程序库项目中提供的示例应用程序中给出了更新映像和初始化 DMP 功能的一系列步骤。
加载并启用DMP功能的步骤包括:(1)通过函数dmp_load_motion_driver_firmware ()把 DMP 载入MPU内存。
(2)通过dmp_set_orientation ()函数更新定位矩(3)当DMP检测到运动或撞击时会触发DMP回调功能。
(4)通过函数dmp_enable_feature()启用DMP功能。