Только вот в новом не был предусмотрен круиз-контроль (система автоматического поддержания заданной скорости при движении).
На сайте mikrob.ru описывается активация данного устройства, если оно вообще предусмотрено в бортовом компьютере. У меня его не оказалось, или он где-то глубоко в спящем состоянии. Это выяснил точно - долез до центрального ECU, по схеме вывел провода с клемм, спаял эмулятор джойстика управления круиз-контролем - не работает.
Что делать?..
Содержание статьи / Table Of 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 В результате опытной проверки временем, автор признал конструкцию слишком опасной при неумелой модификации и установке. На этом основании прошивка изъята с нашего сайта.Желающие могут обратиться к Максиму.
Камрад, рассмотри датагорские рекомендации
🌼 Полезные и проверенные железяки, можно брать
Опробовано в лаборатории редакции или читателями.