ATMega8 и датчик влажности. Включение нагрузки 220 В.

Обсуждаем цифровые устройства...
Аватара пользователя
mr_smit
Вымогатель припоя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

ATMega8 и датчик влажности. Включение нагрузки 220 В.

Сообщение mr_smit »

Здравствуйте. Если кто сможет дочитать до конца, тот будет просто героем.

Столкнулся с проблемой: дома, после принятия душа/ванны - парная. Причем и в туалете тоже. Вентиляция у них общая. Она нормальная, работает, тянет, но видно не достаточно. Возникла идея поставить вытяжной вентилятор на вентиляцию. Подключить его к микроконтроллеру и к датчику влажности. Т.е. пошел в ванну/душ -> влажность увеличивается -> включился вентилятор, влажность упала ниже заданного уровня, вентилятор выключился. Вот и всё. Может есть где готовая схема - я не нашел. Проблема в том что не могу пока даже собрать схему. Кто чем может.

Датчик: http://www.chipdip.ru/product0/764366588.aspx

Как его подключить к Amega8? Как управлять внешней нагрузкой? Для начала хочу собрать виртуальную схему в Proteus. Датчик выдает сигнал в виде напряжения. Пока додумался лишь до этого:

Изображение

Я завел выход с датчика (напряжение) на вход (АЦП) контроллера. А вентилятор включается с помощью реле. Контроллер выдержит эту релюшку или аналог? (из её характеристик: "Ток срабатывания не более, 64 мА") Если она, например, нормально разомкнутая будет, сделаем "1" на выходе т.е. 5 вольт, она замкнется и останется в этом состоянии всё время пока работает вентилятор. Не сгорит ли контроллер?

Вот тут есть пример, что то наподобие того что я хочу сделать. Но какой то больно сложный.

P.S. Проблема в том, что я не силен в радиотехнике.

Когда я начинал изучать Delphi (для себя, просто было интересно) то многие моменты вызывали ужас. Спустя некоторое время, элементарные вопросы на форумах просто вызывали смех и в голове возникала фраза "Ну елки палки, ну это же элементарно, куча информации в интернете на эту тему". Пропадало всякое желание отвечать/помогать этому человеку. Но для этого человека ваш правильный и подробный ответ - спасительный (по себе знаю). Поэтому, товарищи, тут все умные, гениальные, опытные люди давайте обойдемся без этого:
Куча информации в инете и т.д. ...
Это мы проходили. Если кто то в состоянии превозмочь свою лень, будьте добры поподробней, пожалуйста. Вы скажете "за тебя всё сделать, нет уж". Отвечу - нет. Сам сделаю. Хотя бы объясните. Я не профессиональный программист. Я инженер-теплоэнергетик. Просто столкнулся с реальной проблемой и хочется решить её таким вот способом. Вот и всё. Кто чем может, товарищи, кто чем может.
Реклама
Аватара пользователя
Владимир К.
Мучитель микросхем
Сообщения: 438
Зарегистрирован: Ср ноя 21, 2007 14:14:37
Откуда: Краснодар

Сообщение Владимир К. »

У меги8 максимальный ток на ногу -
"DC Current per I/O Pin.........40.0 mA".
Если сразу не сгорит, то потом точно. Транзистор нужно добавлять.

Ни х... себе сколько датчик стоит!!! :shock: :shock: :shock:
Поставьте выключатель с таймером - намного проще и дешевле.
Electronikus mente prius et oculis agat, quam armata manu.
Реклама
Аватара пользователя
asteroid7
Опытный кот
Сообщения: 703
Зарегистрирован: Вс янв 18, 2009 21:12:49

Сообщение asteroid7 »

mr_smit
Интересная затея, но есть в ней и камни:
Датчик, который Вы выбрали, похож на датчик относительной влажности. Пар в ванной комнате -> конденсат -> 100% показаний.
Документация на чип-дипе по датчику мутная. Посмотрите на графики. Там нет выходных напряжений при 100% Как он поведёт себя при этом - х.з. И как долго его над паром можно держать, тоже ни слова.

Модель датчика для отладки можно заменить резистором 1k. Как Вы и попытались на схеме. Но, на крайние ноги резистора подать питание, а с движка на вход АЦП меги. В управление реле транзистор поставить.

Программа – это самое интересное. :)
По уровням (превысил не превысил), скорее всего, он работать не сможет. Нужно измерять относительное изменение напряжения. Т.е. считать скорость наростания влажности или первую производную. :)
Ну и ещё, как его калибровать и как определить, что сейчас норма, ответы требующие практических данных. А если на датчике осядет конденсат? Пока он не высохнет…
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Сообщение ploop »

