Главная » Статьи » Проекты

Часы, термометр, барометр, гигрометр в одном флаконе.
 Очередной проект продвинутого показометра, включающий в себя измерение температуры, атмосферного давления, влажности воздуха и отсчет времени с календарем.  В общем в него включены все мои наработки по работе с датчиками за все время увлечения микроконтроллерами,  да и все накупленное добро нужно куда-то применить :) В итоге должен получится усовершенствованный логгер температуры, первую версию которого я забросил. Ну это позже, а сейчас приведу описание этой платы и тестовый код для проверки работоспособности  напичканных  туда датчиков и микросхем.

 Схема устройства ниже, конвертер USB-UART на FT232RL показан схемотически, схема в нем стандартная и уже описана здесь.


 
 Сердцем схемы служит микроконтроллер ATMega64 фирмы Atmel, работающий от внешнего кварца на 16 МГц. Отсчитыванием времени занимается микросхема часов реального времени DS1307, я уже имел с ней дело и поэтому пошел по проверенному пути.
 Для измерения температруы и влажности применен датчик DHT11, хоть и китай чистейшей воды, но показания выдает вполне удовлетворительные. У меня в заначке лежит еще SHT21, но тогда повторяемость схемы сильно упадет, потому как достaть его сложней и по стоимости он выйдет как вся схема в сборе.
 Следующий датчик BMP085 - занимается измерениями атмосферного давления. Помимо этого он умеет измерять и температуру, так что можно будет с него дублировать показания. 
 Так как в дальнейшем планируется превратить устройство в логгер, предусмотрено место для подключения внешней EEPROM памяти 24LCxx

 Для сопряжения 3х вольтового датчика давления использована зарекомендовавшая себя схема согласования на полевых тарнзисторах

 Все элементы (за исключением двух резисторов) находятся на верхнем слое, на нижнем разведены дороги которые не уместились на верху. Интересного там мало поэтому фото не привожу.


 




 Чтобы иметь возможность напрямую подключать утсройство к компьютеру (к примеру, для того чтобы скинуть накопленные данные) на плате установлен преобразователь USB-UART на микросхеме FT232RL. Так же через этот преобразователь можно загружать в микроконтроллер прошивку, если предварительно зашить в микроконтроллер загрузчик (Bootloader). Как это сделать я писал ранее.


 Для подключения внешних датчиков, навсякий случай предусмотрены выводы с портов PA0-PA3. А также выведены контакты SPI-интерфейса, на случай если захочется подключить NRF24L01 и организовать радиоканал.



 


 Тестовый код выводит на экран время и дату с часов DS1307, с возможностью ручной установки (см. видео). На вторую строку выводится информация с датчика влажности DHT11, на третью - с датчика давления BMP085. Как видите китаец DHT не уступает по показаниям температуры своему немецкому собрату BMP085 от Bosh. Кстати, китаец тоже умеет выдавать показания с десятыми долями градуса, позже добавлю в код эту функцию.





 И напоследок видео, демонстрирующее возможность ручной установки даты и времени.





 






Категория: Проекты | Добавлено: 13.10.2012
Просмотров: 54029 | Комментарии: 133 | Теги: eeprom, atmega64, ЖКИ, BMP085, DHT11, bootloader, меню | Рейтинг: 4.6/23
Всего комментариев: 1331 2 3 4 5 »
133 bobkus   (19.11.2017 10:11)
Доброго всем. Собрал сей прибор, отлична штука. Пробовал два датчика dht11-врут собаки. Есть ли у кого нибудь прошивка с использованием DHT22 вместо DHT11? elki_72@mail.ru

132 vlad860   (17.03.2017 16:43)
а есть перечень элементов для данного устройства?

0  
131 exersizze   (08.03.2017 20:39)
Ну а как же постигать компилятор, если не наступать на грабли?)

130 Vasya   (08.03.2017 18:26)
Да я то поменял уже, вы на сайте измените, что бы такие вопросы не возникали больше. )

0  
129 exersizze   (06.03.2017 20:34)
Оказалось что в новых версиях имена B1, B2, B3 стали зарезервированы компилятором. Поменяйте имена меток на произвольные, тогда скомпилируется.

