170 likes | 300 Views
Ubiquitous Computing Practice (Temperature). Youn-Hee Han, In- Seok Kang { yhhan , Iseka }@kut.ac.kr Laboratory of Intelligent Networks Advanced Technology Research Center Korea University of Technology http://link.kut.ac.kr. Contents. Introduction TMP36 Temperature
E N D
Ubiquitous Computing Practice(Temperature) Youn-Hee Han, In-Seok Kang {yhhan, Iseka}@kut.ac.kr Laboratory of Intelligent NetworksAdvanced Technology Research CenterKorea University of Technology http://link.kut.ac.kr
Contents • Introduction • TMP36 • Temperature • print out the temperature(centigrade) 섭씨 온도 출력 • Convert to Fahrenheight’s temperature • 화씨 온도 출력 • 도전과제
TMP36 Feature : - Voltage Input: 2.7 V to 5.5 VDC - 10 mV/°C scale factor - ±2°C accuracy over temperature - ±0.5°C linearity - Operating Range: −40°C to +125°C
print out the temperature(centigrade) Temperature
If you're using a 5V Arduino • Voltage at pin in milliVolts = (reading from ADC) * (5000/1024)This formula converts the number 0-1023 from the ADC into 0-5000mV (= 5V) • If you're using a 3.3V Arduino • Voltage at pin in milliVolts = (reading from ADC) * (3300/1024)This formula converts the number 0-1023 from the ADC into 0-3300mV (= 3.3V) • Centigrade temperature • = [(analog voltage in mV) - 500] / 10
Sketch int temperaturePin = 0; void setup() { Serial.begin(9600); } void loop() { float temperature = getVoltage(temperaturePin); temperature = (temperature - 0.5) * 100; // Serial.println(temperature); delay(1000); } float getVoltage(int pin) { return (analogRead(pin) * .004882814); // 5 / 1024 //converting from a 0 to 1023 digital range // to 0 to 5 volts (each 1 reading equals ~ 5 millivolts) }
Sketch intsensorPin = 0; void setup() { Serial.begin(9600); } void loop() { intreading = analogRead(sensorPin); float voltage = reading * 5.0; voltage /= 1024.0; Serial.print(voltage); Serial.println(" volts"); float temperatureC = (voltage - 0.5) * 100 ; Serial.print(temperatureC); Serial.println(" degrees C"); // now convert to Fahrenheight float temperatureF = (temperatureC * 9.0 / 5.0) + 32.0; Serial.print(temperatureF); Serial.println(" degrees F"); delay(1000); }
조도와온도의 변화에 따라 LED 작동 도전과제
도전과제 내용 • 조도의 변화에 따라 LED가 점차 점등 • 온도의 변화에 따라 LED가 점차 점등