Прикладной уровень имеет дело с группами параметра (PG), отправленные и полученные по сети. Протокол J1939 использует широковещательные сообщения или сообщения, отправленные по шине CAN без заданного места назначения. Устройства в той же сети могут получить доступ к этим сообщениям без разрешения или специальных запросов. Если устройство требует определенного сообщения, включайте адрес назначения устройства в идентификатор сообщения.
Сообщение содержит группу параметров, которые задают похожие сообщения. Например, сообщение, отправленное контроллеру механизма, может содержать и скорость вращения двигателя и об/мин. Эти параметры представлены в идентификаторе CAN номером группы параметра (PGN). Группы параметра используют 29-битные идентификаторы с этой структурой сообщения:
Параметр | Приоритет | Зарезервированный | Страница данных | Формат PDU | Конкретный PDU | Исходный адрес |
---|---|---|---|---|---|---|
Размер | 3 бита | 1 бит | 1 бит | 8 битов | 8 битов | 8 битов |
Первые три бита представляют приоритет сообщения в сети. Нуль является самым высоким приоритетом.
Следующий бит резервируется для будущего использования. Для сообщений передачи, обнуленных это.
Следующий бит является страницей данных, которая расширяет максимальное количество возможных PG в идентификаторе.
Следующие 8 битов являются форматом модуля данных о протоколе (PDU), который задает, предназначено ли сообщение для единого устройства или широковещательно передается. Если PDU меньше 240, то сообщение отправляется в определенное устройство и если это более чем 240, это отправляется в целую сеть.
Следующие 8 битов являются конкретным PDU, который содержит адрес устройства, когда формат PDU меньше 240. Если формат PDU больше 240, конкретный PDU содержит расширение группы или количество расширенных широковещательных сообщений в этой группе параметра.
Последние 8 битов содержат исходный адрес, который является адресом устройства, отправляющего группам параметра.
Прикладной уровень протокола передает PG в сети CAN. Длина PG может составлять до 1 785 байтов и не ограничивается длиной сообщения CAN. Однако PG, больше, чем 8 байтов, должны быть переданы с помощью транспортного протокола.