Выберите язык

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

Автомобильные речевые информаторы, предназначенные для звукового оповещения о срабатывании различных датчиков или, иначе говоря, о состоянии систем автомобиля, выпускают уже давно [1]. Однако сравнительно небольшое число контролируемых параметров, привязанность к той или иной определенной модели автомобиля и довольно высокая цена ограничивают широкое распространение этих устройств.

Известны и радиолюбительские разработки таких информаторов. В свое время были попытки применить для синтеза речи дельта-модуляцию [2; 3]. Подобные устройства, хотя и экономят ресурс памяти, но, собранные из дискретных элементов, были очень сложны. Непрост и сам процесс записи звука в ПЗУ. Часто изготовить записывающий узел было труднее, чем воспроизводящий.

В то же время рост объема памяти EPROM (электрическая запись и "ультрафиолетовое" стирание) и их удешевление позволяют реализовать запись речи, не прибегая к сложному кодированию и применению специализированных микросхем. Это, во-первых, облегчает последующее цифро-аналоговое преобразование и, во-вторых, упрощает как программную и аппаратную части, так и сам процесс записи звука в ПЗУ. Требуются лишь микрофон, звуковая карта и простейшая программа, которыми комплектуют операционную систему Windows.

Описываемый здесь речевой информатор может быть смонтирован на автомобилях отечественного и иностранного производства. В нем запрограммировано 22 слова и словосочетания, имеющих самостоятельное смысловое значение. Схема программы изображена на рис. 1.

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

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

Как работает речевой информатор? При включении питания (а также при нажатии на кнопку "Обнуление") звучит характерный тональный сигнал, сообщающий о том, что система включена и работает нормально. Далее опрашиваются датчики тех узлов, которые положено проверять до выезда из гаража. Если один из датчиков формирует аварийный сигнал, информатор произносит слово "Внимание" и вслед за ним соответствующую фразу. В том случае, когда через 30 с положение не изменилось, звучит слово "Повторяю" и снова воспроизводится то же сообщение.

Фраза "Задний ход" предназначена для тех, кто ездит на автомобилях ВАЗ моделей 2108 и 2109, у которых положения первой и задней передач находятся рядом, и начинающие водители нередко их путают. Слова "Блокировка дифференциала" и "Задний мост включен" - адресованы владельцам полноприводных машин с принудительным блокированием дифференциала, и звучат они с интервалом в 30 с все время, пока эти узлы включены. В таком же режиме звучит и фраза "Перегрев двигателя".

Предупреждение "Габарит включен" произносится после паузы в 30 с только тогда, когда они оказались включенными в светлое время суток. Пауза нужна для того, чтобы свет фар встречных автомобилей система не принимала за наступление рассвета.

Затем следует контроль работы двигателя. Если он выключен, программа возвращается к началу, а если работает на чрезмерно больших оборотах, звучит фраза "Аварийные обороты двигателя". Далее происходит измерение давления масла, при этом частота вращения коленчатого вала должна быть более 1500 мин-1.

После этого программа измеряет бортовое напряжение и проверяет, включен ли указатель поворотов. Если он включен более 30 с, звучит слово "Поворот включен". В том случае, когда указатель выключают до истечения 30 с, а затем снова включают, отсчет времени начинается сначала.

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

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

Информатор (см. схему на рис. 2) состоит из микропроцессора DD1, управляющего работой всех основных узлов, памяти программ DS1, памяти звука DS2, DS3, входных портов DD8- DD10, ЦАПа DD4, фильтра НЧ R35R36C14C15DA8 с усилителем 3Ч DA9 и линейки входных компараторов на ОУ DA1 - DA6 и DD5.1 - DD5.4.

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

(нажмите для увеличения)

К входу компараторов DA1 - DA4 подключены датчик уровня топлива в баке, два датчика температуры двигателя и датчик давления масла соответственно. Резисторы R10, R14, R17, R20 обеспечивают электрический гистерезис ОУ и повышают их помехоустойчивость. Со стабилитрона VD4 снимается образцовое напряжение для установки порога срабатывания компараторов.

