Портал для радиолюбителей
   Измеритель влажности и температуры
    Главная -> Статьи -> Устройства на микроконтроллерах -> Измеритель влажности и температуры

дешевые жидкости для электронных сигарет

<< Назад в раздел   Распечатать Дата добавления: 2016-11-24 | Просмотров: 9181

Представлен проект измерителя влажности и температуры с последовательным интерфейсом для связи с компьютером или другим устройством. При необходимости, возможно подключение 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

Файлы


Добавил:  Павел (Admin)  
Автор:  Колтыков А.В. 

Вас может заинтересовать:

  1. Электронный замок с ключами iButton
  2. Устройство ввода вывода
  3. "Что позволено Юпитеру", или Почему одни микроконтроллеры надежнее других
  4. Бегущая строка на PIC контроллере
  5. Электронная игра "Светодиодные наперстки"


Каталог пластиковые окна воронеж.


    © PavKo, 2007-2018   Обратная связь   Ссылки   Яндекс.Метрика