使用PWM控制伺服馬達-micropython


使用PWM控制伺服馬達-micropython

tags: micropython servo pwm

伺服電機可以從 0 度旋轉到 180 度,但最多可以旋轉 210 度,具體取決於製造。可以通過將適當寬度的電脈衝應用到其控制引腳來控制這種旋轉程度。伺服每 20 毫秒檢查一次脈衝。 1 ms(1毫秒)寬度的脈衝可以將伺服旋轉到0度,1.5ms可以旋轉到90度(中位),2 ms脈衝可以將其旋轉到180度。

接線方式

-   GND -> ESP32 GND pin;
-   Power -> ESP32 VIN pin;
-   Signal -> GPIO 13 (or any PWM pin).


將頻率設置為 50Hz(每 20ms 一個週期),並將佔空值設置在 18(18/1023 * 20ms = 0.35ms)和 115(115/1023 * 20ms = 2.24ms)之間。佔空比可以介於 0 和 1023 之間(包括 0 和 1023)。

程式碼

from   machine   import Pin, PWM, freq 
from   time   import sleep

servo = PWM(Pin(13), freq=50) while   True: for i in   range(18, 115+1, 1):
    servo.duty(i) print(i)
    sleep(0.05) for j in   range(115, 18, -1):
    servo.duty(j) print(j)
    sleep(0.05)

文章作者: blairan
版權聲明: 本博客所有文章除特別聲明外,均採用 CC BY 4.0 許可協議。轉載請註明來源 blairan !
评论
  目錄