Форум закрыт для публикаций и работает только для чтения.
Отзывы о работе магазина и товарах просим оставлять на сайте интернет-магазина https://ekits.ru

Evolution - Температура и влажность.

Обсуждаем применение модулей Evolution. Делимся кодом. Учимся применять на практике. Читаем и смотрим уроки.
alex77
Сообщения: 56
Зарегистрирован: 12 июл 2010, 21:38
Контактная информация:

Re: Evolution - Температура и влажность.

Сообщение alex77 » 06 сен 2011, 14:07

Vitalii, пожалуйста, расскажите вкратце математику вычислений, что-то не догоняю по коду, как вычисляется влажность.

Vitalii
Сообщения: 674
Зарегистрирован: 03 фев 2011, 20:11
Откуда: Тюменская область
Контактная информация:

Re: Evolution - Температура и влажность.

Сообщение Vitalii » 06 сен 2011, 20:28

alex77 писал(а):Vitalii, пожалуйста, расскажите вкратце математику вычислений, что-то не догоняю по коду, как вычисляется влажность.
Если честно в расчётах с двоичными числами, сам не селён. Но всё же, сделал программное вычисление равным вычислениям, сделанным на калькуляторе. Я уже писал ранее, что с датчиком идёт паспорт. Помимо ранее «озвученных» паспортных данных, есть там ещё и формула: % = (Uout – 0,811)/0,031; где: Uout – напряжение на выходе датчика (В), константы 0,811 и 0,031. У разных датчиков они могут немного отличатся. Эти константы в программе необходимо изменить в соответствии с Вашим датчиком. Если этого не делать, будет внесена небольшая погрешность при вычислении. Так вот, с датчика мы получаем напряжение в вольтах и пересчитываем его в милливольты и сохраняем это значение в двухбайтовом регистре Z.
1.gif
1.gif (2.91 КБ) 4597 просмотров
Затем содержимое Z копируем в массив DD, для дальнейшего вычисления (влажности).
2.gif
2.gif (2.56 КБ) 4597 просмотров
Далее милливольты (Z), преобразуем в десятичный код для вывода на экран напряжения датчика. Затем сохранённое значения напряжение в массиве DD подставляем в формулу из паспорта. Так как значение напряжения у нас не в вольтах, а в милливольтах, то и константы следует умножить на 1000. Таким образом, первая константа будет 811, а вторая 31. Далее вычисляем по формуле, вот как это выглядит:
3.gif
3.gif (3.67 КБ) 4597 просмотров
Полученное значение в двоичном коде (результат находится в массиве Rez) будет соответствовать процентной влажности. Теперь массив Rez копируем в регистр Z и переводим значение из двоичного в десятичное для вывода на дисплей. Вот и всё. :)

Vitalii
Сообщения: 674
Зарегистрирован: 03 фев 2011, 20:11
Откуда: Тюменская область
Контактная информация:

Re: Evolution - Температура и влажность.

Сообщение Vitalii » 06 сен 2011, 21:54

alex77 писал(а):У меня уже есть термометр на модуле Evolution, остается лишь его дополнить функционалом по установке температуры для термостата. А уличный термометр и датчик влажности это уже опции не обязательные. Так что к разработке я уже приступаю :)
Из Вашего ответа, я понял, что Вы не ищете лёгких путей и пишите для своего устройства свою программу. :) Что ж, похвально. ;) Хотелось бы взглянуть после окончания на Вашу разработку. Вы же пишете на АВ?

alex77
Сообщения: 56
Зарегистрирован: 12 июл 2010, 21:38
Контактная информация:

Re: Evolution - Температура и влажность.

Сообщение alex77 » 07 сен 2011, 08:27

Vitalii писал(а):Из Вашего ответа, я понял, что Вы не ищете лёгких путей и пишите для своего устройства свою программу. :) Что ж, похвально. ;) Хотелось бы взглянуть после окончания на Вашу разработку. Вы же пишете на АВ?
Вообще предыстория такая: сначала сделал термометр, затем задумал сделать термометр двойной, один показывает улицу, второй в квартире. Ваш пример с измерением влажности вдохновил и этот функционал добавить :) А вот внешнее управление газовым котлом собирался покупать, а когда понял в чем его суть сказал себе: "Какого черта? Ведь я могу это сделать САМ" :)
К тому же в той модели что я уже чуть было не купил жестко прошито, что котел включается если температура падает на 1 градус и выключается при повышении на 1 градус. Получается что уменьшить или увеличить этот коридор никак. В отзывах пишут что 2 градуса это много, успеешь замерзнуть и вспотеть.

