290 likes | 494 Views
Ubiquitous Computing Practice ( Humidity Sensor ). Youn-Hee Han, In- Seok Kang { yhhan , iseka }@koreatech.ac.kr Laboratory of Intelligent Networks Advanced Technology Research Center Korea University of Technology http://link.koreatech.ac.kr. Contents. Introduntion
E N D
Ubiquitous Computing Practice(Humidity Sensor) Youn-Hee Han, In-Seok Kang {yhhan, iseka}@koreatech.ac.kr Laboratory of Intelligent NetworksAdvanced Technology Research CenterKorea University of Technology http://link.koreatech.ac.kr
. Contents • Introduntion • Humidity Sensor • Print Humidity • TMP36 + Humidity Sensor • Fritzing
Arduino Pin • Digital Pin • 14개의 Digital Input / Output Pin • 6개의 PWM Pin 사용가능 • (3, 5, 6, 9, 10, 11 pin) • digitalWrite() - LED • digitalRead() - pushbutton
analogWrite() • ex) analogWrite(PinNumber, value);
Analog Pin • 6개의 Analog Input Pin • analogRead() • ex) analogRead(PinNumber) • 센서의 값을 읽기 위해 사용
Humidity Sensor Features : - Near linear, analog output - 4-5.8VDC voltage supply - All pins broken out to a 0.1" pitch header - Laser trimmed interchangeability - Low power design, typical current draw of only 200μA - Enhanced accuracy - Fast response time - Stable, low drift performance Humidity Sensor - HIH-4030 Breakout
습도 • 상대습도 • 상대습도는, 특정한 온도의 대기 중에 포함되어 있는 수증기의 압력을 그 온도의 포화 수증기 압력으로 나눈 것을 말한다. 다시 말해, 특정한 온도의 대기 중에 포함되어 있는 수증기의 양(중량 절대습도)을 그 온도의 포화 수증기량(중량 절대습도)으로 나눈 것이다. • 절대습도 • 공기 1㎥ 중에 포함된 수증기의 양을 g으로 나타낸다. 수증기밀도 또는 수증기농도라고도 하는데, 공기 중의 수증기의 포화정도를 나타내는 상대습도와는 의미가 다르다.
Humidity • Voltage output • Vout=(Vsupply)0.0062(sensorRH) + 0.16) • sensorRH=(Vout/Vsupply)×(1/0.0062)- 0.16 ×(1/0.0062) • 센서의 출력 전압 • Vout = Vsupply × (아날로그 입력 값 /1024) • Vout/ Vsupply= (아날로그 입력 값 / 1024) • SensorRH= (아날로그 입력 값/1024) X (1/0.0062) – 0.16 X (1/0.0062)
Sketch float vdd = 5.0; intindata; float sRH; void setup() { Serial.begin(9600); } void loop() { indata= analogRead(0); // pin number 0sRH= (indata/1024.0)/0.0062-0.16/0.0062; Serial.println(sRH); delay(1000); }
Temperature + humidity • Temperature compensation • RH= sensorRH/(1.0546 - 0.00216 × T) • T = Temperature
Sketch float vdd = 5.0; int indata0, indata1; float sRH; float RH; float voltage; float temperatureC; void setup() { Serial.begin(9600); }
Sketch void loop() { indata0 = analogRead(0); // pin number 0 (analog)sRH = (indata0/1024.0)/0.0062-0.16/0.0062; indata1 = analogRead(1); // pin number 1 (analog) voltage = indata1*5.0/1024.0; temperatureC = (voltage - 0.5) * 100; Serial.print(temperatureC); Serial.println(" 'C"); RH=sRH/(1.0546-0.00216*temperatureC); Serial.print(RH); Serial.println(" RH"); Serial.println("----"); delay(1000); }
도전과제 • 온도, 조도, 습도 센서의 값을 출력해보자.
Fritzing http://fritzing.org/