Кан шина форд фьюжн схема

Добавил пользователь Валентин П.
Обновлено: 19.09.2024

Схема 1. Блок-схема автомобиля Ford Fusion (Форд Фьюжн):

1 – выключатель (замок) зажигания; 2 – монтажный блок в моторном отсеке; 3, 4 – монтажный блок реле и предохранителей за вещевым ящиком; 5 – реле топливного насоса; 6 – датчик детонации; 7 – реле электронного блока управления двигателем; 8 – электронный блок управления иммобилизатора; 9 – аварийный выключатель подачи топлива; 10 – катушка зажигания; 11 – дополнительный стоп-сигнал; 12, 19 – электронный блок управления двигателем; 13 – модуль топливного насоса; 14 – датчик положения педали акселератора; 15 – датчик частоты вращения колеса; 16 – управляющий и диагностический датчики концентрации кислорода; 17 – датчик абсолютного давления во впускной трубе; 18 – электромагнитный клапан продувки адсорбера; 20 – датчик давления рабочей жидкости в системе гидроусилителя рулевого управления; 21 – датчик положения педали тормоза; 22 – датчик температуры охлаждающей жидкости; 23 – электромотор регулировки оборотов холостого хода; 24 – блок управления антиблокировочной системой (ABS); 25 – датчик положения педали сцепления; 26 – датчик положения распределительного вала; 27 – датчик положения дроссельной заслонки; 28 – комбинация приборов


И так, ДОПМОДУЛЬ концевиков.
Эта штуковина принципиально нужна при установке сигнализации без CAN шины. Модуль нужен для того, что бы сига понимала что происходит с дверьми автомобиля.

Штатные концевики fordов работают немного не так как у остальных автомобилей. Если у Лады на концевиках появляется строгий – 12 (минус 12), то у fordа это не пойми что, какой-то слабый плюс в 0,3 вольта, а потом вообще минус появляется, лабуда в общем, которая сиге вообще не понятна. И если даже попробовать все подключить без допмодуля то получится что при постановке на охрану сига понимает что двери закрыты, но у нас есть режим power-save, который через 30 минут отрубает все сигналы и выключает большинство приборов в авто. Из-за этого на концевиках вовсе пропадает все напряжение и сига просто убеждена, что двери открыты.

В общем, нам все тонкости этой системы совсем не нужны, честно сам сильно не вникал в эти все импульсы и полярности, времени было не много, нужно было поскорее все сделать, чтоб утром в тепленькую машинку садиться, вот.
Так что после перерытого инета вдоль и поперек, я нашел схему, плату, и тд.

Это 2 главных источника, которые внесли ясность в то что именно мне нужно получить в конечном результате. Конечно их авторам отдельный поклон и большое спасибо.
Начну с общего вида конечного продукта.


Вот такая штука у вас получится в результате. Всего немножко стараний с паяльником и вот он результат.

Далее представлена принципиальная схема с источника:


Мною дорисована, вставлены конденсаторы С1, С2.
Судя по схемке, все просто, логично, и полноценно.

Необходимые компоненты:
1. Не большая, печатная универсальная плата.
2. Резисторы: 10кОм — 5 шт. 1кОм — 2 шт. 6,8кОм — 2 шт.
3. Транзисторы КТ3102 — 2 шт. или аналоги.
4. Конденсаторы на 0,1 мкФ 30V — 2шт. (не нашел на 30, поставил на 200V, разницы никакой.)
5. Диоды 208 — 10шт.
6. Клемники парные 5 шт, либо можно сразу напаять везде проводов.

Сумма просто космическая получилась, аж 175 рублей. ))) смешно, можно было еще дешевле, но не заморачивался.
Паял 2 часа, нижнюю часть платы залил горячим клеем, как изолятором от влаги и пыли.




Провода толстые совсем не нужны, ток до 300мА на провод.


После сборки проверил на лабораторном БП. Все четко, все здорово работает.


