본문 바로가기

Arduino

[Arduino] 서보모터 실습: HIGH 값을 조절하여 서보모터 제어하기

반응형

HIGH 값을 조절하여 서보모터 제어하기


준비물)

아두이노 우노(Arduino Uno)

USB 케이블

서보모터

▲ 아두이노 우노, USB 케이블, 서보모터


(회로 연결)


#include <Servo.h>    // 서보모터 헤더파일을 선언한다.

Servo myServo;        // 서보모터 객체를 선언한다.

void setup(){
  myServo.attach(9);  // ~PWM 아두이노 핀 번호를 선언한다.
}

void loop(){
   myServo.writeMicroseconds(500);    // HIGH 값을 500ms 동안 유지한다.
   delay(1000);

   myServo.writeMicroseconds(1000);   // +45도
   delay(1000);

   myServo.writeMicroseconds(1500);   // +90도
   delay(1000);

   myServo.writeMicroseconds(2000);   // +135도
   delay(1000);

   myServo.writeMicroseconds(2500);   // +180도
   delay(1000);
}

▶ 반복문

#include <Servo.h>

Servo myServo;
int servo = 9;  // 서보모터의 ~PWM 아두이노 핀 번호를 선언한다.

void setup(){
  myServo.attach(servo);
}

void loop(){
  for(int i = 500; i <= 2500; i = i+500){
    myServo.writeMicroseconds(i);
    delay(1000);
  }
}

▶ 반복문, 배열

#include <Servo.h>

Servo myServo;
int servo = 9;  // 서보모터의 ~PWM 아두이노 핀 번호를 선언한다.
int servo_high[5] = {500, 1000, 1500, 2000, 2500};

void setup(){
  myServo.attach(servo);
}

void loop(){
  for(int i = 0; i < 5; i++){
    myServo.writeMicroseconds(servo_high[i]);
    delay(1000);
  }
}
반응형