정보나눔

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

서보 모터 와 LED 동시 작동
맹구 | 2018-06-11

1. 프로젝트 사용한 보드 종류

 아두이노 우노

 

2. 사용한 개발 프로그램명

아두이노 IDE

 

3. 사용한 센서 모델명

  버튼1개 LED1개 서보모터 1개

 

 

4. 연결한 회로 설명 (또는 이미지)

 

 

5. 소스코드 (주석 필수)

#include <Servo.h> 
char ABC;  
unsigned long time;
int button1= 2; 
int button2= 3; 
int led1= 6;
int led2= 7;
int times = 0;
void servostart();
Servo servo;

void setup()
{
  Serial.begin (9600); 
  servo.attach(8); // 서보모터 8번 핀번호
  pinMode(trigPin, OUTPUT); // 서보모터 신호를 보냄
  pinMode(echoPin, INPUT); // 서보모터 신호를 받음
  pinMode(button1, INPUT); // 버튼 신호를 받음
  pinMode(button2, INPUT); // 버튼 신호를 받음
  pinMode(led1, OUTPUT) ; // 버튼 신호를 보냄 
  pinMode(led2, OUTPUT) ; // 버튼 신호를 보냄
  pinMode(in1, OUTPUT); //각 포트 출력으로 사용
  pinMode(in2, OUTPUT); //각 포트 출력으로 사용
}

void loop()
{
  Serial.print("Time: ");
  time = millis();
  delay(1000);
  servo.write(0); //서보모터의 각도 0도로 지정
  delay(500); // 3초로 지정
  servo.write(90); //서보모터의 각도 90도로 지정
  delay(500); // 3초로 지정
  if( digitalRead(button1)==HIGH)
  {
   digitalWrite(led1, HIGH); 
   delay(3000);
  }
  else
  {
    digitalWrite(led1, LOW);
  }
}

 

 

 

6. 문제점 및 에러 내용

서보모터가 무한 반복중 1번 버튼을 누르면 1번 LED가 점등 하는 코드인데

서보모터가 작동중 1번 버튼을 누르면 서보모터가 작동을 중지하고 LED가 점등 3초후 소등과 동시에 서보모터가 다시 작동을 합니다. 

우리가 원하는 동작은 서보모터가 무한 작동 중에 버튼을 누르면 모터는 무한 반복을하는 상태에서 LED만 점등 소등을 하는 동작을 원하고있습니다. 

모터 동작중 버튼을 누르면 led는 작동을 하면서 서보모터가 정지하는 원인과 해결 방법을 알고싶습니다.

더불어서 프로그램에서 틀린 점이 있으면 수정해주시면 감사하겠습니다. 

이전글   |    아두이노 USB포트 2018-06-10
다음글   |    아두이노 LCD(ILI9341) 작업중 질문이요 2018-06-12