Что это такое?
ELM327 — OBDII сканер используемый для диагностики автомобилей при помощи персонального компьютера. Поддерживает все известные протоколы ODB2 и совместим с множеством диагностических программ.
Программное обеспечение для этого адаптера поддерживает следующие платформы:
DOS, Windows, MacOS, Linux, PalmOS, PocketPC, Android, IOS.


Итак, Вы приобрели адаптер, как им пользоваться?
Нужно воткнуть его в ODBII разъем, у нас он прямо под рулевой колонкой (у фокусов за ящиком под левой коленкой, в общем у разных машин по разному).
Адаптер включается и работает от зажигания, двигатель заводить необязательно, двигатель заводить нужно если нужно мониторить данные с его датчиков.


Что такое ODBII и с какими авто работает?
On-Board Diagnostic (OBD) – самодиагностика бортового оборудования автомобиля. Термин, обозначающий стандарт диагностики и контроля двигателя автомобиля, также частей шасси и вспомогательных устройств.
Cтандарт регламентирует сигналы и распиновку разъема диагностики. OBD-II был разработан Society of Automotive Engineers (SAE) США и утвержден Environmental Protection Agency (EPA) в 1996 году.
К моменту создания OBD-II существовало три основных протокола обмена данными между бортовым электронным оборудованием автомобиля и различными диагностическими сканерами. Собственно все три вошли в OBD-II.
Все европейские и большинство азиатских производителей использовали ISO 9141 стандарт (К, L – линия, подключение обычного компьютера посредством адаптера К, L – линии для диагностики автомобиля).
General Motors использовал SAE J1850 VPW (Variable Pulse Width Modulation), а Fords – SAE J1850 PWM (Pulse Width Modulation). Немного позднее появился ISO 14230 (усовершенствованный вариант ISO 9141, известный как KWP2000).
Европейцами в 2001 был принят EOBD (enhanced) расширенный OBD стандарт.

Основное преимущество – наличие высокоскоростной CAN (Controller Area Network) шины. Название CAN шина пришло из компьютерной терминологии, так как создавался данный стандарт примерно в 80-х компаниями BOSCH и INTEL, как компьютерный сетевой интерфейс бортовых мультипроцессорных систем реального времени. CAN-шина — это двухпроводная, последовательная, асинхронная шина с равноправными узлами и подавлением синфазных помех.
CAN-шина соединяет различные модули автомобиля в единую сеть, для получения данных с них и взаимодействия между ними.
CAN характеризуется высокой скоростью передачи (гораздо большей, чем другие протоколы) и высокой помехоустойчивостью. Для сравнения ISO 9141, ISO 14230, SAE J1850 VPW обеспечивают скорость передачи данных 10.4 Kbps, SAE J1850 PWM – 41.6 Kbps, ISO 15765 (CAN) – 250/500 kbit/s.

Совместимость конкретного автомобиля с протоколом обмена данными проще всего определить по колодке диагностики OBD-2 (наличие определенных выводов свидетельствует о конкретном протоколе обмена данными).
Протокол ISO9141-2 (производитель Азия – Acura, Honda, Infinity, Lexus, Nissan, Toyota, и др., Европа – Audi, BMW, Mercedes, MINI, Porsche, некоторые модели WV и др., ранние модели Chrysler, Dodge, Eagle, Plymouth) идентифицируется наличием контакта 7 (K-line) в диагностическом разъеме. Используемые выводы – 4, 5, 7, 15 (15 может не быть) и 16. ISO14230-4 KWP2000 (Daewoo, Hyundai, KIA, Subaru STi и некоторые модели Mercedes) аналогичен ISO9141.

