久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2112|回復: 1
收起左側

求PID控制倒立擺平衡的代碼

[復制鏈接]
ID:419977 發表于 2018-11-3 01:10 | 顯示全部樓層 |閱讀模式
求大佬們基于PID控制倒立擺平衡的代碼。
本人用的是STM32F767IG開發板。
謝謝!
回復

使用道具 舉報

ID:243507 發表于 2018-12-27 02:47 | 顯示全部樓層
這是基于stm32F103的倒立擺,只要讀懂代碼算法,移植到F7不難

單片機源程序如下:
  1. #include "main.h"
  2. u8 Way_Angle=1;                             //獲取角度的算法,1:四元數  2:卡爾曼  3:互補濾波
  3. u8 Flag_Qian,Flag_Hou,Flag_Left,Flag_Right; //藍牙遙控相關的變量
  4. u8 Flag_Stop=1,Flag_Show=1;                 //停止標志位和 顯示標志位 默認停止 顯示打開
  5. int Encoder_Left,Encoder_Right;             //左右編碼器的脈沖計數
  6. int Moto1,Moto2;                            //電機PWM變量 應是Motor的 向Moto致敬       
  7. int adc;                            //顯示溫度
  8. int Voltage;                                //電池電壓采樣相關的變量
  9. float Angle_Balance,Gyro_Balance,Gyro_Turn; //平衡傾角 平衡陀螺儀 轉向陀螺儀
  10. float Show_Data_Mb;                         //全局顯示變量,用于顯示需要查看的數據

  11. /**************************************************************************
  12. 函數功能:主函數 初始化系統和外設
  13. 作    者:Mini Balance
  14. **************************************************************************/
  15. int main(void)
  16. {
  17.         SystemInit();                   //=====系統初始化
  18.         delay_init(72);                 //=====延時函數
  19.         usart1_init();                  //=====串口1初始化 波特率:115200
  20.         uart3_init(72,9600);            //=====串口3初始化 波特率:9600
  21.         JTAG_Set(JTAG_SWD_DISABLE);     //=====關閉JTAG接口
  22.         JTAG_Set(SWD_ENABLE);           //=====打開SWD接口 可以利用主板的SWD接口調試
  23.   led_init();                     //=====LED初始化
  24.         KEY_Init();                     //=====按鍵初始化
  25.         Adc_Init();                            //=====初始化ADC模塊
  26.         MiniBalance_PWM_Init(7199,0);   //=====初始化PWM
  27.         OLED_Init();                          //=====初始化OLED  
  28.         Encoder_Init();                 //=====初始化編碼器1
  29.         delay_ms(200);                  //=====延時等待穩定               
  30.         Timer1_Init(49,7199);           //=====5MS進一次中斷服務函數 中斷服務函數在minibalance.c里面
  31.   while(1)
  32.   {

  33.                                         if(1==Flag_Show)                oled_show(); //===顯示屏打開
  34.                                         else                      DataScope(); //===顯示屏關閉 打開上位機                       
  35.         }       
  36. }
復制代碼

所有資料51hei提供下載:
旋轉倒立擺.7z (357.29 KB, 下載次數: 24)



評分

參與人數 1黑幣 +100 收起 理由
admin + 100 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲一区黄色 | 久久这里有精品 | 亚洲444kkkk在线观看最新 | 久久久久久中文字幕 | 国产精品一区二区日韩 | 一区二区高清 | 国产一区二区欧美 | 欧美视频免费在线 | 欧美一级www片免费观看 | 综合色站导航 | 蜜桃视频在线观看免费视频网站www | 国产视频精品区 | 久久国产视频网站 | 2020国产在线| 亚洲国产aⅴ成人精品无吗 亚洲精品久久久一区二区三区 | 日本视频在线播放 | 成人免费视频 | 久久久夜夜夜 | 国产精品久久久久久久久久久久冷 | 热99视频| 国产精品视频999 | 久久激情五月丁香伊人 | 91在线精品视频 | 国产精品视频一 | 成人影院在线视频 | 精品欧美激情在线观看 | 精品国产乱码久久久久久蜜臀 | 欧美在线视频观看 | 日韩精品色网 | 国产福利在线视频 | 精品久久久久久久久久久久久久久久久 | 日韩不卡三区 | 二区久久 | 亚洲高清在线观看 | 久久久久综合 | 蜜桃精品噜噜噜成人av | 国产1区2区在线观看 | 日韩精品网站 | 国产h视频 | 超碰在线播 | 在线国产视频观看 |