Показать содержимое по тегу: термометр

Среда, 04 марта 2015 23:29

ЧАСЫ С ТЕРМОМЕТРОМ НА PIC16F628A

Часы построены на микроконтроллере PIC16F628A, в качестве датчика используется DS18B20, транзисторы BC212 управляют общими анодами семисегментного индикатора, также в состав схемы входят несколько пассивных элементов.

Устройство настраивается с помощью 4-х кнопок. Одна увеличивает, другая уменьшает значение, третья кнопка используется для входа в меню, а также переключает элементы меню. При выходе из меню настройки сохраняются в EEPROM контроллера. Если часы зависают по какой-то причине кнопкой сброса они могут быть перезапущены. Часы будут продолжать работать с последними сохраненными значениями. Микроконтроллер тактируется от внешнего кварца частотой 4МГц для более точного отсчета времени. PIC16F628 управляет дисплеем в режиме мультиплексирования. Индикаторы находятся под контролем одного типа транзистора - BC212.

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

Схема часов термометр

 

Настройка часов, описание меню:

- ho: Установка часов 0-23 
- nn: Установка минут 0-59 
- dn: Установка месяца
- dd: Установка числа месяца
- dY: Установка года
- dt: Установка формата индикации месяца. Если 1 - буквами(JA FE ||A AP ||Y JU JL AU SE oc no dE), 2 - цифрами(01 02 03 04 05 06 07 08 09 10 11 12). 
- tt: Задержка индикации времени. Значение переменной 2-99с 
- td: Задержка индикации даты. Значение переменной 2-99с. В случае если равно нулю дата не показывается! 
- tE: Задержка индикации температуры. Значение переменной 2-99с. В случае если равно нулю температура не показывается! 
- Sh: Калибровка шестнадцатеричного значения (см. ниже) 
- Sl: Калибровка шестнадцатеричного значения (см. ниже)

Примеры установки калибровок Sh/Sl:

Отставание на 30 секунд в 24 часа: 30/86400 = 0,000347 
1000000 - (1000000 * 0,000347) = 999653 (в десятичной системе) = F40E5 (шестнадцатеричной)

В результате шестнадцатеричное значение 40E5 раскладываем на Sh=40, SL=E5

Отставание на 2 секунды в 1 час: 2/3600 = 0,000555 
1000000 - (1000000 * 0,000555) = 999445 (в десятичной системе) = F4015 (HEX)

Sh=40, SL=15

Спешат на 15 секунд за 60 дней: 15/5184000 = 0,000002 
1000000 + (1000000 * 0,000555) = 1000002 (в десятичной системе) = F4242 (HEX)

Sh=42, SL=42

559 02

Скачать прошивку и печатную плату 

Опубликовано в Устройства на AVR PIC

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

Для применения в автомобиле конструкция термометра претерпела ряд изменений, как схемотехнических, так и программных. Надпись "Дом" была заменена на "Салон", а в нижней строке дисплея теперь выводится напряжение бортовой сети автомобиля. При реализации функции измерения напряжения бортовой сети возникли трудности, связанные с отсутствием у примененного микроконтроллера цифро-аналогового преобразователя (АЦП). Зато в микроконтроллере имеется модуль компараторов, который и был использован для измерения бортового напряжения. С помощью модуля компараторов оказалось возможным измерять напряжение в диапазоне входных напряжений от 5,6В до 16В с дискретностью измерения 0,7В. Это самый оптимальный вариант для решения поставленной задачи без замены микроконтроллера. Зная напряжения бортовой сети можно оценить состояние аккумуляторной батареи. Сразу при включении устройства (с помощью замка зажигания или другим способом) выполняется измерение бортового напряжения. Если величина бортового напряжение оказалась меньше чем 10,5В автомобильный термометр-вольтметр оповестит звуковым сигналом (в течении 1,5с.) и одновременно выведет в нижней строке дисплея сообщение "Аккум - разряжен" примерно на 3...4с. Далее в нижней строке будет отображаться текущее значение бортового напряжения. Если величина напряжения будет меньше 5,6В на индикаторе будет отображаться сообщение  "Напряжение <6B", а если больше 16В - "Напряжение >16B".