Сам адаптер elm327 работает с протоколами:
1.SAE J1850 PWM(41.6Kbaud)
2.SAE J1850 VPW(10.4Kbaud)
3.ISO9141-2(5 baud init, 10.4Kbaud)
4.ISO14230-4 KWP(5 baud init, 10.4 Kbaud)
5.ISO14230-4 KWP(fast init, 10.4 Kbaud)
6.ISO15765-4 CAN(11bit ID, 500 Kbaud) – этот в нашем авто.
7.ISO15765-4 CAN(29bit ID, 500 Kbaud)
8.ISO15765-4 CAN(11bit ID, 250 Kbaud)
9.ISO15765-4 CAN(29bit ID, 250 Kbaud)
A.SAE J1939 CAN(29bit ID, 250*Kbaud)

Назначение выводов (“распиновка”) 16-ти контактного диагностического разъема OBD-II в автомобиле:


Пропущенные выводы могут использоваться конкретным производителем для своих нужд.

На каких машинах работает?
По идее должно работать на большинстве иномарок начиная с 1998 года, но по факту работает не на всех.
И перед покупкой лучше уточнить на профильном форуме или у владельцев на разных сайтах.

2. получать информацию с датчиков автомобиля, например: с датчиков топлива, давления и температуры воздуха во впускном коллекторе, содержания со2 в выхлопе с лямбда зонда, датчиков детонации топлива, углов опережения зажигания и многое другое.

3. позволяет менять конфигурацию модулей (конкретно по фьюжену), например приборки: включение/выключения часов, звука задней передачи, индикации о не пристегнутых ремнях, включение 1 либо 3 вспышек поворотника при перестроении, автозапирание замков при движении и прочее.

Какой софт выбрать?
Для диагностики существует множество программ, я многое перепробовал, но в основном использую:
На Андройд смартфоне/планшете универсальные приложения Torque, оно обычно показывает все, что возможно с датчиков и позволяет считывать и сбрасывать ошибки.


На виндовс: ScanMaster и FORScan, причем FORScan может считывать данные с блоков на MS-CAN шине после доработки адаптера, о чем дальше.



После сброса ошибок не пугайтесь первое время будет ошибка P1000, это нормально, она свидетельствует о недавнем сбросе.




Сегодня автор (Каспер) внес исправление, Runtime Error на машинах без БК больше не выскакивает.

Особенности Фьюжена
Особенности фьюжена (да и не только его, фокусы, мондео, мазды двойки и тройки аналогичны со своими мелкими отличиями).
Дело в том, что у нас CAN шина делится на высокую (HS-CAN), и на среднюю (MS-CAN).
Часть модулей находится на высокой (HS-CAN), другая – на средней (MS-CAN) шинах.
Вот сделал скрин, какие модули на какой шине:


Большинство функций Вы можете делать без переделки адаптера, но для взаимодействия с модулями на MS-CAN шине адаптер нужно доработать.

Переделка адаптера:
Большинство функций Вы можете делать без переделки адаптера:
— считывать ошибки
— мониторить параметры
— поменять конфигурацию приборки (включение/выключения часов, звука задней передачи, индикации о не пристегнутых ремнях, включение 1 либо 3 вспышек поворотника при перестроении, автозапирание замков при движении и прочее).

Переделка открывает Вам возможность считать ошибки и сбросить их с модулей GEM (по электрике и навесному оборудованию, а также лампочкам) и ACM (по мафону), именно они сидят на средней (MS-CAN) шине.

Схема переделки нарисована по разъему на машине, если смотреть на сам разъем адаптера контакты будут зеркально перевернуты.


Красная и синяя линии от адаптера к 6 и 14 контактам OBD-разъема – существующие провода. Нам нужно получить возможность переключать их с 6 и 14 на 3 и 11 контакты (с HS-CAN на MS-CAN) и обратно. Для этого используем сдвоенный тумблер (или кнопку или переключатель) вида ON-ON или два одинарных. Подключаем его в соответствии со схемой: перерезаем существующие провода в местах, отмеченных крестиками, и добавляем дополнительные (розовые и голубые на рисунке).

На этом все, конфигурирование адаптера дальше командами, как в статье, не требуется.

Я сделал так себе:
Адаптер у меня неудобный для переделки конечно, контакты впаяны в плату так, что не подлезешь и плату так просто не достанешь, пробовал давить со стороны контактов и подцеплять плату, никак ее не достанешь ((

Решил сделать окошки с обоих сторон у адаптера, все равно бока закрывает потом наклейка.
Просверлил, расширил, вроде подлезти можно к контактам и тонкими кусачками перерезать. Но цепанул сверлом плату и перебил дорожку, так что адаптер не видился. Надо было восстановить дорожку, а это можно сделать только вытащив плату.
И понеслось, деваться некуда, режем ножовкой по металлу по полам корпус адаптера, греем его строительным феном, чтобы пластик размяк и контакты вышли из колодки.

Короче поуродовал я корпус, прежде чем достать плату с контактами.
От температуры пластик повело, так что в разъем в автомобиле он больше не вставлялся, так что грел выправлял колодку, пока снова она не стала свободно втыкаться в разъем.
Вот так выглядят внутренности моего адаптера.



Из самой платы выпаял контакты 6 и 11, и впаял провода.


В колодке контактов из оставшихся невостребованных контактов, сделал короткие контакты 6,14,3,11, подпоял к ним провода.


Собрал все в корпус, опять плата не лезла в колодку, грел феном ))))), вставил плату под температурой, колодку повело, не влезала в разъем на машине, снова грел и правил колодку ))))

В общем добился таки четкого влезания в разъем.

Попробовал работоспособность и даже поработал в таком состоянии:


По игрался, посмотрел ошибки, нашло ошибки в GEM (о сгоревших когда-то лампочках) и сбросил их, по магнитоле ошибок не было.

Из доработок конфигурации приборки, без переделок адаптера, включал часы на приборке, индикацию не пристегнутых ремней и звук задней передачи, в результате остались одни часы, остальное убрал позже.

Потом выбирал переключатель


Остановился на маленьком


Ну и собрал, забинтовал в изоленту



Изменение температуры кондиционера Ford Fusion при помощи команд через шину CAN.

image


Рисунок 3: Введение в LIDAR (ключевой сенсор самоуправляемого автомобиля)
При помощи сенсоров наподобие LIDAR (light detecting and ranging; оптическая локационная система) машина способна смотреть на мир как суперчеловек. Затем компьютер внутри автомобиля на базе полученной информации принимает решения и посылается команды в шину CAN для управления рулем, ускорение и торможением.
Не каждый автомобиль способен стать самоуправляемым. И по некоторым причинам компания Voyage выбрала модель Ford Fusion (подробнее о причинах можно почитать в этой статье).
Исследование шины CAN в Ford Fusion
Перед началом исследования систем кондиционирования воздуха в Ford Fusion я открыл мою любимую книгу The Car Hacker’s Handbook. Перед погружением в суть вопроса заглянем в Главу 2, где описываются три важные концепции: протоколы шины, шина CAN и CAN-фреймы.
Шина CAN
Шина CAN начала использоваться в американских легковых машинах и небольших грузовиках с 1994 года и с 2008 года в обязательном порядке (в европейских автомобилях с 2001 года). В этой шине предусмотрено два провода: CAN high (CANH) и CAN low (CANL). Шина CAN использует дифференциальный сигналинг, суть которого заключается в том, что при поступлении сигнала на одном проводе вольтаж повышается, а на другом понижается на одну и ту же величину. Дифференциальный сигналинг используется в средах, которые должны быть малочувствительны к шуму, например, в автомобильных системах или при производстве.

Рисунок 4: Необработанный сигнал шины CAN, отображаемый на осциллографе
С другой стороны, пакеты, передаваемые по шине CAN, не стандартизированы. Каждый пакет содержит 4 ключевых элемента:


Рисунок 5: Формат стандартных CAN-пакетов
CAN фреймы
Для того чтобы включить / выключить климатическую систему мы должны найти нужную шину CAN (в автомобиле таких шин несколько). В Ford Fusion есть как минимум 4 задокументированные шины. 3 шины работают на высокой скорости 500 кбит/с (High Speed CAN; HS) и 1 шина на средней скорости 125 кбит/с (Medium Speed CAN; MS).
К порту OBD-II подключено две высокоскоростные шины HS1 и HS2, однако там стоит защита, которая не позволяет подделывать команды. Вместе с Аланом из компании Voyage мы вынули порт OBD-II и нашли места соединения со всеми шинами (HS1, HS2, HS3 и MS). На задней стенке OBD-II все шины подключались к модулю шлюза (Gateway Module).

Рисунок 6: Homer – первое самоуправляемое такси от компании Voyage
Поскольку климатическая система управляется через медиа-интерфейс (SYNC), нам придется отсылать команды через среднескоростную шину (MS).
Чтение и запись CAN-пакетов осуществляется при помощи драйвера и сетевого стека SocketCAN, созданного исследовательским отделом компании Volkswagen для ядра в Linux.
Мы будем подсоединять три провода от машины (GND, MSCANH, MSCANL) к переходнику Kvaser Leaf Light HSv2 (можно купить за 300$ на Амазоне) или к CANable (продается за 25$ на Tindie) и загружать на компьютере со свежим Linux-ядром шину CAN в качестве сетевого устройства.

После загрузки запускаем команду candump can0 и начинаем отслеживать трафик:

Несмотря на то, что вышеуказанная информация эквивалентна амплитуде звукового сигнала, довольно трудно понять, что происходит, и обнаружить какие-либо закономерности. Нам нужно нечто похожее на частотный анализатор, и такой эквивалент есть в виде утилиты cansniffer. Cansniffer показывает список идентификаторов и позволяет отслеживать изменения в секции данных внутри CAN-фрейма. По мере того как мы будем изучать определенные идентификаторы, мы можем установить фильтр нужных ID, которые имеют отношение к нашей задаче.
На рисунке ниже показан пример информации, снятой при помощи cansniffer с шины MS. Мы отфильтровали все, что имеет отношение к идентификаторам 355, 356 и 358. После нажатия и отпускания кнопок, связанных с подстройкой температуры, в самом конце появляется значение 001C00000000.

Рисунок 7: Информация с шины MS, снятая при помощи утилиты cansniffer
Далее необходимо объединить функционал для управления климатической системой с компьютером, работающим внутри автомобиля. Компьютер работает на операционной системе ROS (Robot Operating System; Операционная система для роботов). Поскольку мы используем SocketCAN, то модуль socketcan_bridge серьезно упрощает задачу по преобразованию CAN-фрейма в блок информации, понимаемый операционной системой ROS.
Ниже показан пример алгоритма декодирования:

Полученные данные хранятся в CelsiusReport.msg:

После нажатия всех нужных кнопок в машине, у нас появляется следующий список:

Затем эти строки отсылаются на узел под управлением операционной системы ROS и далее происходит трансляция в коды, понимаемые автомобилем:

Заключение
Теперь мы можем создавать и посылать те же самые коды в шину CAN, которые формируются при нажатии физических кнопок, связанных с повышением и понижением температуры, что дает возможность удаленного изменения температуры автомобиля при помощи приложения, когда мы находимся на заднем сидении автомобиля.

Рисунок 8: Удаленное управление климатической системой автомобиля
Это лишь небольшой шаг при создании самоуправляемого такси вместе со специалистами компании Voyage. Я получил массу положительных эмоций во время работы над этим проектом. Если вы тоже интересуетесь этой темой, можете ознакомиться со списком вакансий в компании Voyage.

Один хакер может причинить столько же вреда, сколько 10 000 солдат! Подпишись на наш Телеграм канал, чтобы узнать первым, как выжить в цифровом кошмаре!

Читайте также: