Перейти к содержанию
    

Эмуляция сигнала реверса в Машине с CAN

У Транзита протокол в принципе тот же, но его непосредственно не сканировал. Зато на Фокусе пакет точно есть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Таких сообщений у Транзита в разъёме OBD нет.

Хотя я что то засомневался в правильности снятия лога, т.к. не вижу в нём ID=0x7E8...0x7EA. А судя по описанию OBD (я в него только сейчас первый раз заглянул, поэтому может и не разобрался) такие ID обязательно должны присутствовать.

В общем вижу только:

0F6   127   296   38A   409
      128         38B   4E2
      129         38E   4E3
      12A               4FE

Может у моей читалки была ошибка в софте? Надо будет ещё раз перечитать...

 

Похоже на какую-то ошибку. Т.к. у меня есть полное описание СAN протокола Ford, то могу сказать, что этих ID там нет. Кстати, текущая передача также содержится в пакете с ID 0x231.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

Для определения номера передачи совсем не нужны физические датчики. Достаточно знать скорость автомобиля и обороты двигателя. Соответственно, ничего не мешает вычислять номер передачи и выдавать его в сеть. (Этим занимается любой ЭБУ двигателя)

Изменено пользователем Alex_VI

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Похоже на какую-то ошибку. Т.к. у меня есть полное описание СAN протокола Ford, то могу сказать, что этих ID там нет. Кстати, текущая передача также содержится в пакете с ID 0x231.

Ошибку нашёл. Спасибо.

Ну не работал я никогда с ID 11 бит, а она только на это влияла, поэтому не выявленная и оставалась. Транзит прочитал просто так, из интереса, и был в полной уверенности, что прочитал правильно т.к. лог до сегодняшнего дня даже и не анализировал.

Но теперь мне интересно стало. Если не жалко, то протоколом поделитесь пожалуйста.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ошибку нашёл. Спасибо.

Ну не работал я никогда с ID 11 бит, а она только на это влияла, поэтому не выявленная и оставалась. Транзит прочитал просто так, из интереса, и был в полной уверенности, что прочитал правильно т.к. лог до сегодняшнего дня даже и не анализировал.

Но теперь мне интересно стало. Если не жалко, то протоколом поделитесь пожалуйста.

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для определения номера передачи совсем не нужны физические датчики. Достаточно знать скорость автомобиля и обороты двигателя. Соответственно, ничего не мешает вычислять номер передачи и выдавать его в сеть. (Этим занимается любой ЭБУ двигателя)

Не всё так просто. Далеко не все датчики скорости направление выдают, поэтому задний ход определить нельзя. А некоторые даже и работать только с определённой скорости начинают. Датчики, где катушечка с магнитиком около зубчатого диска стоит, при малой скорости слишком малое напряжение вырабатывают, поэтому у всех американских тягачей скорости менее 20 км/час в сети не бывает, и спидометр тоже не показывает. Т.е. с 0 сразу скачёк на 20. А вот датчик нейтрали - у всех есть.

 

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

Понятно. Интересно, а это у всех легковых машин так?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не всё так просто. Далеко не все датчики скорости направление выдают, поэтому задний ход определить нельзя. А некоторые даже и работать только с определённой скорости начинают. Датчики, где катушечка с магнитиком около зубчатого диска стоит, при малой скорости слишком малое напряжение вырабатывают, поэтому у всех американских тягачей скорости менее 20 км/час в сети не бывает, и спидометр тоже не показывает. Т.е. с 0 сразу скачёк на 20. А вот датчик нейтрали - у всех есть.

 

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

 

Да и датчик заднего хода у всех есть

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Понятно. Интересно, а это у всех легковых машин так?

 

На счет всех машин сказать не могу, но, например, на Фокусе номер передачи появляется в пакете не сразу при переключении на эту передачу, а после отпускания сцепления. На Рено с автоматом висит сразу, даже без заведенного двигателя, но при вкл. зажигании.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Похоже, никудышный из меня хакер.

Подключился CAN анализатором к OBD разъему. Скорость там 500кбит и 11-бит идентификаторы.

При включении зажигания обмен там идет офигенный. Небольшой лог записал.

В итоге надыбал, что положение руля находится в сообщении с ID 0x25 DLC 8-байт в 1-ом и 2-ом байте. Сообщение траслируется циклически каждые 10мс. Причем положение обнуляется при отключении аккумулятора. Т.е. при прямо стоящих колесах данные не точно равны 0.