128 Vasya   (06.03.2017 13:40)
На переменные B1, B2 ругается, версия 2.0.7.8
Error : 369 Line : 424 Duplicate label name used by const or variable [B1]
Error : 369 Line : 464 Duplicate label name used by const or variable [B2]
Error : 350 Line : 464 Interrupt needs return [[ 3]]

0  
127 exersizze   (06.03.2017 08:26)
Какая версия баскома и на что ругается?

126 Vasya   (05.03.2017 20:48)
Исходник из статьи не компилируется.

125 vlad860   (21.02.2017 19:07)
кто может собрать это устройство за оплату? не поймите не правильно просто взял данную тему на диплом (нужно подтверждение дипломного проекта) а сам собрать не имею возможности

0  
124 exersizze   (16.06.2016 09:32)
А в чем проблема? Берем прошивку и грузим ее обычным способом, как настроить фьюзы я писал здесь http://avrproject.ru/publ....1-0-109
Для работы с программатором скачай вот этот прошивальщик http://avrproject.ru/usbasp/KhazamaAVRProgrammer.rar

123 MaxPower1996   (15.06.2016 20:56)
ребят всем привет
помогите загрузить боотлоадер и скажите как програмировать мк через usbasp v.2.0

0  
122 exersizze   (14.06.2016 21:07)
хрен их знает, на скрине видно что галка=0

121 zloytoni   (14.06.2016 11:56)
Спасибо большое за скрин! Фьюзы указаны с инверсией или без?

0  
120 exersizze   (13.06.2016 21:43)
Если частота контроллера не выставлена то на дисплее и будут квадраты.
Скрин с фьюзами http://avrdesign.ucoz.ru/_pu/0/00504216.png

119 zloytoni   (11.06.2016 23:27)
Собрал сей прибор, не запустился, на дисплей выдает только две строчки с квадратами. Завтра защита, последний раз перепрошью, можете конкретно сбросить фьюзы, а не только "фьюз на внешний кварц"? Заранее, спасибо.

0  
118 exersizze   (03.05.2016 19:38)
zloytoni, если не нужно передавать данные на компьютер можно преобразователь не ставить, работать будет. Фьюзы на внешний высокочастотный кварц.

117 zloytoni   (01.05.2016 16:59)
Здравствуйте! Извините за глупый вопрос, но я так и не понял, будет ли работать устройство без микросхемы преобразователя FT232RL? и можно ли скрин фьюзов на атмегу?

116 termak   (26.02.2016 16:18)
Всем доброго времени суток.
Было бы отлично, если бы Барометр, для прогнозирования погоды, показывал еще диаграмму изменения давления за последнее время (допустим за последние часов 6-8 каждые 1-2 часа).
Есть же ещё неиспользуемая нижняя строка.
Это реально осуществить ?

0  
115 exersizze   (25.02.2016 20:20)
Да, напряжение на датчик идет через два стабилизатора, в итоге на датчик попадет где-то 2,5 вольта (для него это нормально, у него порог работы до 1,8 вольт). Поэтому стабилизатор который уже стоит на платке с датчиком ничем не мешает. Но для схемы согласования на полевых транзисторах все равно необходимо питание 3,3 В, поэтому стоит U1. Таким образом получили возможность подключать к схеме как голый датчик, так и китайский модуль.

114 faelon   (25.02.2016 10:09)
Товарищ автор схемы. Объясните как у вас подключена плата датчика давления? Ведь на ней уже установлен стабилизатор 3.3 вольта и плата требует на вход +5. Тогда как это всё согласовывается с вашим вторым стабилизатором U1 ? Два стабилизатора стоят последовательно? Ведь схема на 2х BSS138 и U1 требует подключение непосредственно самого датчика BMP 085 , без тех навесных элементов и стабилизатора которые на маленькой платке. Расскажите поподробней как там у вам состыкованы 2 стаба.
Спасибо!

+1   Спам
113 max   (04.02.2016 17:43)
Исходник находится в конце статьи.

112 MaxPower1996   (04.02.2016 12:07)
здрасте ребята....кто может дать мне исходный текстовый код???
связаться со мной можете по скайпу maxim.grajdean1 или написать, адрес почтового ящика maxim.grajdean@mail.ru
буду благодарен если автор пришлёт мне исходный текстовый код для этого проекта

