Виберіть свою мову

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

Автомобільні мовні інформатори, призначені для звукового сповіщення про спрацьовуванні датчиків, або, інакше кажучи, про стан систем автомобіля, випускають вже давно [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Н. Якщо ви не власник "Ниви" або "Јеер"а, додаткове ПЗУ можна не встановлювати, а висновок 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.
  • Автор: А. Гордєєв, Новосибірськ р.