■servo:read関数
servo:read関数は、サーボの現在の角度(write関数への最後の呼び出しに渡された値)を読み込みます。
■使用例
Arduino IDEで使用するservo:read関数の使い方は以下の通りです。
試しに図1の様に定番サーボモーターSG90とArduino UNOを接続し下記プログラムを実行すると、servo:write関数でサーボモーターのアームが0~180°の範囲を3.6秒周期で行き来します。
この時Write関数で指定された角度をservo:read関数で読み取りPCのシリアルモニタ上に表示します。
図1:サーボモーターSG90とArduino UNOの接続例
#include <Servo.h> Servo myservo; void setup() { Serial.begin(9600); //9600bpsでシリアルポートを開く myservo.attach(4, 500, 2400); //4番ピンを出力ピンにする } void loop() { for (int i = 0; i < 180; i++) { //サーボの角度を0~180°迄1°づつ増加させる myservo.write(i); //4番ピンにサーボ制御信号を出力 delay(20); //20ms待つ } for (int i = 180; i >= 0; i--) { //サーボの角度を180~0°迄1°づつ減少させる myservo.write(i); //4番ピンにサーボ制御信号を出力 delay(20); //20ms待つ } Serial.println(myservo.read()); //iの値の後に改行を付けてシリアル出力します }
図1:プログラム例
■構文
myservo.read()
■パラメータ
myservo:接続先毎に設定する任意の接続名
■戻り値
0度から180度までのサーボの角度。
励みになりますのでよければクリック下さい(^o^)/