Датчики уровня жидкости - тормозной и стеклоомывателя - и датчик освещения подключены к входным портам через триггеры Шмитта DD5.1- DD5.4.

На элементах DD6.3, DD6.2, DD7.1 - DD7.4 собраны адресные шифраторы входных портов. Входы портов DD8 и DD10 через резисторы сборок DR1, DR3 соединены с плюсовым проводом питания, что вместе с защитными диодами VD6-VD16 позволяет защитить порты от попадания на них напряжения, большего 5 В. Порт DD9 тоже защищен по входу резистивными делителями R28 - R33, DR2.

Микропроцессор DD1 извлекает с частотой 8 кГц из ПЗУ DS2, DS3 оцифрованный сигнал звукового сообщения и передает его на выходы регистра звука DD3. ЦАП DD4 преобразует сигнал в аналоговую форму. После этого преобразования сигнал сильно "загрязнен" коммутационными помехами. Фильтр НЧ второго порядка с частотой среза 4 кГц отсеивает эти помехи.

Усилитель 3Ч DA9 в стандартном включении нагружен динамической головкой сопротивлением 8 Ом. Если автомобиль оборудован аудиоаппаратурой, можно использовать ее громкоговорители. Для этого случая предусмотрен транзистор VT1 и реле К1, контакты которого коммутируют выходные цепи.

В нормальном режиме бортовой радиоприемник (или магнитола) соединен контактами реле со своим громкоговорителем. При возникновении на борту какого-либо отклонения от нормы на выходе TXD микропроцессора возникает высокий уровень, открывается транзистор VT1, срабатывает реле К1 и его контакты переключают громкоговоритель с выхода приемника на выход информатора. После окончания сообщения снова звучит радиоприемник.

Звуковая информация, т. е. измеренные с определенной частотой мгновенные значения амплитуды звукового сигнала, записана в ПЗУ DS2, DS3. Для того чтобы без потерь оцифровать звуковой сигнал, частота дискретизации должна быть как минимум вдвое выше максимальной частоты сигнала (включая гармоники). Если частоту дискретизации выбрать равной 8 кГц, то максимальный спектр сигнала будет ограничен 4 кГц, это при восьмиразрядной амплитудной дискретизации по качеству звука примерно соответствует тому, что мы слышим по телефонной линии.

Информацию записывают в память с помощью компьютера со звуковой картой. Записав и обработав звук на компьютере, подобрав тембр и звучание, записывают звук в ПЗУ. Затем подключают к адресным входам сканирующий счетчик с простейшим старт-стопным логическим устройством и получают или дверной звонок, или детскую игрушку, или будильник.

В простейшем случае, если не нужны ни регулировка тембра, ни спецэффекты, можно воспользоваться программой Sound Recorder (в русскоязычной версии "фонограф"), входящей в стандартную комплектацию Windows95. Но лучше воспользоваться более удобными специальными программами, например, Goldwave или Sound Forge.

Перед началом записи звукового сигнала следует включить модуляцию РСМ (Pulse Code Modulation - импульсно-ко-довая модуляция) - стандартный способ цифрового кодирования сигнала при помощи последовательности абсолютных значений амплитуды. Различают знаковое (signed) и беззнаковое (unsigned) представления. При знаковом сигнал двуполярныи и отсчеты могут принимать значения от -N до +N, где N - максимально возможная амплитуда. Беззнаковое - это однополярное представление, когда отсчеты меняются от нуля до N.

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

Затем нужно выбрать формат звукового файла. В настоящее время фактически стандартным стал формат Microsoft RIFF (Resource Interchange File Format) Wave (WAV). Он содержит оцифрованный звук и заголовок файла (моно/стерео, 8/16 разрядов, частота оцифровки, длина файла) и его поддерживают все без исключения программы обработки звука.

