Fooping が 2023年07月01日12時07分41秒 に編集
初版
タイトルの変更
M5ATOM S3で手っ取り早くサーボモータを動かす
タグの変更
M5Atom
SG90
メイン画像の変更
記事種類の変更
セットアップや使用方法
ライセンスの変更
(MIT) The MIT License
本文の変更
## 概要 M5 ATOM S3を使ってサーボモータを手っ取り早く動かす方法を紹介します。 ++M5 ATOM S3とは https://www.switch-science.com/products/8670++ ## 必要なもの  - M5 ATOM S3 https://ssci.to/8670 - サーボモータsg90 https://akizukidenshi.com/catalog/g/gM-08761/ - Groveケーブル https://ssci.to/798 - Grove -サーボ 変換コネクタ https://ssci.to/6922 - USBケーブル (Type-C) - パソコン ++ArduinoIDE開発環境はセットアップはセットアップ済みであることを前提とします。参考記事↓ https://invisiblepotato.com/arduino00/++ ## ボードマネージャーの設定 ArduinoIDE > 基本設定 を開き、以下のURLを追加のボードマネージャに設定します。 > https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json  ## M5Stackボードを追加 ツール > ボードマネージャ からM5Stackをインストールします。  ## ライブラリの追加 ツール > ライブラリを管理 からライブラリを追加します。 M5Unified、ESP32Servoを検索してインストールします。   ## 接続 図を参考にATOM S3とサーボモータを接続します。サーボモータを接続する配線の色に気をつけてください。茶色がGND(G)、赤が電源(V)オレンジが信号(S)です。  ## スケッチを作成する ファイル > 新規スケッチ ```arduino:ボタン(ATOMS3の画面)を押すとサーボモータが90°回転するプログラム #include <M5Unified.h> #include <ESP32Servo.h> Servo servo1; // create four servo objects int servo1Pin = 2; // Published values for SG90 servos; adjust if needed int minUs = 500; int maxUs = 2400; int pos = 0; // position in degrees int button = 0; void setup() { auto cfg = M5.config(); // M5Stack初期設定用の構造体を代入 // configを設定する場合はここで設定 // 例 // cfg.external_spk = true; M5.begin(cfg); // M5デバイスの初期化 servo1.setPeriodHertz(50); // Standard 50hz servo servo1.attach(servo1Pin, minUs, maxUs); } void loop() { M5.update(); if (M5.BtnA.wasPressed()) { for (pos = 0; pos <= 180; pos += 1) { // sweep from 0 degrees to 180 degrees // in steps of 1 degree servo1.write(pos); delay(2); // waits 20ms for the servo to reach the position } } if (M5.BtnA.wasReleased()) { for (pos = 180; pos >= 0; pos -= 1) { // sweep from 180 degrees to 0 degrees servo1.write(pos); delay(2); } } delay(1); } ``` ## 書き込む ArduinoIDE上部のプルダウンバーからボード(M5Stack-ATOMS3)を選択します。  ++認識しない場合はUSBドライバが必要かもしれません。 https://docs.m5stack.com/en/download https://www.koki.muhen.jp/archives/2075++ 書き込みボタン(→)を押す。書き込めたら完成です。  ## 動作を確認する M5 ATOM S3の画面を押し込むとサーボモータが90°回転します。 回転しない場合は接続が正しいか確認してください。 ## 補足 お疲れ様でした!