ESP32 の PWM の機能を確認するためにサーボモーターを試してみました。サーボモーターには SG90 を使っています。Arduino や Raspberry Pi の工作では定番ですね。





サーボモーターは PWM 信号によって角度を制御することができます。PWM の Duty比に応じて回転角度を設定することができます。





ESP32 と接続してみました。このサーボモーターは3.3V でも駆動するので便利ですよね。





スケッチを書くにあたり、こちらのサイトを参考にさせてもらいました。

【ESP32】PWMでモーターを制御する方法
http://rikoubou.hatenablog.com/entry/2017/06/05/172953


スケッチはこちらです。とっても簡単ですね。


#include "esp_system.h"

void setup() {
Serial.begin(115200);
ledcSetup(0, 50, 10); // 0ch 50 Hz 10bit resolution
ledcAttachPin(15, 0); // 15pin, 0ch
}

int min = 26; // (26/1024)*20ms ≒ 0.5 ms (-90°)
int max = 123; // (123/1024)*20ms ≒ 2.4 ms (+90°)
int n = min;
void loop() {
ledcWrite(0, n);
n+=5;
if (n > max) n = min;
delay(500);
}



実際に動いている様子がこちらです。今回もちょっと凝ってみました。^^



Raspberry Pi に比べると Arduino はやっぱり楽ですね。できればPWMでカメラも駆動できると嬉しいので、MHz クラスの PWM ができるか確認してみたいと思います。
(^^)/~






waves ESP32-DevKitC ESP-WROOM-32 ESP32 DevKitC V2 WiFi BLE 技適取得済 国内発送

  • 出版社/メーカー: waves(ウェイブス)
  • メディア: エレクトロニクス



waves ESP32 ESPDuino-32 (ESP-WROOM-32) 技適取得品

  • 出版社/メーカー: waves(ウェイブス)
  • メディア: おもちゃ&ホビー



MicroPython for ESP32 Development Workshop (English Edition)

  • 出版社/メーカー:
  • 発売日: 2017/08/19
  • メディア: Kindle版