Данный бортовой компьютер разработан для любых автомобилей «ВАЗ», имеющих в своем арсенале карбюраторный двигатель и любую систему зажигания (кроме многоискровой). Особенность устройства в том, что в нем программно реализованы три режима работы:
1. Режим ожидания (при выключенном зажигании) - на индикатор выводится текущее время и температура окружающей среды;
2. Рабочий режим, включающий в себя измерение напряжения бортовой сети, тока заряда/разряда аккумулятора, оборотов двигателя, температуры двигателя, температуры на улице, индикацию текущего времени;
3. Аварийный режим (работает только при включенном зажигании) - контролирует аварийный уровень тормозной жидкости
(датчик штатный поплавок в расширителе ГТЦ), минимальный уровень охлаждающей жидкости в расширительном бачке системы охлаждения (сделан самодельный поплавок с герконом и магнитом), перегрев двигателя (в случае нагрева двигателя выше 990С), аварию генератора ( в случае понижения напряжения на аккумуляторе ниже 10,5В). Также при выключении зажигания, если водитель забыл выключить габариты, то устройство ему об этом обязательно напомнит.
А теперь о программой части:
Для того чтобы реализовать часы в бортовом компьютере, в программе были использованы прерывания, подсчет 1 секунды ведется по сотому уходу в прерывания, часы можно настраивать только при выключенном зажигании. При этом никакие сервисных функции нет, опрос кнопок инкрементирования часов и минут ведется постоянно, с периодичностью одного опроса датчика температуры улицы (это примерно каждые 0,7сек.). Так как при опросе датчика температуры запрещаются все прерывания, то тому, кто захочет повторить бортовой компьютер, нужно будет только откалибровать в программе (методом подбора) ежечасный коэффициент поправки регистра секунд (в программе находится после метки ZAGIG - это режим ожидания), и аналогично подобрать коэффициент поправки секунд после метки RABOTA. Делается элементарно - вместо цифр коэффициентов ставим нули, зашиваем в пик, включаете устройство на сутки. Затем, по окончании суток, измеряем погрешность хода часов. Допустим, часы отстали на 15мин, это 900 сек. Вычисляем часовую погрешность хода: 900/24=37,5сек, округляем в любую сторону, корректируем программу и снова проверяем. Аналогично и для рабочей части программы (не забудьте сымитировать включение зажигания и запуск стартера).
Алгоритм работы бортового компьютера:
В режиме ожидания, когда зажигание выключено, на индикатор выводится температура на улице и текущее время в формате ЧЧ:ММ. При включении зажигания, высвечивается приветственная надпись (рис.1).
Затем выводится на LCD наружная температура и температура двигателя (рис.2).
Далее измеряется напряжение на аккумуляторе, и, если его уровень выше 11,0В, то выводится надпись 3 (рис.3) «НОРМА»
Если ниже, то выводится надпись 4 (рис.4) с рекомендацией подзарядить аккумулятор
Затем последовательно опрашиваются каналы зажигания, стартера и аварийных поплавков. И, если всё в норме, то тревожные надписи, вместе с зуммером, не активируются. Затем, в момент включения стартера, выводится надпись 5 (рис.5) о включении стартера
и, после отпускания ключа зажигания, компьютер переходит в рабочий режим с последовательным выводом измеряемых параметров в надписи 6 (рис.6), надписи 7 (рис.7) и надписи 8 (рис.8), которые выводятся последовательно, вплоть до выключения зажигания или возникновения аварийного события.
При возникновении любого аварийного события программа «улетает» на вывод надписи названия аварии и включение прерывистой звуковой и световой сигнализации (будет пищать, пока не устранится неисправность). А если надоест, то можно все и выключить кнопкой включения бортового компьютера. При выключении зажигания, если включены фары, на индикатор выйдет надпись «Фары включены!». Зажигание выключено, следовательно, после выключения фар, бортовой компьютер попрощается, выведя прощальную надпись 9 (рис. 9) и перейдет в режим ожидания с текущими показаниями (рис 10).
О схеме компьютера:
Принципиальная схема бортового компьютера приведена на рис.11
Схема разработана на контроллере PIC16F876. Количества его ног с лихвой хватает для работы вышеописанных приложений. Работа LCD происходит по однонаправленному последовательному интерфейсу (вывод RW соединен с корпусом), организованному через порт B. Все входы контроллера (за исключением выводов термодатчиков DS1820), а также выводы питания, обвешены SMD конденсаторами по 0,1мкф, для повышения надежности при возникновении помех в бортовой сети. Датчик тока включается последовательно в тонкий плюсовой провод зарядки аккумулятора от генератора (не путать с толстым проводом идущем плюсом на стартер). Все внешние цепи напряжением 12В (а именно: габариты, уровень тормозной жидкости, наличие тосола, включения стартера, включения зажигания и провод, идущий к тахометру, на котором есть прерывания от катушки зажигания), соединены с «пиком» при помощи транзисторных повторителей (ВС846В или аналогичных NPN в SMD исполнении). Их можно найти с помощью осциллографа или маломощной «контролькой».
Внутренний вид устройства показан на рис.12:
Зуммер выдрал из старого бесперебойника, оказался со встроенным генератором на 1кГц. Также, для надежности работы компьютера, подключил литиевую батарейку через диод на провод +5В. Кварц - 4МГц, датчики температуры DS1820, c другими вряд ли будет работать, т.к. разные процедуры инициализации и обработки данных. Конденсаторы на кнопках настройки часов нужны больше как противодребезговые. В штатной схеме любого карбюраторного ВАЗа питание на лампочку аварийного снижения тормозной жидкости приходит +12В, поэтому при создании схемы бортового компьютера учитывались минимальные переделки в схеме авто, а именно - провод, который шел к лампе тормозной системы, обрезаем и прикручиваем к выводу платы с меткой ТС (тормозная система). В этом случае подача напряжения на этот провод будет соответствовать аварийному снижению уровня тормозной жидкости. Аналогично с расширителем системы охлаждения двигателя, причем плюсовой провод, идущий к расширителю системы охлаждения, можно запараллелить с проводом, идущим от бачка с тормозной жидкостью.
ООчень интересная статья! И пару вопросов, что-то ссылки нет на исходник? И вот я тут курнул даташиты на PIC16F876 и PIC16F876A и вот ни как вьеду можно его без перекомпиляции поставитьPIC16F876Aили нет?
Rlog Вы автор проекта или это копия ? Просто я не очень разбираюсь в PIC больше в AVR, в PIC16F876A я нашёл только изменения, что там добавлены 2 компаратора с програмным источником напряжения, но програмнно вроде бы не связано но судя даташиту при подаче питания на контроллер компараторы отключены так что думаю они не помешают работе, поправьте если не прав. Ну и там мелкие изменения с битами защиты.
Цитата (Rlog )
Схема проверялась на протеусе
А в железе собирали? Протеусу не стоит доверять на 100%. Интересная конструкция хотелось бы повторить!
Я не совсем автор этого проэкта.... но приходилось немножко поправить схему и код в прошивке PIC контролера..... (было корявое отображение на 2х строчных дисплеях фирм POWERTIP)
на счет компараторов ВЫ правы они ни как не помешают работе PIC и всей этой схеме....
для соединения дисплея и прочих выводов с платы был использован КСВЭВ 10х0,40
супер ! я тоже себе очень давно в жигули химичил точно не помню на TMS345O микросхеме по моему , я тогда только начал интересоваться микросхемами любительски лет 10-12 назад
Добавлять комментарии могут только зарегистрированные пользователи. [ Регистрация | Вход ]