Arduinoのサンプルプログラム

Arduino-Servo(サーボモーター)ライブラリの使い方

当記事では、ArduinoのServo(サーボモーター)ライブラリの使い方について詳しく解説します。

Arduinoのサーボモーター制御用ライブラリ「Servo」を使ったプログラムで、サーボモーターを動作させます。

なお、その他のArduino関数・ライブラリについては、以下の記事をご覧ください。

Servo(サーボモーター)ライブラリ

関数 引数 戻り値 説明
attach(int pin, int min, int max) int pin:指定する
int min:角度0°のパルス幅(usec)、初期値544
int max:角度180°のパルス幅(usec)、初期値2400
インデックス値 サーボモーターのピン番号を指定
bool attached(void) なし 割り当てあり:true
割り当てなし:false
ピンにサーボモーターが割り当てられてるか確認
void detach(void) なし なし サーボモーターに割り当てられているピンを開放
void write(int angle) int angle:指定の角度 なし 指定角度にサーボモータを回転
void writeMicroseconds(int uS) int uS:パルス幅をusec単位で指定 なし パルス幅を指定してサーボモーターを回転
int read(void) なし サーボモーターの角度 現在のサーボモーターの角度を読み取り

attach()/サーボモーターのピン番号を指定

attach()/サーボモーターのピン番号を指定
  • 関数:attach(int pin, int min, int max)
  • 引数:int pin⇒指定する
  •   :int min⇒角度0°のパルス幅(usec)、初期値544
  •   :int max⇒角度180°のパルス幅(usec)、初期値2400
  • 戻り値:インデックス値

attach()関数は、引数でサーボモーターのピン番号を指定します。また、省略可能ですが、引数のminとmaxで角度0°と180°のパルス幅を設定することもできます。

attached()/ピンにサーボモーターが割り当てられてるか確認

attached()/ピンにサーボモーターが割り当てられてるか確認
  • 関数:bool attached(void)
  • 引数:なし
  • 戻り値:割り当てあり⇒true/割り当てなし⇒false

attached()関数は、attach()関数でサーボモーターのピン番号が割り当てられているのか確認します。戻り値で割り当てありだと「true」、割り当てなしだと「false」が返ってきます。

detach()/サーボモーターに割り当てられているピンを開放

detach()/サーボモーターに割り当てられているピンを開放
  • 関数:void detach(void)
  • 引数:なし
  • 戻り値:なし

detach()関数は、attach()関数で割り当てたサーボモーターのピンを開放して、未割り当ての状態に戻します。

write()/指定角度にサーボモータを回転

write()/指定角度にサーボモータを回転
  • 関数:void write(int angle)
  • 引数:int angle⇒指定の角度
  • 戻り値:なし

write()関数は、引数で指定した角度までサーボモーターを回転させます。

writeMicroseconds()/パルス幅を指定してサーボモーターを回転

writeMicroseconds()/パルス幅を指定してサーボモーターを回転
  • 関数:void writeMicroseconds(int uS)
  • 引数:int uS⇒パルス幅をusec単位で指定
  • 戻り値:なし

writeMicroseconds()関数は、引数でパルス幅を指定することでサーボモーターを回転させます。サーボモーターは受信するパルス幅によって回転する角度が決まっています。

read()/現在のサーボモーターの角度を読み取り

read()/現在のサーボモーターの角度を読み取り
  • 関数:int read(void)
  • 引数:なし
  • 戻り値:サーボモーターの角度

read()関数は、現在のサーボモーターの角度を戻り値で返します。

サンプルプログラム(サンプルスケッチ)


Arduinoのサーボモーター制御用ライブラリ「Servo」を使ったプログラムで、サーボモーターを動作させます。

おすすめのArduinoボードはどれ?

当記事『Arduino-Servo(サーボモーター)ライブラリの使い方』では、Arduino Unoを使用したサンプルプログラムを解説してきました。

やはり、たくさんの種類のあるArduinoボードの中でも、最も基本的なエディションのArduino Unoがおすすめなのですが、Arduino Unoと電子部品を組み合わせたキットも存在します。

電子工作初心者にとっては、いちいち電子部品を別途購入する必要がないので非常に有用です。以下の記事で初心者でもわかりやすいように、ランキング形式でおすすめのArduino Unoを紹介しているので、ぜひご覧ください。

また、以下の記事で、安価でWi-Fi/Bluetoothに対応している「ESP32開発ボード」についてもまとめてみました。

このボードは、Arduinoボードではありませんが、Arduino IDEでソフト開発ができるため、電子工作でIoTを実現したい方におすすめです。

テキストのコピーはできません。