저비용으로 간단하게 어디에서든 가능한
arduino
아두이노 레오나르도 - 적외선 센서로 서보모터 제어하기
작성자
T
작성일
2022-07-01 06:36
조회
356
입력 | 출력 | 실습내용 |
적외선센서 | 서보모터 | 적외선 센서로 일정 거리 안에 물체가 있을 때 서보모터가 동작함 |
준비물 | 수량 |
아두이노 (레오나르도) | 1 |
브레드보드 | 1 |
적외선 센서 | 1 |
서보모터 | 1 |
점퍼케이블 | 8 |
결선도
코딩
#include <Servo.h>
Servo sv; //Servo에서 사용할 sv라는 대표변수 지정
int distance = 0; // 거리값을 저장할 변수
void setup() {
Serial.begin(9600); // PC와의 시리얼 통신속도를 9600bps로 설정
sv.attach(13); //서보모터는 13번 핀에 연결
}
void loop() {
int volt = map(analogRead(A0), 0, 1023, 0, 5000); // 0~1023 사이 값을 갖는 아날로그 신호값을
// 0~5000 (5V) 사이 값으로 변환
distance = (27.61 / (volt - 0.1696)) * 1000; // 읽어들인 Voltage 값을 거리값(단위: cm)로 변환하는 공
int a = map(distance, 10, 60, 0, 180);
Serial.print(distance); //거리값을 시리얼모니터로 출력해줍니다.
Serial.print(" cm");
Serial.println(" ");
sv.write(a);
delay(1000);
}
전체 0
댓글을 남기려면 로그인하세요.