资源简介
本资源是本人在大学四年里设计和研究的成果,主要研究sxy飞行控制的控制方法,方案采用的是9轴mpu9150,包含3轴陀螺仪+3轴加速计+3轴地磁计,陀螺仪采用四元数+欧拉角算法解算出xyz姿态角度,采用了加权系数串级pid控制算法(内环+外环鲁棒控制)使系统更加稳定、安全、和更具鲁棒性,采用卡尔曼滤波算法滤掉和平滑滤波算法滤除高频成分和突变情况,使角度更加平滑,输出更稳定,采用数字补偿控制飞行器漂移,采用24l01无线模块远程控制飞行姿态,采用超声波和z轴加速度控制高度和定高,实践飞行的效果比较好,飞行器飞行很稳定,抗干扰强、鲁棒性强,向下或向上拉扯抗拉力强,最大角度恢复速度快,稳定时间短,最大仰角下1-2次反馈就恢复水平,本代码和控制算法仅供大家学习和参考,请勿上传到其他网站赚取积分,否则将追究责任!
代码片段和文件信息
/**************************************************************************//**
* @file core_cm3.c
* @brief CMSIS Cortex-M3 Core Peripheral Access layer Source File
* @version V1.30
* @date 30. October 2009
*
* @note
* Copyright (C) 2009 ARM Limited. All rights reserved.
*
* @par
* ARM Limited (ARM) is supplying this software for use with Cortex-M
* processor based microcontrollers. This file can be freely distributed
* within development tools that are supporting such ARM based processors.
*
* @par
* THIS SOFTWARE IS PROVIDED “AS IS“. NO WARRANTIES WHETHER EXPRESS IMPLIED
* OR STATUTORY INCLUDING BUT NOT LIMITED TO IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
* ARM SHALL NOT IN ANY CIRCUMSTANCES BE LIABLE FOR SPECIAL INCIDENTAL OR
* CONSEQUENTIAL DAMAGES FOR ANY REASON WHATSOEVER.
*
******************************************************************************/
#include
/* define compiler specific symbols */
#if defined ( __CC_ARM )
#define __ASM __asm /*!< asm keyword for ARM Compiler */
#define __INLINE __inline /*!< inline keyword for ARM Compiler */
#elif defined ( __ICCARM__ )
#define __ASM __asm /*!< asm keyword for IAR Compiler */
#define __INLINE inline /*!< inline keyword for IAR Compiler. Only avaiable in High optimization mode! */
#elif defined ( __GNUC__ )
#define __ASM __asm /*!< asm keyword for GNU Compiler */
#define __INLINE inline /*!< inline keyword for GNU Compiler */
#elif defined ( __TASKING__ )
#define __ASM __asm /*!< asm keyword for TASKING Compiler */
#define __INLINE inline /*!< inline keyword for TASKING Compiler */
#endif
/* ################### Compiler specific Intrinsics ########################### */
#if defined ( __CC_ARM ) /*------------------RealView Compiler -----------------*/
/* ARM armcc specific functions */
/**
* @brief Return the Process Stack Pointer
*
* @return ProcessStackPointer
*
* Return the actual process stack pointer
*/
__ASM uint32_t __get_PSP(void)
{
mrs r0 psp
bx lr
}
/**
* @brief Set the Process Stack Pointer
*
* @param topOfProcStack Process Stack Pointer
*
* Assign the value ProcessStackPointer to the MSP
* (process stack pointer) Cortex processor register
*/
__ASM void __set_PSP(uint32_t topOfProcStack)
{
msr psp r0
bx lr
}
/**
* @brief Return the Main Stack Pointer
*
* @return Main Stack Pointer
*
* Return the curren
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-10-04 22:54 基于stm32f407四旋翼飞行器PID控制代码\
目录 0 2018-10-04 22:50 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\
目录 0 2018-10-04 22:50 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\
目录 0 2018-10-04 22:50 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\CORE\
文件 17273 2010-06-07 10:25 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\CORE\core_cm3.c
文件 85714 2011-02-09 14:59 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\CORE\core_cm3.h
文件 15503 2011-03-10 10:52 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\CORE\startup_stm32f10x_hd.s
文件 12765 2011-03-10 10:52 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\CORE\startup_stm32f10x_md.s
目录 0 2018-10-04 22:50 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\
目录 0 2018-10-04 22:50 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\KEY\
文件 1977 2014-03-20 20:32 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\KEY\key.c
文件 1013 2014-03-20 20:30 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\KEY\key.h
目录 0 2018-10-04 22:50 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\LCD\
文件 35016 2014-01-02 17:22 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\LCD\FONT.H
文件 85631 2015-08-12 18:19 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\LCD\lcd.c
文件 8193 2015-08-12 18:19 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\LCD\lcd.h
目录 0 2018-10-04 22:50 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\LED\
文件 1301 2014-03-20 20:13 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\LED\led.c
文件 640 2014-03-20 19:03 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\LED\led.h
目录 0 2018-10-04 22:50 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\NRF24L01\
文件 8509 2017-03-22 15:30 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\NRF24L01\24l01.c
文件 4830 2017-03-22 15:30 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\NRF24L01\24l01.h
目录 0 2018-10-04 22:50 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\SPI\
文件 3318 2014-03-22 14:03 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\SPI\spi.c
文件 685 2014-03-22 14:03 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\HARDWARE\SPI\spi.h
文件 399 2011-04-23 10:24 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\keilkilll.bat
目录 0 2018-10-04 22:50 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\OBJ\
文件 323848 2017-03-22 15:31 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\OBJ\24L01.axf
文件 1451 2017-03-22 15:31 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\OBJ\24L01.build_log.htm
文件 354668 2017-03-22 15:30 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\OBJ\24l01.crf
文件 1759 2017-03-22 15:30 基于stm32f407四旋翼飞行器PID控制代码\2401 - RX\ALIENTEK MINISTM32 实验24 24L01无线通信实验\OBJ\24l01.d
............此处省略1377个文件信息
相关资源
- BLDC电机PID算法
- 模糊PID算法控制
- PID-增量式PID和位置式PID算法实现和
- PID控制算法大全经典
- stm32f407+DCDC降压+pid算法
- PID位置环和速度环源码
- 智能控制先进PID算法,应用于智能控
- 步进电机PID速度闭环控制.rar
- stm32 风洞 pid算法程序
- PID算法及仿真
- 两轮平衡车简单串级PID
- 基于stm32智能壁障小车程序源码+原理
- 智能车PID算法资料包
- PID算法电机转速控制仿真截图
- stm32f1 直流电机控制
- 智能控制相关书籍的书,包含模糊算
- 基于FPGA的电机控制代码
- 卡尔曼+模糊控制+pid算法 详解
- PID算法的FPGA实现
- 基于51单片机PID算法的直流电机测速控
- PID算法之msp430单片机实现
- PID算法控制直流电机转速仿真与C程序
- PID-小车类-PID算法控制小车直线行驶制
- 基于labview的温度自动控制PID算法
- STM32_PID算法源码
- 2015全国电子设计大赛 有关PID算法
- 基于PID算法的PWM波温度控制实现代码
- 跷跷板小车程序PID算法
- 通过PID算法控制STM32的PWM输出
- 单片机加pid算法去控制步进电机的具
评论
共有 条评论