top of page

ATOMS3 Lite(ESP32S3)でSG90-HV(360°連続回転サーボ)を動かしてみました。(Micropython)

ATOMS3 Lite(ESP32S3)でSG90-HVという360°連続回転サーボを動かしてみました。言語はMicropythonを使用しています。



360°連続回転サーボの解説に入る前に、ESP32S3のMicroPythonでのファームウェアをセットアップを行います。設定方法は下記の通りです。


①下記よりファームウェアをダウンロードします。


② ATOMS3 LiteをUSBでPCに接続した後にRESETボタンを緑色に点灯するまで長押しします。



③Terminal・Windowsの場合はコマンドプロントを起動します。


④esptoolのインストール

esptoolをPCへインストールしていない場合は下記のコマンドで インストールします。

pip install esptool

※PCにインストール済みの為、キャプチャーは割愛させていただきます。m(_ _)m


⑤次のコマンドでフラッシュを消去します。

esptool --chip esp32s3 --port 【port番号】 erase_flash


⑥次の方法で新しいファームウェアを導入します。

esptool --chip esp32s3 --port【port番号】write_flash -z 0 ”【binファイルの保存場所+binファイル名】


以上の設定で完了です。


開発環境は今回Thonnyを使用します。当ブログでは下記の記事に記載しています。


ファームウェアの設定が終わったら一度USBを差しなおしてThonny を立ち上げます。

インストールがうまくいってポートの選択がされれば、下記のような表示になります。



ファームウェアと開発環境の設定が終わったら、SG90-HV(360°連続回転サーボ)の解説をします。


360°連続回転サーボは基本的には通常の180°動くサーボモータのプログラムと一緒のプログラムで動かすことができます。

ただし、180°動くサーボモータでは回転角を指定していた項目が回転角になり、±90°のときに速度最大、0の時に停止、0を境に逆回転します。


SG90-HVは180°動くサーボモータSG-90を動かすときの下記の式に当てはめて動かしています。

cycle_duty = ((2.4-0.5)*(角度+90)/180+0.5)/20*65536

参考 (当ブログ)



接続

下記の通りに接続しています。

SG90-HV ⇔ ATOMS3 Lite

GND(Brown) ⇔ GND

PWM(Red) ⇔ GP5

Vcc(Orange) ⇔ 5V



プログラム

SG90-HV(360°連続回転サーボ)を動すのに使用したプログラムは下記になります。

deg_valueの値を変えることで動く速度が変わります。



下記のように動きます。



おまけ

Mini Dual Button Unitと動かしてみる。



接続

下記の通りに接続しています。

SG90-HV ⇔ ATOMS3 Lite

GND(Brown) ⇔ GND

PWM(Red) ⇔ GP5

Vcc(Orange) ⇔ 5V


Mini Dual Button Unit ⇔ ATOMS3 Lite (Grove)

Bule Button ⇔ GP1

Red Button ⇔ GP2

GND ⇔ GND

Vcc ⇔ 5V


プログラム

青いボタンを押したときに時計回り、赤いボタンを押したときに反時計回りをします。

また、ボタンを動かしている間だけサーボが回転します。



下記のように動きます。




参考にした記事

ESP32S3の設定について(当ブログ)

360°連続回転サーボについて

・360°連続回転のサーボモータ「SG90-HV」を使ってみる 旅乙女と発明娘の子供部屋

・Arduinoでサーボモータ(SG90、SG90-HV)を操作しました Arduino 簡単電子工作の世界

閲覧数:30回

コメント


bottom of page