Как сделать кан шину
Volkswagen Passat CC 2.0TDI Sport › Бортжурнал › Распиновка Gateway, переходник-разветвитель. CAN-шина, виды, назначения.
Устанавливаю различное дополнительное штатное оборудование в Пассат, которое работает посредством CAN шин. Как многие знают, блок Gateway в Пассате расположен крайне не удобно, и найти там штатные скрутки шин, чтобы подключиться к ним без резания проводки — это не реально.
Можно сделать конечно переходник на каждой новой шине (как на картинке), но это тоже не удобно, т.к. всё равно нужно лезть и распиновывать каждый раз разъём Гейтвея.
У китайцев был подсмотрен полноценный переходник-разветвитель для Гейтвея, цена его там около 18$.
Сделал такой сам.
Закупился разными CAN шинами, разёмами и пинами. Вот их номера:
Разъёмы 3pin
Tyco 1-968700-1 B / VAG 1K0 973 333
Tyco 1355620-1 / VAG 1C0 973 119 B
Пины
Tyco 928999-1 / VAG N 907 647 01
Tyco 928918-1
Разъёмы 20pin
Tyco 1534095-1 / VAG 8E0 972 420
и ответная часть (номер не известен)
Теперь для подключения новой шины достаточно просто вставить разъём в разветвитель.
Сделал схемку распиновки блока Gateway общую для Passat CC 1-го и 2-го поколений (B6/B7) (на основе схем из Elsa).
Ниже расписал — какие блоки по каким шинам работают.
Расширенную КАН шину (CAN-Extended) я сделал оранж/серая и оранж/корич.
Список блоков на шинах CAN и LIN Passat CC (B6/B7). В данном списке только блоки связанные непосредственно через Gateway.
CAN-комфорт (CAN-Komfort)
J136 — Блок управления для регулировки положения сидения и рулевой колонки с функцией памяти
J255 — Блок управления Climatronic (только для а/м с Climatronic)
J301 — Блок управления климатической установки (Climatic) (только для а/м с климатической установкой)
J345 — Блок управления распознавания прицепа
J386 — Блок управления двери водителя
J387 — Блок управления двери переднего пассажира
J393 — Центральный блок управления систем комфорта
J519 — Блок управления бортовой сети
J527 — Блок управления рулевой колонки
J605 — Блок управления крышки/двери багажного отсека (Variant)
J608 — Блок управления для спецавтомобилей
J810 — Блок управления регулировки сиденья водителя (для а/м с электроприводом регулировки сидений и функцией памяти)
CAN-привод (CAN-Drivetrain, CAN-Antrieb)
J104 — Блок управления ABS
J217 — Блок управления АКПП
J743 — Блок Mechatronik КП DSG
J234 — Блок управления подушек безопасности
J250 — Блок управления системы электронного регулирования демпфирования
J788 — Разделительное реле шины CAN привод (до 11.2010)
J428 — Блок управления адаптивного круиз-контроля (через разделительное реле) (до 11.2010)
J431 — Блок управления корректора фар (до 11.2010)
J745 — Бдок управления системы адаптивного освещения и корректора фар (AFS) (до 11.2010)
J446 — Блок управления парковочного ассистента
J791 — Блок управления парковочного автопилота
J492 — Блок управления полного привода
J500 — Блок управления усилителя рулевого управления
J527 — Блок управления рулевой колонки
J623 — Блок управления двигателя
J844 — Блок управления ассистента управления дальним светом (B7)
Y7 — Электрохромное внутреннее зеркало (только дя а/м с ассистентом управления дальним светом) (B7)
CAN-расширенная (CAN-Extended) (с 11.2010)
J428 — Блок управления адаптивного круиз-контроля
R242 — Передняя камера вспомогательных систем водителя
J502 — Блок управления контроля давления в шинах (за задним бампером)
J745 — Блок управления системы адаптивного освещения и корректора фар (AFS) (за вещевым ящиком)
J431 — Блок управления корректора фар
CAN-комбинация приборов (CAN-Instrument cluster, CAN-Kombi)
J285 — Блок управления комбинации приборов
K — Комбинация приборов
CAN-диагностика
U31 — Диагностический разъём
CAN-информационно-командная (CAN-Infotainment)
R12 — Усилитель (под сиденьем водителя)
R78 — ТВ-тюнер
R184 — Усилитель цифровой аудиосистемы (с 11.2010)
R190 — Цифровой спутниковый радиотюнер (до 05.2009)
J503 — Блок управления с дисплеем радионавигационной системы
R — Головное устройство (Магнитола)
R212 — Камера системы ночного видения (с 11.2010)
R215 — Интерфейс для внешних мультимедийных устройств (MEDIA-IN)
J364 — Блок управления дополнительного жидкостного отопителя
J412 — Блок управления электроники управления мобильного телефона
J738 — Блок управления панели управления телефона
R36 — Приёмно-передающее устройство телефона
E508 — Панель управления для подключения мобильного телефона
J772 — Блок управления камеры заднего вида
G197 — Датчик магнитного поля для компаса
Шины LIN
T20e/2 LIN син/фиол
Y — Аналоговые часы (с 11.2010)
J394 — Блок управления шторки люка (B7)
J245 — Блок управления сдвижного люка (B7)
J878 — Блок управления подъёмного люка (CC)
T20e/12 LIN чёрн/корич (только для а/м с системой Старт-стоп)
J367 — Блок управления для контроля аккумуляторной батареи
CX1 — Генератор с регулятором напряжения (с 11.2010)
C — Генератор / C1 — Регулятор напряжения (до 11.2010)
Если есть дополнения или замечания — пишите.
Hyundai Genesis Prada › Бортжурнал › Взлом кан-шины для чайников.
Всем привет!
Я очень часто получаю вопросы через ЛС о том, как подключиться к кан-шине автомобиля и как вытащить нужную информацию из нее. Сегодня я подробно расскажу о процессе взлома кан-шины. Будет много текста и картинок.
Вернемся к Кан-шине. Нас интересуют конкретные данные. Кому-то нужны обороты двигателя, кому-то сведения о парктрониках или информация о параметрах климат-контроля, кто-то ищет команды, отправляемые с кнопок руля. Причем не обязательно, что все данные будут находиться в одной кан-шине. В автомобиле шин может быть 2, 3 и более. Есть высокоскоростная шина, с которой работают основные силовые узлы автомобиля (двигатель, коробка и т.д.). Но есть и другие шины. По ним передаются данные о состоянии замков дверей, парктроников, климата и прочего.
Для начала нужно определиться, к какой шине нам нужно подключиться. Если нас интересует информация о климат-контроле, то нужно подключаться к кан-шине, идущей к блоку управления климатом. Первым делом нужно найти схему разъема нужного блока (распиновку). В ней обязательно должны быть следующие контакты — Can H (он же Can+ или Can High) и Can L (он же Can- или Can Low). Именно к ним мы будем подключаться для извлечения данных.
Итак, определились с местом подключения. Теперь давайте разберемся с тем, чем именно будем взламывать шину. Для этого уже есть готовые и недорогие решения. Начнем с железной составляющей. Нам понадобится обычный компьютер (ноутбук) под управлением Windows. Думаю с этим ни у кого проблем не возникнет.
Для считывания данных кан-шины и передачи их на компьютер нам понадобится микроконтроллер Arduino UNO (рекомендую приобрести китайский клон на всем известном сайте) и так называемый шилд для него — Can Bus Shield для Arduino Uno. Вот ссылки на комплектующие:
Can Bus Shield (есть более дешевые варианты, но нужно паять ножки самостоятельно. В последний раз шилд обошелся мне в 350р).
Arduino Uno R3 (китайский клон)
Шилд нужно вставить в плату ардуино вот так.
На самом шилде есть вот такая дорожка. Ее нужно перерезать, например канцелярским ножом, иначе никаких данных он не передаст.
На некоторых шилдах дорожки нет (точнее есть, но она не видна). Есть просто два контакта в том же месте. Нужно перерезать ножом место между ними (так как под слоем краски идет дорожка).
На самом шилде есть колодка для подключения проводов к кан-шине (на фото выше — зеленая). Две клеммы с обозначениями Can L и Can H. Теперь нам нужно взять кусок двухжильного кабеля (я предпочитаю витую пару), одну сторону подключить к колодкам шилда, а вторую — к проводам Can H и Can L соответствующих пинов разъема климат-контроля. Можно посадить на скрутки.
Таким образом можем считать, что со стороны железа подключение и настройку мы закончили. Теперь перейдем к программной части.
Подключаем наш Arduino к компьютеру и настраиваем Arduino IDE. Выбираем в меню Инструменты->Плата-> Arduino Uno. В этом же меню выбираем Порт, к которому подключен наш Ардуино. Обязательно запоминаем номер порта, он нам еще пригодится. Теперь открываем скачанный скетч canhacker.ino и загружаем скетч в Ардуино, нажав Ctrl+U.
Да, вот еще что. В скетче следует обратить внимание на строку функции void setup():
if(CAN_OK == CAN.begin(CAN_100KBPS))
В этой строке мы указываем скорость нашей кан-шины. Мультимедийная шина генезиса работает со скоростью 100кб/с. Именно ее я и задал в скетче canhacker.ino. Для других автомобилей скорость может отличаться, поэтому если после запуска программы Can Tool вы не увидите никаких сообщений, пробуйте менять этот параметр на, скажем 125, 200, 500… полный перечень можно найти в файле mcp_can.cpp библиотеки Can Bus Shield (ссылка выше).
Сообщества › Arduino для автомобиля › Блог › Эмулятор CAN шины
Здравствуйте!
В общем имеется авто без шин can и lin
Так же имеется сигналка StarLine s96
Так как входов состояния у этой сигналки мало для разных задумок хочу на базе ардуино нано сделать «эмулятор can»
Так как в плане ардуино полный ноль, прошу вашего совета))
Нужно сделать чтобы адруино по цифровым или аналоговым входам принимала состояния дверей, багажника, капота, зажигания, и и.д. и через кан-шилд MCP2515 отправляла пакеты данных состояния в сигнализацию через кан шину
Вопрос такой, как автоматизировать этот процесс?
Комментарии 64
Купить сигнализацию подходящую под машину, всё остальное — костыли и какашки.
Самый простой пример, это узнать идентификатор какого нибудь пакета от блока комфорта и отправить в сигналку. Я бы с этого начал
Зависнет она. Не потянет
Потянет, абсолютно спокойно.
Т.к сама атмега 328 не занимается обработкой КАН протокола, она уже принимает готовые данные от готового интерфейса MCP2515
Верно, но не потянет, потому ее скорости не хватит. Тут нужен тинзи 3.2 минимум. Она в 16 и более раз быстрее может работать.
Вы теоретик, я практик.
Вы говорите — потому не знаете.
А я говорю, потому что делал.
Тянет, замечательно, по крайней мере у Тойота Приус
всё замечательно читается, пишется и управляется.
Это вы теоретик а я практик. Сделайте модуль под Додж Дарт и попытайтесь понять почему ардуино постоянно виснет. В тойоте нормальной шины даже нет если по честному говорить.
В таком случае надо конкретизировать!
Вы написали «Зависнет она. Не потянет»
Я написал — потянет.
А выясняется, что наверняка всё зависит от количества устройств на шине, которых у автора практически не будет.
А значит, каждый случай частный, и обобщать не стоит.
Одно устройство, простой кан фильтр. Даже это не тянет она. Она не рассчитана на такие вещи. Это как калькулятор и электробус. Две в корне разные вещи.
В таком случае надо конкретизировать!
Вы написали «Зависнет она. Не потянет»
Я написал — потянет.
А выясняется, что наверняка всё зависит от количества устройств на шине, которых у автора практически не будет.
А значит, каждый случай частный, и обобщать не стоит.
Да устройств вообще не будет, я думаю не так много параметров в статусах концевиков, пары кнопок и зажигания…
Потянет, абсолютно спокойно.
Т.к сама атмега 328 не занимается обработкой КАН протокола, она уже принимает готовые данные от готового интерфейса MCP2515
Наоборот, через MCP2515 отправлять)
Зависнет она. Не потянет
Конечно не потянет, если на IDE код писать. Выросло поколение «ардуинщиков».
Если вы про меня, то я даже не начинал с нее, сразу с С++ начал.
IDE так то тоже С++, как и atmel studio, как и в принципе язык AVR в основном, проблема то в другой плоскости 🙂 ужасно медленный и не эфективный код помноженный на отсутствие опыта ООП в принципе, зато порог вхождения уровень «домохозяйки», вот и клепают всякую дичь и жалуются на плохую атмегу, многим проектам вообще тиньки хватит 😁
Согласен про помноженный код. Суть не в коде, там код всего на 15-20 строчек всего на самом деле. Она физически не способна обработать такую скорость, даже при наличии скоростного интерпретатора шины. Изначально железка не подходит под это.
Если никогда программированием не занимался то будет сложно. Я пока не вдавался в подробности работы CAN, но имхо программно его реализовывать — гиблое дело — это же не i2c (хотя можно пллтненько погуглить, вдруг кто заморочился). Лучше взять модуль расширения для ардуино либо, если жаба душит — взять приемопередатчик и контроллер can, который работает по uart и собрать самому плату расширения.
Поражает самоуверенность нынешних самодельщиков.
цитата:
Так как в плане ардуино полный ноль, прошу вашего совета))
И сразу же надо делать эмулятор CAN.
ну нет бы, светодиодом поморгать,
игрушку какую сварганить.
нет, нахрена, изучать все с азов, это для лохов,
прошареные пацаны лепят нечто серьёзное и сразу,
пропуская все «букетно-конфетные периоды» со светодиодами, опросом кнопок и работе с сериал портами.
и уж тем более изучение С++, что такое ООП и как его применять.
совет простой (и его уже сказали):
написать тз, найти исполнителя
и готовиться к тому, что сигнализация стоит существенно дешевле такой разработки.
И оно все совершенно не так, как это представляет большинство, щас я модулей накуплю и сделаю.
большую часть стоимости электроники составляет не комплектуха, а мозги тех разработчиков, которые эту комплектуху собрали в кучу и заставили работать так, как это требовало ТЗ.
Да нормальная самоуверенность. Я в 3-м классе нашел журнал Юный техник» со схемой «10-канального радиоуправления». Это был 1983 год (для оценки элементарной базы и объема работ)
В 4-м классе записался в радиокружок и на первом же занятии показал заветный журнал преподавателю. Спасибо опытному педагогу! Он не стал ни смеяться ни даже ухмыляться. На полном серьезе он сказал, что это хорошая схема, но немного сложная. И предложил начать с однотранзисторного приемника…
Кстати, радиоуправление я так и не собрал. да и за вот эту задачу (ардуино-кан) тоже бы не взялся — главным образом потому что не вижу смысла. И понимаю, что время, потраченное на изучение необходимых мануалов можно потратить на зарабатывание денег на новую машину с каншиной. (причем времени еще и останется)
Тоже интересует эта тема.
А пока не разобрался с CAN шиной сделал аппаратное управление. www.drive2.ru/l/554482615449551160/
Может проще взять As96 с модулем расширения аналоговых каналов вместо кана.
Очень бюджетное решение…
Это было бы верное решение, для выбора сигнализации для такого Авто…
И то не пойму, чего не хватает то?
Например не хватает входа для установки сенсора бесключевого доступа, сенсора открытия багажника и т.д.
Пхахах!😂 так реально надо было сначала подумать какие задачи должна выполнять сигнализация и уже потом подобрать и купить модель…
Я поставил на ланос ас96 с модулем аналоговых каналов и все хватило. И сенсоры, и кнопка багажника, и старт/стоп реализован чисто старлайном, и включение обогрева по темпе и всё всё…
Как говорится, «знал бы прикуп — жил бы в Сочи»
Продай/установи ее кому то, да возьми то что тебе подходит. Мало того, что ты и так уже себе делаешь Геморой, так ещё и никто тебе здесь не поможет… только обосрут
Да уже понял… Видимо проще взять реле R6… Три входа освободятся…
Продай/установи ее кому то, да возьми то что тебе подходит. Мало того, что ты и так уже себе делаешь Геморой, так ещё и никто тебе здесь не поможет… только обосрут
Да и s96 досталась за 8к… Особо не пришлось выбирать… Потом уже когда разобрался с функционалом, стало понятно что маловато будет
Я понимаю, что закупка)
Новая б/у)) купили и не стали ставить))
Да и s96 досталась за 8к… Особо не пришлось выбирать… Потом уже когда разобрался с функционалом, стало понятно что маловато будет
В общем будут вопросы по установке/гибкой логике- пиши, помогу.
Да по сути ничего сложного) кнопку старт-стоп сделал через старлайн, автоматическое включение-выключение света
Тю, дык ты и сам тогда все сможешь)
Продай/установи ее кому то, да возьми то что тебе подходит. Мало того, что ты и так уже себе делаешь Геморой, так ещё и никто тебе здесь не поможет… только обосрут
Понятие «никто не поможет» в данном контексте не правильное.
Т.к в данном случае «помощь» будет заключаться либо в полном изготовлении необходимого устройства, либо в абсолютнейше пошаговом контроле изготовления и указании куда какой проводок припаять и где в каком месте поставить запятую в коде.
На что, ни одни программер не согласится т.к по времени гораздо быстрее написать код самому и отдать, типа «на, только отцепись от меня»
Помощь, это когда, «ребят, вот я сделал, вот код написал, вылазит какая то ошибка, не могу понять»
Вот тогда требуется помощь.
А когда требуется все сделать за автора, это не помощь,
это не желание автора думать самостоятельно, приложить чуть больше усилий, чем он хочет, и даже зайти в тупой гугл и задать ему пару поисковых вопросов, ответы на которые уже давным давно есть.