【Arduino演習記録008】サーボモータを使う。角度を指定して回転が可能。可変抵抗器と組み合わせて自由に操る

投稿日: 作成者: ussy

今日はサーボモータを使った実験をします。
サーボモーターに角度をプログラムすることで動くのでこれとても便利です。
アウトプットの表現として色々使えそうです。

【使用しているテキスト】

実践Arduino! 電子工作でアイデアを形にしよう

新品価格
¥2,475から
(2020/8/14 10:36時点)

  1. 必要部材
    1. Aruduino本体 または互換機(安価)
      1. Arduino互換機
        ※IDEで下記設定変更をすると使えます。
        詳しくはhttp://u-style.info/2020/08/14/arduino演習記録01-ide環境を作る統合開発環境の構築)/

        1. ボード ArduinoNano
        2. プロセッサATmega328P(OldBootloder)
          ※IDE使用時はこの変更が大事!
        3. シリアルポートCOM5 ※任意:環境に応じて変更

          KeeYees Nano V3.0 Mini USB マイクロコントローラ開発ボード ATmega328P CH340G USBケーブル付き 3セット ブレッドボード 400穴 3個 ジャンパーワイヤー 20CM 40ピン オスーオス メスーメス オスーメス

          新品価格
          ¥2,280から
          (2020/8/15 10:52時点)

          ※(3個入りでUSBコード、ブレッドボード、配線付き)

      2. Arduino Uno

        Arduino Uno Rev3 ATmega328 マイコンボード A000066

        新品価格
        ¥2,500から
        (2020/8/15 10:49時点)

      1. ブレットボード

        HiLetgo・ 5個セット 400穴 ミニブレッドボード 実験用ボード 8.5*5.5 CM ニューブレッドボード [並行輸入品]

        新品価格
        ¥870から
        (2020/9/5 16:24時点)

         

      2. ジャンパーワイヤー

        ELEGOO 120pcs多色デュポンワイヤー、arduino用ワイヤ―ゲ―ジ28AWG オス-メス オス-オス メス ?メス ブレッドボードジャンパーワイヤー

        新品価格
        ¥990から
        (2020/9/5 16:28時点)

        これぐらいあれば演習には十分じゃないでしょうか。
        ブレッドボードーブレッドボード
        ブレッドボードーArduino
        ブレッドボードーセンサー類
        等オスメス全組み合わせが入ってます。

      3. サーボモータ

        デジタル・マイクロサーボ SG90 (1個)

        新品価格
        ¥440から
        (2020/10/4 17:08時点)

         

      4. 可変抵抗器

        20PCS / LOT 3362P-103 3362P 10Kオームマルチターントリマーポテンショメーター高精度3362可変抵抗器3362-P103

        新品価格
        ¥388から
        (2020/10/4 17:12時点)

  2. 【配置図】
  3. 【回路図】
  4. 【プログラム】
    #include <Servo.h>
    Servo myServo;void setup() {
    // put your setup code here, to run once:
    myServo.attach(9);
    Serial.begin(9600);}void loop() {
    // put your main code here, to run repeatedly:
    int sensorValue = analogRead(A0);
    int angle = map(sensorValue, 0, 1023,0,180);
    Serial.println(angle);
    myServo.write(angle);
    delay(10);
    }
  5. 【実際画像】
  6. 【実行結果】

    可変抵抗器の数値を変えることで、サーボモーターが同じように角度を変えます。

  7. まとめ

今回デバックする為に
>Serial.println(angle);
命令をいれています。
これでモニタで数値を確認し、不具合のあるプログラム箇所に修正を入れていきます。

プログラムは面白い演習でした。
この仕組は今後色々使えそうです。