alex77
Сообщения: 56
Зарегистрирован: 12 июл 2010, 21:38
Контактная информация:

Re: Evolution - Температура и влажность.

Сообщение alex77 » 07 сен 2011, 08:29

Vitalii писал(а):Вы же пишете на АВ?
Да, на AB

Anatoliy
Сообщения: 15
Зарегистрирован: 23 июн 2011, 21:38
Контактная информация:

Re: Evolution - Температура и влажность.

Сообщение Anatoliy » 25 сен 2011, 23:53

Vitalii писал(а):Устройство сделано на базе контроллера Atmega8535-16AU (модуль SEM0007M-8535-16 )
, частота 4МГц. Дисплей WH0802A - Буквенно-цифровой ЖК-индикатор. 2 строки по 8 символов, подключен по 4-х проводной схеме. Программа не большая, занимает 26 % памяти контроллера. Почему именно этот контроллер? Да просто другого под рукой нет. Свои программы обкатываю именно на этом модуле, практически вся обвязка у него есть и не очень дорогой. Схема подключения датчиков проста, даже описывать нечего. Кнопка существует, чтобы при желании посмотреть, сколько вольт приходит от датчика влажности. Нажали кнопку, на дисплее появилось напряжение в место температуры, отпустили кнопку, отображение температуры вернулось на своё место. Дискретность опроса датчиков раз в 2 секунды.
Измеряйте, дорабатывайте код, успехов.
Схема.gif
IMG_1475.JPG
Vlaga.rar
Привет всем! Виталию особый. А как бы прикрутить датчик влажности к проекту "термометр с 2 датчиками"? Если добавить ещё и датчик атмосферного давления вообще было бы супер. Проблемы с выводом только наверное будут (2х8 наверное мало). Или к проекту "Vlaga" добавить ещё один датчик температуры? Попробую, что получится. Надеюсь Виталий поможет.
Спасибо.

Vitalii
Сообщения: 674
Зарегистрирован: 03 фев 2011, 20:11
Откуда: Тюменская область
Контактная информация:

Re: Evolution - Температура и влажность.

Сообщение Vitalii » 27 сен 2011, 21:42

Anatoliy писал(а):Привет всем! Виталию особый. А как бы прикрутить датчик влажности к проекту "термометр с 2 датчиками"? Если добавить ещё и датчик атмосферного давления вообще было бы супер. Проблемы с выводом только наверное будут (2х8 наверное мало). Или к проекту "Vlaga" добавить ещё один датчик температуры? Попробую, что получится. Надеюсь Виталий поможет.
Спасибо.
Здравствуйте Анатолий.
Помогу, чем смогу, как вернусь с командировки. :)

Vitalii
Сообщения: 674
Зарегистрирован: 03 фев 2011, 20:11
Откуда: Тюменская область
Контактная информация:

Re: Evolution - Температура и влажность.

Сообщение Vitalii » 04 окт 2011, 19:38

Анатолий, начал совмещать программы ds18b20v3b_new (двухканальный термометр) и Vlaga (датчик влажности). Как приобрету датчик давления, так и его подключу к этой программе. :D

alex77
Сообщения: 56
Зарегистрирован: 12 июл 2010, 21:38
Контактная информация:

Re: Evolution - Температура и влажность.

Сообщение alex77 » 04 окт 2011, 20:48

Vitalii писал(а):Анатолий, начал совмещать программы ds18b20v3b_new (двухканальный термометр) и Vlaga (датчик влажности). Как приобрету датчик давления, так и его подключу к этой программе. :D
Совмещать ничего уже не надо, все уже совмещено ;)
Выложил свой вариант "Evolution - термометр+гигрометр+термостат для газового котла"

Vitalii
Сообщения: 674
Зарегистрирован: 03 фев 2011, 20:11
Откуда: Тюменская область
Контактная информация:

Re: Evolution - Температура и влажность.

Сообщение Vitalii » 05 окт 2011, 21:27

alex77 писал(а):
Vitalii писал(а):Анатолий, начал совмещать программы ds18b20v3b_new (двухканальный термометр) и Vlaga (датчик влажности). Как приобрету датчик давления, так и его подключу к этой программе. :D
Совмещать ничего уже не надо, все уже совмещено ;)
Выложил свой вариант "Evolution - термометр+гигрометр+термостат для газового котла"
Мы не ищем лёгких путей. :lol:

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость