RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

STM32 PWM驅(qū)動舵機(jī)實驗

CHANBAEK ? 來源: 想啥做啥 ? 作者: 想啥做啥 ? 2023-11-29 16:30 ? 次閱讀

實驗環(huán)境

Matlab版本: 2021b

操作系統(tǒng) :Win10專業(yè)版

硬件平臺 :YF-STM32-ALPHA 1R4

實驗內(nèi)容 :硬件在環(huán)修改參數(shù)控制舵機(jī)轉(zhuǎn)動

模型與原理圖

STM32 simulink驅(qū)動舵機(jī)效果如圖5.1所示,本次實驗用到的Simulink簡易模型如圖5.2所示,電路圖接法如圖5.3所示,YF-STM32-ALPHA開發(fā)板舵機(jī)接口位置如圖5.4所示,通過改變“Constant”的值實現(xiàn)舵機(jī)不同角度轉(zhuǎn)動,數(shù)值2.5~12.5對應(yīng)0°~180°(或-90°~90°)。

圖片

圖5.1 硬件在環(huán)舵機(jī)轉(zhuǎn)動效果

圖片圖5.2 PWM 驅(qū)動simulink模型

圖片

圖5.3 STM32舵機(jī)驅(qū)動電路

圖片

圖5.4 舵機(jī)接口位置

基礎(chǔ)模型介紹與分析

PWM簡介

PWM的全稱是脈沖寬度調(diào)制(Pulse-width modulation),是通過將有效的電信號分散成離散形式從而來降低電信號所傳遞的平均功率的一種方式;所以根據(jù)面積等效法則,可以通過對改變脈沖的時間寬度,來等效的獲得所需要合成的相應(yīng)幅值和頻率的波形;

PWM實現(xiàn)不是單片機(jī)的專屬,使用信號發(fā)生器產(chǎn)生的鋸齒波結(jié)合LM393比較器,然后用一個可調(diào)電阻輸出的電壓作為參考電壓,可以得到一個脈沖寬度可以調(diào)節(jié)的電路,如圖5.5所示。

圖片

圖5.5 信號發(fā)生器與比較器組成PWM電路

但是實際使用過程中,讀者朋友不可能帶著信號發(fā)生器走,所以實際電路中一般使用555定時器來產(chǎn)生脈沖寬度可調(diào)電路,如圖5.6所示。

圖片

圖5.6 555定時器PWM可調(diào)電路

專用名詞解釋

頻率: 是指每秒鐘信號從高電平到低電平再回到高電平的次數(shù),為一個PWM波周期的倒數(shù)。如圖5.7和圖5.8所示,頻率=1/(高電平時間+低電平時間)。

圖片

圖5.7 單個脈沖周期

圖片

圖5.8 1S內(nèi)相同脈沖的個數(shù)代表頻率

占空比 :是指高電平持續(xù)時間占比一個周期持續(xù)的時間。如圖5.9所示,占空比=高電平時間/(高電平時間+低電平時間),可以通過控制占空比,來控制輸出的等效電壓。

圖片

圖5.9 同頻率下不同占空比波形等效電壓

SG90舵機(jī)外觀實物與引腳定義如圖5.10所示,其本質(zhì)是一個脈寬控制的伺服電機(jī),通過接收不同占空比脈沖從而實現(xiàn)不同角度轉(zhuǎn)動,其固有驅(qū)動頻率為50Hz(周期20ms),脈沖占空比與角度對應(yīng)關(guān)系為5ms(2.5%)->-90°,1ms(5%)->-45°,1.5ms(7.5%)->0°,2ms(10%)->45°,2.5ms(12.5%)->90°,括號里面內(nèi)容對應(yīng)實際“Constant”變量值,百分百表示高電平占空比,對應(yīng)的角度如圖5.11所示。

圖5.10 SG90舵機(jī)實物與引腳定義

圖片

圖5.11 SG90舵機(jī)脈沖寬度對應(yīng)的角度

注 意 :實際使用中建議使用時電壓不低于5V,并確保電流是否可以滿足舵機(jī)驅(qū)動,≥500mA為宜,使用多個舵機(jī)同時工作時,確保足額的電流供給。

表5.1 SG90舵機(jī)參數(shù)表

產(chǎn)品型號使用電壓工作扭矩反應(yīng)轉(zhuǎn)速使用溫度轉(zhuǎn)動角度
SG903~7.2V1.6kg/cm0.12-0.13秒/60°-30℃~60℃180°

“PWM Output”STM32專用模塊與參數(shù)設(shè)置如圖5.12所示,“Pin”參數(shù)欄用于配置PWM引腳,示例中使用"PA_7"對應(yīng)到STM32的PA7引腳,“Initial frequency”用于設(shè)置初始頻率,“Initial duty cycle”用于設(shè)置初始占空比。

圖片

圖5.12 “PWM Output”模塊

STM32F103RBT6在simulink模型中有多個引腳支持PWM脈沖輸出,可以采用圖5.13所示方式同時測試或使用多個PWM脈沖控制舵機(jī)或其他脈沖設(shè)備,表5.2為該芯片的PWM脈沖具體對應(yīng)的引腳和通道,內(nèi)容來參考自“Pinmap_NUCLEO_F103RB”圖,表中已標(biāo)示的證明已經(jīng)測試過,其他的由于本開發(fā)板限制,請讀者朋友自行測試。

圖片

圖5.13 同時多個PWM工作簡易模型

注 意:此表主要針對型號為STM32F103RBT6整理,其它芯片請參考此表自行測試或參考Pinmap圖

表5.2 PWM對照表(F103RBT6)

STM32引腳編號通道
PA1PWM2/2
PB0PWM3/3
PA15PWM2/1
PC9PWM3/4
PC8PWM3/3
PC6PWM3/1
PA11PWM1/4
PB11PWM2/4
PA6PWM3/1
PA7PWM3/2
PC7PWM3/1
PA9PWM1/2
PA8PWM1/1
PB10PWM2/3
PB4PWM3/1
PB5PWM3/2
PB3PWM2/2
PA10PWM1/3
PA2PWM2/3
PA3PWM2/4
PB1PWM3/4
PB15PWM1/3N
PB14PWM1/2N
PB13PWM1/1N

圖5.14~圖5.16是作者輸入不同值通過示波器測量到的實際脈沖占空比,供讀者朋友參考。

圖片圖5.14 50Hz-5%占空比PWM模型與示波器實際顯示波形

圖片

圖5.15 50Hz-10%占空比PWM模型與示波器實際顯示波形

圖片

圖5.16 50Hz-15%占空比模型與示波器實際顯示波形

總結(jié)

本節(jié)實驗通過一個簡單的PWM模型驅(qū)動舵機(jī)旋轉(zhuǎn),并驗證多通道情況下PWM脈沖輸出控制的可行性,為讀者朋友下一步使用舵機(jī)驅(qū)動提供參考價值,大家可以思考下通過多個舵機(jī)的組合可以實現(xiàn)哪些好玩的東西?為使用舵機(jī)驅(qū)動的場合,其中好幾個制作純使用舵機(jī)完成,大家結(jié)合已有設(shè)備自行去實現(xiàn)下。

拓展延申

本節(jié)其實只使用到簡單的PWM脈寬調(diào)制方式,其實在生活中還有一種用的非常廣泛的脈沖電機(jī)也是使用PWM來控制的,那就是步進(jìn)電機(jī),只不過該電機(jī)接收的不是脈寬控制而是脈沖控制,即每接收一個脈沖,步進(jìn)電機(jī)轉(zhuǎn)動固定的角度,圖5.21為工業(yè)常用步進(jìn)電機(jī)參考測試電路,有條件的讀者朋友可以結(jié)合本節(jié)內(nèi)容實現(xiàn)下如何控制步進(jìn)電機(jī)轉(zhuǎn)動固定步數(shù)。另外讀者朋友還可以結(jié)合前面小節(jié)學(xué)到的A/D采集知識或I/O輸入知識制作一些好玩的東西,例如“追光向日葵”,“數(shù)字可調(diào)電源”等。

圖片

圖5.21 步進(jìn)電機(jī)驅(qū)動測試電路

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 原理圖
    +關(guān)注

    關(guān)注

    1297

    文章

    6338

    瀏覽量

    233797
  • STM32
    +關(guān)注

    關(guān)注

    2270

    文章

    10895

    瀏覽量

    355728
  • Simulink
    +關(guān)注

    關(guān)注

    22

    文章

    533

    瀏覽量

    62378
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5032

    瀏覽量

    97371
  • 舵機(jī)
    +關(guān)注

    關(guān)注

    17

    文章

    268

    瀏覽量

    41013
收藏 人收藏

    評論

    相關(guān)推薦

    STM32驅(qū)動舵機(jī)時的問題???????

    STM32PWM信號驅(qū)動舵機(jī)時,為什么TFT屏一直白屏,舵機(jī)工作有時正常,有時處理器一直復(fù)位。我是直接連接的,該怎么連接,需要隔離嗎?求指點(diǎn)
    發(fā)表于 02-16 22:21

    STM32PWM波信號只有3.3V怎么驅(qū)動需要5V信號驅(qū)動舵機(jī)

    新買了個舵機(jī)是5V電壓信號驅(qū)動的,但是STM32F103C8T6的定時器3的IO口配置復(fù)用推挽輸出的PWM波信號只有3.3V,加上拉電阻也只有3.8V左右,怎么才能
    發(fā)表于 10-11 15:40

    STM32PWM控制舵機(jī)

    摘自:STM32 PWM控制舵機(jī)作者:三速何時sub20發(fā)布時間: 2021-02-27 14:54:01網(wǎng)址:https://blog.csdn.net/weixin_44234294/article/details/1141
    發(fā)表于 06-30 07:02

    如何stm32pwm驅(qū)動舵機(jī)

    不同的信號,來控制其旋轉(zhuǎn)到不同的角度。舵機(jī)接收的是PWM信號,當(dāng)信號進(jìn)入內(nèi)部電路產(chǎn)生一個偏置電壓,觸發(fā)電機(jī)通過減速齒輪帶動電位器移動,使電壓差為零時,電機(jī)停轉(zhuǎn),從而達(dá)到伺服的效果。簡單來說就是給舵機(jī)一個特定
    發(fā)表于 06-30 07:11

    使用cube配置定時器產(chǎn)生PWM驅(qū)動舵機(jī)

    STM32CubeMX-使用cube配置定時器產(chǎn)生PWM驅(qū)動舵機(jī)
    發(fā)表于 08-11 07:55

    STM32產(chǎn)生PWM才能驅(qū)動舵機(jī)

    舵機(jī)可分為哪幾類?STM32產(chǎn)生PWM才能驅(qū)動舵機(jī)嗎?
    發(fā)表于 10-18 09:53

    STM32_PWM實驗

    STM32 PWM實驗,很好的學(xué)習(xí)資料,快來下載啊
    發(fā)表于 02-16 15:46 ?55次下載

    ALIENTEK_MINISTM32_實驗8_PWM輸出實驗

    ALIENTEK MINISTM32 實驗8 PWM輸出實驗,很好的資料,快來學(xué)習(xí)吧
    發(fā)表于 02-18 14:57 ?15次下載

    16路模塊+PWM舵機(jī)驅(qū)動板+控制器+機(jī)器人+IIC接口+

    16路模塊+PWM舵機(jī)驅(qū)動板+控制器+機(jī)器人+IIC接口+
    發(fā)表于 10-09 11:20 ?124次下載

    使用STM32單片機(jī)實現(xiàn)16路PWM舵機(jī)驅(qū)動的程序和工程文件

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用STM32單片機(jī)實現(xiàn)16路PWM舵機(jī)驅(qū)動的程序和工程文件免費(fèi)下載。
    發(fā)表于 11-11 08:00 ?26次下載
    使用<b class='flag-5'>STM32</b>單片機(jī)實現(xiàn)16路<b class='flag-5'>PWM</b><b class='flag-5'>舵機(jī)</b><b class='flag-5'>驅(qū)動</b>的程序和工程文件

    STM32F4 PWM-DAC實驗例程

    STM32F4 PWM-DAC實驗例程(電源技術(shù)是sci嗎)-STM32F4 PWM-DAC實驗
    發(fā)表于 09-16 10:14 ?43次下載
    <b class='flag-5'>STM32</b>F4 <b class='flag-5'>PWM</b>-DAC<b class='flag-5'>實驗</b>例程

    STM32—TIM3輸出PWM信號驅(qū)動MG996R舵機(jī)(按鍵控制)

    文章目錄**一、前言****二、MG996R舵機(jī)簡介****三、通用定時器TIMx****四、TIM3輸出PWM信號代碼詳解**一、前言利用STM32的TIM3的通道1輸出PWM信號,
    發(fā)表于 11-23 18:21 ?58次下載
    <b class='flag-5'>STM32</b>—TIM3輸出<b class='flag-5'>PWM</b>信號<b class='flag-5'>驅(qū)動</b>MG996R<b class='flag-5'>舵機(jī)</b>(按鍵控制)

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

    STM32控制舵機(jī)文章目錄STM32控制舵機(jī)前言一、PWMPWM是什么?如何實現(xiàn)PWM信號輸出?二、舵機(jī)
    發(fā)表于 12-24 19:26 ?24次下載
    <b class='flag-5'>STM32</b>控制<b class='flag-5'>舵機(jī)</b>講解,從入門到放棄。

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

    STM32控制SG90舵機(jī) 在這篇博客中,我講解的是SG90的180°型號的舵機(jī)。其它型號的舵機(jī)也可以參考。首先,舵機(jī)的控制方式
    發(fā)表于 12-24 19:30 ?127次下載
    <b class='flag-5'>STM32</b>控制<b class='flag-5'>舵機(jī)</b>的方法及實例

    PWM信號控制舵機(jī)原理

    PWM信號控制舵機(jī)原理
    發(fā)表于 09-21 09:32 ?4次下載
    RM新时代网站-首页