Вимірювач вологості та температури

Представлено проект вимірювача вологості та температури з послідовним інтерфейсом для зв'язку з комп'ютером або іншим пристроєм. За необхідності, можливо підключення LCD-дисплея для відображення даних.

Якщо комп'ютер не містить COM-порту, то також знадобиться перетворювач інтерфейсу USB<->RS232.

Основні компоненти:
- мікроконтролер ATMEGA8;
- датчик вологості HONEYWELL HCH-1000-002;
- датчик температури LM335AZ;
- кварц 3.6864 МГц;
- м/с перетворювач інтерфейсу MAX232;
- м/с інтерфейс для датчика вологості 74HC4060.

Схема вимірювача

У схемі використані недорогі радіоелементи.

Датчик вологості Honeywell HCH-1000-001 спочатку використовувався без захисного кожуха, але після 6-ти тижнів експлуатації вийшов з ладу. Тому використовуйте даний датчик тільки з захисним кожухом.

Калібрування датчика вологості
Датчик вологості має лінійну вихідну характеристику, тому може бути відкалібрований по 2-м точкам: 0 %RH і 100 %RH. Для калібрування датчика, необхідно в вихідному коді програми в функції read_humidity() розкоментувати рядок return counter_value. Для того, щоб отримати 0%RH, ми помістили датчик у пластиковий бокс і папір на кілька годин. Це потрібно, щоб дані від датчика стабілізувалися. Для рівня 100 %RH ми загорнули датчик у теплу вологу папір і поклали в пластиковий бокс. Не нагрівайте датчик або схему. Для стабілізації значення також знадобиться деякий час. Після цього у вас є дві змінні, за якими ви можете розрахувати необхідні значення для програми. Після калібрування не забудьте в коді програми закоментувати рядок return counter_value.

humidity_value = (m * counter_value) - a;

m = 100 / (counter_value100 - counter_value0)
a = m * counter_value0

Приклад:
m = 0.147929; // крутність
a = 427.515; // зсув

HEX-файл прошивки доступний нижче, прошийте ним МК за допомогою AVRdude, попередньо встановивши фузи. У даному коді для послідовного інтерфейсу встановлені дані передачі 115200 8n1.

Установка фузів за допомогою cс зовнішнім тактовим генератором частотою 3.6864 МГц:
avrdude -c usbasp -p m8 -U lfuse:w:0xFF:m

Прошивка мікроконтролера:
avrdude -c usbasp -p m8 -U flash:w:temperature-humidity-sensor-binary-2009-12-10.hex

Список радіоелементів

Позначення Тип Номінал Кількість Примітка
МК AVR 8-біт
ATmega8
1
ІС RS-232 інтерфейсу
MAX232
1
Лінійний регулятор
LM7805
1
Спеціальна логіка
CD74HC4060
1
Датчик температури
LM335A
1
Датчик вологості HONEYWELL HCH-1000-002 1
Конденсатор 22 пФ 2
Конденсатор 330 пФ 1
Конденсатор 0.1 мкФ 2
Конденсатор 1 мкФ 6
Резистор
2 кОм
1
Резистор
4.7 кОм
1
Резистор
10 кОм
1
Резистор
16 кОм
1
Кварцевий резонатор 3.6864 МГц 1
Роз'єм RS232 1
Роз'єм для підключення програматора 1
Батарея живлення 9-12 В 1

Оригінал статті

Прикреплені файли:

Top