Top.Mail.Ru
Автомобильный термометр 2-х канальный на PIC16F628 + LCD Nokia3310 - Микроконтроллеры и Технологии

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

Для применения в автомобиле конструкция термометра претерпела ряд изменений, как схемотехнических, так и программных. Надпись "Дом" была заменена на "Салон", а в нижней строке дисплея теперь выводится напряжение бортовой сети автомобиля.

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

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

Автомобильный термометр 2-х канальный на PIC16F628 + LCD Nokia3310

В качестве управляющего контроллера 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 резисторов.

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

при этом внешний вид платы термометра с установленными элементами со стороны установки элементов:

и со стороны печатных проводников:

Автор: vnnik71


Архив для статьи "Автомобильный термометр 2-х канальный на PIC16F628 + LCD Nokia3310"
Описание: Файл прошивки микроконтроллера, макет печатной платы SprintLayout5, принципиальная схема в формате Autocad
Размер файла: 79.27 KB Количество загрузок: 2 672 Download

Комментарии  
Кто-нибудь делал эту схему?
Я собрал его в Proteus, но только измеряемого напряжения.
Не показывает температуру.
Отображается постоянно размывают

Цитирую Бисер Георгиев:

Кто-нибудь делал эту схему?
Я собрал его в Proteus, но только измеряемого напряжения.
Не показывает температуру.
Отображается постоянно размывают


Я собирал и в Proteus и в железе, все прекрасно работает
Можете ли вы выслать мне файл для Proteus на bgeorgiev@abv.bg
Здравствуйте! А можно исходник? Если нет, измените пожалуйста вместо "САЛОН" двигатель.
или на почту chukcha1979@gmail.com
А ПРОШИВКИ ПОД ДИСПЛЕЙ 1100 НЕ НИ УКОГО?
не отображает температуру на экране пишет обрыв и кз датчиков, хотя все проверил нет кз и обрыва. в чем может быть проблема?

Цитирую tvz:

не отображает температуру на экране пишет обрыв и кз датчиков, хотя все проверил нет кз и обрыва. в чем может быть проблема?


Тактовая частота микроконтроллера, датчики нужны именно DS18B20, подтягивающие резисторы на шину 1-wire, правильность монтажа
+1
всем привет. в протеусе работает в железе не хочет секунд 5 поработает и тухнет дисплей. В чем может быть проблема????? пропаяно все хорошо :sad:
+1
у меня таже беда работает минут пять и дисплей тухнет, питание на МК есть.
Проблема аналогичная... Устройство включается на секунд 5, отображает температуру и напряжение, а затем выключается. При повторной попытке включить прибор, устройство не включается. Если дотронутся до выводов микроконтроллера в районе 1-4 ножке то прибор включается. Подскажите, что необходимо сделать чтоб прибор нормально функционировал.
Чтобы устранить ситуацию с выключением устройства по истечению 5 секунд и другой всякой ерунды, необходимо впаять резистор R5 в несуществующие посадочное место на печатной плате. Т.к. автор не предпочёл разместить посадочное место на печатной плате в лайоте, многие не заметили сие изращение, у них и получилось краказябра с включением на 5 с и выключением.
а что случилось с с9, с8, r5 и с с5 на печатке? в таком виде он работает? дисплей подсвечивается?
Откликнитесь если тема ещё актуальна