3.7 - サーボの揺れ動き

このキットには、LEDやパッシブブザーに加えて、PWM信号で制御されるデバイス、サーボも含まれています。

サーボは位置(角度)制御用のデバイスで、一定の角度の変更が必要な制御システムに適しています。飛行機、潜水艦の模型、リモコンロボットなどの高級リモコン玩具で広く使用されています。

さあ、サーボを揺らしてみましょう!

必要なコンポーネント

このプロジェクトでは、以下のコンポーネントが必要です。

全体のキットを購入すると非常に便利です。リンクはこちらです:

名前

このキットに含まれるアイテム

購入リンク

ケプラーキット

450+

Kepler Kit

以下のリンクから個別に購入することもできます。

SN

コンポーネント紹介

数量

購入リンク

1

Raspberry Pi Pico W

1

BUY

2

マイクロUSBケーブル

1

3

ブレッドボード

1

BUY

4

ジャンパーワイヤー

数本

BUY

5

サーボ

1

BUY

回路図

sch_servo

配線

wiring_servo

  • オレンジ色のワイヤーは信号で、GP15に接続されています。

  • 赤色のワイヤーはVCCで、VBUS(5V)に接続されています。

  • 茶色のワイヤーはGNDで、GNDに接続されています。

コード

注釈

  • ファイル 3.7_swinging_servo.ino は、パス kepler-kit-main/arduino/3.7_swinging_servo で開くことができます。

  • または、このコードを Arduino IDE にコピーしてください。

  • アップロード ボタンをクリックする前に、ボード(Raspberry Pi Pico)と正確なポートを選択してください。

プログラムが実行されていると、サーボアームが0°から180°まで前後に揺れ動くのが見られます。

どうやって動くのか?

Servo.h ライブラリを呼び出すことで、簡単にサーボを制御できます。

#include <Servo.h>

ライブラリ関数

Servo

サーボを制御するための Servo オブジェクトを作成。

uint8_t attach(int pin);

ピンをサーボドライバーに変換。pinModeを呼び出す。失敗時は0を返す。

void detach();

サーボドライブからピンを解放。

void write(int value);

サーボの角度を度で設定、0から180。

int read();

最後のwrite()で設定した値を返す。

bool attached();

サーボが現在接続されている場合は1を返す。