Есть, кроме этого, формат RAW, который программой Sound Recorder не поддерживается, а он-то как раз нам и нужен. RAW - это одноканальный формат "чистой оцифровки", не содержащий заголовка. Из WAV легко получить формат RAW. Выбрав частоту дискретизации 8 кГц, моно, модуляцию РСМ, разрядность 8 бит, записываем звук в файл в формате WAV. Затем любым текстовым редактором (можно даже встроенным в Norton Commander) удаляем заголовок файла до слова "data" включительно и копирайты в конце файла. Если же вы пользуетесь более развитыми программами, чем Sound Recorder, и они поддерживают формат RAW, то нужный файл получится автоматически. Останется только записать его в ПЗУ как есть.

Как уже сказано, для подавления коммутационных помех после ЦАПа включен фильтр НЧ. Из-за своей неидеальности он срезает не только коммутационные помехи, но и высокочастотные составляющие сигнала. Для компенсации этих потерь следует при записи сигнал немного подкорректировать - "приподнять" регулятором тембра эти составляющие.

Итак, установив в имеющейся у вас программе обработки звука нужные опции, вы записали в файл с расширением WAV какую-то фразу. Убрали "хвосты" в начале и конце файла - немного сократили объем файла. Затем вам нужно нормировать звук по амплитуде, т. е. привести все слова и фразы к одинаковой громкости. Можно записать отдельные слова, а потом составлять из них предложения, но при этом незаметные на слух повышения и понижения тона в окончательной фразе будут отсутствовать, и она будет выглядеть искусственной. Поэтому, если вам нужно одно какое-то слово, лучше записать фразу целиком, а уж потом вырезать из нее нужное вам слово.

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

Обработав таким образом файл и прослушав его, можно перевести в формат RAW и записать на диск. Для облегчения дальнейшей работы в начале файла любым текстовым редактором можно добавить маленький заголовок, обозначающий звук, записанный в этом файле, например, "внимание" или "аварийн".

После того как все слова обработаны и записаны, их нужно объединить в два больших файла, пригодных для записи в ПЗУ DS2 и DS3. Сделать это можно под управлением DOS командой "сору" с двоичным ключом /Ь. Например, так: Сору /Ь <имя окончательного файла>. Вот этот получившийся окончательный файл размером 64 Кбайта записывают в ПЗУ. Если ваш файл получился больше, чем 65535 байтов, то размер составляющих его файлов придется немного сократить, проговаривая слова быстрее или больше подрезав "хвосты".

После этого нужно определить получившиеся абсолютные адреса начал и концов слов в ПЗУ. Удобно это делать программами Norton Commander или Windows Commander, которые есть почти на каждом компьютере. Откройте файл на чтение, установите программу на просмотр шестнадцатиричных чисел и ищите заголовки, которые вы ранее присвоили звуковым файлам, записывая получающиеся адреса начал и концов слов.

Микропроцессор информатора, получив сигнал отдатчика о возникновении неполадки и обработав его по соответствующему алгоритму, принимает решение о воспроизведении предупреждающей фразы. Для этого микропроцессор обращается к массиву памяти, в котором записаны абсолютные адреса начала и конца слов или частей слов. Фрагмент программы на языке С, формирующий эти массивы для ПЗУ DS2 и DS3, представлен в табл. 1. Получив информацию об абсолютных адресах и номере ПЗУ, микропроцессор обращается к подпрограмме, которая читает нужные ячейки памяти звукового ПЗУ и передает полученное значение на цифро-аналоговый преобразователь.

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

(нажмите для увеличения)

При формировании файла звукового ПЗУ имейте в виду, что последовательность слов и частей слов необходимо сохранить такой же, как и в показанном фрагменте, но адреса, скорее всего, будут другими. Чтобы не перекомпилировать под эти адреса программу заново, их можно исправить в дампе программы "вручную". После компиляции программы массив Rom0 расположен в памяти с адреса 0043Н по 008ЕН, массив Rom1 - с адреса 008FH по 00С2Н, причем двубайтные адреса начала и конца слов записаны в порядке старший байт - младший байт (табл. 2). Для обработки дампа программы можно воспользоваться известной программой Hdb или встроенным редактором программатора.

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

(нажмите для увеличения)

Микропроцессор выбирает нужное ПЗУ, устанавливая низкий уровень на выводах порта Р0 или Р1.

