Только вот в новом не был предусмотрен круиз-контроль (система автоматического поддержания заданной скорости при движении).
На сайте mikrob.ru описывается активация данного устройства, если оно вообще предусмотрено в бортовом компьютере. У меня его не оказалось, или он где-то глубоко в спящем состоянии. Это выяснил точно - долез до центрального ECU, по схеме вывел провода с клемм, спаял эмулятор джойстика управления круиз-контролем - не работает.
Что делать?..
Содержание / Contents
↑ Выходы:
1. Забить и ездить так. Неинтересно, с круизом удобнее.2. Купить машину с круизом. Дорого, и мне эта нравится.
3. Найти б/у ECU с круизной прошивкой. Нереально. Кто тебе скажет, есть там что внутри или нет? А стоит 2 штуки зеленых.
4. Перешить имеющийся бортовик с помощью "умных" из гаража. В неудачном случае имеем неисправный ECU и мертвую машину.
5. Купить немецкую универсальную //www.waeco.com/en/4374.php, на многие авто идет. Митцы в списке нет. Опять колхоз? Отдать 15 штук и колхозить?
6. Собрать самому. Недорого, научиться обращаться с микроконтроллерами, разминка для мозгов. И сколько еще японоГрандисов по стране ездит... Плюс Аиртреки, плюс праворульные Аутлендеры, и такие же Галанты. Их тоже немало, опыт круизостроения явно пригодится не мне одному.
↑ Выбрал последний вариант...
Логика работы устройства понятна и прозрачна: при задании определенной скорости запоминается показание датчика скорости, положение педали акселератора и далее при уменьшении скорости эмулируется нажатие на педаль сильнее, при увеличении скорости - слабее. Далее ограничители по скорости (не менее 40 и не более 160 км/ч), ограничители по максимальному и минимальному положению педали и прочие условия нормального функционирования устройства.Внешне управление устройства не должно было отличаться от фирменного. Было изучено устройство и принцип работы органов управления, приобретены (не без труда) джойстик-рычаг для управления и концевик на педаль тормоза. Без последнего вполне можно было обойтись, но хотелось как можно ближе приблизиться к оригиналу. Кроме того, этот концевик позволяет электрически развязать сигнальные цепи 12 и 5 Вольт, что немаловажно для безопасной работы контроллера.
Скажу честно, опыта работы с микроконтроллерами было ноль... Поэтому приступал к проектированию и изготовлению как к покорению первой горной вершины (сколько их у нас в жизни, верно?) - глаза боятся а руки делают.
Конечно, большую часть информации нарыл сам. Только я бы не знал, куда тыкаться, если бы не форум... Но "спасибы" в конце статьи, а пока о деле.
Для CPU был выбран Atmega8535. Просто по совету. Теперь понимаю, насколько дальновидным был этот совет. Ну да, 40-ножка, большой микропроцессор. Зато в нем предусмотрено все, что мне понадобилось, вернее я не использовал и половины имеющихся на борту устройств и возможностей. И теперь знаю, что они есть! Он доступен, недорог.
Среда написания программы - CodeVisionAVR, язык - Си. И опять помог портал, чудные статьи по первым шагам в освоении микроконтроллеров были распечатаны и замусолены по вечерам до непотребного состояния. После прочтения остались вопросы, захотелось копнуть глубже. Помогли книги Трамперта и Баранова, и несчетное количество страниц в интернете, посвященные контроллерам Atmel. Всю жизнь мечтал изучить Си. Но только взяв какой-нить учебник через 3-4 листа понимал что я=лошара, и это все для избранных. Надо заметить, что также у меня начиналось с консольным сервером на Линуксе. А почитав статьи и просто скопировав некоторые простенькие программы, понял, что все вполне доступно. Си - рулез! Конечно на Ассемблере код короче и программа быстрее, но написание и отладка мне ближе на Си, более "юзабельно".
Очень помогла великолепная программа Proteus, ее часть ISIS, позволяющая "паять без паяльника", логика работы схемы наполовину отработана в ней.
Первым делом определился с входными параметрами. В очередной раз порадовали инженеры MMC - датчик скорости и педаль акселератора сделаны на эффекте Холла. В педали сдвоенный датчик, в "скоростемере" одиночный. Одноклассник помог промерять данные с датчика скорости, оказалось все очень просто - прямая зависимость частоты от скорости движения, вышло F=25*V, F - частота в Гц, V - скорость в км/ч. Т.е. на 40 км/ч 1000 Гц, на 90 км/ч 2250 и так далее. Напряжение меандра 4,96 В вверху и абсолютный ноль внизу. Просто супер для контроллера. Полез в педаль акселератора, тоже победа, диапазон напряжений, выдаваемых с педалей 0,55-4,55 Вольт, отставание одного датчика от другого 0,3 В. Все очень разумно и легко контролируемо и реализуемо! В контроллере есть аж 8 входов АЦП, да какие - можно выбрать разрядность от 8 до 10 бит, и сразу передавать на выход аппаратного ШИМ.
↑ В эйфории сваял первый вариант схемы:
Вывод производится через аппаратный ШИМ контроллера. В Протеусе все было шикарно, небольшие флуктуации напряжения (около 0,01 вольта) не смущали. Пора в железо! Пришлось отвлечься сначала на освоение технологии ЛУТ, потом на изготовление нормального программатора по мотивам PROTTOSSa. Но и тут время не потеряно зря, теперь уж изготовление небольших печатных плат достаточно высокого качества для меня по плечу! Заодно освоил покрытие сплавом Розе, результаты тоже очень понравились.
↑ Итак вот то, что заработало и работает до сих пор:
↑ Внешний вид законченного изделия:
↑ Ну и схема "вживления" в проводку автомобиля для полноты информации:
Ну остальное уже не так интересно: пара месяцев переписывания программы. На новую версию переходил только при серьезных идеологических изменениях в программе - добавлении новых функций или переделке блоков. Дописал функцию бустер-педали и иммобилайзера, оптимизировал насколько смог функции опроса датчиков и вывод на ЦАП. Код получился небольшой, исходник читаемый. Сейчас версия 0.12, были и 13 с 14, но мне не понравилось. Откатился на 12, и остался на ней. Конечно, буду еще подправлять, но это уже косметика.
Долго ждал джойстик, пока его не было, ездил с самодельным пультиком 4 кнопы плюс светодиод:
Заказал-то я джойстик еще в мае, 2 раза снимали с заказа. Редко требуемая деталь. Помог коллега из Москвы, также владелец Грандиса с сайта Микроба - прислал свой, себе заказал второй. Договорились, будет бета-тестером устройства. На установку джойстика потратил 4 часа, зато теперь мой салон не отличается от фирменного, только индикацией:
↑ Вот пожалуй и все.
После статьи буду писать подробнейшую инструкцию по изготовлению и установке. Зачем? Да привык я все делать тщательно и доводить до самого финала. Что дальше? Предвкушаю постройку лампового усилителя, руки чешутся аж от лодыжек! Очень надеюсь на помощь, как и с круиз-контролем, жителей Датагории.Спасибы: Игорю (Datagor) за сайт и возможность получать и оказывать помощь, Володе (hippo65), Жене (nightmare), Мише (mikky) - за помощь в написании программы и изготовлении устройства, Саше (alexander59) за поддержку, Славе (SlavaSAS) с сайта Микроба за рычажок, веру в меня, поддержку, а также всем, кто принимал участие в обсуждении устройства и помогал критикой и советами.
↑ Файлы
23-09-2014 В результате опытной проверки временем, автор признал конструкцию слишком опасной при неумелой модификации и установке. На этом основании прошивка изъята с нашего сайта.Желающие могут обратиться к Максиму.