Самодельный датчик влажности | Полезные Самоделки

Самодельный датчик влажности

1 min read

Влажность – это количество водяного пара, присутствующего в воздухе. Это может быть надежным показателем вероятности осадков. Более высокая влажность снижает эффективность потоотделения в охлаждении тела за счет снижения скорости испарения влаги с кожи… но не будем вдаваться в подробности. Итак, зачем вам строить датчик влажности? Что ж. одно из применений этого датчика — контроль внутренней влажности улья. Влажность расплодного гнезда важна для общего состояния пчелиной семьи. Многочисленные исследования показали, что как высокий, так и низкий уровень влажности влияет на здоровье расплода и взрослых пчел. Мониторинг влажности улья может предоставить очень полезную информацию для пчеловодов.

Оборудование

Для начала вам необходимо получить следующие компоненты:

Датчик влажности HIH 5030/31 (эта инструкция будет основана на этом датчике. Существуют также другие датчики для измерения влажности, но они могут не работать с этой инструкцией).
Чтобы просмотреть техническое описание этого датчика, нажмите здесь.

1x резистор 65 кОм
Паяльник и припой или прототип макетной платы
одножильные и семижильные провода
Ножницы и плоскогубцы
Arduino UNO ADC и USB-кабель для подключения к ПК
Как только вы получите все это, вы будете готовы построить схему и подключить ее к Arduino.

Создание схемы и подключение к Arduino

Самодельный датчик влажности

Схема очень прямолинейна, как вы можете видеть на картинке выше.

Красный провод подает на датчик 3,3 Вольта от платы Arduino.

Черный провод заземлен, т.е. 0 вольт.

Синий провод — это выходной сигнал, который варьируется от 0 до 2,5 Вольт.

Программирование Arduino

Самодельный датчик влажности

После того, как вы выполнили все подключения, вы готовы программировать Arduino. Просто скопируйте и вставьте следующий код в Arduino:

#define SENSOR_PORT A0 //define input port
float rhRead,rhsensorPinOut = 0; //declaring variables float RH, rhvoltage;

void func_humidity(void);

void setup() { //execute this instruction only once

Serial.begin(9600);

}

void loop() { //this function repeats forever

rhRead = analogRead(A0); //read analogue inpu signal from port A0

func_humidity();

Serial.print("RELATIVE HUMIDITY: "); //print text

Serial.print(RH); //print variable

Serial.print("%");

Serial.println();

delay(1000); //delay for 1s

}

void func_humidity(void){ //this is where the digital units

rhvoltage = (rhRead/512)*2.5; // are converted into relaive humidity percentage

RH = ((rhvoltage/3.3)-0.1515)/0.00636;

}

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Copyright © All rights reserved. | Newsphere by AF themes.