А если на датчике осядет конденсат? Пока он не высохнет…
Могу предложить поставить датчик ПОСЛЕ вентилятора, т.к. без вентилятора вытяжка хотя-бы чуть-чуть работает, значит и влажный воздух на него поступать будет. А после срабатывания вентилятора, когда пойдёт уже сухой воздух - он его и высушит до необходимого уровня.

Реле подключить можно по такой схеме:

Изображение
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
mr_smit
Вымогатель припоя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

asteroid7 писал(а):mr_smit
Интересная затея, но есть в ней и камни:
Датчик, который Вы выбрали, похож на датчик относительной влажности. Пар в ванной комнате -> конденсат -> 100% показаний.
Документация на чип-дипе по датчику мутная. Посмотрите на графики. Там нет выходных напряжений при 100% Как он поведёт себя при этом - х.з. И как долго его над паром можно держать, тоже ни слова.
...
Программа – это самое интересное. :)
По уровням (превысил не превысил), скорее всего, он работать не сможет. Нужно измерять относительное изменение напряжения. Т.е. считать скорость наростания влажности или первую производную. :)
Ну и ещё, как его калибровать и как определить, что сейчас норма, ответы требующие практических данных. А если на датчике осядет конденсат? Пока он не высохнет…
Спасибо. О конденсате я думал. А то что документация по датчику никакая согласен. Но уж дюже мне идея понравилась.

Кстати, мне не обязательно знать точную влажность. Измерить текущую. Взять её за основу. Сделать небольшой запас. И при превышении включать вентилятор.
asteroid7 писал(а):mr_smit
конденсат -> 100% показаний
Да и пусть. 100% влажности -> значит ВКЛЮЧАЕМ.

Пока давайте всё таки со схемой разберемся. Как вариант можно поставить вместо датчика влажности, датчик температуры DS18B20. Температура всё таки повышается заметно при принятии ванны/душа. Но опять же: на датчике может образоваться конденсат, при включении вентилятора -> увеличится скорость движения воздуха -> увеличивается интенсивность испарения -> температура на поверхности датчика упадет -> вентилятор выключится. Потом опять нагреется, включится, остынет, выключится. И так до бесконечности. Учитывая что "играть" придется в небольшом диапазоне температур от 20 до 30 градусов, это тоже не очень хорошо. Хм. Всё таки очень хочется автоматизировать процесс включения вентилятора. Чтобы он включался именно при принятии ванны, а не каждый раз при включении света.
ploop писал(а):mr_smit
Могу предложить поставить датчик ПОСЛЕ вентилятора, т.к. без вентилятора вытяжка хотя-бы чуть-чуть работает, значит и влажный воздух на него поступать будет. А после срабатывания вентилятора, когда пойдёт уже сухой воздух - он его и высушит до необходимого уровня.
Очень интересное предложение. Спасибо. Надо подумать. Ещё есть у кого какие варианты?
Нельзя всё знать, достаточно понимать.
Реклама
Аватара пользователя
Секретный кот
Поставщик валерьянки для Кота
Сообщения: 2106
Зарегистрирован: Ср сен 17, 2008 14:32:15
Откуда: Старые Васюки
Контактная информация:

Сообщение Секретный кот »

asteroid7 писал(а):Документация на чип-дипе по датчику мутная. Посмотрите на графики. Там нет выходных напряжений при 100%
Правильно, нет, потому как в ДШ написано, что выпадение конденсата не допускается. И в этом случае датчик может показывать 0% до высыхания.
По крайней мере, я такое видел в ДШ на HIH4000.
Реклама
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18648
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

2 датчика DS18B20, один сухой, другой "мокрыый". измерение влажности методом двух термометров. таблицу можно срисовать с гигрометра, имеющегося в любом кабинете физики в школе.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
mr_smit
Вымогатель припоя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

Вот какая схема получилась у меня:
Изображение

Чтобы её протестировать, я убрал "датчик" и решил просто подать "1" на выход контроллера.

Изображение

Код: Выделить всё

   #include <avr>
   #include <avr>
   #define F_CPU 8000000UL  // 8 MHz
   
   int main(void)              
   {
   
   DDRD = 0xff;            // все выводы порта D сконфигурировать как выходы

   _delay_ms(3000);   // Ждем 3 сек.
   PORTD = 0xff; // установить "1" на всех линиях порта D

   }
