找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3597|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

風(fēng)力擺STM32源碼 帶PID卡爾曼濾波四元素算法

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
風(fēng)力擺源碼
內(nèi)帶PID算法
卡爾曼濾波
四元素算法


單片機(jī)源程序如下:
  1. /*-------------------------------------------------------------------------------------------
  2.                                                    風(fēng)力擺控制系統(tǒng)(2015-8-12)

  3. 硬件平臺(tái):
  4.                          主控器: STM32F103VET6 64K RAM 512K ROM
  5.                         驅(qū)動(dòng)器: LMD18200T
  6.                     電源:   DC +12V

  7. 軟件平臺(tái):
  8.                          開發(fā)環(huán)境: RealView MDK-ARM uVision4.10
  9.                         C編譯器 : ARMCC
  10.                         ASM編譯器:ARMASM
  11.                         連接器:   ARMLINK
  12.                         底層驅(qū)動(dòng): 各個(gè)外設(shè)驅(qū)動(dòng)程序      

  13. 時(shí)間: 2015年8月12日      

  14. 作者: BoX
  15. -------------------------------------------------------------------------------------------*/   
  16. #include "stm32f10x.h"
  17. #include "usart1.h"                                         
  18. #include "delay.h"
  19. #include "led.h"
  20. #include "timer.h"
  21. #include "motor_control.h"
  22. #include "motor_pwm.h"
  23. #include "motor_pid.h"
  24. #include "stdlib.h"
  25. #include "indkey.h"
  26. #include "mpu6050.h"
  27. #include "ahrs.h"
  28. #include "math.h"
  29. #include "usart2.h"
  30. /*------------------------------------------
  31.                                  全局變量                                
  32. ------------------------------------------*/
  33. extern uint8_t Q1_Start;
  34. extern uint8_t Q2_Start;
  35. extern uint8_t Q3_Start;
  36. extern uint8_t Q4_Start;
  37. extern uint8_t Q5_Start;
  38. extern uint8_t Q6_Start;
  39. extern uint8_t CurMode;
  40. /*-----------------------------------------
  41.                             初始化外設(shè)
  42. ------------------------------------------*/
  43. void BSP_Init(void)
  44. {
  45.         DelayInit();
  46.         LED_GPIO_Config();
  47.         Key_IO_Init();        
  48.         PID_M1_Init();
  49.         PID_M2_Init();
  50.         M1TypeDef_Init();
  51.         M2TypeDef_Init();        
  52.         PWM_Init();
  53.         TIM1_Config(10000-1,71);  /* TIM1 10ms Inturrupt  */
  54.         TIM5_Config(5000-1,71);   /* TIM5 5ms Inturrupt 采樣率200Hz 不能更改*/
  55.         USART1_Config();
  56.         USART1_printf(USART1," 系統(tǒng)啟動(dòng)成功!\r\n");
  57.         USART2_Config();
  58.         Display_Title();
  59.         MPU6050_Init();                  //MPU6050                                                                           
  60.         TIM_Cmd(TIM5,ENABLE);            //電機(jī)控制都在TIM5完成
  61.         TIM_Cmd(TIM1,ENABLE);
  62. }
  63. /*-----------------------------------------
  64.                                 主 函 數(shù)
  65. ------------------------------------------*/
  66. int main(void)   
  67. {   
  68.         BSP_Init();
  69.         //角度采樣和運(yùn)動(dòng)控制都在TIM5_IRQHandler()中完成
  70.         while(1)  
  71.         {         
  72.                 if(Q1_Start == 1)
  73.                 {
  74.                         CurMode = 1;
  75.                 }
  76.                 else if(Q2_Start == 1)
  77.                 {
  78.                         CurMode = 2;
  79.                 }
  80.                 else if(Q3_Start == 1)
  81.                 {
  82.                          CurMode = 3;
  83.                 }
  84.                 else if(Q4_Start == 1)
  85.                 {
  86.                          CurMode = 4;
  87.                 }
  88.                 else if(Q5_Start == 1)
  89.                 {
  90.                         CurMode = 5;
  91. ……………………

  92. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
風(fēng)力擺源代碼.7z (190.94 KB, 下載次數(shù): 56)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表