欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: STM32簡易直流電機速度環PID閉環控制源碼 [打印本頁]

作者: 孤寂的風    時間: 2017-12-19 19:16
標題: STM32簡易直流電機速度環PID閉環控制源碼

基于STM32開發簡易運動控制卡
開發者:JasonLin
STM32定時器功能介紹
  
定時器
  
  
計數分辨率
  
  
計數類型
  
  
預分頻系數
  
  
DMA請求
  
  
捕獲/比較通道
  
  
編碼器
  
接口
  
  
PWM
  
生成
  
  
TIM1
  
  
16
  
  
up/down
  
/both
  
  
1-65536
  
  
yes
  
  
4
  
  
yes
  
  
yes
  
  
TIM8
  
  
16
  
  
up/down
  
/both
  
  
1-65536
  
  
yes
  
  
4
  
  
yes
  
  
yes
  
  
TIM2
  
  
16
  
  
up/down
  
/both
  
  
1-65536
  
  
yes
  
  
4
  
  
yes
  
  
yes
  
  
TIM3
  
  
16
  
  
up/down/
  
both
  
  
1-65536
  
  
yes
  
  
4
  
  
yes
  
  
yes
  
  
TIM4
  
  
16
  
  
up/down
  
/both
  
  
1-65536
  
  
yes
  
  
4
  
  
yes
  
  
yes
  
  
TIM5
  
  
16
  
  
up/down
  
/both
  
  
1-65536
  
  
yes
  
  
4
  
  
yes
  
  
yes
  
  
TIM6
  
  
16
  
  
up
  
  
1-65536
  
  
yes
  
  
0
  
  
no
  
  
no
  
  
TIM7
  
  
16
  
  
up
  
  
1-65536
  
  
yes
  
  
0
  
  
no
  
  
no
  
TIM1TIM8為高級定時器
TIM6TIM7為基本定時器
TIM2TIM3TIM4TIM5為通用定時器
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
STM32定時器的通道/引腳分配
  
定時器
  
  
TIM1
  
  
TIM2
  
  
TIM3
  
  
TIM4
  
  
TIM5
  
  
TIM8
  
  
CH1引腳
  
  
PA8
  
  
PA0
  
  
PA6
  
  
PB6
  
  
PA0
  
  
PC6
  
  
CH2引腳
  
  
PA9
  
  
PA1
  
  
PA7
  
  
PB7
  
  
PA1
  
  
PC7
  
  
CH3引腳
  
  
PA10
  
  
PA2
  
  
PB0
  
  
PB8
  
  
PA2
  
  
PC8
  
  
CH4引腳
  
  
PA11
  
  
PA3
  
  
PB1
  
  
PB9
  
  
PA3
  
  
PC9
  
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
STM32定時器的通道/引腳重映射
file:///Z:\TEMP\msohtmlclip1\01\clip_image002.jpg
file:///Z:\TEMP\msohtmlclip1\01\clip_image004.jpg
file:///Z:\TEMP\msohtmlclip1\01\clip_image006.jpg
file:///Z:\TEMP\msohtmlclip1\01\clip_image008.jpg
file:///Z:\TEMP\msohtmlclip1\01\clip_image010.jpg
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
TIM1TIM8定時器的功能包括:
16位向上、向下、向上/下自動裝載計數器
16位可編程(可以實時修改)預分頻器,計數器時鐘頻率的分頻系數為165535之間的任意數值
4個獨立通道: 輸入捕獲 輸出比較 PWM生成(邊緣或中間對齊模式) 單脈沖模式輸出  
死區時間可編程的互補輸出
使用外部信號控制定時器和定時器互聯的同步電路  
允許在指定數目的計數器周期之后更新定時器寄存器的重復計數器  
剎車輸入信號可以將定時器輸出信號置于復位狀態或者一個已知狀態
如下事件發生時產生中斷/DMA 更新:計數器向上溢出/向下溢出,計數器初始化(通過軟件或者內部/外部觸發) 觸發事件(計數器啟動、停止、初始化或者由內部/外部觸發計數) 輸入捕獲 輸出比較 剎車信號輸入  
支持針對定位的增量(正交)編碼器和霍爾傳感器電路  
觸發輸入作為外部時鐘或者按周期的電流管理
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
TIM2TIM3TIM4TIM5定時器功能包括:  
● 16
位向上、向下、向上/向下自動裝載計數器  
● 16位可編程(可以實時修改)預分頻器,計數器時鐘頻率的分頻系數為165536之間的任意數值  
● 4個獨立通道:輸入捕獲輸出比較 ─ PWM生成(邊緣或中間對齊模式)─ 單脈沖模式輸出  
使用外部信號控制定時器和定時器互連的同步電路  
如下事件發生時產生中斷/DMA更新:計數器向上溢出/向下溢出,計數器初始化(通過軟件或者內部/外部觸發) ─ 觸發事件(計數器啟動、停止、初始化或者由內部/外部觸發計數) ─ 輸入捕獲輸出比較  
支持針對定位的增量(正交)編碼器和霍爾傳感器電路  
觸發輸入作為外部時鐘或者按周期的電流管理 165536之間的任意數值  
使用外部信號控制定時器和定時器互連的同步電路  
觸發輸入作為外部時鐘或者按周期的電流管理
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
TIM6TIM7定時器的主要功能包括:   
● 16位自動重裝載累加計數器  
● 16位可編程(可實時修改)預分頻器,用于對輸入的時鐘按系數為165536之間的任意數值分頻  
觸發DAC的同步電路   :此項是TIM6/7獨有功能
在更新事件(計數器溢出)時產生中斷/DMA請求
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
開發目標1TIM14個通道生成PWMCH1PWM1  CH2PWM2  
                                     CH3PWM3  CH4PWM4
           TIM84個通道生成PWMCH1PWM5  CH2PWM6  
                                      CH3PWM7  CH4PWM8
