[Arduino] 8.온도 센서




온도센서



이번 장에서는 온도 센서를 이용해서 실내 온도를 측정해보겠습니다!


image




저희가 이용할 온도센서는 TMP36 센서로 온도가 1도 변할 때 출력 전압이 10mV 변화하며, 영하의 온도를 측정할 수 있도록 500mV가 섭씨 0도에 해당하도록 만들어져 있습니다.

온도를 측정하기 위해 아날로그 A0에 연결하고, analogRead 함수로 읽어 들인 값 voltag는 0에서 1023 사이의 값이므로 이를 기준 전압인 5V로 변환시켜야합니다.

그리고 변환된 전압에 0.5V의 바이어스 값을 빼고 100을 곱하면 섭씨 온도를 얻을 수 있습니다.


image




int tmp = A0;
void setup() {
Serial.begin(9600);
pinMode(tmp, INPUT);
}

void loop() {
 int value = analogRead(tmp);
 float voltage = value * 5.0/1024;     // 온도센서의 값을 전압으로 변환
 float temperature = (voltage - 0.5) * 100; //섭씨온도로 변환
 Serial.print(temperature);
 Serial.println(" C");
 delay(300);
}