背景
之前學(xué)習(xí)了定時器的一些基本知識,實現(xiàn)了1ms的定時,本次學(xué)習(xí)定時器的PWM功能,用定時器產(chǎn)生的PWM波作為步進(jìn)電機(jī)的脈沖頻率,實現(xiàn)步進(jìn)電機(jī)轉(zhuǎn)動控制,并實現(xiàn)電機(jī)S型曲線的加減速控制。
步進(jìn)電機(jī)基本知識
步進(jìn)電機(jī)根據(jù)接線關(guān)系分為雙極性和單極性,單極性兩組線圈中間有抽頭,接電源;而雙極性的線圈中間無抽頭。本次實驗采用雙極性42步進(jìn)電機(jī),24V供電。
步進(jìn)電機(jī)外觀圖
電機(jī)驅(qū)動原理圖及控制接線關(guān)系
本次電機(jī)驅(qū)動芯片采用TOSHIBA的TB67S109AFTG芯片來驅(qū)動雙極性步進(jìn)電機(jī),該芯片支持最大驅(qū)動電壓為50V,最大驅(qū)動電流為5A,最大支持32細(xì)分。
驅(qū)動電機(jī)原理圖
接線關(guān)系
細(xì)分控制引腳分配
DMODE0 -----> PB0 DMODE1 ------> PB1 DMODE2 ------> PB2
電機(jī)正反轉(zhuǎn)控制引腳
CW/CCW----> PC0
驅(qū)動芯片使能控制引腳
ENABLE ---->PC1
電機(jī)步進(jìn)時鐘PWM輸入引腳(定時器2,第4通道)
CLK----->PB11
步進(jìn)電機(jī)加減速原理
步進(jìn)電機(jī)運行加減速控制,若是運行的距離不夠加減速控制的步數(shù),則該軌跡為三角形,即沒有均速運行過程。
電機(jī)加減速運行軌跡
加速或減速控制曲線
根據(jù)電機(jī)加減速的曲線可以通過改變定時器的定時頻率,輸出不同頻率的PWM脈沖波,來實現(xiàn)電機(jī)的加減速。
代碼實現(xiàn)過程
cube mx軟件配置基本參數(shù),實現(xiàn)定時器PWM和GPIO口控制的初始化。核心部分如下
定時器2的PWM波基本參數(shù)配置
生成代碼工程后,添加電機(jī)加減速控制代碼,其核心代碼如下
步進(jìn)電機(jī)控制參數(shù)的結(jié)構(gòu)體定義
電機(jī)控制參數(shù)結(jié)構(gòu)體定義1
電機(jī)控制參數(shù)結(jié)構(gòu)體定義2
計算電機(jī)加減速參數(shù)1
計算電機(jī)加減速參數(shù)2
計算電機(jī)加減速參數(shù)3
然后在定時的中斷回調(diào)函數(shù)中添加,電機(jī)加減速服務(wù)函數(shù)即可。
定時器中斷回調(diào)函數(shù)
本次實驗使用的板子
實驗的主控板
實驗的電機(jī)驅(qū)動板
-
PWM
+關(guān)注
關(guān)注
116文章
5450瀏覽量
218729 -
電機(jī)驅(qū)動
+關(guān)注
關(guān)注
60文章
1302瀏覽量
87677 -
步進(jìn)電機(jī)
+關(guān)注
關(guān)注
152文章
3165瀏覽量
149404 -
定時器
+關(guān)注
關(guān)注
23文章
3297瀏覽量
117573 -
STM32F103
+關(guān)注
關(guān)注
33文章
482瀏覽量
65307
發(fā)布評論請先 登錄
STM32CubeIDE下配置STM32F103輸出帶死區(qū)的互補PWM波

如何讓步進(jìn)電機(jī)平滑地加減速運動一段固定的行程?
F407步進(jìn)電機(jī)梯形加減速算法是如何實現(xiàn)的?
STM32f103系列的定時器
rtt系統(tǒng)堆棧大小影響了定時器PWM的輸出如何解決呢
基于STM32F103系列單片機(jī)的11個定時器解析

STM32F103的定時器觸發(fā)ADC官方程序免費下載
STM32F103系列單片機(jī)中的定時器工作原理解析

STM32F103的4軸步進(jìn)電機(jī)加減速控制工程的源代碼免費下載

STM32F103的4軸步進(jìn)電機(jī)加減速控制工程源代碼免費下載

使用STM32F103單片機(jī)實現(xiàn)定時器實驗的詳細(xì)資料說明

基于定時器中斷的ULN2003驅(qū)動器/步進(jìn)電機(jī)驅(qū)動程序

步進(jìn)電機(jī)驅(qū)動算法之梯形加減速算法

用STM32定時器中斷產(chǎn)生PWM控制步進(jìn)電機(jī)

學(xué)習(xí)STM32F103的定時器功能

評論