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

標題: stm32源碼:L298N利用PID驅動直流電機帶光電編碼器 [打印本頁]

作者: 569975278    時間: 2018-11-25 22:35
標題: stm32源碼:L298N利用PID驅動直流電機帶光電編碼器
直流電機帶光電編碼器。

單片機源程序如下:
  1. #include "delay.h"
  2. #include "stm32f10x.h"
  3. #include "sys.h"
  4. #include "timer.h"
  5. #include "usart.h"
  6. #include "encoder.h"
  7. #include "oled.h"
  8. #include "pwm.h"
  9. #include "control.h"
  10. #include "led.h"
  11. #include "key.h"

  12. extern int Target_velocity;
  13. extern u16  Encoder;             //左右編碼器的脈沖計數
  14. extern u16  Moto1;                 //電機PWM變量

  15. u8 t=0;         
  16. float speed;

  17. int main(void)
  18. {                
  19.   NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);// 設置中斷優先級分組2
  20.   
  21.         delay_init();                     //延時函數初始化          
  22.         KEY_Init();                  //初始化與按鍵連接的硬件接口
  23.         OLED_Init();
  24.         uart_init(9600);                    //=====串口初始化
  25.   Encoder_Init_TIM2();            //=====編碼器接口
  26.        
  27.         TIM3_Int_Init(99,7199);          //10ms
  28.        
  29.         IN2=1;
  30.   IN1=0;
  31.        

  32.         LED_Init();                          //初始化與LED連接的硬件接口
  33.        
  34.         TIM1_PWM_Init(7199,0);//不分頻。PWM頻率=72000/(899+1)=80Khz

  35.     while(1)
  36.            {
  37.                          
  38.                          speed = Encoder*100/4/13/30;           
  39.                          printf("speed:%0.2f rad/s\r\n",speed); //x100/4/13/30 //13線  30減速比  4分頻
  40.                          
  41.                          OLED_ShowString(0,0,"speed:",16);
  42.                    OLED_ShowNum( 16,0,speed,3,16);
  43.                    OLED_ShowString(48,0,"rad/s",16);
  44.                    OLED_Refresh_Gram();//更新顯示到OLED                          
  45.                          
  46.                        
  47.                         t=KEY_Scan(0);                //得到鍵值
  48.                         switch(t)
  49.                         {                                 
  50.                                 case KEY0_PRES:  Target_velocity++;  break;
  51.                                 case KEY1_PRES:  Target_velocity--;  break;
  52.                                 default:                        delay_ms(10);       
  53.                         }                         
  54.                 }
  55. }                 
復制代碼

所有資料51hei提供下載:
a基于PID的調速直流電機成品.rar (317.7 KB, 下載次數: 256)



作者: 魔術快斗    時間: 2018-12-16 20:47
樓主,能夠提供一下詳細的調試過程嗎?我按照你的程序接線,然后發現電機不能正常工作
作者: 569975278    時間: 2018-12-21 23:27
這個小項目應該算是比較經典的,如果能一步步解決問題,對入門stm32以及后面做項目都能提供思路上的幫助。當初我調試的時候,代碼寫完發現電機不能正常工作,最后問題竟然出現在程序初始化的過程中,把出波的定時器初始化寫在其他前面就會出問題(即TIM1_PWM_Init(7199,0);),寫到后面就一切正常了。后來過了幾個月我又要用到的時候,用這個代碼又不能正常工作了,后來改了下限幅就正常工作。我推薦大家可以先屏蔽調PID初始化那部分,手動給電機賦占空比,看能不能正常工作,再嘗試加上PID部分。硬件也是一大問題,沒有共地就可能出問題。總之分成一個個小區塊一步步來,應該可以實現的。
作者: ussrarmy2009    時間: 2020-10-14 09:54
看著有點懵。PWM直接驅動電機么?接上PA12 PA13沒有效果。。
作者: haoqingfeng    時間: 2020-10-14 14:03
ussrarmy2009 發表于 2020-10-14 09:54
看著有點懵。PWM直接驅動電機么?接上PA12 PA13沒有效果。。

要電調
作者: lilei12306    時間: 2021-4-14 23:08
想知道文件里有仿真嗎




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 午夜影院在线播放 | 欧美一区二区大片 | 欧美一区二区成人 | 久久久久久综合 | 91精品久久久 | 激情福利视频 | 亚洲高清在线 | 欧美a级网站 | 91麻豆精品国产91久久久更新资源速度超快 | www日韩高清| 先锋影音资源网站 | 999久久久国产精品 欧美成人h版在线观看 | 中文字幕在线视频一区二区三区 | 成年无码av片在线 | 97精品超碰一区二区三区 | 成人精品系列 | 日韩电影免费在线观看中文字幕 | 黄一区二区三区 | 一级片在线免费看 | 久久久久国产一区二区 | jizz亚洲人 | 成人免费视频在线观看 | 亚洲免费精品 | 亚洲成人av| 亚洲高清免费 | 欧美一区二区三区在线看 | 国产精品免费观看 | 久久久精品网 | 欧美一区成人 | 欧美夜夜 | 伊人久久大香线 | 欧美精品在线视频 | 午夜在线视频 | 国产精品国产a级 | 在线只有精品 | 亚洲国产精品99久久久久久久久 | 91久久| 成人免费在线视频 | 亚洲一区二区三区 | 日韩电影一区 | 在线播放中文字幕 |