![]() |
Данные климат-контроля
Добрый день всем!
Я строю компьютер на связке Android планшет + Arduino Машина Infiniti G37x Sedan 2009 года. Головное устройство стоит Bose с навигацией. Я рассчитываю научиться перехватывать все нажатия кнопок (а их 54 включая 3 энкодера) на ардуино и посылать на планшет. К сожалению, на руках пока только сама Ардуино Леонардо, а планшет пока едет из Китая (заказл Hyundai T7) Но тем не менее, уже с ардуино можно работать. Я разобрал переднюю панель с кнопочками и увидел там: http://img13.imageshost.ru/img/2013/...4e99_small.jpg - От кнопок к магнитоле http://img13.imageshost.ru/img/2013/...9b05_small.jpg - от кнопок у монитора к кнопкам на передней панели http://img13.imageshost.ru/img/2013/...ec31_small.jpg - оно же, вид снизу http://img13.imageshost.ru/img/2013/...9ff1_small.jpg - название и серийный номер http://img13.imageshost.ru/img/2013/...8e9f_small.jpg - не знаю что за блок http://img13.imageshost.ru/img/2013/...cd22_small.jpg - задняя сторона ГУ Вдруг сегодня нашел распиновку магнитолы http://teletehnika.info/uploads/pins...780-pinout.jpg Я так понимаю. что мне надо по UART OUT перехватить сигналы? Пока всей аппаратуры на руках нет, я открыт для предложений. Но в целом хочу сделать все качественно и красиво) Поэтому планшет будет поставлен на место родного экрана, а родной экран спрятан куда-нить глубоко (у него ужасное разрешение). |
А может попробовать все это в CAN шине найти? Задача нетривиальная, но, возможно, это будет проще, чем тянуть провода на 54 кнопки.
|
так я и не хотел тянуть провода... я хотел прочитать коды и передать их по com порту в планшет.
или еще лучше ардуино подключить как HID устройство и посылать нажатия кнопок. |
А откуда известно, но что UART OUT есть информация о кнопках? Между устройствами данные передаются по CAN шине, и, если верить разъему CN201, у Вас этих шин минимум 3.
|
ММах, не знаю, где сказать тут спасибо) но спасибо, что обратили внимание)
Видимо придется все перепробовать... есть еще какая-то шина NBUS Tx Rx :-) |
Вложений: 1
Цитата:
Нужно четко разделять два режима: режим штатной работы и режим, когда кнопками мы управляем только планшетом. Иначе, кнопки будут работать "на два фронта" и бог к чему это может привести :) Для понимания работы всего этого хозяйства лучше качнуть с торрентов Mitchell OnDemand, там есть вся инфа по твоей машине и описываются все шины обмена инфой, логика работы, электросхемы и т.п. Вложение 30097 |
Спасибо, Hamster,
чтоб не на два фронта работали, я готов даже просто тумблер поставить где-нибудь... на работе торренты закрыты (ну еще бы))) ) Домой приеду - посмотрю) Спасибо! Навыков особо нет, но может разберусь ;) |
Ну после долгого разбирания я увидел, что у меня в машине используется протокол AV Communication, который передается по CAN шине.
Ребятки, помогите, пожалуйста, прочитать команды. В долгу не останусь! Утром сидел читал мануал... Нужный мне коннектор M72. http://i.imgur.com/VuuI45V.png Вот его распиновка. А где его найти в машине? |
Вложений: 1
Я же тебе говорил - ставь Митчелл, если серьезно хочешь этим заняться.
Цитата:
Вложение 30132 Но, чтение CAN - это уже поздняк, кнопки уже "в системе". Нужно для начала сделать коммутяцию между планшетом и штатным ГУ. |
Цитата:
Это человек описывает как извлекать из шины id и данные (информация больше теоретическая): http://www.canbushack.com/blog/index.php Очень неплохое описание принципов работы шины (на русском): http://automn.ru/opel-astra/opel-135..._id2-1254.html Еще, к сожалению, не сохранил ссылку. Там описан практический опыт разбора данных из шины или opel'я или mazda'ы. Может наткнешься случайно, так по-английски сделано в виде презентации, текст с картинками на красном фоне. Еще в википедии неплохая статья про can bus. Если хочешь цепляться к can через ардуину, нужно взять или такой шилд или плату. Есть и другие варианты, например Arduino Due, на ней уже что-то для can'а распаяно. http://www.seeedstudio.com/depot/can...?cPath=132_134 http://www.ebay.com/itm/BOARD-CAN-BU...item3f10470566 Или можно взять такой шилд, на нем уже два Can контроллера, но он только на Mega2560 http://www.terraelectronica.ru/news_postup.php?ID=2335 Себе я взял две платы (шилдов тогда не было в наличии). Сейчас поэкспериментирую и, скорей всего, шилды закажу, их крепить удобней. Брать нужно минимум две (а лучше по количеству шин в автомобиле), т.к. прежде чем лезть к реальным данным, нужно потренироваться передавать и принимать "на столе". И еще одно, на что я обратил внимание. Скорость передачи в шине автомобиля - 512 Kbit, serial порт ардуины мне не удалось заставить работать на скорости более 115200 без ошибок. Поэтому пришлось придумывать обмен данных через ethernet shield, чтобы не было затыков при обмене. |
А если я напрямую подключусь к пинам из 8 поста, может получиться что-нибудь?)
А то как-то я себя не очень уверенно чувствую с CAN шиной... Hamster, так я его там и нашел) но это тот же мануал, что и на http://www.nicoclub.com/FSM/G37/ лежит) Но штука красивая) Цитата:
|
Цитата:
|
Цитата:
А если купить ELM327 на USB или Bluetooth и подключить его к компу - работать будет? Проблема в том, что у меня оч слабые навыки в радиотехнике, но дофига желания впендюрить комп. |
Неправильно задал вопрос. Работать-то будет.
Смогу ли я с ее помощью прочитать показания климат-контроля? |
Цитата:
ELM327 не поможет, нужен отдельная кан-читалка. Вот пример того, как человек взял и разобрался. Подробнее - читай всю тему. Там и ссылочка на девайс где-то была. |
эх.... надо брать девайс да начинать мастерить)))
Или спросить совета у ребят из соседней ветки! |
купил в чипдипе CAN Transciever PCA82C250.
Попробовал собрать тестовую схему... не получилось( Помогите собрать, плиз? |
И к чему подключаем? Тут телепатов нет. Для работы нужен МК с каном на борту или отдельная микра. То, что ты привел всего лишь драйвер между чипом кан и шиной. Если тупо её подключаешь к UART мк, то ясен пень работать не будет.
|
Цитата:
Подключаю к Arduino Leonardo на Tx/Rx (d0 и d1 пины). Я так понимаю, что последняя фраза ко мне и относится ;) А что за чип CAN? че куда вообще совать?))) Дай что ли схемку? Попробую почитать ее - не получится, обращусь еще раз за разъяснениями. http://secuduino.blogspot.ru/2011/02/tienda.html вот это надо? |
Цитата:
ЗЫ. Не нашел у этого продавца про доставку. Сколько будет стоить? |
Цитата:
вот нашел... доставку можно заказать EMS на всех... 27 баксов за плату... воткнул на ардуино и пошел играться... в свою очередь не очень мне понятно, чем читать потом данные. |
MMax, SECUduino нет в наличии. Утром получил письмо от разработчика. Так что или самим, или ждать, или другой.
|
короче.. лень разбираться со всеми этими чипиками... заказал себе CAN Hacker. К пятнице приедет уже.
дороговато - 2500 рублей... зато сразу рабочий девайс! |
Это да...но есть одно но...софт придется писать самому, а тот что идет в комплекте можете использовать только для анализа пакетов гуляющих по шине.
|
Цитата:
А софт написать можно и на процессинге... это уже вторая беда, как говорится) |
все... нашел все)
Купил адаптер USB<->CAN в Новосибирске. Немножко дорого, зато работа не стоит) Все читается. Теперь надо найти время и записать все нажатия клавиш. |
Задал вопрос про принцип работы КАН хакера.
Ответ: Цитата:
|
Цитата:
Цитата:
|
Не понимаю зачем тебе ардуина если есть планшет?
Цитата:
На самом деле самое сложное именно обработка/расшифровка пакетов перед тем как что то паять нужно иметь работающий в коде прототип. Устройство у вас уже есть, напишите под WIN код который будет распознавать нужные вам команды, перенести его потом под Android будет не так сложно. |
Вы просто думаете что вам будут отсылаться по CAN коды нажатий, на самом деле там могут отсылаться значения сопротивлений при этом (например в случае с енкодером) будет и дребезг контактов и коды одной кнопки будут разные и постоянно сменятся, или например уменьшаете вы громкость вам буду сыпаться уменьшающиеся значения т.е. вам нужно будет анализировать N предыдущих посылок и текущую и возможно следущую (что бы исключить дребезг контактов. Так же вам может на нажатие приходить целых 3 посылки:Нажали/Держим/Отпустили или 2 посылки и.т.п. и.т.д.
Только после того как у вас будет программа под Win которая четко работает есть смысл думать об Android и железном воплощении. |
Цитата:
Цитата:
Сейчас я понял, что мне этот CANHacker не очень нужен, т.к. можно было собрать все на ардуино. Но поздно понял. Теперь выясняется, что есть в планшете встроенный порт. И в планшете прям можно подключить напрямую провода от CAN шины и все заработает после небольшого шаманства с кодом? Плюс мне понятен Processing (среда разработки). Я иду по принципу наименьшего сопротивления. Иногда не самое рациональное решение, но мне ж не сразу подсказывают ;) Я нафига темы открыл на всех форумах?) |
Цитата:
|
Нет в планшете порта нет к планшету можно подключить CANHacker так что он то как раз не помешает, особенно если нет опыта паяния плат (у меня тоже нет я программист)
|
Да понятно что CAN коды только там обычно большое количество информации льется, её нужно обрабатывать, и вычленять команды. Нет такого понять как "CAN коды".
Есть информация в цифровом виде там может быть все что угодно. Например вы знаете какая посылка соответствует уменьшению значения энкодера? Что в этот момент будет в шине? |
Цитата:
Я думаю собрать позже самостоятельно еще один CAN хакер, но чуть урезанный и с передачей данных по шине SPI. |
Цитата:
Но на первый взгляд, все команды разные. Я заметил, что при зажатии кнопки вниз на большом джойстике коды бегут циклически. Всегда есть состояние, которое вылетает, когда ни одна кнопка не нажата, и ни один энкодер не крутится Цитата:
|
В общем ждите посылку, подключайте, CANHacker потом сами все поймете.
У вас два варианта, 1. У вас получится написать программу под Win - тогда вы переделаете её под андроид и будете счастливы с CANHacker. 2. Увидев поток цифр вы поймете что все тут не просто и бросите это дело. Городить еще один микроконтроллер писать под него скетч потом как то подключать его к планшету на планшете обпять писать код который будет понимать уже данные с вашего микроконтроллера, в этом есть смысл если в технологиях как рыба в воде но это не обязательно. |
Просто я сталкивался только с VAG CAN и там не так уж и просто было выловить те же показания климата или парктроника.
|
Цитата:
Цитата:
Все будет хорошо) |
Привет всем!
Сегодня утром я сделал большой шаг) Я сосканировал нажатия клавиш. Единственное - пропустил код отпускания клавиши Display. Заметил, что второй байт - счетчик. Он сквозной по всем нажатиям. (10,20,...70, 10,...) Периодически проходят сигналы с большим содержанием FF. Но попробовал отправить эти сигналы с компа - магнитола управляется! Энкодеры посылают всегда один и тот же сигнал. Короче, кто напишет программку для CAN Hacker'а?))) Или другого адаптера, чтоб работало на андроиде или еще где... Кстати, нажатия сенсорного экрана тоже по этой шине передаются. Мне было лень расшифровывать, т.к. я все равно хочу выкинуть этот экран к едрене Фене) Файл с кодировками: http://yadi.sk/d/n-0a78pB3TcIX |
Часовой пояс GMT +4, время: 16:26. |
Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot