Схема электронных часов с термометром для автомобиля

      Собрав для своего автомобиля электронные часы по схеме со светодиодным индикатором, радиолюбитель неизбежно сталкивается с проблемой их внешнего оформления и размещения в салоне. Ведь далеко не каждый обладает хорошими дизайнерскими способностями и необходимыми технологическими возможностями. Значительно проще решается эта проблема, если сделать часы говорящими. Место в автомобиле для них подобрать несложно. Оно найдётся под передней панелью, в кожухе туннеля карданного вала, в полости двери, под сиденьем и так далее. Правильный счёт времени и выдача сообщений о нём происходят независимо от состояния и наличия в автомобиле аккумуляторной батареи.

      Дополнительная функция предлагаемых часов — измерение температуры там, где будет размещён датчик температуры (в салоне, под капотом или снаружи автомобиля). Она может находиться в интервале от -55 до +125 °С.
      В часах всего два органа управления — переменный резистор с выключателем и кнопка. Разместить их в салоне автомобиля, не нарушив его дизайн, несложно. Переменным резистором с выключателем запускают воспроизведение сообщений о времени и температуре и регулируют их громкость. Кнопка служит для корректировки времени, для этого на неё нужно нажать точно в начале часа. Во избежание непреднамеренного искажения показаний часов кнопку устанавливают так, чтобы затруднить случайное нажатие. Кроме того, предусмотрена программная защита от последствий этого.
Схема электронных часов с термометром для автомобиля
      Схема электронных часов изображена на рис. 1. Функции счёта и звуковой индикации времени разделены между микроконтроллерами PIC12F675-I/P (DD1) и PIC16F876-20I/P (DD2). Звуковые фрагменты (слова, из которых программа строит сообщения о температуре и времени) хранятся в цифровой форме в микросхеме памяти DS1 объёмом 2 Мбит. Автор применил в схеме электронных часов микросхему PM29F002T, снятую с материнской платы компьютера, где в ней хранилась программа BIOS.
      Воспроизведение звука динамической головкой ВА1 обеспечивает микросхема усилителя 34 LM386N (DA2). Для измерения температуры в схеме электронных часов применён цифровой датчик DS18В20 (ВК1).

      Тактовая частота микроконтроллера DD1 задана «часовым» кварцевым резонатором ZQ1 частотой 32768 Гц. Питается этот микроконтроллер от литиевого элемента CR2032 (G1) напряжением около 3 В. Как известно, такие элементы отличаются незначительной саморазрядкой и способностью работать при минусовой температуре. Благодаря низкой тактовой частоте микроконтроллер DD1 потребляет небольшую мощность, что делает возможной длительную эксплуатацию часов без замены элемента питания.
      Микроконтроллер DD2 должен иметь высокое быстродействие, чтобы успевать в необходимом темпе управлять выборкой из ПЗУ DS1 записанных в него в цифровой форме звуковых фрагментов. Для сохранения естественности воспроизведения звука нужна высокая стабильность тактовой частоты. По этим причинам тактовый генератор микроконтроллера стабилизирован кварцевым резонатором ZQ2 частотой 20 МГц.

      Для нормальной работы этого микроконтроллера с такой тактовой частотой необходимо питать его напряжением 5 В. Оно подаётся на микроконтроллер DD2 и ПЗУ DS1 через интегральный стабилизатор DA1 от гальванической батареи GB1 напряжением 9 В («Крона» или её аналог). Непосредственно от этой же батареи питается усилитель 34 DA2.
      Спаренным с переменным резистором R4 выключателем SA1 батарею GB1 подключают к часам только на то время, когда необходимо услышать сообщения о времени и температуре. Прослушав нужное сообщение, её обычно отключают. Так как это занимает лишь несколько секунд, энергия расходуется экономно и батарея служит долго. Потребляемый от неё при воспроизведении звука ток зависит от установленной громкости и содержания сообщения. Замеры показали, что он не превышает 80…90 мА.

      Микроконтроллеры DD1 и DD2 по схеме электронных часов соединены друг с другом через логические инверторы на транзисторах VT1 и VT2, основное назначение которых — согласовывать уровни сигналов, которыми обмениваются микроконтроллеры, работающие при разном напряжении питания. К тому же недопустимо непосредственно соединять выводы включённого и выключенного микроконтроллеров. Это может привести к так называемому «фантомному» питанию выключенного микроконтроллера   напряжением, поступающим через защитный диод входа, соединённого с выходом включённого микроконтроллера. Это создаст дополнительную нагрузку на гальванический элемент G1, а работа питающегося таким образом микроконтроллера станет непредсказуемой.
Кнопка SB1 по схеме электронных часов, подключённая к входу GP2 микроконтроллера DD1, предназначена для установки точного времени.

      Программа микроконтроллера DD1, запускающаяся при подаче на него напряжения питания, настраивает линию порта GP0 как выход, а линии GP1—GP3 — как входы. Вход GP3 программой не используется. Он соединён с общим проводом во избежание увеличения потребляемого микроконтроллером тока под действием наводок на этот вход. К входам GP1 и GP2 программа подключает внутренние резисторы, соединяющие их с плюсом питания.
Для счёта времени использован таймер Т1 микроконтроллера DD1. Программа настраивает его так, что каждую секунду генерируется запрос прерывания программы. Подпрограмма-обработчик прерывания обновляет хранящиеся в памяти микроконтроллера DD1 значения часов и минут текущего времени.

      При каждом вызове обработчика проверяется логический уровень на входе GP1 микроконтроллера DD1. Если он низкий (транзистор VT1 открыт высоким уровнем на выходе RA5 микроконтроллера DD2), это означает, что микроконтроллер DD2 включён и запрашивает информацию о текущем времени. В ответ микроконтроллер DD1 передаёт её последовательным кодом, формируемым на выходе GP0 (две посылки по девять двоичных разрядов). Девятый разряд каждой посылки используется, чтобы отличить значение часов от значения минут. Передача текущего времени только по запросу помогает уменьшить средний ток, потребляемый микроконтроллером DD1 от элемента G1, и продлить срок службы этого элемента.

      Перед каждой передачей времени программа микроконтроллера DD1 анализирует состояние кнопки SB1, подключённой к входу GP2. При нажатии на эту кнопку значение минут текущего времени становится равным нулю. Если перед обнулением число минут было менее 30, значение часа не изменяется, в противном случае оно увеличивается на единицу. Чтобы уменьшить вероятность сбить ход часов, случайно нажав на кнопку SB1, корректировка производится только при наличии запроса времени от микроконтроллера DD2, т. е. при воспроизведении информации о времени.
Схема электронных часов с термометром для автомобиля
      Если кнопку SB1 после корректировки часа не отпустить, то после передачи (и озвучивания микроконтроллером DD2) каждого сообщения о времени к значению часа станет прибавляться ещё одна единица. Так будет продолжаться, пока кнопку не отпустят. Назначение этой процедуры — первоначальная установка точного времени. Она требуется, если питание микроконтроллера DD1 было по каким-либо причинам выключено и включено вновь.

      Программа микроконтроллера DD2 начинает работать при включении его питания выключателем SA1. Она конфигурирует линии портов RA0— RA5, RB0—RB7, RC0—RC5 как выходы, a RC6 и RC7 — как входы. Далее программа настраивает универсальный синхронно-асинхронный приёмопередатчик (USART) микроконтроллера на формат сообщений о времени, передаваемых микроконтроллером DD1. Включив USART на приём, программа устанавливает на линии порта RA5 высокий логический уровень — признак запроса информации о времени и готовности к её приёму. Приняв эту информацию, программа снимает признак запроса и переходит к формированию звукового сообщения.

      В таблицах, хранимых в программной памяти микроконтроллера DD2, по принятым значениям часа и минуты программа находит слова (звуковые фрагменты), которые необходимо воспроизвести, и определяет начальные адреса этих слов в ПЗУ DS1. После этого организуется выборка отсчётов, образующих нужные слова. Каждые 125 мкс на адресные входы А0—А17 ПЗУ DS1 подаётся код адреса очередного отсчёта, в результате на его выходы D0—D7 выводится цифровой код этого отсчёта.

      Преобразователь цифрового кода в напряжение в схеме электронных часов выполнен по известной схеме R—2R на резисторах R10—R24. Через разделительный конденсатор С1, ФНЧ R2C4R3C7 и регулятор громкости (переменный резистор R4) полученный аналоговый сигнал 34 поступает на вход усилителя на микросхеме LM386N (DA2). Её коэффициент усиления установлен равным 20 — минимальному из возможных значений.
      Параллельно с воспроизведением информации о времени микроконтроллер DD2 запускает процесс измерения температуры цифровым датчиком DS18B20 (ВК1). По завершении сообщения о времени он считывает результат измерения температуры, формирует и воспроизводит сообщение.
Схема электронных часов с термометром для автомобиля
      После этого микроконтроллер DD2 вновь запрашивает у DD1 текущее время. Сообщения о времени и температуре повторяются циклически до тех пор, пока питание микроконтроллера DD2 не будет выключено выключателем SA1.
      Печатная плата для схемы электронных часов не разрабатывалась. Они смонтированы на макетной плате (рис. 2). Резисторы для поверхностного монтажа установлены на стороне платы, обратной показанной на снимке. При желании измерять температуру в удалённом от платы месте, туда следует перенести датчик DS18B20, соединив его с платой жгутом из трёх проводов или подходящим кабелем (например, телефонным).

      Конденсаторы, резисторы, кнопки — любые малогабаритные. Транзисторы КТ315А могут быть заменены другими той же серии или серии КТ3102. Вместо интегрального стабилизатора 7805 можно установить его отечественный аналог КР142ЕН5А или КР142ЕН5В. Резисторы R10—R24 преобразователя кода в напряжение желательно применить прецизионные с допуском 0,5… 1 %. Но удовлетворительный результат был получен и с резисторами, имеющими допуск 5 %.
