實(shí)驗(yàn)環(huán)境
Matlab版本: 2021b
操作系統(tǒng) :Win10專業(yè)版
硬件平臺(tái) :YF-STM32-ALPHA 1R4
實(shí)驗(yàn)內(nèi)容 :硬件在環(huán)修改參數(shù)控制舵機(jī)轉(zhuǎn)動(dòng)
模型與原理圖
STM32 simulink驅(qū)動(dòng)舵機(jī)效果如圖5.1所示,本次實(shí)驗(yàn)用到的Simulink簡(jiǎn)易模型如圖5.2所示,電路圖接法如圖5.3所示,YF-STM32-ALPHA開發(fā)板舵機(jī)接口位置如圖5.4所示,通過改變“Constant”的值實(shí)現(xiàn)舵機(jī)不同角度轉(zhuǎn)動(dòng),數(shù)值2.5~12.5對(duì)應(yīng)0°~180°(或-90°~90°)。
圖5.1 硬件在環(huán)舵機(jī)轉(zhuǎn)動(dòng)效果
圖5.2 PWM 驅(qū)動(dòng)simulink模型
圖5.3 STM32舵機(jī)驅(qū)動(dòng)電路圖
圖5.4 舵機(jī)接口位置
基礎(chǔ)模型介紹與分析
PWM簡(jiǎn)介
PWM的全稱是脈沖寬度調(diào)制(Pulse-width modulation),是通過將有效的電信號(hào)分散成離散形式從而來降低電信號(hào)所傳遞的平均功率的一種方式;所以根據(jù)面積等效法則,可以通過對(duì)改變脈沖的時(shí)間寬度,來等效的獲得所需要合成的相應(yīng)幅值和頻率的波形;
PWM實(shí)現(xiàn)不是單片機(jī)的專屬,使用信號(hào)發(fā)生器產(chǎn)生的鋸齒波結(jié)合LM393比較器,然后用一個(gè)可調(diào)電阻輸出的電壓作為參考電壓,可以得到一個(gè)脈沖寬度可以調(diào)節(jié)的電路,如圖5.5所示。
圖5.5 信號(hào)發(fā)生器與比較器組成PWM電路
但是實(shí)際使用過程中,讀者朋友不可能帶著信號(hào)發(fā)生器走,所以實(shí)際電路中一般使用555定時(shí)器來產(chǎn)生脈沖寬度可調(diào)電路,如圖5.6所示。
圖5.6 555定時(shí)器PWM可調(diào)電路
專用名詞解釋
頻率: 是指每秒鐘信號(hào)從高電平到低電平再回到高電平的次數(shù),為一個(gè)PWM波周期的倒數(shù)。如圖5.7和圖5.8所示,頻率=1/(高電平時(shí)間+低電平時(shí)間)。
圖5.7 單個(gè)脈沖周期
圖5.8 1S內(nèi)相同脈沖的個(gè)數(shù)代表頻率
占空比 :是指高電平持續(xù)時(shí)間占比一個(gè)周期持續(xù)的時(shí)間。如圖5.9所示,占空比=高電平時(shí)間/(高電平時(shí)間+低電平時(shí)間),可以通過控制占空比,來控制輸出的等效電壓。
圖5.9 同頻率下不同占空比波形等效電壓
SG90舵機(jī)外觀實(shí)物與引腳定義如圖5.10所示,其本質(zhì)是一個(gè)脈寬控制的伺服電機(jī),通過接收不同占空比脈沖從而實(shí)現(xiàn)不同角度轉(zhuǎn)動(dòng),其固有驅(qū)動(dòng)頻率為50Hz(周期20ms),脈沖占空比與角度對(duì)應(yīng)關(guān)系為5ms(2.5%)->-90°,1ms(5%)->-45°,1.5ms(7.5%)->0°,2ms(10%)->45°,2.5ms(12.5%)->90°,括號(hào)里面內(nèi)容對(duì)應(yīng)實(shí)際“Constant”變量值,百分百表示高電平占空比,對(duì)應(yīng)的角度如圖5.11所示。
圖5.10 SG90舵機(jī)實(shí)物與引腳定義
圖5.11 SG90舵機(jī)脈沖寬度對(duì)應(yīng)的角度
注 意 :實(shí)際使用中建議使用時(shí)電壓不低于5V,并確保電流是否可以滿足舵機(jī)驅(qū)動(dòng),≥500mA為宜,使用多個(gè)舵機(jī)同時(shí)工作時(shí),確保足額的電流供給。
表5.1 SG90舵機(jī)參數(shù)表
產(chǎn)品型號(hào) | 使用電壓 | 工作扭矩 | 反應(yīng)轉(zhuǎn)速 | 使用溫度 | 轉(zhuǎn)動(dòng)角度 |
---|---|---|---|---|---|
SG90 | 3~7.2V | 1.6kg/cm | 0.12-0.13秒/60° | -30℃~60℃ | 180° |
“PWM Output”STM32專用模塊與參數(shù)設(shè)置如圖5.12所示,“Pin”參數(shù)欄用于配置PWM引腳,示例中使用"PA_7"對(duì)應(yīng)到STM32的PA7引腳,“Initial frequency”用于設(shè)置初始頻率,“Initial duty cycle”用于設(shè)置初始占空比。
圖5.12 “PWM Output”模塊
STM32F103RBT6在simulink模型中有多個(gè)引腳支持PWM脈沖輸出,可以采用圖5.13所示方式同時(shí)測(cè)試或使用多個(gè)PWM脈沖控制舵機(jī)或其他脈沖設(shè)備,表5.2為該芯片的PWM脈沖具體對(duì)應(yīng)的引腳和通道,內(nèi)容來參考自“Pinmap_NUCLEO_F103RB”圖,表中已標(biāo)示的證明已經(jīng)測(cè)試過,其他的由于本開發(fā)板限制,請(qǐng)讀者朋友自行測(cè)試。
圖5.13 同時(shí)多個(gè)PWM工作簡(jiǎn)易模型
注 意:此表主要針對(duì)型號(hào)為STM32F103RBT6整理,其它芯片請(qǐng)參考此表自行測(cè)試或參考Pinmap圖
表5.2 PWM對(duì)照表(F103RBT6)
STM32引腳編號(hào) | 通道 |
---|---|
PA1 | PWM2/2 |
PB0 | PWM3/3 |
PA15 | PWM2/1 |
PC9 | PWM3/4 |
PC8 | PWM3/3 |
PC6 | PWM3/1 |
PA11 | PWM1/4 |
PB11 | PWM2/4 |
PA6 | PWM3/1 |
PA7 | PWM3/2 |
PC7 | PWM3/1 |
PA9 | PWM1/2 |
PA8 | PWM1/1 |
PB10 | PWM2/3 |
PB4 | PWM3/1 |
PB5 | PWM3/2 |
PB3 | PWM2/2 |
PA10 | PWM1/3 |
PA2 | PWM2/3 |
PA3 | PWM2/4 |
PB1 | PWM3/4 |
PB15 | PWM1/3N |
PB14 | PWM1/2N |
PB13 | PWM1/1N |
圖5.14~圖5.16是作者輸入不同值通過示波器測(cè)量到的實(shí)際脈沖占空比,供讀者朋友參考。
圖5.14 50Hz-5%占空比PWM模型與示波器實(shí)際顯示波形
圖5.15 50Hz-10%占空比PWM模型與示波器實(shí)際顯示波形
圖5.16 50Hz-15%占空比模型與示波器實(shí)際顯示波形
總結(jié)
本節(jié)實(shí)驗(yàn)通過一個(gè)簡(jiǎn)單的PWM模型驅(qū)動(dòng)舵機(jī)旋轉(zhuǎn),并驗(yàn)證多通道情況下PWM脈沖輸出控制的可行性,為讀者朋友下一步使用舵機(jī)驅(qū)動(dòng)提供參考價(jià)值,大家可以思考下通過多個(gè)舵機(jī)的組合可以實(shí)現(xiàn)哪些好玩的東西?為使用舵機(jī)驅(qū)動(dòng)的場(chǎng)合,其中好幾個(gè)制作純使用舵機(jī)完成,大家結(jié)合已有設(shè)備自行去實(shí)現(xiàn)下。
拓展延申
本節(jié)其實(shí)只使用到簡(jiǎn)單的PWM脈寬調(diào)制方式,其實(shí)在生活中還有一種用的非常廣泛的脈沖電機(jī)也是使用PWM來控制的,那就是步進(jìn)電機(jī),只不過該電機(jī)接收的不是脈寬控制而是脈沖控制,即每接收一個(gè)脈沖,步進(jìn)電機(jī)轉(zhuǎn)動(dòng)固定的角度,圖5.21為工業(yè)常用步進(jìn)電機(jī)參考測(cè)試電路,有條件的讀者朋友可以結(jié)合本節(jié)內(nèi)容實(shí)現(xiàn)下如何控制步進(jìn)電機(jī)轉(zhuǎn)動(dòng)固定步數(shù)。另外讀者朋友還可以結(jié)合前面小節(jié)學(xué)到的A/D采集知識(shí)或I/O輸入知識(shí)制作一些好玩的東西,例如“追光向日葵”,“數(shù)字可調(diào)電源”等。
圖5.21 步進(jìn)電機(jī)驅(qū)動(dòng)測(cè)試電路
-
原理圖
+關(guān)注
關(guān)注
1323文章
6414瀏覽量
239628 -
STM32
+關(guān)注
關(guān)注
2291文章
11019瀏覽量
363064 -
Simulink
+關(guān)注
關(guān)注
22文章
541瀏覽量
63745 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5590瀏覽量
103209 -
舵機(jī)
+關(guān)注
關(guān)注
17文章
296瀏覽量
41779
發(fā)布評(píng)論請(qǐng)先 登錄
STM32驅(qū)動(dòng)舵機(jī)時(shí)的問題???????
STM32的PWM波信號(hào)只有3.3V怎么驅(qū)動(dòng)需要5V信號(hào)驅(qū)動(dòng)的舵機(jī)
STM32之 PWM控制舵機(jī)
如何stm32用pwm驅(qū)動(dòng)舵機(jī)
使用cube配置定時(shí)器產(chǎn)生PWM驅(qū)動(dòng)舵機(jī)
STM32產(chǎn)生PWM才能驅(qū)動(dòng)舵機(jī)嗎
ALIENTEK_MINISTM32_實(shí)驗(yàn)8_PWM輸出實(shí)驗(yàn)
16路模塊+PWM舵機(jī)驅(qū)動(dòng)板+控制器+機(jī)器人+IIC接口+
使用STM32單片機(jī)實(shí)現(xiàn)16路PWM舵機(jī)驅(qū)動(dòng)的程序和工程文件

STM32—TIM3輸出PWM信號(hào)驅(qū)動(dòng)MG996R舵機(jī)(按鍵控制)

STM32控制舵機(jī)講解,從入門到放棄。

STM32控制舵機(jī)的方法及實(shí)例

用stm32控制舵機(jī)——以stm32F103C8T6為例

評(píng)論