Иногда возникает необходимость управлять каким-либо внешним устройством в автомобиле, к примеру видео регистратором или лебедкой. В этом случае, обычно, устанавливаются дополнительные кнопки. Но иногда хочется сделать скрытую установку, что б интерьер автомобиля остался неизменным. Этим сегодня и займемся, в качестве автомобиля будет VW Polo Sedan с установленным блоком мониторинга Vega MTX, а в качестве нагрузки будет кнопка «аварийки». Сделаем так, что б при удержании кнопки «ok» на руле 3 раза моргала «аварийка».
Под катом большое количество картинок и видео.
Один раз меня попросили сделать кнопку «спасибо» на автомобиле Renault Kaptur 2012 года выпуска. Нажимая на эту кнопку автомобиль должен 3 раза моргнуть «аварийкой». У этого автомобиля был аналоговый подрулевой джойстик. Одну из кнопок на подрулевом джойстике подключил к реле времени, которое подавало импульс, длинной в 3 секунды на кнопку «аварийки». Позже владелец очень хорошо отзывался о новой функции своего автомобиля и я решил попробовать повторить это на своем Polo Sedan.
Подрулевое управление магнитолой | Джойстик подрулевой | Адаптер для магнитолы
В отличии от Renault Kaptur у меня нет аналоговых кнопок, но сигнал со всех кнопок на руле можно найти в CAN шине. В качестве кнопки была выбрана кнопка «ok» на руле автомобиля. В моей комплектации эта кнопка, почти нигде не используется. Пока я нашел что с помощью него можно выставлять срабатывание «лимитера», когда приборка пищит при превышении заданной скорости. В любых других случаях нажатие на эту кнопку ничего не делает.
Можно было реализовать задуманное с помощью самодельной электроники, но у меня в автомобиле уже стоял блок телематики Vega MTX, потому было принято решение попробовать реализовать данный функционал с помощью него.
Нажатие этой кнопки можно найти в CAN шине, которая находится за магнитолой. Подробно поиск подобных датчиков я описывал в своей предыдущей статье про расшифровку CAN шины.
В нашем случае данные нашлись по адресу 5BF. При нажатии на кнопку «ok» в нулевом байте появляется цифра 40 в десятичном формате. Когда кнопки не нажаты, в нулевом байте будет 0. Надо будет сделать датчик, в котором будут отображаться эти изменения. В моем случае это датчик «Кнопки на руле».
Теперь разберемся с тем, как управлять кнопкой «аварийки». К сожалению, Polo Sedan не может управлять «аварийкой» по CAN шине, поэтому придется управлять ей по аналогу. Для этого придется протянуть провод от бело-синего провода из разъема кнопки «аварийки». Если на этот провод кратковременным импульсом подать «землю», то аварийка включается. Аналогичным образом она выключается.
Подавать «землю» будем с помощью цифрового выхода Vega MTX. Тут мы имеет 4 цифровых выхода, использовать будем третий выход (синий провод).
Теперь нужно задать алгоритмы, по которым будет работать кнопка.
Не работает подрулевой джойстик с 2din магнитола !
Во-первых, я не хочу, что б аварийка включалась сразу по нажатию на кнопку «ok», я хочу, что б она включалась после секундного удержания кнопки. Делаю я это для защиты от случайного нажатия и для того, что б сохранить функционал данной кнопки.
Во-вторых, нужно выключать аварийку спустя 3 вспышки. 3 вспышки «аварийка» делает за 2 секунды.
Что бы ввести все эти алгоритмы надо перейти в настройки Vega MTX, далее перейти на вкладку «Сценарии». Тут можно задать условия, при которых совершаются какие-либо действия. Для реализации мне пришлось использовать 3 сценария.
Вообще сценарии не предназначены для таких операций, поэтому пришлось долго экспериментировать до получения нужного результата.
Первый сценарий служит для создания задержки в секунду, после нажатия на кнопку «ok». Он срабатывает, если в CAN датчике значение станет равно 40, а внешний цифровой выход 1 будет равен 0.
Тут поясню про внешние цифровые выходы. Если для задачи требуется больше, чем 4 цифровых выхода, то к Vega MTX можно подключить дополнительный внешний модуль, в котором будет 15 цифровых выходов и еще множество других входов и выходов. Так как у нас этого внешнего блока нет, то мы можем использовать эти выходы, как переменные, помещая туда 0 или 1 (включено или выключено). По умолчанию все выходы выключены. Внешний цифровой выход 1 будет переменной, которая показывает, что с момента нажатия на кнопку «ok» прошла одна секунда.
Наш сценарий следует читать так: сейчас нажата кнопка «ok», и нажата она менее одной секунды. Если эти условия совпадают, то выполняется действие: выключается внешний цифровой выход 1 на 1 секунду. Значит он переходи в состояние «выкл», но через секунду он перейдет в состояние «вкл».
Теперь перейдем ко второму сценарию.
В отличии от первого сценария он сработает при датчике «Кнопки на руле» равном 40 и при внешнем цифровом входе, равному 1. То есть, нажата кнопка «ok» и внешний цифровой выход 1 равен 1. А внешний цифровой выход станет 1 только спустя секунду после срабатывания первого сценария.
Теперь разберем, что произойдет после срабатывания второго сценария.
Тут дается импульс длинной 1 секунду на цифровой выход 3, к которому подключен вывод с кнопки «аварийки», тем самым мы ее включаем.
После этого нам надо сбросить 0 внешний цифровой выход 1. Поэтому мы включаем внешний цифровой выход 1 на 1 секунду. То есть спустя 1 секунду после срабатывания сценария внешний цифровой выход 1 станет 0.
Последним пунктом мы переводим на 2 секунды 15 в положение 0. Спустя 2 секунды после срабатывания скрипта внешний цифровой выход 15 станет 1. Внешний цифровой выход 15 используется в качестве переменной, что «аварийка» была включена с помощью кнопки на руле. 2 секунды – это то время, за которое машина моргнет «аварийкой» 3 раза.
Теперь последний сценарий, который должен послать импульс, на выключение «аварийки».
Этот сценарий сработает, когда внешний цифровой выход 15 станет равным 1, то есть через 2 секунды после срабатывания второго сценария.
После срабатывания третьего скрипта мы посылаем импульс на выключение «аварийки», и сбрасываем в ноль (выключено) внешний цифровой выход 15.
На этом работа со сценариями заканчивается, сохраняем результат в Vega MTX и проверяем работу устройства.
Таким образом можно сделать управление любым устройством с помощью CAN шины автомобиля. Управление не ограничивается только кнопками на руле. К примеру, можно задать включение устройства по скорости автомобиля, по открытию окна или двери, по запуску двигателя, по оборотам двигателя, по температуре двигателя и т.д. Можно сделать блокировку дверей при наборе определенной скорости (если завод изготовитель не предусмотрел такой возможности), включение камеры при открытии окна и многие другие варианты.
Все вышеописанное есть в видеоформате, а также там есть пример включения аварийки при включении задней передачи.
Источник: habr.com
«Нестандартный подрулевой джойстик»
Подрулевой джойстик управления аудиосистемой — безусловно незаменимая вещь, не отвлекаешься от дороги, да и, на мой взгляд, кнопки джойстика комфортнее нажимаются
нежели «Vol+» и «Vol-» на головном устройстве. Когда впервые я побывал в автосалоне с целью присмотреться к будущей покупке, удивился наличию подрулевого джойстика на бюджетной машине.
Аудиосистема на бюджетном авто. Богато, не правда ли?
За такие деньги только китайские авто предлагали либо подрулевой джойстик либо мультируль. После покупки авто было подмечено, что мой подрулевой джойстик отличается от того, что был на тестовом авто и в руководстве пользователя аудиосистемой (Кстати электронной версией данного руководства могу поделиться по электронной почте, пишите в личку кому оно необходимо).
Джойстик, установленный в Привилегированном
Такой джойстик был в тестовом Дастере
Джойстик из руководства пользователя
Облазив просторы всемирной паутины нашел фото своего джойстика под названием: «Нестандартный подрулевой джойстик». У кого какой стоит?
Источник: www.drive2.ru
Контроллер подрулевого джойстика автомобиля
В настоящее время, существует довольно много автомобилей, изначально укомплектованных устройствами, облегчающими управление бортовой аудио-видео аппаратурой. Типичный пример – подрулевой джойстик для управления автомагнитолой. По ряду причин, авто-владельцы со временем заменяют штатную аудиосистему (как правило, уже морально и физически устаревшую) на новые модели.
В результате чего, устройство управления часто остается невостребованным, ввиду известных трудностей его сопряжения. Это приводит к снижению эргономичности управления, вплоть до опасности развития аварийной ситуации, поскольку регулирующие органы магнитолы могут быть выполнены крайне неудобно и требовать к себе повышенного внимания.
Данная статья призвана помочь в решении данной проблемы. На примере подключения подрулевого джойстика автомобиля Reno Scenic, будет показано, как с использованием доступной элементной базы изготовить контроллер джойстика, способный управлять практически любой автомагнитолой, имеющей соответствующий интерфейс для внешнего управления.
Джойстик ничем выдающимся не отличается, по сути, представляет собой матрицу кнопок 3х3. Причем, столбец занимает энкодер, один из контактов (может быть любой) которого, постоянно замкнут. При вращении энкодера замыкается другой контакт – по ходу движения. По последовательности переключений можно определить направление вращения. Внутренности джойстика:
Ориентироваться следует по номерам контактов, поскольку порядок цветов может отличаться для данной модели. Электрическая и эквивалентная схемы соединений джойстика:
Интерфейсов внешнего управления существует множество. Остановимся на двух наиболее распространенных. 1. Резистивный пульт управления. Применяется во многих магнитолах Sony, Pioneer и др.
Подключается с помощью обычного 3.5 мм аудио-разъема:
Из схемы понятно, что для реализации управления достаточно включать сопротивление соответствующего номинала между проводами AD и GND, в зависимости от нажатой кнопки. Это легко организовать на микроконтроллере.
2. Инфракрасный пульт управления. Имеют практически все современные магнитолы. Трудность заключается в определении протокола пульта и кодов адреса и команд. Для этого следует иметь экземпляр подходящего пульта. С помощью соответствующих программ (например, CoolEdit, rcexplorer) эту информацию можно получить.
Описание ИК протоколов легко находится в сети. Дальше дело техники. Например, для магнитолы Sony CDX-S22 Управляемой пультом rm-x114:
Выясняем (CoolEdit + tsop1736 к звуковой карте), что протокол ИК управления Sony Sirc 15 bit:
Подробная информация о протоколе есть на сайтах http://www.hifi-remote.com/sony/, http://www.sbprojects.com/knowledge/ir/sirc.htm Несущая частота 40 кГц, код адреса 132 Кнопка Код
DSPL 40
MODE 71
MENU 10
DISC_PL 51
LIST 39
SEEK_MN 53
SOURCE 70
SEEK_PL 52
SOUND 16
DISC_MN 50
ENTER 92
OFF 13
ATT 20
VOL_PL 18
VOL_MN 19 Теперь есть вся необходимая информация, чтобы приступить к реализации контроллера. Схема контроллера, предусматривающая возможность управления по двум интерфейсам: Следует проследить, чтобы напряжение на проводе управления магнитолы резистивным способом было не более 5В. Необходимые пояснения указаны на схеме.
Соответствие проводов джойстика можно определить из электрической схемы джойстика (см. выше). Печатная плата, вид сверху (TOP) (обратная сторона – сплошной земляной полигон): Рисунок для ЛУТ приведен в отдельном файле (зеркальный). Его необходимо отмасштабировать. В реальности получилось примерно так (светодиоды потом пришлось вынести на провода):
На фото распаяны только элементы для ИК части.
Монтируется плата в подрулевой кожух (на термоклей): Сами светодиоды удобно разместить в отверстиях, проделанных внизу подрулевого джойстика таким образом, чтобы световой поток, по возможности, эффективно попадал в приемник автомагнитолы. В архиве присутствуют исходные коды (WinAvr) подключенные в проект (Code::Block 8.02), модель (Proteus) и схема с печатной платой (Proteus и Ares).
А также некоторая полезная информация. В проект была добавлена поддержка пульта для магнитолы VDM-MB504TV (NEC, 38 кГц). На этом примере легко увидеть, как добавлять поддержку новых протоколов (для каждого из ИК протоколов требуется отдельная прошивка, резистивный пульт будет работать в любом случае).
Некоторые замечания: Тактирование контроллера осуществляется от кварцевого резонатора 8 Мгц. Вполне возможна устойчивая работа и от внутреннего RC генератора 8 Мгц (в обоих случаях необходимо отключить фьюз CKDIV8). В проекте присутствуют скрины фьюзов и их численный код. Необходимо предусмотреть предохранитель, номиналом около 2А в питающем контроллер плюсовом проводе.
В заключение следует сказать, что не смотря на большое разнообразие управляющих джойстиков, видов ИК протоколов и т.д., довольно легко модернизировать данный проект под свои нужды. Проект предоставляется “как есть”. Все работы по установке данного устройства в автомобиль проводятся на ваш риск, автор ответственности не несет. Скачать проект Автор – Goodefine, г. Тирасполь, Приднестровье
Источник: cxem.net