Кнопка SB1 должна иметь укороченный толкатель, чтобы он минимально выступал над панелью часов или даже был немного утоплен в неё. Это служит дополнительной защитой от искажения показаний часов в результате случайного нажатия на кнопку.

      Вместо микроконтроллера PIC12F675-I/P может быть установлен PIC12F629-I/P, который будет работать с той же программой. Микроконтроллер PIC16F876-20I/P заменять модификацией с другими индексами не следует. Он должен работать с тактовой частотой 20 МГц в «индустриальном» интервале температуры (-40… +85 °С).
      Работа часов проверена и с микросхемой ПЗУ со стиранием информации ультрафиолетовым излучением М27С2001, также снятой с неисправной материнской платы компьютера. На вывод 1 этой микросхемы через резистор 1…3 кОм необходимо подать напряжение+5 В.

      Точность хода часов зависит от очень многих факторов: точности заводской настройки кварцевого резонатора ZQ1, ухода его частоты со временем в результате старения резонатора и при изменениях температуры окружающей среды, ёмкости и стабильности конденсаторов С5 и С9, изменений параметров встроенного в микроконтроллер генератора, нестабильности питающего напряжения. Однако за время эксплуатации часов на автомобиле (более года) необходимости в корректировке их хода не возникало.
      Приложенная к статье фонограмма записана голосом автора. Если при повторении часов захочется, чтобы они «говорили» другим голосом, это можно сделать, последовав приведённым ниже советам.

      Записать фонограмму достаточно высокого качества в домашних условиях на компьютере довольно сложно. Слишком велик уровень акустических и электрических помех, в том числе от самого компьютера, с помощью которого производится запись. Решить эту проблему мне помог МРЗ-плейер с микрофоном. Работу пришлось делать ночью, когда стих бытовой шум.
      Слова, которые нужно записать, перечислены в колонке 1 таблицы. Их следует прочитать перед микрофоном плеера, стремясь к правильному и чёткому произношению и не обращая внимания на продолжительность пауз и наличие в них шума. Перед произнесением каждого слова следует набирать в лёгкие достаточно воздуха. Слово «Старт» и некоторые другие можно при желании заменить иными подходящими словами или любыми звуковыми сигналами.

      Созданный файл нужно перенести для дальнейшей обработки в компьютер. Её выполняют с помощью аудио-редактора, например, CoolEdit. С его помощью исключают паузы между словами, нормализуют амплитуду сигналов каждого слова. Между словами вставляют короткие отрезки тишины.
      Для записи в ПЗУ часов звуковой файл нужно преобразовать в монофонический восьмиразрядный (без знака) двоичный формат с частотой квантования 8 кГц. Эту операцию также выполняют с помощью аудиоредактора. Объём полученного файла с расширением имени .pern не должен превышать информационной ёмкости микросхемы ПЗУ — 2 Мбит (256 Кбайт). Изменив расширение имени файла на .bin, его содержимое следует с помощью программатора записать в микросхему ПЗУ, предназначенную для установки в часы.

      Следующий этап обработки — определение границ слов в ПЗУ. Аудиоредактор нужно настроить так, чтобы на шкале времени отображались номера отсчётов сигнала. Прослушивая фонограмму, определите десятичные номера отсчётов, с которых начинается каждое слово, и заполните колонку 2 таблицы. Номер последнего отсчёта слова программа микроконтроллера определяет автоматически по номеру начального отсчёта следующего слова.
      С помощью «Калькулятора» Windows преобразуйте десятичные значения номеров отсчётов из третьего столбца в 18-разрядные двоичные и занесите их в столбцы 3—5 таблицы, распределив следующим образом: четыре старших разряда — столбец 3, шесть следующих — столбец 4, оставшиеся восемь младших — столбец 5.

      Осталось модифицировать программу микроконтроллера DD2. Найдите в её исходном тексте (файле Talk_R.asm) процедуру TAB_NA_FRA, возвращающую адреса начальных отсчётов записанных в ПЗУ слов. Замените в ней значения, предназначенные для вывода в порты А, С и В микроконтроллера, теми, что записаны соответственно в столбцах 3—5 составленной таблицы. Транслируйте откорректированный исходный текст программы в среде MPLAB. Полученный НЕХ-файл загрузите в микроконтроллер.

Прилагаемые файлы: UhrAutoTalk.zip

Э. ЩЕНОВ, г. Ульяновск
«Радио» №6 2012г.

Похожие статьи:
Управление электрозамками дверей автомобиля

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *