센서

학습목표

1. 센서란?

2. 빛 센서 (CDS)

2.1 예제 1 (빛의 변화에 따라 LED의 밝기 조절)

2.1.1 회로도

2.1.2 아두이노 보드 연결 구성

2.1.3 Sketch 프로그램

void setup() {
  pinMode(5, OUTPUT);   // PWM 출력(디지털 핀 5)으로 LED 제어  
}

void loop() {
  // 아날로그 입력핀 2번을 통하여 입력된 전압값을 0~1023범위의 값으로 읽어 cdsValue에 저장
  int cdsValue = analogRead(2);   

  int pwmValue = map(cdsValue, 0, 1023, 0, 255);  // 0~1023범위의 val값을 0~255 범위로 변환
  analogWrite(5, pwmValue);                       // PWM 신호로 출력 
  delay(20);
}

3. 초음파 센서

3.1 초음파 센서로 거리 측정 원리

3.2 디지털 초음파 센서 HC-SR04

3.3 예제 2

3.3.1 회로도

3.3.2 아두이노 보드 연결 구성

3.3.3 Sketch 프로그램

  1. 10μ초의 트리거 펄스를 발생

    digitalWrite(TRIG_pin, LOW); 
    delayMicroseconds(2);
    digitalWrite(TRIG_pin, HIGH); 
    delayMicroseconds(10);
    digitalWrite(TRIG_pin, LOW); 
  2. HC-SR04 모듈은 트리거 펄스를 기준으로 40kHz의 초음파 신호를 8번 발생

  3. 되돌아오는 반사 펄스를 pulseIn( )함수를 사용하여 계측

    time= pulseIn(ECHO_pin, HIGH);
  4. 시간을 거리로 계산

    distance = time/58

4. 연습문제

  1. 예제1의 스케치코드에서 cdsValue와 pwmValue의 값을 다음과 같이textLCD에 표시하도록 스케치를 만들어 보자.

  2. 물체의 거리에 따라 도레미파솔라시도를 연주하는 스케치를 만들어 보자.