автомобильный термометр

Описание схемы:

В качестве управляющего контроллера D1 используется микроконтроллер фирмы Microchip PIC16F628A, работающий в данном устройстве от внутреннего тактового генератора (4МГц).

Вывод информации о величине измеренных температур и напряжении бортовой сети автомобиля микроконтроллер осуществляет на LCD индикатор E1 от мобильного телефона Nokia3310. Передача данной информации осуществляется по последовательному интерфейсному каналу типа SPI. Обмен информации между микроконтроллером и дисплеем одностороний, данные передаются только от микроконтроллера к индикатору.

Резисторы R11...R15, совмесно с входными встроенными защитными цепями индикатора, обеспечивают согласование уровней сигналов управления, поступающих на индикатор.

Питание индикатора осуществляется от параметрического стабилизатора напряжения, обеспечивающего значение напряжения питания индикатора около +3,3В. Стабилизатор напряжения выполнен на стабилитроне V5, резисторе R10 и конденсаторе фильтра С8. Питание на стабилизатор поступает от источника стабилизированного напряжения +5В. Измерение температур осуществляется цифровыми датчиками температуры U1 и U2 фирмы Maxim DS18B20. Эти датчики имеют заводскую калибровку и позволяют измерять температуру окружающей среды от -55 до +125°С, причем в интервале -10...+85°С производитель гарантирует абсолютную погрешность измерения не хуже ±0,5°С. На границах диапазона измеряемых температур точность ухудшается до ±2°С.Индикация показаний термометра во всем диапазоне измеряемых температур выполняется с дискретностью ±0.1°C.

Обмен данными и командами между микроконтроллером D1 и датчиками температуры U1 и U2 осуществляется с помощью последовательного интерфейсного канала 1-Wire. Для упрощения программного обеспечения датчики подключены на отдельные входы микроконтроллера. Протокол обмена при этом по шине 1-Wire упрощается : не требуется адресация датчиков и их предварительная инициализация.

Резисторы R4, R6 являются нагрузочными резистороми для линий интерфейса 1-Wire. Резисторы R5, R7 выполняют функцию защиты внутреннего источника питания термометра при коротком замыкании цепей питаний датчиков.

Разъем Х3 используется для внутрисхемного программирования микроконтроллера D1. Его необходимо устанавливать в случае использования микроконтроллера в SMD исполнении или когда микроконтроллер в DIP корпусе непосредственно впаивается в плату, а не устанавливается в панельку. Разъем Х3 обеспечивает непосредственное подключение программатора PICKIT2 к термометру.

Пъезоизлучатель SP1 обеспечивает вывод звуковых сигналов, оповещающих о разрядке аккумуляторной батареи.

Внутренняя схема питания автомобильного термометра реализована следующим образом:- с разъема Х4 бортовое напряжение поступает через диод V1 и резистор R3 на микросхему интегрального стабилизатора напряжения U3 типа 7805.

Данная микросхема из напряжения бортовой сети формирует стабилизированное напряжение +5В для питания микроконтроллера, параметрического стабилизатора индикатора и цифровых датчиков температуры;

- Диод V1 препятствует прохождению импульсных помех отрицательного напряжения в цепи питания термометра, защищает устройство при неправильной подачи питания на устройство (переполюсовка питания), а также совместно с конденсатором С1 препятствует перезапуску микроконтроллера устройства при провалах напряжения бортовой сети при включении стартера автомобиля или других энергоемких потребителей электроэнергии автомобиля; - Резистор R3 совместно с ограничительным диодом (супрессором) V2 защищает внутренние цепи термометра от перенапряжений, возникающих от влияния импульсных помех.

Узел формирования аналогового сигнала, необходимого для измерения напряжения бортовой сети, собран на резистивном делителе напряжения R1,R2, конденсаторе C2 помехоподовляющего фильтра (R1, C2), и диодах V3, V4, защищающих совместно с резистором R1 аналоговый вход микроконтроллера от перенапряжений.

Желательно для повышения точности измерения напряжения резисторы R1 и R2 использовать с 1% точностью, но так, как дискретность измерения очень большая (0,7В) - это условие не обязательно.

Мощность резистора R3 должна быть не менее 0,5Вт, а мощность стальных резисторов может быть 0,125Вт для выводных и 0,1Вт для SMD резисторов

Опытный образец автомобильного термометра был собран на односторонней печатной плате:

bezymjanffbfbnyj cr

foto1 avto_termo

foto2 avto_termo

foto4 avto_termo

 

Внимание печатная плата и монтаж опытного образца выполнены по схеме - Shema_avto_termo_3310_pic16f628.spl, файл которой представлен ниже. Отличие от представленной выше схемы только в оформлении и в позиционных обозначениях элементов. 

Скачать архив всего проэкта: 93.78 KB

Опубликовано в Все для автомобиля
Понедельник, 28 ноября 2011 21:28

Термометр на LCD Nokia 3310

Давно хотелось сделать какое нибудь устройство с использованием индикатора от Nokia 3310.

Как то бродя в очередной раз по просторам интернета, я наткнулся на термометр, который был сделан на 8-ми ногом PICe и LCD от Nokia 3310 ( вот этот сайт - http://www.ivica-novakovic.from.hr).

Не долго думая, решил сделать похожий термометр, тем более что у меня завалялся нерабочий телефон Nokia 3310.

 Так как телефон был не рабочий, то и не было уверености, что дисплейчик - рабочий. Поэтому для проверки функционирования дисплея изготовил выше упомянутый термометр.

 

1vidoncik

 

2

Вместо PIC12F629 я использовал PIC12F675.

Рисунок печатной платы и оригинальные прошивки можете взять на выше упомянутом сайте.

Устройство заработало. И я принялся писать свою программу. Программу написал на Си. Функции работы с дисплеем нашел на одном из форумов (на каком уже не помню).

При написании программы меня ждала "засада". Код не полез в PIC12F675. Поэтому пришлось поужиматься и обойтись без задуманной графической картинки.

В итоге вот что получилось:

3

Програмное обеспечение

Исходный текст программы термометра на lcd Nokia 3310 -здесь

Файлы

Прошивка для датчика DS18В20;

 

Опубликовано в Устройства на AVR PIC

Прибор предназначен для одновременноrо измерения температурь, воздуха в двух местах в доме и на улице. Он питается от одноrо гальваническоrо элемента напряжением 1,5 В и снабжен ЖКИ от отслужившеrо свои срок сотового телефона
Nokia 3310.

Исходной причиной этой разработки стало желание иметь автономное, малоrабаритное устройство, способное длительное время работать от батареи.
Первой проблемой стал выбор индикатора для отображения измеренных значений температуры светодиодные индикаторы не подошли по причине значительноro потребления тока. Обычный многоразрядный семиэлементный ЖКИ потребляет значительно меньший ток, но на нeгo приходится подавать слишком многo управляющих сигналов, что требует применения многовыводного микроконтроллера лучше вceгo подошел ЖКИ со встроенным контроллером, управляемый вceгo несколькими сигналами после долгих поисков я остановился на ЖКИ от телефона Nokia 3310. В Heгo встроен управляемый по интерфейсу SPI контроллер LPH7779 или РСD8544, протокол управления которым известен.

Технические характеристики индикатора
Размер корпуса, мм ............38х35
Размер экрана, мм .............30х22
Разрешение, пкс ................84х48
Напряжение питания, В ......2,7...3,3
Рабочая температура, ос ...-25...+ 70
Ток потребления, мкА ........300

Использовать в приборе микроконтроллер семейства PICmicro или AVR не
хотелось по причине относительно большоrо тока потребленияю Выбор пал на семейство микроконтроллеров МSР430 фирмы Texas Instruments. В него входят
16-разрядные микроконтроллеры с развитой периферией. Что в данном случае
самое важное, они специально предназначены для работы от батарей и имеют
сверхнизкое энерrопотребление. Ток, потребляемый примененным микроконтроллером MSP430F2011IPW при напряжении питания 3 В и тактовой
частоте ядра 8 мrц, не превышает 2 мА.

Схема термометра показана на рис. 1. Для питания узлов прибора напряжение гальваническоrо элемента G1 нужно повысить до 3,3 В. Это делает повышающий преобразователь на специализированной микросхеме NCP1400ASN33T1 (ОА 1). При собственном токе потребления 60 мкА она поддерживает выходное напряжение неизменным при снижении напряжения элемента вплоть до 0,8 В.

img1

Датчики DS1821 (ВК1, ВК2) измеряют температуру в интервале от -55 до +125C с погрешностью не более 1С. Они могyт работать и в режиме термостата, подавая сигналы включения и выключения нагревателя или охладителя при достижении заданных значений температуры, но в рассматриваемом приборе этот режим не используется.

Связь датчиков с микроконтроллером происходит по известному интерфейсу 1-Wire. Но в отличие от друrих микросхем с таким интерфейсом эти датчики не имеют индивидуальных номеров, поэтому для связи с каждой из них требуется отдельнаялиния. Использованы линии Р1.6 и Р1.7 микроконтроллера DD1. Опрос датчиков производится периодически, euo peзультаты выводятся на индикатор
HG1.

Печатная плата термометра и расположение деталей на двух ее сторонах показаны на рис. 2.

img2 1

img2 2

img2 3

В налаживании устройство не нуждается и начинает работать сразу, но до установки микроконтроллера на плату и подключения к ней индикатора желательно проверить работу преобразователя напряжения на микросхеме DА1 и
убедиться, что напряжение на eгo выходе равно 3,3 В во всем интервале возможных значений напряжения гальваническоrо элемента.

Скачать прошивку и печатную плату

 Источьник: Журнал радио 2010 №4

Опубликовано в Бытовая электроника

 

В одном из номеров журнала «РАДИО» был предложен способ дистанционного контроля температуры, используя сотовую связь. В помещении, в котором нужно проконтролировать температуру, располагались дешёвый сотовый телефон и говорящие часы, озвучивающие текущее время и температуру.

Пример таких часов показан на ФОТО 1.

 

index_image002

ФОТО 1. Часы TALKING CLOCK

При дозвоне на сотовый телефон и установлении связи, с помощью манипуляций на клавиатуре вызывающего телефона давалась команда нажатия кнопки «TALKING». Часы сообщали время и температуру по GSM-каналу, далее соединение принудительно разрывалось. Но можно реализовать контроль температуры в отсутствие хозяев (в садовом домике, в гараже, в подвале и т.п.) другим способом. В помещении оставляется устройство, которое через заданные промежутки времени автоматически включает часы в режим сообщения времени и температуры, а информация заносится в какое-нибудь устройство записи. Затем, прослушав накопленную информацию, делается соответствующий вывод о средней температуре в данном помещении. Так как это будет отдельное устройство, то к функции часов с будильником можно добавить, например, таймер или счётчик временных интервалов, который сгодится в быту, а наличие записывающего устройства позволит дополнить будильник любимыми звуковыми фрагментами.
Типовая принципиальная схема часов «TALKING TEMP.CLOCK”, зарисованная с печатной платы показана на РИСУНКЕ 1.1.

часы-термометр

Управляющий контроллер DD содержит схему опроса датчика температуры RT, формирователь высокостабильного опорного напряжения, схемы АЦП и ЦАП, драйвер LCD- индикатора и схему ШИМ с мостовым УНЧ для динамика BF1. Конструктивно контроллер выполнен в бескорпусном варианте и на плате залит компаундом. Питание схемы часов осуществляется от двух батареек по 1,5 вольта типоразмера ААА, включенных последовательно. На РИСУНКЕ 1 в пунктах 1 - 7 указаны особенности микросхемы DD, которые учитываются в работе всей схемы регистратора.
В качестве накопителя информации удобно применить микросхему-чипкордер. Обосновать выбор можно простотой схемного решения, минимальным числом элементов внешней обвязки и сверхнизким потреблением тока от источника питания в неактивированном состоянии (не более 1-го мкА). Оптимально для данного устройства подойдут чипкордеры семейства ISD25xx с максимальным временем записи до двух минут, например, микросхема ISD25120. Напряжение питания этой серии, при котором сохраняется работоспособность, может быть от 4-х до 6-ти вольт. С учётом автономного использования регистратора, первый вариант источника батарейного питания может быть реализован по схеме, показанной на РИСУНКЕ 1.2. Но предпочтительнее применить источник, содержащий стабилизатор напряжения, вариант которого показан ниже. Это схема микромощного стабилизатора, обеспечивающая максимальный выходной ток в нагрузке до 40mA. В качестве стабилизирующего элемента используется светодиод HL1. Так как питание часов 3 вольта, а чипкордера 6 вольт, то необходимы две такие схемы.

Структурная схема устройства, показывающая уровни информационных и управляющих сигналов, а также поясняющая назначение элементов, изображена на РИСУНКЕ 2.

схема часов

Принципиальная электрическая схема устройства показана на РИСУНКЕ 3.

схема термометра

В схеме источника питания указаны токи, потребляемые устройством в статическом режиме. Общий ток, потребляемый от источника GB1, составляет порядка 14 мкА. В первом источнике (+3V) опорным элементом служит светодиод HL1. Используется свойство светодиодов – при изменениях протекающего через них тока, падение напряжения на нём практически не изменяется и равно 1,5 вольта. Во втором источнике (+5V) в качестве опорного элемента применён стабилитрон КС133А в стеклянном корпусе (VD2). Дополнительным стабилитроном или диодом «ХХХ» (VD1) можно более точно подобрать выходное напряжение, которое зависит от конкретного экземпляра применённого стабилитрона. Все элементы работают в микромощных режимах, поэтому удалось получить весьма малое собственное потребление тока источниками от GB1 с U = 9V.
Тестовый режим в устройстве можно не использовать, но, вообще-то, с ним удобнее. Регистратор защищался на областных соревнованиях по электронике. Время доклада было ограничено, но для комиссии надо было продемонстрировать работу, поэтому и ввели «ускоренную прокрутку» времени. Для исключения тестового режима удаляются элементы генератора DD5.3, DD5.4, R2 и C19, счётчик DD7 и элемент сброса DD4.4, транзисторы VT5 и VT6, а также переключатель «ТЕСТ» SA3.
Переключатель временных интервалов SA1 можно заменить миниатюрными галетными переключателями, тогда необходимость в диодах VD4-VD19 отпадёт.
При кратковременном нажатии кнопки SB1 происходит перемещение внутреннего маркера адресного пространства микросхемы DD6 в начало блока памяти, т.е. воспроизведение или запись можно принудительно начать сначала. Чтобы произвести запись с микрофона BM1 переключатель SA2 устанавливают в положение «ЗАПИСЬ», затем нажимают и удерживают на протяжении записи фрагмента кнопку SB3, при этом управляющие сигналы «СТАРТ» и «ПАУЗА» формируются автоматически. В конце фрагмента её отпускают. Следующий фрагмент будет записываться после предыдущего. Для просмотра записанных фрагментов (как температуры, так и сообщений с микрофона) переключатель SA2 переводят в положение «ВОСПРОИЗВЕДЕНИЕ» и кратковременно нажимают кнопку SB2. После воспроизведения фрагмента автоматически наступает «ПАУЗА». Для прослушивания следующего фрагмента опять кратковременно нажимают SB2 и т.д.
Светодиод HL2 – индикатор активации чипкордера DD6 и может быть использован в качестве подсветки ЖК-индикатора часов. Он начинает светиться в начале воспроизведения или записи фрагментов и гаснет в конце.
Для режима отсчёта временных промежутков переключатель SA3 переводят в положение «ТАЙМЕР», а переключателем SA1 устанавливают нужный временной интервал от одной минуты до 59 минут. Получились своеобразные «песочные часы», удобные в процессе приготовления пищи. По истечении выдержки прозвучит голосовое сообщение текущего времени и температуры. Можно отметить, что теперь появилась возможность прослушивать время через заданные минутные интервалы, тогда как такой режим у самих часов был возможен только один раз в конце часового интервала.

Для работы устройства в качестве будильника с любимым музыкальным фрагментом переключатель SA1 должен быть в разомкнутом состоянии, а в DD2 с микрофона заранее необходимо записать музыкальный фрагмент (либо свою фразу, под которую хочется просыпаться). В будильнике штатными кнопками устанавливается время и режим «ALARM ON». При срабатывании будет проигрываться выбранный фрагмент в течение минуты, если не нажать кнопку отключения будильника.
Устройство размещают в подходящем по размерам корпусе, в котором крепят плату, а на передней панели устанавливают элементы управления. Как правило, ЖК-индикатор крепится к передней панели корпуса часов, а контакт со шлейфом обеспечивают приклеиванием. Возможен и другой вариант – посредством токопроводящей резинки контакты ЖК-индикатора присоединяют к плате часов без шлейфа. Сама резинка держится за счёт прикрученной мелкими винтиками к передней панели платы часов. Поэтому, лучше всего не разбирать переднюю панель часов, а установить её вместе с индикатором на корпусе устройства. Как это сделано в авторском варианте, показано на ФОТО 2. В корпусе устройства прорезается отверстие и передняя панель часов вместе с индикатором и печатной платой закрепляется «супермоментом» или термоклеем.

 

shemu.ru

ФОТО 2. ВРЕМЕННОЙ РЕГИСТРАТОР ТЕМПЕРАТУРЫ. Внешний вид

Снизу корпуса устанавливается покупной футляр для шести полуторовольтовых батареек типоразмера «АА».

index_image012

ФОТО 3. ОТСЕК С БАТАРЕЯМИ

На ФОТО 4 – ФОТО 6 показаны виды на монтажную часть устройства. Как видно, печатная плата не разрабатывалась. Детали на плате соединяются проводом МГТФ с минимальным сечением, а элементы управления на корпусе с платой – для удобства тонкими цветными проводами.

ФОТО 4. ВИД НА МОНТАЖ 1


ФОТО 5. ВИД НА МОНАЖ 2

 

index_image018

ФОТО 6. ВИД НА МОНТАЖ 3

Элементы (динамик, кнопки, разъёмы, платка с диодами, микрофон и датчик температуры) внутри крепятся к корпусу с помощью термоклея, как показано на ФОТО 7 и ФОТО 8.

 

index_image020

ФОТО 7. КРЕПЁЖ ВНУТРЕННИХ ЭЛЕМЕНТОВ 1

 

index_image022

ФОТО 8. КРЕПЁЖ ВНУТРЕННИХ ЭЛЕМЕНТОВ 2

В представленных демонстрационных роликах показан пример работы устройства в двух режимах. Первый – тестовый режим записи температуры. Видно, что ускоренно изменяются показания часов и минут. Второй режим – включение будильника в заданное время 10 часов 05 минут, при этом воспроизводится фрагмент песенки «Вояж». По истечении одной минуты (10:06) будильник выключается, но фрагмент повторяется ещё раз.

Видео как работает устройство!

Опубликовано в Бытовая электроника