注:PWM1PWM2 為一組,控制直流減速電機1
PWM3PWM4 為一組,控制直流減速電機2
PWM5PWM6 為一組,控制直流減速電機3
PWM7PWM8 為一組,控制直流減速電機4
PWM1PWM3PWM5PWM7作為電機正向脈沖輸出,占空比為萬分比)
PWM2PWM4PWM6PWM8作為電機反向脈沖輸出,占空比為萬分比)
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
開發目標2TIM7作為定時器中斷,產生固定的時間間隔,便于計算電機及落地碼盤的速度(單位時間間隔脈沖增量)
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
開發目標3TIM2TIM3TIM4TIM5作為編碼器接口,讀取編碼器的旋轉產生的脈沖數
TIM2CH1作為編碼器1A相的輸入,CH2作為編碼器1B相的輸入
TIM3CH1作為編碼器2A相的輸入,CH2作為編碼器2B相的輸入
TIM4CH1作為編碼器3A相的輸入,CH2作為編碼器3B相的輸入
TIM5CH1作為編碼器4A相的輸入,CH2作為編碼器4B相的輸入
(由于TIM2TIM5CH1CH2共用引腳PA0PA1,所以需要把TIM2
CH1CH2重映射到引腳PA15PB3)
(PA15PB3JTAG接口中的兩只引腳 ,重映射前先把JTAG口關閉
GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE)//關閉JTAG
GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, DISABLE)//打開JTAG
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable ,ENABLE);//關閉JTAG
同時打開SWD
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
開發目標42.3TFT液晶顯示屏顯示電機或碼盤的速度(單位時間間隔的脈沖增量)和碼盤脈沖總數
未完待續、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

電機轉速控制
單片機源程序如下:
  1. /***********************************************************************************
  2. Author     :JasonLin
  3. version           :V1.1
  4. Date       :2014/8/2
  5. Description:Based on the STM32 Micro Control Unit design simple movement controller  
  6. ************************************************************************************/
  7. #include "stm32f10x.h"
  8. #include "stm32f10x_conf.h"
  9. #include "UserConfiguration.h"
  10. #include "UserFunction.h"
  11. #include "UserDelay.h"
  12. #include "lcd.h"
  13. #include "led.h"

  14. extern s32 CNT2,CNT3,CNT4,CNT5,V2,V3,V4,V5,rcnt2,rcnt3,rcnt4,rcnt5;

  15. int main(void)
  16. {        
  17.           SystemInit();

  18.         UserNVIC_Configuration();

  19.         UserTIM_Configuration();   

  20.         UserLed_Configuration();

  21.         UserDelay_Configuration();

  22.         while(1)
  23.         {                                                               
  24.            delay_ms(200);LED1=!LED1;delay_ms(200);//LED1提示系統正常運行
  25.         }        
  26.         
  27.         
  28.          
  29. }

