일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- sht10
- 철사방
- 초종용
- lm7805
- 제주철학사랑방
- 동자석
- wind direction
- AM2302
- 포구
- DHT22
- 암맥군
- wind speed
- 라즈베리파이
- 구시물
- 돌코냉이
- 수산리 곰솔
- weather station
- 장수물
- 하귀리 해신당
- rain fall
- LM1117
- 제주문화유산답사회
- 작은항해자
- 온습도센서
- 마이못
- 내도동
- 가막샘
- 온습도 센서
- LM2567
- DC5V
- Today
- Total
작은항해자의 항해
HS1101 습도센서 본문
HS1101 습도센서
콘덴서를 기반으로 하고, 저항값이 변하는 센서가 아닌 정전용량이 변경되는 센서이다.
측정범위 : 1 ~ 99%RH
응답시간 : 5초
정확도는 ±5%RH
적용온도 : -40°C ~ 100°C
동작 전압 : 5V ~ 10V
Doc
HS1101 Datasheet : 27920-Humidity-Sensor-Datasheet.pdf
Humidity Sensor Documentation : 27920-Humidity-Sensor-Documention-S1101-v1.0.pdf
HS1101 Pin code : 27920-HS1101-Humidity-Sensor-Spin-Code.zip
HS1101 Arduino Code : 27920-HS1101-Humidity-Sensor-Arduino-Code.zip
Code
Arduino Code int sensorPin = 4; // RC circuit with HS1101 sesnor connected to digital pin D4 long result = 0; int const RHconstant = 12169; // RH constant void setup() { Serial.begin(9600); // Use Serial Monitor window at 9600 baud Serial.println("Humidiy reading start"); Serial.print("RC delay"); Serial.print("\t"); Serial.println("Humidity"); } void loop() { long RCdelay = RCTime(sensorPin); // Take RC time reading of sensor Serial.print(RCdelay); // Display RC time delay Serial.print("\t\t");
RCdelay = RCdelay * 215; // Calibation to RC time delay; experiment with literal value int humidity = (RCdelay - RHconstant) / 24; Serial.println(humidity / 100, DEC); delay(500); // Wait 1/2 second for the next read } // Standard RC time function long RCTime(int sensePin){ long result = 0; pinMode(sensePin, OUTPUT); // Make pin OUTPUT, and turn HIGH digitalWrite(sensePin, HIGH); delay(1); // Wait 1 ms delay pinMode(sensePin, INPUT); // Make sensor INPUT digitalWrite(sensePin, LOW); // Turn off Arduino internal pullup resistor while(digitalRead(sensePin)){ // Loop until pin goes low result++; } return result; } |
위의 회로를 가지는 센서.
충전과 방전을 계속 반복하기 위한 회로도.
10M옴은 전류 누수를 제한 해주는 소자.
아두이노에서 핀에 HIGH를 넣어주면 충전되고, LOW가 되면 충전이 방전된다.
정전용량의 변화는 방전되는 속도의 변화로 측정.
Code
void setup() { Serial.begin(9600); } void loop() { int a=0; pinMode(12,OUTPUT); digitalWrite(12,HIGH); delay(1);//1/1000초간 충전해주도록 합니다. pinMode(12,INPUT);//핀을 입력으로변경하고, digitalWrite(12,LOW);//LOW를 인가해서 방전시키기 시작합니다. while(digitalRead(12)){//방전되는 동안은 값이 HIGH입니다. a++;//이 방전되는 시간은 1/1000초보다 짧기 때문에, delay없이 카운트를 합니다. } Serial.println(a);//카운트 한값을 출력합니다. } [출처] HS1101 습도 센서 사용법 알아보기!|작성자 오픈랩 |
'IT 이야기 > IOT 센서' 카테고리의 다른 글
co2 농도의 영향도 (0) | 2019.02.03 |
---|---|
Light Intensity Sensor - BH1750FVI, GY-30 (0) | 2019.01.24 |
8 Digit 7-Segment Display Module - MAX7219 (0) | 2019.01.23 |
MH-Z14A CO2 Sensor (0) | 2019.01.21 |
MH-Z19 CO2 Sensor (4) | 2019.01.21 |