Arduino & IoT Academy · レッスン

つまみで操作するサーボ

ポテンショメータでサーボを動かします。

レッスン 4/413 ステップ

「つまみで操作するサーボ」はCoddyKit上の無料Arduino & IoT Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはArduino & IoT Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Arduino & IoT Academyコースには全4レッスンが含まれています。

つまみで操縦する

手で制御してみましょう。ポテンショメータを回すと、まるで小さなハンドルのようにサーボがリアルタイムで追従します。🎛️

計画を立てる

考え方は単純です。つまみを読み取り、その数値を角度に変換してサーボに書き込みます。これをloop()内で繰り返します。

つまみを読み取る

ポテンショメータのピンにanalogRead()を使います。つまみをどれだけ回したかに応じて、0から1023までの数値が返されます。

int val = analogRead(A0);

範囲が一致しない

つまみの範囲は0から1023ですが、サーボが理解できるのは0から180です。この2つの尺度の間で変換する必要があります。

map()で解決する

map()関数は、数値をある範囲から別の範囲へ変換します。つまみの値をサーボの角度に変換するのに最適です。

int angle = map(val, 0, 1023, 0, 180);

サーボに送る

変換した角度をそのままwrite()に渡します。サーボは、つまみが示している位置へ移動します。

myServo.write(angle);

ループ全体

読み取り、変換、書き込みという3行をloop()に並べると、サーボがつまみを連続的に追従します。

void loop() {
  int val = analogRead(A0);
  int angle = map(val, 0, 1023, 0, 180);
  myServo.write(angle);
}

動きが落ち着く時間を与える

ループの最後に短いdelay()を追加します。サーボが各位置に到達する時間ができ、動きも滑らかになります。

delay(15);

ポテンショメータを配線する

ポテンショメータの両端のピンを5VとGNDに接続し、中央のワイパーピンをアナログピンA0に接続します。これで電圧をきれいに変化させられます。

ジッターを抑える

アナログ値は少し揺れるため、サーボがジッターを起こすことがあります。複数回読み取って平均したり、小さな変化を無視したりすると、動きが安定します。

方向を反転する

サーボを反対方向に回したいですか?mapの出力範囲を0から180ではなく、180から0に入れ替えるだけです。

int angle = map(val, 0, 1023, 180, 0);

確認テスト

つまみの読み取り値をサーボの角度に接続してみましょう。

まとめ

ポテンショメータを読み取り、0から1023を0から180にmapして、その角度を毎ループwriteします。これで手の動きでサーボを直接操縦できます。🙌

無料で開始

AI チューターと学ぶ C++ — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
30
レッスン
120

よくある質問

「つまみで操作するサーボ」レッスンは無料ですか?

はい。「つまみで操作するサーボ」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Arduino & IoT Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Arduino & IoT Academyコースには全4レッスンが含まれています。

「つまみで操作するサーボ」で何を学びますか?

ポテンショメータでサーボを動かします。 ブラウザで直接実行するハンズオンコードでArduino & IoT Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Arduino & IoT Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのArduino & IoT Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「つまみで操作するサーボ」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このArduino & IoT Academyレッスンでコードを書いて実行できますか?

はい。すべてのArduino & IoT Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. サーボが角度を認識する仕組み
  2. Servoライブラリとattach
  3. 0度から180度までスイープする
  4. つまみで操作するサーボ
← Arduino & IoT Academyに戻る