STM32之使用PWM控制多路舵機

2021-08-20 08:15:36 字數 618 閱讀 3686

最近在玩乙個6自由度的機械臂,我手上這台機械臂的核心控制器件就是那六個能夠180度旋轉的舵機了。想想之前在學校還沒有系統性的把舵機給玩明白,所以就索性拿手上的stm32來自己寫驅動**,將6個舵機給驅動起來。

舵機的控制原理還是比較簡單的,而且控制的角度和精度能夠比較好的按照開發者的意願來進行,因此經常被應用與一些控制類器械中,如機械手、雲台、2自由度攝像頭等產品中。

舵機的外接線一般分為3根線,電源線、地線和訊號線,而控制舵機轉動,就是通過訊號線給舵機傳送一系列的週期訊號(一般的舵機的能接收的訊號週期為20ms),然後通過控制週期訊號的高電平的持續時間來達到控制舵機轉動的目的。我手上的舵機就是根據高電平持續時間(0.5ms~2.5ms)來實現0~180的轉動的。下面附上一張舵機週期訊號控制和轉動角度的說明。

當然了,週期訊號的產生可以使用很多方式,但是使用pwm來控制高電平的占空比不失為一種最好的應用方式。在stm32中,stm32的定時器也都提供有pwm的功能。下面就說明一下stm32輸出pwm的具體實現方式。

在stm32中控制舵機,實際上就是開發stm32上的pwm功能,這部分功能需要配置stm32

STM32 電機PWM控制

2.1.1 實現工具 stm32微控制器 直流減速電機 tb6612雙路電機驅動器 keil5 2.1.2 電機實物接線 具體到我們的電機,我們可以看看電機後面的 中間的四根線 紅綠白黑 是編碼器的線,只是用於測速,和直流電機本身沒有聯絡。綜上所述,我們只需控制施加在黃線和棕色線兩端的直流電壓大小和...

STM32互補PWM輸出使能控制

1 分享如何使用stm32的定時器互補pwm通道,驅動ipm模組產生三相相差120 的正弦波,可產生旋轉磁場驅動三相電機 2 stm32中tim1 ch1和tim1 ch1n的區別 3 stm32 stm32之timer1產生pwm 互補通道 stm32的高階定時器tim1可以產生互補的pwm,並且...

STM32重對映和PWM控制

由於玩stm32的時候很少用它的重對映功能,所以做專案的時候需要pwm控制光強,用的是pb5控制。看了下手冊,這不是定時器的pwm通道管腳啊,後來在硬體的提醒下才想起來stm32管腳可以重對映,都忘了這茬了。唉!真是太菜。tim3 ch2實際的引腳是pa7,可以通過部分重對映到pb5,這樣就可以通過...