В процессе разработки устройства выяснилось, что у микропроцессора остались неиспользованные управляющие выводы, например, RXD, что дает возможность добавить к перечисленным выше фразам еще одну. В авторском варианте это слова - "Блокировка дифференциала", которые повторяются с интервалом 30 с все время, пока на контакте 11 входного разъема Х1 присутствует низкий уровень. Эти слова записаны в дополнительную микросхему памяти 27128, припаянную сверху на основное ПЗУ "этажеркой" всеми своими выводами, кроме 22 (на принципиальной схеме она не изображена). Вывод 22 отдельным проводником подключен к выводу RXD микропроцессора. Адреса этого ПЗУ находятся в ячейках 00C3H - 00С6Н. Если вы не владелец "Нивы" или "Jеер"а, дополнительное ПЗУ можно не устанавливать, а вывод 11 разъема Х1 оставить свободным.

Пользуясь схемой программы (рис. 1) и описанной выше методикой записи звука, можно в эту дополнительную микросхему памяти записать любую другую фразу, например, "Открыт багажник" или "Охрана включена", и включать ее соответствующими замкнутыми контактами.

На принципиальной схеме (рис. 2) изображены активные уровни сигналов (левее диодов VD6 - VD23 и резисторов R28 - R33), которые включают ту или иную фразу. Большинство автомобильных датчиков устроено так, что при всяком отклонении от нормы разомкнутые контакты замыкают цепь на корпус. Если же датчики, установленные на вашем автомобиле, формируют сигналы другого уровня, их придется инвертировать (здесь пригодится свободный инвертор DD6.4). Входы от реле указателя поворотов, спидометра и прерывателя реагируют на минусовой перепад напряжения.

Автор считает нужным отметить, что устройство он разрабатывал с таким расчетом, чтобы без доработки информатор можно было установить почти на любой автомобиль. По указанной причине прибор обладает некоторой избыточностью.

На автомобилях некоторых марок датчик аварийного уровня масла уже предусмотрен. Если же на вашей машине такого датчика нет, его нетрудно изготовить самостоятельно. Он представляет собой глухую трубчатую стойку 1 (рис. 3) с крепежным фланцем снизу, изготовленную из немагнитного металла - латуни. Внутрь трубки вставлен и фиксирован термостойким силиконовым герметиком миниатюрный геркон 2.

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

На трубку снаружи надет поплавок 3, спаянный из тонкой листовой латуни; он имеет возможность свободного перемещения вдоль стойки. На центральной трубке поплавка каплями припоя фиксирован трубчатый магнит 4, полюсы которого расположены по его концам.

Стойка в сборе с поплавком вставлена в отверстие в дне картера 5 двигателя снизу и тем или иным способом надежно фиксирована. Проводники от геркона защищены снаружи прочной трубкой 6, конец которой зажат резиновой муфтой в крепежном фланце стойки 1.

На рис. 3 устройство датчика аварийного уровня масла показано схематически. Практическая конструкция и размеры устройства должны соответствовать конкретным условиям его монтажа. Основное требование - обеспечить отсутствие утечки масла даже при частичной деформации картера.

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

Если на вашем автомобиле уже есть поплавковые датчики уровня тормозной жидкости, их можно подключить к левому по схеме выводу диодов VD2 и VD3, отключив их от выхода элементов DD5.2 и DD5.3. (см. рис. 2). При отсутствии таких датчиков, на "Москвиче-2141" например, можно изготовить простейшие самодельные. В пластмассовой крышке стакана для тормозной жидкости закрепляют латунный стержень так, чтобы нижний его конец не доходил до дна на 2...3 см; верхний соединяют с соответствущим контактом входного разъема Х1.

Работа датчика основана на том, что этиленгликолевые тормозные жидкости "Роса", "Нева" и "Томь" обладают заметной электропроводностью. Вторым электродом служит металлический корпус главного тормозного цилиндра. Когда жидкости достаточно, на входе триггеров Шмитта DD5.2, DD5.3 низкий уровень. При аварийном уровне тормозной жидкости стержни оказываются в воздухе, низкий уровень на входе триггеров Шмитта меняется на высокий. Резисторы R4 и R5 (см. рис. 2), возможно, придется подобрать по более четкому срабатыванию.

