背景
之前學習了定時器的一些基本知識,實現了1ms的定時,本次學習定時器的PWM功能,用定時器產生的PWM波作為步進電機的脈沖頻率,實現步進電機轉動控制,并實現電機S型曲線的加減速控制。
步進電機基本知識
步進電機根據接線關系分為雙極性和單極性,單極性兩組線圈中間有抽頭,接電源;而雙極性的線圈中間無抽頭。本次實驗采用雙極性42步進電機,24V供電。
步進電機外觀圖
電機驅動原理圖及控制接線關系
本次電機驅動芯片采用TOSHIBA的TB67S109AFTG芯片來驅動雙極性步進電機,該芯片支持最大驅動電壓為50V,最大驅動電流為5A,最大支持32細分。
驅動電機原理圖
接線關系
細分控制引腳分配
DMODE0 -----> PB0 DMODE1 ------> PB1 DMODE2 ------> PB2
電機正反轉控制引腳
CW/CCW----> PC0
驅動芯片使能控制引腳
ENABLE ---->PC1
電機步進時鐘PWM輸入引腳(定時器2,第4通道)
CLK----->PB11
步進電機加減速原理
步進電機運行加減速控制,若是運行的距離不夠加減速控制的步數,則該軌跡為三角形,即沒有均速運行過程。
電機加減速運行軌跡
加速或減速控制曲線
根據電機加減速的曲線可以通過改變定時器的定時頻率,輸出不同頻率的PWM脈沖波,來實現電機的加減速。
代碼實現過程
cube mx軟件配置基本參數,實現定時器PWM和GPIO口控制的初始化。核心部分如下
定時器2的PWM波基本參數配置
生成代碼工程后,添加電機加減速控制代碼,其核心代碼如下
步進電機控制參數的結構體定義
電機控制參數結構體定義1
電機控制參數結構體定義2
計算電機加減速參數1
計算電機加減速參數2
計算電機加減速參數3
然后在定時的中斷回調函數中添加,電機加減速服務函數即可。
定時器中斷回調函數
本次實驗使用的板子
實驗的主控板
實驗的電機驅動板
-
PWM
+關注
關注
114文章
5181瀏覽量
213808 -
電機驅動
+關注
關注
60文章
1215瀏覽量
86723 -
步進電機
+關注
關注
150文章
3109瀏覽量
147443 -
定時器
+關注
關注
23文章
3246瀏覽量
114721 -
STM32F103
+關注
關注
33文章
477瀏覽量
63600
發布評論請先 登錄
相關推薦
評論