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

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

 Схема устройства ниже, конвертер 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
Просмотров: 46537 | Комментарии: 124 | Теги: eeprom, atmega64, ЖКИ, BMP085, DHT11, bootloader, меню | Рейтинг: 4.6/23
Всего комментариев: 1241 2 3 4 5 »
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-го.С давлением у вас получилось-и с влажностью получится!

103 Steppo   (09.10.2015 06:23)
DHT11 сильно врет ,кто-нибудь пробовал DHT22.

102 Steppo   (08.10.2015 11:34)
Спасибо всем ,кто откликнулся.Кое как переделал прошивку.Теперь давление не зависит от температуры.

101 Steppo   (08.10.2015 08:11)
Я не программист.Все,что там написано для меня темный лес.Мне нужен исправленный HEX.

0  
100 exersizze   (04.10.2015 20:03)
Steppo, вот здесь на форуме эту проблему решили http://avrproject.ru/forum/3-344-1#2939

99 Steppo   (02.10.2015 05:04)
Кто-нибудь решил проблему с компенсацией температуры и давления для BMP085? Скиньте исправленный HEX.

98 vasel57   (06.04.2015 06:55)
спасибо за помощь! просто я думал что мигание это то моя ошибка где то, а схема работает прекрасно. спасибо автору.

0  
97 exersizze   (04.04.2015 19:13)
asel57, на видео не видно, но мерцание тоже было заметно. Как вариант можно использовать 8-и битный режим работы с дисплеем, будет работать по шустрее.

96 vasel57   (03.04.2015 08:07)
а как уменьшить время вывода,это в пошивке делается? на видео миганий нет или зависит от дисплея?

95 sany2   (02.04.2015 23:14)
vasel57,уже здесь где-то писали.От подмигивания можно избавиться,если стирание(cls) заменить на пустые знакоместа после показаний...Блин не могу объяснить как exersizze...В общем нужно каждые показания и пробелы привязать к определённому месту и чётко рассчитать пробелы и символы в строке.Всё равно даже сам не совсем понял что сказал.Может кто попонятнее расскажет..

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






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

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

   Нарисуй свою схему прямо сейчас!
   Изготовление печатных плат   https://easyeda.com/order
авторизация
Логин:
Пароль:
Комментарии
Сетевой диммер 220V на микроконтроллере
09.12.2016 - vakulyuk:
Спасибо) Я принцип действия понял, а вот откуда взялась именно цифра 195 не поня...
Сетевой диммер 220V на микроконтроллере
09.12.2016 - exersizze:
pchela5, ну так это в военное, а у нас в мирное время все примерно)) Наше...
Сетевой диммер 220V на микроконтроллере
09.12.2016 - pchela5:
> Полуволна в нашей электросети по времени длится примерно 10 мс

...
Сетевой диммер 220V на микроконтроллере
09.12.2016 - exersizze:
Чтобы понять откуда взялась цифра 195 надо сначала въехать в принцип работы: ког...
Сетевой диммер 220V на микроконтроллере
09.12.2016 - vakulyuk:
А почему минимальный накал при 195? Насколько минимум можно занизить Wt?
Когда не хватает ног. Часть 2. Сдвиговый регистр 74HC595
08.12.2016 - exersizze:
yorx выдалось немного свободного времени, проверил в симуляторе. Проблема...
Логгер температуры 2.0
05.12.2016 - Evgeny6873:
Хотел повторить схему и долго ждал дисплей, два раза заказывал с Китая, пришел. ...
Когда не хватает ног. Часть 2. Сдвиговый регистр 74HC595
01.12.2016 - yorx:
Доброго времени суток, exersizze попробовал Ваш код все равно не работает как на...
Помни об усадке!
30.11.2016 - pchela5:
Автомобильные никакие не лезут?


Лучшие цены на 3D принтеры
успей сделать себе подарок к Новому Году! ;)


Prusa i3

Prusa i3 от 12500 р.



Rostoсk

Rostock от 15000 р.