111 max   (19.01.2016 17:46)
Здесь есть модель BMP180 и не только: http://bascomavr.3bb.ru/viewtopic.php?id=1203

+1   Спам
110 chernishovmihail   (19.01.2016 14:05)
Автору Огромное спасибо за проект. По своим требованиям и имеющимся деталям переписал проект. Использовано(чтоб не травить плату)ArduinoProMini-1шт; DS18B20-2шт; DHT22-2шт; BMP180-1шт; 24LC08-1шт; индикатор 4х20. Вся температура и влажность с десятыми. В память пишу с двух датчиков. Работает в железе и протеусе(ну давление в протеусе с потолка). Архив перезалит на яндекс, может кому пригодится. https://yadi.sk/d/1lqFmYONsT9Wi
Прицепил Sleep, ток 7,8мА всей конструкции, больше снизить покуда не удалось.

109 Demo65   (12.01.2016 21:09)
Собрал сей прибор, запустился без проблем. Однако датчик DHT11 привирает градуса на 4. А так, все работает.

108 rom-i   (03.12.2015 14:30)
Все жалуются на DHT11. Китайцы их сейчас даже не продают. Пожалуйста покупай DHT22. Но про рабочую прошивку так ни кто ,и не написал. Есть у кого рабочая прошивка под DHT22?

107 Demo65   (18.11.2015 21:39)
Прошу прощения, я немного затупил, собираю этот барометр и сейчас собрался прошить контроллер, но многое не понял: Как выставить фузы? В комментариях написано что они в прошивке... Подскажите это как? Прошиваю в программе AVRdude.

106 Steppo   (15.10.2015 17:53)
Через неделю мучений удалось вставить код от kip96 с небольшими изменениями.Теперь жду DHT22
а мой DHT11 также врал и на attiny 2313.Я записывал код от поляков выложенный на другом форуме.

105 Steppo   (10.10.2015 16:15)
Это мне не по силам.вставляю код на экране вообще пусто или часы есть бмп есть ,а дшт не опрашивается.

104 sany2   (09.10.2015 21:55)
Ищите тему регулятор температуры и влажности-там где-то есть код обработки 22-го.С давлением у вас получилось-и с влажностью получится!

1-30 31-60 61-90 91-120 121-133
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]






   EasyEDA:  бесплатный редактор схем

   ✓ Создание схем
   ✓ Возможность симуляции
   ✓ Быстрое создание печатных плат
   ✓ Интуитивно понятный интерфейс

   Нарисуй свою схему прямо сейчас!
   Изготовление печатных плат   https://jlcpcb.com/

авторизация
Логин:
Пароль:
Комментарии
Подключение матричной клавиатуры 4х4 к микроконтроллеру
01.12.2017 - Kasym:
Нашел интересный косяк: если к переменной string*5 добавлять string*1 много раз,...
Организуем программный USB в Bascom-AVR на примере USB-вольтметра. Часть 3
30.11.2017 - Zimakos:
Сталкнулся с проблемой при компилляции на Bascom 2.0.7.8
а именно:
...
RF модули HC-12 с UART интерфейсом
25.11.2017 - ELK:
Кто-нибудь может подсказать как отправляется AT команда? Нужно поочередно отправ...
Направлятор
23.11.2017 - milcin68:
И снова здравствуйте)))
Сегодня вновь все повторилось как в #60 посте неи...
Направлятор
22.11.2017 - milcin68:
беру свои слова назад, я ничего не понимаю
прошил снова обновленную проши...
Направлятор
22.11.2017 - milcin68:
отвечу сам себе,
26 pin надо подтягивать к питанию.
фьюзы в моем п...
Направлятор
21.11.2017 - milcin68:
нужно ли подтягивать 26 pin к питанию?
правильно ли я выставил фьюзы? ...
Минитерминал V.3.0
19.11.2017 - webrusik:
DROZD01, не могли бы поделиться печатной платой?
Часы, термометр, барометр, гигрометр в одном флаконе.
19.11.2017 - bobkus:
Доброго всем. Собрал сей прибор, отлична штука. Пробовал два датчика dht11-врут ...