Так же устроен датчик минимального уровня жидкости, омывающей ветровое стекло, разница лишь в том, что стержней в нем два и один из них соединен с общим проводом системы (с корпусом). Поскольку проводимость омывающей жидкости больше, чем тормозной, резистор R6 имеет значительно меньшее сопротивление.

Датчик закрытой воздушной заслонки карбюратора (опция "Подсос") использован готовый от "Жигулей", в ином случае потребуется установить на карбюратор подходящий конечный выключатель.

Прежде чем продолжить рассказ о работе речевого информатора, просим исправить текст команды "сору" в предпоследнем абзаце первой части статьи, помещенной в майском номере журнала. Текст команды должен быть таким:

Сору/b<имя первого файла>+<имя второго файла >+...+<имя n-ного файла><пробел><имя окончательного файлах

Датчик уровня тосола - стандартный поплавковый, у которого вывод замыкается на корпус при снижении уровня охлаждающей жидкости за границу допустимого.

В качестве устройства, индицирующего перегорание сигнальных ламп (указателя поворотов, габаритных огней и стоп-сигнала), можно использовать готовое реле контроля исправности ламп автомобиля ВАЗ-2109. В авторском варианте информатора работает трехка-нальный узел, описанный в [4]. В нем последовательно с каждой контролируемой цепью включен низкоомный резистор, по падению напряжения на котором определяется исправность ламп. Требуется только поменять местами инвертирующий и неинвертирующий входы ОУ, чтобы при перегорании лампы на его выходе появлялся не низкий, а высокий уровень, который затем выделит сумматор на диодах и резисторе. Фрагмент схемы этого узла показан на рис. 4.

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

Преимущество устройства [4] состоит в том, что оно позволяет очень просто регулировать порог срабатывания (переменным резистором). Благодаря высокой чувствительности, ОУ удается уловить даже перегорание лампы бокового повторителя сигнала поворота мощностью всего 2 Вт. В устройстве с герконами порог срабатывания можно регулировать только изменением числа витков их обмоток, да и чувствительность хуже.

На компаратор DA1 (см. рис. 2) минимального уровня топлива сигнал поступает с установленного в баке реостатного датчика. Если же на вашем автомобиле не реостатный, а контактный датчик уровня топлива, можно использовать сигнал и с него. ОУ в этом случае будет работать как инвертор. То же самое относится и к датчикам аварийного давления масла и аварийной температуры.

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

Отключив имеющийся на автомобиле датчик и присоединив вместо него переменный резистор, установите стрелку бензомера (термометра или указателя давления) на любое желательное вам деление. Затем, вращая ручки резисторов (R13, R16, R19), отрегулируйте пороги срабатывания системы оповещения. Не забудьте, что датчик давления масла процессор опрашивает только при частоте вращения коленчатого вала двигателя более 1200 мин-1. Для предотвращения ложных срабатываний от плескания горючего и омывающей жидкости в баках постоянная времени этих измерителей выбрана большой - около 3 с - и реализуется программно.

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

Если ваш автомобиль уже не новый, то перед тем, как приступить к регулировке срабатывания температурных компараторов, желательно проверить работоспособность температурного датчика, например, в кипящей воде. Дело в том, что медно-марганцевые терморезисторы, обычно применяемые для этих целей на отечественных автомобилях, с течением времени существенно изменяют свое сопротивление. Если термодатчик находится в кипящей воде, а стрелка термометра показывает не 100°С, нужно либо заменить термодатчик новым, либо переставить стрелку на оси указателя в правильное положение. Подключать добавочный резистор не рекомендуется, так как он может нарушить температурную коррекцию логометрического указателя [5].

Узел контроля бортового напряжения особенностей не имеет. Подключив информатор к регулируемому источнику питания, резисторами R22 и R27 устанавливают нужные уровни. Напомню, что напряжение питания процессор проверяет только при работающем двигателе. Если вы решили отрегулировать компараторы DA5, DA6 в лабораторных условиях, нужно сымитировать работу двигателя, подав импульсный сигнал частотой 10...200 Гц на контакт ХВ14 разъема Х1. С помощью генератора целесообразно проверить и работу узла оповещения об аварийной частоте вращения, чтобы не мучить двигатель запредельными режимами.

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

Информация о частоте вращения коленчатого вала двигателя поступает с датчика Холла прерывателя. Поскольку подобные датчики не имеют "дребезга", то и программой не предусмотрена защита от него. Если на вашей машине классическая контактная система зажигания, то защититься от импульсов "дребезга" можно аппаратно (журнал об этом писал не раз; в частности, подойдет входная часть электронного тахометра [6]).

Как уже было отмечено выше, на время работы стартера программа во избежание сбоев блокируется. Сигнал о включении стартера снимают с обмотки его исполнительного соленоида (иначе называемого втягивающим реле). Для гашения противоЭДС обмотки соленоида в непосредственной близости от него нужно параллельно обмотке припаять защитный диод катодом к плюсовому выводу. Для этой цели удобно использовать диоды средней мощности с анодом на корпусе, например, КД208А. Такая мера, кстати, не только уменьшит уровень электромагнитных помех, но и существенно продлит жизнь контактов промежуточного реле или замка зажигания.

Вместо диода можно также применить стабилитрон средней мощности, например, Д815Е или Д815Ж. Стабилитрон заодно "обрежет" и плюсовые выбросы напряжения на безопасном уровне. Вообще же, если на вашем автомобиле есть еще какие-нибудь реле, обмотки которых не зашунтированы искрогасящими диодами, следует это выполнить.

Датчик освещенности представляет собой фоторезистор СФЗ-4, смонтированный так, чтобы на него не попадал прямой свет фар встречных автомобилей. Устанавливать порог срабатывания датчика удобно в сумерках, когда вы считаете своевременным включение габаритных огней или ближнего света фар. Порог регулируют резистором R7. Учтите, что речевое оповещение о включенных габаритных огнях происходит с задержкой, т. е. повернув на небольшой угол движок резистора R7, реакции на это надо ждать 30 с. Удобнее и быстрее можно отрегулировать узел, подключив вольтметр к выходу триггера Шмитта DD5.1.

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

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

О том, что автомобиль движется, процессору сообщает датчик, смонтированный на спидометре. В составе большинства автомобильных механических спидометров есть вращающийся магнит. Если к нему приблизить катушку на разомкнутом магнитопроводе, в ней будет наводиться ЭДС с частотой, равной удвоенной частоте вращения магнита.

Роль катушки в датчике играет обмотка от реле РЭС15; паспорт РС4.591.001 (или РС4.591.008). Сопротивление обмотки - 2,2 кОм. У реле удаляют корпус, контактную систему и якорь. Катушку располагают со стороны немагнитной вставки спидометра так, чтобы разомкнутая сторона магни-топровода была обращена к вращающемуся магниту.

Принципиальная схема датчика показана на рис. 5.

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

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

Вместо самодельного можно применить готовый датчик спидометра от маршрутного компьютера.

Схема подключения датчиков к системе оборудования автомобиля и к разъему Х1 речевого информатора изображена на рис. 6.

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

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

Ток, потребляемый информатором, - около 300 мА, поэтому для стабилизатора DA7 достаточно сравнительно небольшого теплоотвода. Если кожух металлический, он может быть использован и как теплоотвод для микросхем DA7 и DA9.

Если логический элемент DD6.4 остался свободным, не забудьте "заземлить" его входы.

Известно, что в системе электрооборудования автомобиля и в его бортовой сети очень много электромагнитных помех. Это заставляет питать речевой информатор через защитный фильтр. Можно использовать готовый фильтр от вышедшей из употребления автомагнитолы или купить автомобильный фильтр, выполненный в виде отдельного устройства.

Несложно изготовить и самодельный П-фильтр. Он состоит из дросселя индуктивностью около 300 мкГн и двух оксидных конденсаторов емкостью 200...500 мкФ.

