久しぶりに動かしてみました

最近、仕事が忙しいのを言い訳にして、arduino を触ってませんでした。
今日久しぶりに動かしました。

サーボモーターを2つ、同じように動かしたいと思い、
以下のようなプログラムにしたのですが、
D10 ピンにつないだモーターしか動きません。

#include
Servo servo; //Servoオブジェクトを作成

void setup()
{
servo.attach(9); //D9ピンをサーボの信号線として設定
servo.attach(10); //D10ピンをサーボの信号線として設定
}

void loop()
{
servo.write(90); // サーボの角度を90°に設定
delay(1000);
servo.write(0); // サーボの角度を0°に設定
delay(1000);
}

どうしてなのか?
なぜ D9ピンにつないだものは動かないのか?
まだわかりません。
悩んでみます!!




ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 0

この記事へのコメント

tonton
2016年11月22日 19:27
こんにちは。
複数のサーボモータを動かすには、
複数のServoオブジェクトを作り、
それぞれに1つのサーボを担当させましょう。

具体的には次のようになります。

#include
Servo servo0; // D9用のServoオブジェクトを作成
Servo servo1; // D10用のServoオブジェクトを作成

void setup()
{
servo0.attach(9); // D9ピンをサーボの信号線として設定
servo1.attach(10); // D10ピンをサーボの信号線として設定
}

void loop()
{
servo0.write(90); // D9のサーボの角度を90°に設定
servo1.write(90); // D10のサーボの角度を90°に設定
delay(1000);
servo0.write(0); // D9のサーボの角度を0°に設定
servo1.write(0); // D10サーボの角度を0°に設定
delay(1000);
}
tonton
2016年11月22日 19:28
連投失礼。あるいは配列を使って

#include
const int servoCount = 2;
Servo servos[servoCount]; // 2つのServoオブジェクトを作成

void setup()
{
servos[0].attach(9); // D9ピンをサーボの信号線として設定
servos[1].attach(10); // D10ピンをサーボの信号線として設定
}

void loop()
{
for (int i = 0; i < servoCount; i++) {
servos[i].write(90); // サーボの角度を90°に設定
}
delay(1000);
for (int i = 0; i < servoCount; i++) {
servos[i].write(0); // サーボの角度を0°に設定
}
delay(1000);
}

というような感じでいかがでしょうか?
このブログの者
2016年11月22日 22:47
コメントありがとうございます!
いま会社帰りですので帰ったら
試して見ます!

この記事へのトラックバック