# 명칭
- 온도 센서,
# 기능
- 주변의 온도를 측정한다.
# TMP36 온도센서
- 2.7V ~ 5.5V 공급 / 1도 변화 당 10mV 변화 / -40도 ~ 125도까지 측정가능.
- 온도의 변화를 전압으로 측정함
# 온도센서(tmp36)를 이용하여 온도 측정하기
## 준비물
- TMP36 온도센서
- 보드, 브레드보드, 점퍼케이블
## 아두이노에서 온도센서 값 읽고, 온도(섭씨)로 계산하기
- 아두이노는 아날로그 입력 값을 0~1023의 디지털 값으로 변환해주는 ADC(Analog to Digital Converter) 기능이 있음.
- 온도센서는 온도 변화에 따른 전압을 출력하며, 아두이노는 이를 0~1023의 값으로 변환해서 출력해줌. 다라서 온도 계산을 위해서는 ADC로 변환된 0~1023 의 값을 다시 전압으로 변환해야 함.
- 변환공식 : 전압(mV) = (ADC 값 / 1024.0) * 5000.0
- 센서에 연결된 전압이 5V 이면 5000.0 / 3.3V이면 3300.0 을 곱해야 함.
- 측정된 전압은 다음의 공식으로 온도(섭씨)로 변환할 수 있음.
- 온도(섭씨) = (전압(mV) - 500) / 10
## 회로도
## 코드 (arduino)
// code start
int inputPin = A2;
void setup() {
Serial.begin(9600);
}
void loop() {
// 온도 변환
int inputVal = analogRead(inputPin);
float voltage = (inputVal / 1024.0) * 5000.0;
float tempVal = (voltage - 500) / 10;
// 모니터 화면에 값 출력
Serial.print(inputVal);
Serial.print(" ");
Serial.print(voltage);
Serial.print(" ");
Serial.println(tempVal);
// 0.1초 기다리기
delay(100);
}
// code end
# 참고자료
- 아두이노 기초 강좌 6 – analog 값 읽기, 쓰기 : http://www.hardcopyworld.com/ngine/aduino/index.php/archives/1040