Очень ответственно следует подойти к выбору деталей для речевого информатора. Микросхемам в пластмассовом корпусе нужно предпочесть металлокерамические и керамические. Выбирая конденсаторы, обратите внимание на их температурные возможности. Так, оксидные конденсаторы К50-16 работоспособны при температуре не ниже -20°С.

В случае, когда дальнейшей модернизации аппарата вы не предусматриваете, микросхемы памяти и микропроцессор лучше монтировать на плату без панелей. Если же без панелей не обойтись, не рекомендую применять отечественные ОНП; гораздо надежнее импортные с круглыми пружинными контактами.

Массивные детали необходимо дополнительно крепить к плате проволочными хомутами.

Чертеж печатной платы информатора представлен на рис. 7. Ее размеры 172x72 мм. Она изготовлена из стеклотекстолита толщиной 2 мм, фольгированного с обеих сторон. В устройстве применены подстроечные резисторы СПЗ-19а-0,5 (R7) и СП5-28Б (остальные). Оксидные конденсаторы - К52-1Б, С5 - К53-19; остальные конденсаторы - любые керамические (КМ5, КМ6). Разъем Х1 - СНП53-60. Реле К1 - РЭС60, паспорт РС4.569.435-02 (или РС4.569.435-07).

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

(нажмите для увеличения)

Вид одного из вариантов речевого информатора со снятым кожухом показан на рис. 8.

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

При сборке информатора устанавливать детали на плату лучше не все сразу, а группами. Дело в том, что в микропроцессорных системах такого уровня сложности к информационным и адресным линиям подключено много элементов. Впаяв их все сразу и обнаружив, что система не работает, вы сильно усложните себе поиск неисправного элемента. Начать можно с усилителя 3Ч с предварительным ФНЧ на ОУ DA8. К левому по схеме на рис. 2 выводу резистора R35 через разделительный конденсатор подключают выход генератора НЧ, а к общей точке конденсаторов С17 и С18 - динамическую головку.

Наладив усилитель 3Ч, проверьте частотную характеристику фильтра. До частоты 3,7 кГц его частотная характеристика должна быть горизонтальной, а затем спадать с крутизной 12 дБ на декаду.

Затем впаивают микросхемы DD1 - DD4, DD6 и панель для DS1. Не вставляя ПЗУ с программой в панель, проверяют работу тактового генератора процессора, а также наличие сигналов PSEN и ALE. На выводах порта Р2 должны быть импульсные сигналы полного размаха. Если амплитуда на каком-либо выводе мала или вовсе отсутствует, проверьте соответствующую линию на замыкание с соседними. При нажатии на кнопку SB1 "Обнуление" и удерживании ее нажатой все порты должны переходить в третье высокоимпедансное состояние.

Специально для облегчения налаживания информатора была написана программа test. Она представлена в табл. 3. Объем программы меньше килобайта, поэтому она уместится в ПЗУ К573РФ2 или К573РФ5. Но панель для DS1 двадцативосьмивыводная, а у К573РФ2 - 24 вывода. В этом случае у запрограммированного ПЗУ К573РФ2 вывод 21 отгибают в сторону так, чтобы он не входил в гнездо панели, и подключают его через резистор сопротивлением 1...2 кОм к выводу 24. Микросхему вставляют в панель для DS1 со сдвигом на два вывода - вывод 1 ПЗУ должен войти в гнездо 3 панели.

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

Программа test написана таким образом, что при включении питания на управляющие входы ЦАП DD4 начинают поступать коды от 0 до 225, а на его выходе можно увидеть пилообразный сигнал амплитудой около полувольта с ровными и одинаковыми ступенями. Если ступени неодинаковые - проблемы с каким-либо разрядом микросхемы DD4 или DD3. Если же сигнала нет совсем, скорее всего, виноваты либо микропроцессор DD1, либо регистры DD2, DD3, так как исправный процессор, если его сигналы PSEN и ALE в порядке, просто обязан считывать команду из ПЗУ и выполнять ее.

