РадиоКот :: Простой барометр/термометр на МК.
Например TDA7294

РадиоКот >Схемы >Цифровые устройства >Бытовая техника >

Теги статьи: БарометрТермометрДобавить тег

Простой барометр/термометр на МК.

Автор: Алексей Спиренков
Опубликовано 19.09.2011
Создано при помощи КотоРед.
2011

Всем привет!

Во первых хочу поздравить Кота с днем рождения! Процветать!

Теперь к статье.

"Простой барометр/термометр на МК"

Данная конструкция была разработана по просьбе моего друга - любителя автомобильных путешествий и offroad. Им (другу и сотоварищам) в походах уж очень хочется знать в какую сторону и с какой скоростью меняется атмосферное давление, дабы попытаться понять, что будет с погодой. Он выбрал недорогой индикатор ME-GLCD128x64 представленный на фото:

Устройство собрано на двусторонней ПП, изготовленной методом ЛУТ:

 

Микроконтроллер был выбран ATMega32 в дип корпусе по причинам: он у меня был, найти другое применение такому большому корпусу (DIP40) я не смог, т.к. в последнее время делаю практически все на SMD.

Датчик давления фирмы HopeRF - HP03M, общающийся с МК по протоколу TWI. Датчики температуры DS18S20 фирмы Maxim.

Часы реального времени были выбраны на микросхеме M41T81 по причинам: наличие коррекции времени и наличие Timekeeper - позволяющего читать текущее время без потерь тактов основного счетчика.

В качестве источника питания решено использовать автомобильный адаптер USB - он выдает 5В при токе до 0.5А. В связи с тем, что при старте двигателя "провалы" в бортовой сети авто довольно большие, то была необходима схема аварийной записи текущих значений в eeprom. Для этого используется развязка питания МК и остальной схемы. Питание МК поддерживается конденсатором 1000 мкф, которого, как показали испытания, достаточно (более чем в два раза) для того, что-бы МК успел записать 6 байт текущих значений датчиков в eeprom. Контроль наличия питания и цепь сброса МК обеспечивают два супервизора питания. Первый следит за напряжением на входе схемы и при пропадании питания выдает лог.0 на int0, тем самым запуская процедуру сохранения. Второй обеспечивает "жесткий" сброс самого МК при понижении его питания - для исключения повреждения eeprom.

В обычном режиме данные записываются в eeprom каждые полчаса. Всего хранятся значения за 2-е суток. Текущее время, полученное с m41t81 преобразуется в кол-во секунд от 2000 года, и на основе этого значения вычисляется текущий адрес для записи (один из 96). После несложных вычислений можно увидеть, что ресурс eeprom выработается приблизительно за 540 лет (каждая ячейка перезаписывается раз в 2-е суток) или при ежеминутном выключении питания за 18 лет. Получасовые данные - это средние значения давления, температуры по каждому датчику, время в секундах (кратное 96) и контрольная сумма CRC16. При старте данные читаются из eeprom и проверяется контрольная сумма каждого блока, если сумма не верна - данные игнорируются. Так-же данные игнорируются если дата их записи превышает 2-е суток (нам такие старые данные не нужны). Аналогично считается и контрольная сумма основных настроек, и если она не верна - считаем, что это первый запуск программы и выставляем все значения по дефолту.

Далее пример работы устройства.

В верхнем левом углу текущее давление в мм.рт.ст и после стрелочки - изменение давления за последние 3 часа. Ниже показания двух датчиков температуры и max/min значения за прошедшие 24 часа. Совсем внизу график изменения давления. (провал в графике - специально на эти полчаса устройство было выключено - следовательно данных нет и показывать нечего)

 

Меню настроек:

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

Все настройки выполняются тремя кнопками Enter,+,- Для входа в меню настроек необходимо удерживать + и - более секунды.

В основном режиме кнопки + и - не работают и потому сделаны скрытыми. Кнопка Enter переключает яркость экрана с макс. на мин. и наоборот. При длительном удержании подсветка экрана полностью отключается.

Собственно схема устройства:

В архиве: Прошивка, схема, плата, плата в diptrace. Плюс набор различных цифр и символов с сишными кодами.

А вот тут - сайт проекта.
PS: проект будет развиваться, т.к. впереди еще зимние испытания на морозоустойчивость :)


Файлы:
Бонус: много цифирок с "C"шными массивами
Прошивка, исходники, схема, плата


Все вопросы в Форум.




Как вам эта статья?

Заработало ли это устройство у вас?

64 1 0
19 2 0

Эти статьи вам тоже могут пригодиться: