舵機


定位到90度

#include <Servo.h> 
Servo myservo3;

void setup() {
  myservo3.attach(3); 
}

void loop() {
  myservo3.write(90);
}

0到180度反覆轉動

#include <Servo.h>
Servo myservo3;
int i;

void setup() {
  myservo3.attach(3); 
}

void loop() {
  for (i=0;i<180;i++){
    myservo3.write(i);
  delay(20);
  }

  for (i=180;i>0;i--){
    myservo3.write(i);
  delay(20);
  }
}

下面是上課解答,先自己試試看,不要急著看答案

123木頭人解答

#include <Servo.h>
Servo myservo5;  // 頭裝pin5
Servo myservo9;  // 兩隻手裝pin9,10
Servo myservo10;
int i;

void setup() {
  myservo5.attach(5); 
  myservo9.attach(9); 
  myservo10.attach(10); 
}

void loop() {
  myservo5.write(180);
  delay(1500);
  
  for (i=180;i>0;i--){
    myservo5.write(i);
  delay(15);
  }

    for (i=0;i<180;i++){
    myservo9.write(i);
    myservo10.write(i);
    delay(10);
  }

  for (i=180;i>0;i--){
    myservo9.write(i);
    myservo10.write(i);
    delay(10);
  }
}

雙臂同步答案

#include <Servo.h> 
Servo myservo3;
Servo myservo5;

void setup() {
  myservo3.attach(3); 
  myservo5.attach(5); 
}

void loop() {
  int i;
  for (i=0;i<180;i++){
    myservo3.write(i);
    myservo5.write(180-i);
    delay(10);
  }

  for (i=180;i>0;i--){
    myservo3.write(i);
    myservo5.write(180-i);
    delay(10);
  }
}

您可能也會喜歡…

發佈留言