Скомпилировал в WinAVR. Указал hex файл в протеусе. При запуске протеус намертво зависает и всё. :shock: Почему?
Вложения
Test220.rar
(16.42 КБ) 397 скачиваний
Нельзя всё знать, достаточно понимать.
Аватара пользователя
mr_smit
Вымогатель припоя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

Так, похоже зря я нарисовал блок питания В1. Но тогда где взять Vcc ???

Изображение

Эти "Hidden Pins"на контроллере... я чего то никак не пойму.
Нельзя всё знать, достаточно понимать.
Аватара пользователя
asteroid7
Опытный кот
Сообщения: 703
Зарегистрирован: Вс янв 18, 2009 21:12:49

Сообщение asteroid7 »

Секретный кот писал(а): ... потому как в ДШ написано, что ...
Моя невнимательность. Выделенную нотацию не заметил. По привычке читаю первую страницу и erratа. :)


mr_smit
while(1);
бесконечный цикл в конце кода добавьте.
Аватара пользователя
mr_smit
Вымогатель припоя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

Не помогает, то же самое. Я думаю, проблема ещё и в схеме.
Нельзя всё знать, достаточно понимать.
Rv
Встал на лапы
Сообщения: 82
Зарегистрирован: Чт ноя 29, 2007 13:23:32

Сообщение Rv »

Мои наблюдения: ванная комната 1,6м.х1,6м.
В ней стои душевая кобина с принудительной вытяжкой не в винтеляционную шахту. После купания (7-10мин),чтобы кабинка стала сухой, понадобилось два часа.
Аватара пользователя
mr_smit
Вымогатель припоя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

Вчера поставил вентилятор. Эффект очень заметный. Без него мокнет вся стена. С ним только узкая полоска где непосредственно проходит основной поток (от "выхода" ванны до входа в вентиляцию). Сколько по времени сохнет "полоска" не засекал, но уж точно быстрее чем вся стена.
Как включить 220 с контроллера???
Нельзя всё знать, достаточно понимать.
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Сообщение GP1 »

mr_smit писал(а):Так, похоже зря я нарисовал блок питания В1. Но тогда где взять Vcc ???

Изображение

Эти "Hidden Pins"на контроллере... я чего то никак не пойму.
Вот же у тебя схема, а Vcc - это +5V от которых контроллер питается
Аватара пользователя
mr_smit
Вымогатель припоя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

Вот же у тебя схема, а Vcc - это +5V от которых контроллер питается
Да понимаю я, где их взять в протеусе если они не видны?????? Я для этого отдельный аккумулятор нарисовал, но это же наверное неправильно

Блин, мужики, ну неужели никто нормально объяснить не может. Каждый что нибудь напишет типа:
на, отъе..ись.
Нельзя всё знать, достаточно понимать.
Аватара пользователя
mr_smit
Вымогатель припоя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

Вот эта схема работает:

Изображение
Вложения
Sxema.rar
(12.24 КБ) 534 скачивания
Нельзя всё знать, достаточно понимать.
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Сообщение GP1 »

mr_smit писал(а):
Блин, мужики, ну неужели никто нормально объяснить не может. Каждый что нибудь напишет типа:
на, отъе..ись.
Сорри, я в шпротеусе не шарю, предпочитаю в "металле", когда я начинал никаких протеусов не было, так что все по старинке только ручками, хотя для avr-ов пользуюсь VMLab, мне хватает
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Сообщение ploop »

Как включить 220 с контроллера
Я же уже давал схему, как подключить реле. Чем не подходит?
А протеус оставьте для проверки работы МК, остальное лепить не надо.
Аватара пользователя
mr_smit
Вымогатель припоя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

ploop писал(а):
Как включить 220 с контроллера
Я же уже давал схему, как подключить реле. Чем не подходит?
А протеус оставьте для проверки работы МК, остальное лепить не надо.
Спасибо!!! Сделал как вы сказали. Всё работает.

Изображение
Вложения
Sxema_2.rar
(12.88 КБ) 413 скачиваний
Нельзя всё знать, достаточно понимать.
Аватара пользователя
mr_smit
Вымогатель припоя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

Что означает:

Код: Выделить всё

PORTB=0b00000001;
PORTB=0b00000010;
PORTB=0b00000100;

По какому принципу устанавливается номер ножки порта?
Нельзя всё знать, достаточно понимать.
Ответить

Вернуться в «Цифровая техника»