정보나눔

오픈소스하드웨어 프로젝트에 대한 다양한 정보를 나누는 공간입니다.

전압을 통해 서보모터 제어하기 ㅠㅠ
유선우 | 2016-12-06

#include <Servo.h>
 
Servo servo;
 
int servoPin = 9;
int angle = 0; // servo position in degrees
 
void setup()
{
  servo.attach(servoPin);
}
 
void loop()
{
  servo.write(90);
  delay(2000);
  servo.write(180);
  delay(2000);
}

 

위에가 제가 짠 소스코드입니다.

이 소스코드를 이용하면 모터가 계속해서 90도에서 180도를 움직이게 되는데

제가 원하는건 아날로그 핀을 통해 3V 이하가 들어오면 모터가 90도에서 180도  90도로 (주차차단기처럼) 움직이고 3V 이상이 들어오면 안 움직이는 것입니다. ㅠㅠㅠ

아두이노를 처음 써봐서 IF 문을 이용해서 짜는 법을 잘 몰라서요 ㅠㅠㅠ

도와주시면 정말정말 감사하겠습니다 ㅠㅠㅠ

 

프로필사진

Klant 2016-12-08 18:34:57

 

adc를 통해 3V가 1024기준으로 대략 700정도의 값이라고 가정했을 때

int value = analogRead(사용할 아날로그 핀의 번호) 

 

if(value < 700){

 servo.write(90);

delay(300);

servo.write(180);

}

else{

서보 모터 각도 고정(서보 모터가 정지하는 함수는 없습니다)

}

 

위의 코드를 참고하시어 조금씩 소스 코드를 변경해보시면 될 것 같네요!

이전글   |    아두이노 온/습도 센서 질문합니다. 2016-12-06
다음글   |    질문) 스위치로 led켜기 2016-12-06