BASIC4MCU | 질문게시판 | L293D 모터쉴드 + 초음파센서 + 스텝모터 구동 관련 코드 질문있습니다.
페이지 정보
작성자 훈스 작성일2020-11-02 15:27 조회10,901회 댓글1건본문
지금 제동장치를 만들기위해 초음파센서로 20 CM 이내 사물이 보이면 모터가 구동하여 브레이크를 작동시키게 하고싶은데
모터쉴드에 스텝모터 연결시키고 초음파센서는 브레드보드 통해 모터쉴드에 연결했는데도
모터가 초음파센서와 상관없이 게속 돌아가네요
아래는 코드입니다.
#include <Stepper.h>
#include <AFMotor.h>
AF_Stepper M28BYJ(64, 1);
int trig = 12;
int echo = 13;
float duration;
float distance;
// 거리함수 및 초음파센서
//스텝모터 1회전당 필요 스텝수 64, 연결 모터채널(모터1)
void setup() {
Serial.begin(9600);
pinMode(trig, OUTPUT); // 트리거 핀을 출력으로 설정
pinMode(echo, INPUT); // 에코 핀을 입력으로 설정
M28BYJ.setSpeed(200.0);
}
void loop() {
digitalWrite(trig,HIGH);
delay(10);
digitalWrite(trig,LOW);
duration = pulseIn(echo,HIGH);
distance = ((34000*duration)/1000000)/2;
Serial.print(distance);
Serial.println("cm");
//거리 계산
if (distance < 10) { // 20cm 이내 장애물 감지
M28BYJ.step(1000, FORWARD, SINGLE);
delay(1);
}
else
{ // 20cm이내에 벽이 없다면 정지
delay(100);
}
}
어떻게 헤야 초음파센서와 연동되서 모터를 작동시킬수있을까요조언부탁드립니다 ㅠ
댓글 1
조회수 10,901master님의 댓글
master 작성일
delay(10);
트리거 신호의 딜레이는 10ms로 주면 안됩니다.
us 단위의 딜레이를 사용하세요
초음파 예제를 찾아서 참고하세요