|
|
  |
Как правильно принять мультипакетную передачу в J1939?, Практика с теорией расходятся... |
|
|
|
Oct 27 2009, 13:06
|
Знающий
   
Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640

|
Попробовал почитать J1939 на дизелях. С сообщениями длиной 8 байт всё вроде понятно. А вот с длинными, мультипакетными, вопросы: 1. В SAE J1939-21 написано, что PDU Format (биты ID 16..23) у мультипакетных сообщений бывают 0, 1, 238=0xEE, 239=0xEF, 254=0xFE и 255=0xFF. Реально на шине вижу мультипакеты с PDU Format 0xEC (заголовок) и 0xEB (данные). Это что, нестандартные сообщения или это я что-то не так понял? 2. Может ли в один момент времени передаваться больше одного мультипакета? И кто ещё, кроме ЭБУ, может передавать мультипакеты? 3. М.б. кто-то ткнёт носом в документ, где показан алгоритм приёма мультипакета?
|
|
|
|
|
Oct 28 2009, 11:45
|
Знающий
   
Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640

|
Цитата(HARMHARM @ Oct 28 2009, 13:51)  Я, честно говоря, в мультипакетной передаче сильно не копался. У меня 1939-21 от 2001 года. на странице 31, раздел 5.10.3 указан формат Transport Protocol - Connection Management в FIGURE 14, с PDU 236 - 0xEC. FIGURE 15 на странице 34, раздел 5.10.4 - Transport Protocol - Data Transfer, PDU 235 - 0xEB. Странно, правда?  Ну, до 34-й страницы я ещё не дочитал  На прошлой неделе только J1939 заниматься начал... А на 12-й странице в вашем документе "FIGURE 4 SAE J1939 PARAMETER GROUP NUMBER TEMPLATE" это что? Отвлечённый от жизни пример шаблона?
|
|
|
|
|
Dec 14 2009, 05:34
|
Группа: Новичок
Сообщений: 2
Регистрация: 12-12-09
Из: Vilnius
Пользователь №: 54 214

|
Цитата(galjoen @ Oct 27 2009, 15:06)  Попробовал почитать J1939 на дизелях. А чем читаете? Каким софтом?
|
|
|
|
|
Dec 14 2009, 13:31
|

читатель даташитов
   
Группа: Свой
Сообщений: 853
Регистрация: 5-11-06
Из: Днепропетровск
Пользователь №: 21 999

|
Цитата(Luxus @ Dec 14 2009, 07:34)  А чем читаете? Каким софтом? Вариантов два: 1. USB-CAN типа PEAK-CAN или похожим, с родным софтом или CAN Hacker. 2. Своим контроллером и своим софтом.
|
|
|
|
|
Dec 15 2009, 19:52
|

Участник

Группа: Участник
Сообщений: 60
Регистрация: 19-03-06
Из: Йошкар-Ола
Пользователь №: 15 388

|
Да, надо читать весь документ. Описание транспортного протокола в "SAE J1939-21 Revised April 2001" начинается с раздела 5.10 на странице 27 и продолжается до страницы 44, то есть почти до конца. В конце как раз диаграммы обмена приводятся.
FIGURE 4 описывает группы PDU, определяя, с каким интервалом могут передаваться сообщения данной групы, и могут ли они передаваться транспортным протоколом (Multipacket - Allowed/NA).
"Boundary" - это граница где-то внутри каждого из 4 диапазонов, из J1939-21 совершенно непонятно, где она проходит по PDU, понятно только что граница проведена по интервалу передачи 100 мс. В этом моменте я не разбираюсь. В общем, мутный рисунок. Не думаю, что для реализации приёма он имеет значение.
Какие сообщения могут передаваться мультипакетом (то есть иметь длину данных более 8 байт), лучше смотреть непосредственно в SAE J1939-71 (Vehicle Application Layer) и в SAE J1939-73 (Application Layer -Diagnostics)
По параллельным сессиям: Исходя из формата сообщений транспортного протокола, для каждой пары адресов "источник-приёмник" может быть открыта только одна сессия. Дело в том, что пакет с данными (TP.DT) не содержит никакого идентификатора сессии, только номер пакета и адреса источника и приёмника. Это касается и широковещательной рассылки (адрес приёмника = 0xFF).
Упоминания ограничений на одновременное открытие сессии одного источника с разными приёмниками, или одного приёмника с разными источниками, я не нашёл.
|
|
|
|
|
Mar 16 2010, 18:30
|
Группа: Участник
Сообщений: 8
Регистрация: 27-02-08
Из: Санкт-Петербург
Пользователь №: 35 420

|
Цитата(Juray @ Dec 15 2009, 22:52)  Да, надо читать весь документ. Описание транспортного протокола в "SAE J1939-21 Revised April 2001" начинается с раздела 5.10 на странице 27 и продолжается до страницы 44, то есть почти до конца. В конце как раз диаграммы обмена приводятся.
FIGURE 4 описывает группы PDU, определяя, с каким интервалом могут передаваться сообщения данной групы, и могут ли они передаваться транспортным протоколом (Multipacket - Allowed/NA).
"Boundary" - это граница где-то внутри каждого из 4 диапазонов, из J1939-21 совершенно непонятно, где она проходит по PDU, понятно только что граница проведена по интервалу передачи 100 мс. В этом моменте я не разбираюсь. В общем, мутный рисунок. Не думаю, что для реализации приёма он имеет значение.
Какие сообщения могут передаваться мультипакетом (то есть иметь длину данных более 8 байт), лучше смотреть непосредственно в SAE J1939-71 (Vehicle Application Layer) и в SAE J1939-73 (Application Layer -Diagnostics)
По параллельным сессиям: Исходя из формата сообщений транспортного протокола, для каждой пары адресов "источник-приёмник" может быть открыта только одна сессия. Дело в том, что пакет с данными (TP.DT) не содержит никакого идентификатора сессии, только номер пакета и адреса источника и приёмника. Это касается и широковещательной рассылки (адрес приёмника = 0xFF).
Упоминания ограничений на одновременное открытие сессии одного источника с разными приёмниками, или одного приёмника с разными источниками, я не нашёл. Всем привет! Поставили недавно передо мной задачу разобраться с этим протоколом, - облазил весь Интернет, - ничего путнего не нашел. Не подскажите, где можно найти на него документацию или что лучше почитать? Если не сложно, у кого есть, киньте пожалуйста на почту - orp33@mail.ru
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|