Текущие обороты двигателя есть в сообщении 0х1с4, которое транслируется каждые 4мс и 0х3B3, которое транслируется каждые 0,5с.

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

Потом я отсоеденил CAN анализатор от шины и подключил его к моему устройству, чтобы проверить на что он реагирует. Как и ожидалось, при посылке сообщения 0x25 с любыми данными устройство реагирует и поворачивает линии. Все это в режиме меню.

При нормальной работе, как и ожидалось линии не показываются, если на CAN шине присуствует хоть какой-то обмен, если сообщений не слать, то появляется сообщение о неподключенном OBD.

Но мне надо ж найти сообщение о включении заднего хода, чтобы устройство перешло в рабочий режим. И я не нашел ничего лучшего (или худшего) чем перебрать все идентификаторы от 0 до 7FF с данными по 8 байт вида 0xFF ...

И тут на сообщении с идентификатором 0x7FF я эту штуку запорол... Короче она перешла на китайский язык(до этого была на русском). Тип модели, которую можно было бы выбрать остался только Audi A6. Появились изображения парктроников и все. А в CAN она стала выдавать сообшения с идентификаторами 0х200, 0x605. И реагировать на 0х21D изменением цифр на изображении парктроников.

Короче, я ее, похоже, в какой-то ну очень сервисный режим ввел, а вывести обратно уже не смог... Все на китайском. Повезу в магазин, наверное....

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не удивительно что запорол.....в области IDшников 0x7XX работает всякая диагноза и само собой через эту область проходят все процедуры конфигурирования итд...

 

Дааа...и если Вы сканировали тойоту, не факт что все пакеты отловить успевали....шинка там весьма нагружена, не каждый сниффер все тянет с отключеным фильтром.

 

И еще, вот файлик по ссылке гляньте, может чем поможет

http://can.web-box.ru/docs/vkusnoe-8

Изменено пользователем Punk

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Похоже на какую-то ошибку. Т.к. у меня есть полное описание СAN протокола Ford, то могу сказать, что этих ID там нет. Кстати, текущая передача также содержится в пакете с ID 0x231.

 

Ошибку нашёл. Спасибо.

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

 

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

Сканирую Ford Transit 2011. Получаю следующие идентификаторы:

0x0F6 0x127 0x128 0x129 0x12A 0x1F4 0x296 0x38A 0x38B 0x38E 0x400 0x405 0x409 0x442 0x443 0x4C2 0x4E2 0x4E3 0x4E4 0x4FE

 

Вот скриншот с окна программы-анализатора, ID 0x0F6h:

 

post-69934-1437716698_thumb.jpg

 

Вот еще, ID 0x127h

 

post-69934-1437720493_thumb.jpg

 

На скриншотах четко видно, что 11-битный ID расшифровывается вполне корректно:

 

00011110110b = 0x0F6h

00100100111b = 0x127h

 

Но уважаемый Serg_el пишет, что таких ID у форда нет.

Подскажите, в чем загвоздка?

Изменено пользователем MEXAHuK

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если вы видите в пакете ID 0x127h то в чем проблема? и с чего вы взяли что у всех фордов набор ID одинаковый?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если вы видите в пакете ID 0x127h то в чем проблема? и с чего вы взяли что у всех фордов набор ID одинаковый?

Ну вот из этой переписки, где коллега galjoen сканировал транзит и получил практически такой же список, как у меня,

а коллега Serg_el сообщил, что таких кодов у Форда быть не может:

0F6 127 128 129  12A 296 38A 38B 38E 409 4E2 4E3 4FE

Похоже на какую-то ошибку. Т.к. у меня есть полное описание СAN протокола Ford, то могу сказать, что этих ID там нет.

А затем коллега galjoen сообщает, что

Ошибку нашёл. Спасибо.

Ну не работал я никогда с ID 11 бит, а она только на это влияла, поэтому не выявленная и оставалась. Транзит прочитал просто так, из интереса, и был в полной уверенности, что прочитал правильно т.к. лог до сегодняшнего дня даже и не анализировал.

А я не вижу никакой ошибки, вот потому и прошу помощи в ее обнаружении.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

Да и датчик заднего хода у всех есть

 

зачем так сложно? у большинства вендоров просто сообщение скорости передаётся со знаком.

т.о. отрицательная скорость будет свидетельстовать о включении задней передачи.

Увы, и считывание скорости и косвенное вычисление для задач ТС мало пригодны - предположу, что при парковке очень медленное движение колёс, чтобы по датчику АБС рассчитывать скорость.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...