復制代碼

所有資料51hei提供下載:
基于戰艦STM32開發簡易直流電機速度環PID閉環控制.rar (477.73 KB, 下載次數: 865)



作者: 飛鳥游魚    時間: 2018-5-21 19:38
好東西,沒有人評論下?
作者: 年少有點狂    時間: 2018-5-22 23:04
好東西 下來學習玩玩
作者: mick32    時間: 2018-5-26 04:53
Display the speed of the motor or encoder would be nice
作者: lxj199610    時間: 2018-5-26 19:41
厲害了。流明
作者: wobuzhuchele    時間: 2018-6-2 17:16
學習啦 頂一個個
作者: wenqian    時間: 2018-6-21 10:36
很厲害哦 學習了
作者: tianxiaodan    時間: 2018-7-20 16:38
值得參考
作者: tianxiaodan    時間: 2018-7-20 16:38
值得參考
作者: shuze    時間: 2018-7-26 00:10
已下載,謝謝
作者: 278925356    時間: 2018-8-3 14:44

好東西,我來好評
作者: 赫赫赫茲    時間: 2018-8-6 22:00
感謝分享,下下來看看
作者: 芝麻    時間: 2018-8-8 11:56

感謝分享,下下來看看
作者: assassin6279    時間: 2018-8-8 13:58
想知道樓主PID怎么調的 最近調四軸的PID調得想死
作者: 照海倚天    時間: 2018-8-8 16:16
贊  贊  贊  樓主厲害  
作者: xsj1877578806    時間: 2018-8-8 19:04
謝謝樓主分享
作者: wonuibi2018    時間: 2018-8-18 11:36
厲害哦 學習了

作者: LINKEEE    時間: 2018-9-16 18:57
下載來看看
作者: 沉香淡雅    時間: 2018-10-12 09:22
正在做這方面的,下來學習。謝謝分享
作者: mybshf    時間: 2019-2-26 13:32
謝謝分享,急需的資料
作者: 巽悄悄米    時間: 2019-3-3 21:35
樓主你好,請問是增量式還是位置式的PID調速呢
作者: monsterqw    時間: 2019-3-7 13:10
謝謝分享
作者: aetherxd    時間: 2019-3-9 22:29
不錯!贊一個
作者: nanducool    時間: 2019-3-9 23:06
贊一個
作者: 升美    時間: 2019-3-13 17:41
是完整的代碼嗎
作者: zhukm    時間: 2019-3-19 10:35
學習參考下
作者: szb901025    時間: 2019-3-29 09:28
贊一個
作者: m123321654    時間: 2019-5-15 19:15
好東西 下來學習玩玩
作者: xha    時間: 2019-5-21 19:54
不錯哦,學習

作者: XIALAJI    時間: 2019-7-15 23:42
6666值得學習
作者: 內心很無奈    時間: 2019-7-24 09:50
感謝樓主
作者: 豐富豐富    時間: 2019-8-25 12:26
感謝樓主
作者: 豐富豐富    時間: 2019-8-25 12:30
贊一個
作者: dspmomo    時間: 2019-8-30 06:24
不完整
作者: 老白老師    時間: 2019-10-18 02:36
好資料,謝謝
作者: LULU11    時間: 2019-11-19 22:14
下載學習一下
作者: 15869123721    時間: 2019-12-6 15:36
學習一下
作者: ujsme    時間: 2019-12-10 14:51
不錯的資料,用來學習,謝謝!
作者: applehzd    時間: 2019-12-10 18:42
值得學習一下
作者: xaviersw    時間: 2020-12-27 12:57
不錯的例程學習一下




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1