저비용으로 간단하게 어디에서든 가능한

arduino

아두이노 레오나르도 - 적외선 센서로 서보모터 제어하기

작성자
T
작성일
2022-07-01 06:36
조회
356

입력

출력

실습내용

적외선센서

서보모터

적외선 센서로 일정 거리 안에 물체가 있을 때 서보모터가 동작함

준비물

수량

아두이노 (레오나르도)

1

브레드보드

1

적외선 센서

1

서보모터

1

점퍼케이블

8

  • 결선도

NlSwxb5Exztlxz6Uz_g39rqm5trdo-lNkHyWhpBoVb80IGtsicK5QzR_a_ENbsGw1ZtHGrOXlp81-7PnEua8QA2sBKP8OnRlq-nSpTwEq2Nctgf7fP-MpdxpRqnpQ-_m7hZbjKSp2fohn8JLboc

  • 코딩

#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

©2021 (주)지능디자인. ALL RIGHTS RESERVED.