BASIC4MCU | 질문게시판 | 조도센서로 led, 서보모터, 스텝모터 제어하기
페이지 정보
작성자 tmxhathej 작성일2020-06-28 22:33 조회4,855회 댓글0건본문
조도센서를 통해 2가지 상황을 표현하려 합니다.
조도센서 특정값 전 후로
led 2개의 1개 점등 / 2개 점등
서보모터 0도와 180도
스텝모터 rpm 15 / 10
이렇게 표현을 하려합니다.
현재 서보모터와 led는 잘 작동하는데 스텝모터가 작동을 하지않습니다.
회로는 그대로고 스텝모터 예제만 돌렸을땐 정상 작동을 하여 회로문제는 아닌것같습니다.
스텝모터의 겨우 28byj-48에 ULN2003AN칩을 사용하였습니다.
#include <Stepper.h>
Stepper s_motor(2037, 11, 9, 10, 8);
#include <Servo.h>
int cds = A0;
int LEDa = 4;
int LEDb = 7;
int motor = 13;
Servo sv;
void setup() {
Serial.begin(9600);
s_motor.setSpeed(15);
pinMode(cds, INPUT);
pinMode(LEDa, OUTPUT);
pinMode(LEDb, OUTPUT);
sv.attach(motor);
}
void loop() {
s_motor.step(1);
int val = analogRead(cds);
Serial.print("cds_sensor: ");
Serial.println(val);
if (650 <= val)
{
digitalWrite(LEDa, HIGH);
digitalWrite(LEDb, LOW);
for (int i = 0; i < 180; i++) {
sv.write(i);
delay(10);
}
while (val >= 650 && val <= 1023) {
delay(100);
val = analogRead(cds);
}
}
else
{
digitalWrite(LEDa, HIGH);
digitalWrite(LEDb, HIGH);
for (int k = 180; k > 0; k--) {
sv.write(k);
delay(10);
}
while (val >= 0 && val < 650) {
delay(100);
val = analogRead(cds);
}
delay(500);
}
}
댓글 0
조회수 4,855등록된 댓글이 없습니다.