본문 바로가기

아두이노

IR 센서와 서보 모터를 결합한 스마트 시계 제작

반응형

먼저, IR 센서와 서보 모터를 결합하여 스마트 시계를 만들기 위한 아두이노 프로젝트에 대한 세부 정보를 제공하겠습니다. 각 파트별로 순차적으로 설명하겠습니다.

1. 이론 소개:

  • IR (Infrared) 센서: 적외선을 사용하여 물체의 존재를 감지하는 센서입니다.
  • 서보 모터: 각도를 조절할 수 있는 모터로, 아날로그 입력 신호를 받아 원하는 각도로 회전합니다.
  • 스마트 시계: IR 센서를 사용하여 손의 접근을 감지하고, 서보 모터를 사용하여 시계 바늘을 조절하여 시간을 표시합니다.

2. 준비물:

  • Arduino 보드 (예: Arduino Uno)
  • IR 센서 모듈 (예: TCRT5000 또는 비슷한 모델)
  • 서보 모터 (예: SG90 또는 비슷한 모델)
  • 시계 바늘 또는 다른 물체 (시계 바늘이 없는 경우 사용 가능한 다른 물체)
  • 점퍼 와이어
  • 브레드보드
  • 필요한 전원 공급 장치 (Arduino 및 서보 모터를 위한)

3. 비슷한 센서 모델명:

  • TCRT5000, TCRT1000, GP2Y0A21YK (IR 센서)
  • SG90, MG90S (서보 모터)

4. 추천 보드 및 간단한 설명:

  • Arduino Uno: 다양한 센서와 모듈을 연결하기에 적합한 개발 보드입니다.

5. 회로 구성:

회로 구성은 다음과 같습니다.

  • IR 센서의 VCC 핀을 Arduino의 5V 핀에 연결합니다.
  • IR 센서의 GND 핀을 Arduino의 GND 핀에 연결합니다.
  • IR 센서의 출력 핀을 Arduino의 디지털 핀 2에 연결합니다.
  • 서보 모터의 VCC 핀을 Arduino의 5V 핀에 연결합니다.
  • 서보 모터의 GND 핀을 Arduino의 GND 핀에 연결합니다.
  • 서보 모터의 제어 핀을 Arduino의 디지털 핀 9에 연결합니다.

6. 코딩 내용:

 

#include <Servo.h>

Servo servo;
int irSensorPin = 2; // IR 센서 연결 핀
int servoPosition = 0; // 서보 모터의 초기 위치

void setup() {
  servo.attach(9); // 서보 모터를 9번 핀에 연결
  pinMode(irSensorPin, INPUT);
}

void loop() {
  int irValue = digitalRead(irSensorPin);

  if (irValue == LOW) {
    servo.write(90); // 서보 모터를 90도 위치로 이동
    delay(1000); // 1초 동안 유지
    servo.write(0); // 서보 모터를 초기 위치로 이동
    delay(1000); // 1초 동안 유지
  }
}

 

 

7. 코딩 내용 설명:

  • Servo 라이브러리를 사용하여 서보 모터를 제어합니다.
  • IR 센서의 출력 값을 읽고, IR 센서가 감지되면 서보 모터를 90도로 이동한 다음 다시 초기 위치로 이동합니다.

8. 코드 업로드 및 테스트:

  • 코드를 아두이노 IDE에 업로드하고 IR 센서가 감지되면 서보 모터가 90도로 이동한 다음 초기 위치로 이동하는지 확인합니다.

9. 응용 업그레이드:

  • LCD 화면을 추가하여 시간을 디지털로 표시하거나, 다른 서보 모터를 추가하여 분 단위로도 시간을 표시할 수 있습니다.

10. 전문용어 및 설명:

  • IR 센서: 적외선 센서로, 적외선 광선을 사용하여 물체의 존재를 감지합니다.
  • 서보 모터: 각도를 조절할 수 있는 모터로, 지정된 각도로 회전합니다.

11. 기타:

  • 이 프로젝트는 간단한 예제로, 더 복잡한 시계 시스템을 개발할 수 있습니다.

 

반응형