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

Получение данных по запросу в J1939.

EEC1 ни у кого не шлёт. Искал чтобы обороты получить... И EEC2 и EEC3 тоже не шлёт.

Обороты из FEF1 часто получаются.

А я так понял, что разные блоки могут сообщения с одинаковым PGN слать. Т.е. отличие в младшем байте ID будет (0x00/0x0B).

Да, встречалось.

А ещё имеются FF08 (ID=18 FF 08 00). Что это такое, в каком документе посмотреть? Хотя, наверное, ерунда какая-нибудь, т.к. там всегда все 8 байт данных FF.

FFxx это всё проприетарные расширения. New Holland например почти всё так гоняет.

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


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

EEC1 ни у кого не шлёт. Искал чтобы обороты получить... И EEC2 и EEC3 тоже не шлёт.

EEC1 - ОБЯЗАТЕЛЬНОЕ сообщение. Двигатель может не передавать ничего из остальных приписанных ему параметров, но свои обороты он сообщать должен, если он сидит на шине. Есть в шине сообщения с SA=00 ? Если такие есть, но нет EEC1, то контроллер двигателя неправильно настроен.

EEC2 и EEC3 - сообщения вспомогательные.

 

А я так понял, что разные блоки могут сообщения с одинаковым PGN слать. Т.е. отличие в младшем байте ID будет (0x00/0x0B).

Зависит от PGN.

Есть универсальные - например, любой блок может послать Request, выдать инфу о своих неисправностях, сообщить версию ПО и т.п.

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

 

Обороты из FEF1 часто получаются.

Из CCVS? Это как?

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

 

FFxx это всё проприетарные расширения.

Именно. Весь диапазон FF00-FFFF определен как "Manufacturer Assigned".

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

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


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

EEC1 - ОБЯЗАТЕЛЬНОЕ сообщение. Двигатель может не передавать ничего из остальных приписанных ему параметров, но свои обороты он сообщать должен, если он сидит на шине. Есть в шине сообщения с SA=00 ? Если такие есть, но нет EEC1, то контроллер двигателя неправильно настроен.

EEC2 и EEC3 - сообщения вспомогательные.

Ну нет там EEC1. А с 00, в младшем байте ID, сообщений большинство. Вот FEF2 - мгновенный расход, например.

А из PGN F0xx имеется только:

ID                  данные
18 F0 00 0F     FF FF FF FF 0F FF FF FF - всегда (кто такой 0F (SA) в ID? Больше вроде нигде он не встречается)
18 F0 01 00     FF FF FF FF FF FF FF FF
18 F0 01 0B     CF FF F0 FF FF 0D FF FF

Это с завода так. Никто там ничего никогда не перестраивал и вообще не подключался. И работает. М.б. потому, что коробка механическая? Надо будет на автомате глянуть.

 

А как там вообще что-нибудь настроить можно?

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


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

Ну нет там EEC1. А с 00, в младшем байте ID, сообщений большинство. Вот FEF2 - мгновенный расход, например.

 

18 F0 00 0F     FF FF FF FF 0F FF FF FF - всегда (кто такой 0F (SA) в ID? Больше вроде нигде он не встречается)

Странно.

0F - это "Топливная система".

Притом что F0 00, то есть pgn61440 - это ERC1 (Electronic Retarder Controller 1), сообщение тормоза-замедлителя, который обычно является субблоком ЭСУД.

 

F001 передаваемое с адреса 00 - это тоже нонсенс какой-то.

pgn61441 = EBC1 - Electronic Brake Controller 1. Это информация о работе тормозной системы, включая АБС/ПБС.

Вот с адреса 0B - это нормально (третья запись).

 

Это с завода так. Никто там ничего никогда не перестраивал и вообще не подключался. И работает. М.б. потому, что коробка механическая? Надо будет на автомате глянуть.

 

А как там вообще что-нибудь настроить можно?

 

Настройка выполняетя с помощью соответствующего диагностического оборудования и софта. Вплоть до перешивки контроллера. Когда мы на УралАЗе с бошевцами пересекались, довелось наблудать процедурку - у них целый стенд для этого применяется. А вот на МАЗе они просто ноутом через адаптер подключались, но там перешивку не делали - только включение опции.

 

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

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

 