Добившись хорошей формы пилообразного напряжения на выходе ЦАП, приступают к самому приятному делу - извлечению осмысленных звуков. Для этого, впаяв на свои места элементы DR4, R43, R44, VD24 и вставив в свои панели микросхемы памяти DS2, DS3, кратковременно замыкают вывод Р1.3 микропроцессора на общий провод. Устройство начинает воспроизводить все слова, записанные в ПЗУ DS2, после чего на выходе ЦАП снова появляется пилообразное напряжение. Если услышанное устраивает, тестовую ПЗУ меняют на рабочую.

Далее впаивают по одному дополнительные порты DD8-DD10 и проверяют работу основной рабочей программы. Она представлена в виде дампа и изменить в ней ничего, кроме массива адресов слов, нельзя. Набрав этот дамп в текстовом редакторе и прошив ПЗУ, можно на этом остановиться.

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

Для семейства процессоров MCS-51 существует много всевозможных компиляторов с многих языков программирования. Есть и Бейсикоподобные компиляторы, и Паскаль, и PLM, и Forth. Если вы вообще не имеете представления о программировании, удобно начинать с Паскаля. Этот язык разрабатывался сначала как учебный, но оказался настолько удачным, что нашел широкое применение и у профессионалов. Версию Freeware Паскаля для MCS-51 можно найти по адресу <http://www.ftp.nsk.su/cgi-bin/ bbs2html?pub/microprocs/mcs51> с названием mpe_arc.exe. Это вполне рабочая версия с ограничением по объему генерируемого кода 4 Кбайта. Но коды, генерируемые Паскалем, весьма далеки от оптимальных, поэтому все-таки лучше осваивать язык С, который лучше адаптирован под однокристальные микропроцессоры.

Программы, написанные на языке С, на первый взгляд, выглядят непривычно и пугающе непонятно. Но это только сначала. Освоившись с этим языком, вы будете считать его синтаксис вполне естественным. Вам не нужны сложнейшие понятия, которыми оперируют профессиональные программисты. Для написания работающей программы достаточно азов, их можно извлечь из книги Б. Кернигана и Д. Ричи "Язык программирования С". Это один из лучших учебников по С, написанный ясным и понятным языком. И пусть ваша первая программа будет с точки зрения профессионала некрасивой, пусть будет неоптимальной по объему, по скорости, но она будет работающей, и именно по вашему алгоритму.

Еще вам будут нужны компилятор и от ладчик. Можно взять любой из рекомендованных в предыдущих номерах "Радио". Автор использовал отладчик фирмы Franclin Software.

В качестве примера рассмотрите показанную в табл. 4 программу test С, предназначенную для налаживания информатора. Она написана без применения характерных для языка С указателей так, чтобы ее было легко перевести, если нужно, на Паскаль. Для упрощения все переменные объявлены глобальными. Чтобы уменьшить объем текста, программа представлена не полностью, а только для DS2. Для DS3 вы легко можете дописать ее самостоятельно. Дописав извлечение звука из DS3 и увидев, что у вас все получается, вы, руководствуясь схемой программы на рис. 1 этой статьи, можете приступать к написанию своей программы обработки сигналов от датчиков.

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

Литература

  • Колодочкин А. Ты только что-нибудь скажи. - За рулем, 1998, №12, с. 78, 79.
  • Власкин А., Годин С. Цифровой ревербератор. Сб.: "В помощь радиолюбителю", вып. 95, с. 29-41. - М.: ДОСААФ, 1986.
  • Лукьянов Д. Музыка нулей и единиц. - Радио, 1985, № 5, с. 42-46; № 6, с. 40-42; № 8, с. 36-38; № 9, с 36-39.
  • Алексеев С. Контроль исправности сигнальных ламп. - Радио, 1997, № 5, с. 42,43.
  • Отт В. Электрооборудование автомобилей. - М.: Транспорт, 1995.
  • Чуднов В. Квазианалоговый тахометр. - Радио, 1992, № 8, с. 25, 26.
  • Автор: А.Гордеев, г.Новосибирск