А уж какие-то китайцы могут и вообще повырубать трансляцию как попало - мол, не предвидится приёмника для этого сообщения - и нафиг его передавать.

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


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

Странно.

0F - это "Топливная система".

Притом что F0 00, то есть pgn61440 - это ERC1 (Electronic Retarder Controller 1), сообщение тормоза-замедлителя, который обычно является субблоком ЭСУД.

Что-то я не нашёл документ, в котором прописано соответствие между SA (младшие 8 бит ID) и системами автомобиля. Не подскажете где посмотреть?

В сети имеется мультипакетное сообщение:

 ID                Данные
18 EC FF 0F   20 13 00 03 FF E1 FE 00
18 EB FF 0F   01 00 00 40 1F 6E 10 4F
18 EB FF 0F   02 6E 00 00 6E 00 00 6E
18 EB FF 0F   03 78 3F 14 05 6E FF FF

Т.е. SA=0F, а само сообщение аналогично Retarder Configuration. Но там 8 мл. бит ID д.б. =0x10.

Видимо это тоже глюк.

Настройка выполняетя с помощью соответствующего диагностического оборудования и софта. Вплоть до перешивки контроллера. Когда мы на УралАЗе с бошевцами пересекались, довелось наблудать процедурку - у них целый стенд для этого применяется. А вот на МАЗе они просто ноутом через адаптер подключались, но там перешивку не делали - только включение опции.

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

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

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

 

А уж какие-то китайцы могут и вообще повырубать трансляцию как попало - мол, не предвидится приёмника для этого сообщения - и нафиг его передавать.

Видимо так и есть, хотя тут не китайцы, а наши задействованы...

У всех автобусов с АКПП сообщение EEC1 есть. И данные в нём корректные.

Причём сообщение EEC1 имеется и на некоторых автобусах с механической КПП, но не на всех. Примерно 1 из 3. Отчего зависит - непонятно.

Задавал этот вопрос Камминзу - обещали разобраться. Говорят, что галки у нас в России на заводе ставят. В первой половине февраля буду у Камминза - подниму эту тему ещё раз.

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


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

Распределение адресов определено в таблицах "SAE J1939 Tables B2 to B9"

Ссылка на эти таблицы есть в SAE J 1939-81, в п.4.1.2 (по версии JUL97)

Мне эти таблицы достались уже переведённые на русский, в виде приложения к техническим требованиям. Поделиться не могу, к сожалению.

 

А я, похоже, ошибся с трактовкой адреса.

 

0F = "Топливная система" - это не адрес, а номер функции по таблице B5 "Наименование функций, общие для всех областей промышленности"

 

А вот по таблице B2 "Рекомендуемые адреса. Группа промышленности 0 - Общая" 0F это как раз "Замедлитель двигателя".

Так что с этими сообщениями всё в порядке. Остаётся странность только с F001.

 

А откуда 0x10?

По той же B2 это "Замедлитель карданной передачи".

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

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


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

Распределение адресов определено в таблицах "SAE J1939 Tables B2 to B9"

Ссылка на эти таблицы есть в SAE J 1939-81, в п.4.1.2 (по версии JUL97)

TABLE B2

J1939 PREFERRED ADDRESSES

INDUSTRY GROUP #0 - GLOBAL

Rev Address ECU-Module Definition

0 Engine #1

1 Engine #2

....

15 Retarder – Engine Engine Compression Braking

16 Retarder – Driveline

.......

Спасибо, сразу же нашёл. Это оно?

А откуда 0x10?

Это из "CAN-Specification SAE J1939 VOITH DIWA.3 E200-ECU"

У меня распечатка есть, а сам файл найти не могу. На другом компе наверное.

По той же B2 это "Замедлитель карданной передачи".

Т.е. "16 Retarder – Driveline" так перевели. Так лучше уж в оригинале смотреть...

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


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

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

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

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

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

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

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

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

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

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