В таблице 1 указаны поля, которые составляют NAME, перечисленные в порядке приоритета от бита с самонастраиваемым адресом до наименее значимого байта идентификационного номера.
В зарезервированный бит устанавливается 0.
Любое поле экземпляра в NAME может быть изменено и перенастроено при установке ECU или при наличии нескольких экземпляров в сети с помощью сообщений управления NAME (см. 4.5.3).
При необходимости, может быть достигнуто соглашение между изготовителем и сборщиком системы о толковании и использовании экземпляров функций. Например, производитель или другие части ИСО 11873 могут использовать экземпляр функции для указания положения или специальных функций CF.
Пример - В случае двух двигателей и трансмиссий достигается соглашение о том, что экземпляр 0 двигателя должен быть физически связан с экземпляром 0 трансмиссии, а экземпляр 1 двигателя - с экземпляром 1 трансмиссии.
Если функция управляется двумя отдельными ECU, каждый из которых подключен к одной и той же сети ИСО 11783, поле экземпляра ECU должно быть установлено равным 0 для первого ECU и 1 для второго. Производитель ECU должен гарантировать, что NAME является уникальным и не изменяется при отключении питания. Если все другие поля могут быть идентичны NAME другой CF, то NAME должно быть сделано уникальным путем установки идентификационного номера (например, серийного номера или кода данных/времени на продукте).
На рисунке 2 показаны взаимосвязи между полями, а также зависимость верхних 128 функций от класса устройства и отраслевой группы, зависимость идентификационного номера от кода производителя и независимость функций от 0 до 127 от отраслевой группы или класса устройства, учебный класс. Количество битов, которое содержит каждое поле, указано над каждым полем.
![]() 4.3.3 Адрес
4.3.3.1 Общие положения
Адрес - это однобайтовое значение, идентифицирующее конкретный CF в сети. Адрес CF включается в идентификатор каждого сообщения, отправляемого этой CF, и используется для обеспечения уникальности сообщений, отправляемых CF. После первоначального включения и при работе сети каждая CF должна иметь уникальный SA. SA может быть связан с другой CF после каждого включения сети, а также может варьироваться от одного сетевого соединения к другому сетевому соединению. NAME, которое связано с адресом источника, включает в себя идентификацию функции, которую выполняет CF, и сохраняет это непротиворечивое определение независимо от адреса источника, который использует CF.
4.3.3.2 Предпочтительный адрес
CF могут работать в сети ИСО 11783, используя назначенный предпочтительный адрес. Если предпочтительный адрес уже был объявлен, CF должна либо попытаться запросить другой SA, либо отправить сообщение о невозможности объявить адрес источника, в зависимости от возможностей адресации CF и доступности неиспользуемых адресов. Когда CF объявляет другой адрес, этот новый адрес должен быть сохранен как начальный адрес, который будет использоваться при всех последующих включениях.
Список назначенных предпочтительных адресов см. в ИСО 11783-1.
CF, запрашивающая предпочтительный адрес в диапазоне от 0 до 127 и от 248 до 253, должна выполнять функцию, определенную для этого предпочтительного адреса, и должна указывать эту функцию в своем NAME.
Функция, выполняемая CF, никогда не должна определяться только по SA; только NAME CF должно использоваться для установления функции <1>.
--------------------------------
<1> Первое издание настоящего стандарта (ИСО 11783-5:2001) не устанавливало связь между адресом и функцией.
4.3.3.3 Самонастраиваемый адрес
CF по ИСО 11783, которые не имеют назначенного предпочтительного адреса или не могут объявить свой предпочтительный адрес, должны объявлять адрес в диапазоне от 128 до 247. Поскольку несколько CF могут объявить адреса в этом диапазоне, этот тип CF должен быть с самонастраиваемым адресом. Это позволяет процессу объявления адресов предоставлять уникальные адреса для каждого CF в сети.
Некоторые адреса в верхней части диапазона самонастраиваемых адресов от 128 до 247 определяются как предпочтительные адреса для функций отраслевой группы 2 (см. ИСО 11783-1). Эти адреса не привязаны к функции, и они могут использоваться любой CF с самонастраиваемым адресом. Рекомендуется, чтобы CF, которые вынуждены объявлять новый адрес, пытались объявлять адреса из нижней области диапазона самонастраиваемых адресов, и только если все адреса в нижней области уже заявлены, CF должны объявлять адреса из диапазона предпочтительных адресов.
4.3.3.4 Начальный адрес
Во время производства в качестве начального адреса (адреса, который CF пытается объявить при включении питания) должен быть установлен предпочтительный адрес. Начальный адрес для CF может быть перепрограммирован, чтобы разрешить настройку системы.
Каждый раз, когда CF с доступным сервисно-настраиваемым, командно-настраиваемым или самонастраиваемым адресами объявляет новый адрес, этот новый адрес должен сохраняться в качестве начального адреса, который будет использоваться при всех последующих включениях питания. Это также относится к CF с назначенными предпочтительными адресами.
4.3.3.5 Адрес NULL
Адрес NULL (254) должен использоваться только в качестве адреса источника, и предназначен для использования только в сообщениях управления сетью, приведенных в настоящем стандарте.
4.3.3.6 Глобальный адрес
Глобальный адрес (255) должен использоваться только в качестве адреса назначения.
4.4.1 Общие положения
Процедуры управления сетью включают обмен сообщениями и действия, предпринимаемые CF для коллективного управления сетью. Управление адресом и ошибками в сети (см. 4.4.2 и 4.4.4 соответственно) являются основными ролями протокола управления сетью. За исключением ограничения на использование адреса NULL, сообщения управления сетью имеют те же характеристики и подчиняются тем же требованиям, что и другие сообщения ИСО 11783 (например, сообщение объявления адреса является сообщением запроса PGN, которое описано в ИСО 11783-3).
Адрес NULL (254) допустим только в поле SA сообщения управления сетью и только в том случае, если сообщение является запросом на объявления адреса или сообщением о невозможности объявить адрес источника.
4.4.2.1 Функции сообщений управления адресами
Набор сообщений управления адресами приведен в таблице 2 и используется функциями для:
- запроса NAME и адреса, используемых другой CF в сети (сообщение с запросом объявления адреса);
- объявления адреса (сообщение с объявлением адреса);
- ответа о невозможности объявить адрес (сообщение о невозможности объявления адреса);
- команды другой CF принять новый адрес (сообщение с командой назначения адреса).
Таблица 2
4.4.2.2 Сообщение с запросом объявления адреса
Сообщение с запросом объявления адреса может быть передано любой CF для запроса NAME и адреса любой другой CF, работающей в сети. После получения получающая CF должна ответить сообщением объявления адреса, содержащим ее адрес и ее NAME, а CF, которая не может объявить адрес, должна ответить сообщением о невозможности объявления адреса (см. 4.4.2.3 для процедуры в обоих случаях). Исключением из этого требования является CF, которая еще не пыталась объявить адрес и которая не должна отправлять сообщение о невозможности объявления адреса и фактически не участвует ни в каких сетевых коммуникациях (кроме запроса объявления адреса), прежде чем пытаться объявить адрес.
SA для сообщения с запросом объявления адреса должен быть адресом NULL, если сообщение отправлено CF, которая еще не объявила адрес.
CF может передавать сообщение с запросом объявления адреса либо по глобальному адресу назначения (255), либо по конкретному адресу. В первом случае CF затем может определить наличие в сети другой CF с конкретным NAME, изучив ответы на свое сообщение на глобальный адрес назначения, тогда как во втором случае инициирующая CF может опросить другую, чтобы определить был ли адрес уже объявлен. CF должна ответить на свое собственное сообщение с запросом объявления адреса, если оно отправлено на Глобальный адрес.
Сообщение объявления адреса должно использоваться CF для ответа на сообщение с запросом на объявление адреса и для объявления адреса в сети. Если CF получает сообщение с объявлением адреса, объявляющее ее собственный адрес источника, она должна сравнить свое собственное NAME с полученным и определить, какое NAME имеет более высокий приоритет, то есть более низкое числовое значение. Если она определяет, что она имеет более высокий приоритет, CF передает сообщение объявления адреса, содержащее ее NAME и адрес. Однако, если она имеет более низкий приоритет, она должна либо объявить новый адрес, либо передать сообщение о невозможности объявления адреса (см. 4.4.2.4). Один номер группы параметров (PGN) используется как для сообщений объявления адреса, так и для сообщений с запросом объявления адреса.
Чтобы успешно объявить адрес, CF, отправляющая сообщение объявления адреса, не должна получать конфликтующие требования от других CF в течение как минимум 250 мс. Межсетевой соединительный модуль не должен использовать свой собственный адрес при обмене данными в сети, пока он не объявил успешно свой адрес (пересылка сообщений между другими ECU является особой задачей межсетевого соединительного модуля) (см. ИСО 11783-4) Однако межсетевой соединительный модуль может пересылать сообщения, прежде чем объявить собственный адрес.
Сообщение о невозможности объявления адреса передается (в ответ на сообщение с запросом объявления адреса или сообщение объявления адреса) любой CF, которая не может объявить свой начальный адрес и не имеет возможности самонастраиваемого адреса, или у нее есть возможность самонастраиваемого адреса, но она не может объявить адрес, потому что нет доступных для использования адресов. Несмотря на то, что сообщение о невозможности объявления адреса имеет тот же PGN, что и сообщение объявления адреса, его SA должен быть адресом NULL (254).
Произвольная задержка передачи (RTxD) должна быть вставлена между приемом сообщения, запускающего ответ о невозможности сообщения адреса и отправкой ответа, чтобы минимизировать возможность двух таких ответов, вызывающих ошибки шины.
CF, которая не может объявить адрес, не должна отправлять никакие сообщения, кроме сообщения о невозможности объявления адреса сообщения с запросом объявления адреса.
CF, которая не может объявить адрес, может продолжать получать и обрабатывать глобальные сообщения (такие как сообщение с командой назначения адреса).
Поддержка сообщения с командой назначения адреса не является обязательной. Если CF не поддерживает сообщение с командой назначения адреса, оставшаяся часть пункта 4.4.2.5 должна игнорироваться.
Это сообщение может использоваться одной CF (например, межсетевым соединительным модулем, таким как мост или сервисный инструмент), чтобы дать команду другой CF (далее называемой управляемая CF) использовать конкретный SA. Если CF получает сообщение с командой назначения адреса, но не может сменить свой адрес на назначаемый, CF должна ответить объявлением адреса, объявляющим текущий SA. Затем оператор или технический специалист может изменить SA управляемой CF другими способами. Изготовитель ECU может запретить своему продукту принимать сообщения с командой назначения адреса от любой CF, кроме, например, моста или сервисного инструмента, или потребовать проверку безопасности для своей CF, чтобы принять такое сообщение.
При получении сообщения с командой назначения адреса, управляемая CF должна объявить назначенный адрес своим новым адресом SA; применяются требования 4.5.2.
Сообщение с командой назначения адреса должно содержать 9 байт данных и должно быть отправлено на глобальный адрес (255) с использованием сообщения широковещательного оповещения (BAM) транспортного протокола (см. ИСО 11783-3). Следовательно, CF, предназначенные для поддержки сообщения с командой назначения адреса, также должны поддерживать BAM.
4.4.3 Сообщения и процедуры управления NAME
4.4.3.1 Общие положения
Сообщение об изменении поля NAME CF может использоваться при настройке сети, содержащей CF с несколькими экземплярами функций, ECU или классов устройств. Изменение функции универсального ECU является еще одним возможным использованием этого сообщения. Оно также может использоваться, когда другие методы уникальной идентификации CF недоступны. Это сообщение может использоваться в сочетании с шагами ручной настройки и/или с методом командного назначения адреса, чтобы выполнить настройку сети.
Одна CF (управляющая CF) может дать команду другой CF (целевой CF) использовать данное NAME с помощью сообщения управления NAME. Это сообщение может использоваться для управления целевой CF с конкретным адресом заменить некоторые поля ее NAME новыми значениями.
Основное использование этого сообщения - установка полей экземпляра в NAME, но все поля NAME могут быть изменены с помощью этого сообщения, за исключением поля Идентификационный номер, которое должно оставаться неизменным после первоначального изготовления.
Для CF необязательно поддерживать сообщение управления NAME. Если сообщение поддерживается, производитель ECU может ограничить использование сообщения, не принимая его от CF, отличных от, например, сервисных инструментов или межсетевых соединительных модулей. Производители ECU могут также потребовать дополнительные проприетарные процессы проверки безопасности, прежде чем принимать сообщения управления NAME. Производитель ECU может дополнительно ограничить использование сообщения, только принимая изменения для отдельных полей NAME, таких как поле экземпляра.
CF, управляющая изменениями полей NAME, должна правильно идентифицировать адреса источников CF, изменяемые до использования этой команды. Команды направлены на адреса источника.
4.4.3.2 Сообщение управления NAME (NM)
Сообщение NM используется для управления назначением полей NAME CF во время конфигурации сети. Сообщение NM содержит 8 байт данных и отправляется как сообщение PDU1. В зависимости от режима управления NM, сообщение отправляется либо на глобальный адрес, либо на конкретный адрес источника CF, подлежащей изменению.
Как указано ниже, есть два основных пользователя и несколько вариантов использования данного сообщения.
1) Управляющая CF может
a) командовать целевой CF установить новое отложенное NAME;
b) запрашивать отложенное или текущее NAME целевой CF;
c) уведомлять одну или более целевых CF о необходимости применения их отложенных NAME;
d) запрашивать CF с конкретным NAME передать сообщение объявления адреса с ее текущим NAME.
2) Целевая CF должна
a) отвечать на запросы отложенного или текущего NAME;
b) подтверждать (ACK) или отрицательно подтверждать (NACK) команду на изменение отложенного NAME;
c) применять отложенное NAME в качестве текущего NAME и объявлять свое текущее NAME в сети;
d) отправлять сообщение объявления адреса в ответ на запрос для совпадающего NAME.
Индикатор режима управления NM всегда отправляется в четырех наименее значимых битах байта 3 и указывает, как используется сообщение NM. Другие поля параметров используются для некоторых режимов, но не для всех. Когда не используется для определенного режима, в неиспользуемых полях должны быть установлены 1. Поля, используемые для каждого режима, указаны в таблице 3 и в 4.4.3.3.
![]() Таблица 3
Когда индикатор режима управления NM установлен в режим 0 "установка отложенного NAME" контрольная сумма NAME используется для проверки того, что сообщение NM было отправлено правильной CF. Это защищает от возможности того, что SA целевой CF был объявлен другой CF через процесс арбитража адресов, так как командующая CF запустила процесс изменения NAME. Байт контрольной суммы NAME должен содержать арифметическую сумму 8 байтов исходного NAME целевой функции, усеченных до 8 наименее значимых битов.
Когда индикатор режима управления NM установлен на режим 4 "NAME NACK", он отображает коды ошибки, присланные целевой. Значения кодов следующие:
- 0 - Не пройдена проверка безопасности. Другой SA для принятия отложенный, чем назначенный отложенным.
- 1 - Изменение параметра(-ов) не допускается. Установить определяющий флаг на "1" для недопустимых параметров.
- 2 - Конфликт параметров. Невозможно присвоить назначенную функцию, невозможно присвоить возможность самонастраивания адреса и т.д. Установить определяющий флаг на "1" для недопустимых параметров.
- 3 - Контрольная сумма не совпадает.
- 4 - Отложенное NAME не установлено.
- 5 - Другое.
- 6 - 254 - Зарезервировано.
- 255 - Не применяется.
4.4.3.3.2 Определяющие флаги
Если для индикатора режима управления NM задан режим 0 (установите отложенное NAME), определяющие флаги используются для указания того, должны ли быть изменены соответствующие поля в отложенном NAME целевой CF. Если определяющий флаг установлен на "0", соответствующему полю в отложенном NAME должно быть присвоено значение в соответствующем назначаемом параметре в сообщении управления NAME. Если определяющий флаг установлен на "1", соответствующее поле не должно изменяться.
Если индикатор режима управления NM установлен в режим 4 (NAME NACK), а код ошибки равен 1 или 2, то определяющие флаги используются для обозначения запрещенных элементов. Целевая CF должна установить определяющий флаг на "1", если соответствующий параметр вызвал ошибку, и на "0", если он не вызвал ошибку. Для кодов ошибок, отличных от 1 и 2, этот определяющий флаг должен быть установлен на "1".
Если индикатор режима управления NM установлен в режим 8 (запрос объявление адреса NAME), определяющие флаги используются, чтобы указать, должен ли соответствующий командный параметр использоваться целевой CF для соответствия текущему NAME. Если флаг установлен на "0", соответствующий назначенный параметр должен использоваться в совпадении NAME. Если определяющий флаг установлен на "1", соответствующий назначенный параметр не должен использоваться в совпадении NAME.
Для всех других режимов управления NM определяющие флаги не применяются и должны быть установлены на "1".
4.4.3.3.3.1 Общие положения
Данный 4-битный параметр используется для определения задачи сообщения NM, как описано в пунктах с 4.4.3.3.3.2 по 4.4.3.3.3.11.
Эта форма сообщения является командой для целевой CF по адресу назначения в Идентификаторе CAN, чтобы изменить ее отложенное NAME на то, которое содержится в сообщении. Все поля данных сообщения являются обязательными.
Поля "назначаемых" параметров являются новыми (то есть назначенными) значениями полей NAME. Они должны быть определены с помощью определяющих флагов. Значение 0 в определяющих флагах указывает, что соответствующее поле должно быть изменено на значение в соответствующем поле параметра в сообщении. Значение 1 указывает, что соответствующее поле должно остаться без изменений.
Байт контрольной суммы NAME содержит арифметическую сумму из 8 байтов NAME целевой CF NAME, усеченных до 8 наименее значимых битов. Это используется как проверка, чтобы убедиться, что командное сообщение было получено правильной CF. Эта проверка защищает от возможности изменения SA в процессе присвоения адресов.
4.4.3.3.3.3 Режим 1 - Отложенное NAME
Эта форма сообщения отправляется целевой CF и является ответом на запрос отложенного NAME. Отложенное NAME CF содержится в полях назначенных параметров. Все поля назначенных параметров NAME являются обязательными. Определяющие флаги и контрольная сумма NAME не используются и должны быть установлены на 1. Если отложенное NAME не было установлено или недействительно, вместо этой формы сообщения должно быть отправлено сообщение NACK (режим 4).
4.4.3.3.3.4 Режим 2 - Текущее NAME
Эта форма сообщения отправляется целевой CF и является ответом на запрос текущего NAME. Текущее NAME CF содержится в полях назначенных параметров. Все поля NAME обязательны для заполнения. Определяющие флаги и контрольная сумма NAME не используются и должны быть установлены на 1.
4.4.3.3.3.5 Режим 3 - Подтверждение (ACK) NAME
Эта форма сообщения отправляется целевой CF и указывает, что последняя принятая команда установки отложенного NAME была успешно выполнена. Отложенное NAME CF содержится в полях назначенных параметров. Все поля назначенных параметров NAME обязательны. Определяющие флаги и контрольная сумма NAME не используются и должны быть установлены на 1.
4.4.3.3.3.6 Режим 4 - Отрицательное подтверждение (NACK) NAME
Эта форма сообщения отправляется целевой CF и указывает, что последняя полученная команда установки отложенного NAME или запроса отложенного NAME не была выполнена успешно. Индикатор режима управления NM, код ошибки и определяющие флаги являются единственными действительными полями в этой форме сообщения. Все остальные поля должны быть установлены на 1.
4.4.3.3.3.7 Режим 5 - Запрос отложенного NAME
Эта форма сообщения отправляется управляющей CF и является запросом отложенного NAME целевой CF. Индикатор режима управления NM является единственным действительным полем в этой форме сообщения. Все остальные поля должны быть установлены на 1.
4.4.3.3.3.8 Режим 6 - Запрос текущего NAME
Эта форма сообщения отправляется управляющей CF и является запросом текущего NAME целевой CF. Индикатор режима управления NM является единственным действительным полем в этой форме сообщения. Все остальные поля должны быть установлены на 1.
4.4.3.3.3.9 Режим 7 - Применение отложенного NAME
Эта форма сообщения отправляется управляющей CF и является командой "переключения" для целевой CF (или всех CF с отложенными NAME, если команда отправлена на глобальный адрес), чтобы применить отложенное NAME в качестве своего текущего NAME и инициировать процедуру объявления адреса с новым NAME. Параметр режима управления является единственным действительным полем в этой форме сообщения. Все остальные поля установлены на 1. Эта форма сообщения может быть отправлена конкретному SA или глобальному адресу.
4.4.3.3.3.10 Режим 8 - Запрос на объявление адреса NAME
Эта форма сообщения используется для запроса того, чтобы CF, SA которой неизвестен запрашивающей стороне, отправила сообщение с объявлением адреса, что позволяет запрашивающей стороне определить SA данной CF. Все или части NAME могут быть указаны в запросе с помощью определяющих флагов. Эта форма сообщения должна быть отправлена на Глобальный адрес.
Если CF получает этот запрос и указанные определяющие поля соответствуют ее текущему NAME, она должна отправить объявление адреса, используя свое текущее NAME. Если CF получает этот запрос, но он не совпадает с указанными полями ее текущего NAME, она не должна отправлять объявление адреса и не должна отправлять форму сообщения NACK.
Данные режимы зарезервированы ИСО для будущего использования.
4.4.3.3.4 Назначенные параметры
4.4.3.3.4.1 Общие положения
Использование назначенных параметров (SPN 5667..5674) (см. таблицу 3) зависит от индикатора режима управления NM.
Если для индикатора режима управления NM задан режим 0 - установка отложенного NAME, а определяющий флаг, соответствующий заданному параметру, установлен равным 0, тогда управляющая CF должна установить назначенный параметр на требуемое значение. Затем целевая CF должна использовать назначенное значение для соответствующего поля в своем отложенном NAME. Если управляющая CF устанавливает определяющий флаг на 1, она должна установить соответствующие назначенные параметры на 1, и целевая CF не должна изменять соответствующие поля в своем отложенном ТФЬУ.
Если определяющий флаг установлен в 1 управляющей CF, то целевая CF не должна изменять соответствующее поле в своем отложенном NAME.
Если индикатор режима управления NM установлен в режим 1 (в ожидании NAME), целевая CF заполняет назначенные параметры соответствующими полями своего отложенного NAME.
Если для индикатора режима управления NM установлено значение режим 2 (текущее NAME), целевая CF заполняет назначенные параметры соответствующими полями своего текущего NAME.
Если индикатор режима управления NM установлен в режим 3 (NAME ACK), целевая CF заполняет назначенные параметры соответствующими полями своего отложенного NAME.
Если индикатор режима управления NM установлен в режим 8 (запрос объявления адреса NAME), а соответствующий определяющий флаг установлен на "0", управляющая CF устанавливает для назначенного параметра значение, которому она желает соответствовать в текущем NAME целевой CF. Затем целевая CF использует это значение при проверке на совпадение с его текущим NAME. Если управляющая CF устанавливает определяющий флаг равным 1, она должна установить соответствующий назначенный параметр на 1, а целевая CF должна игнорировать назначенный параметр при сопоставлении NAME.
Для всех других режимов назначенные параметры должны быть установлены на 1 с управляющей CF и целевой CF.
4.4.3.3.4.2 Назначенный код изготовителя
См. таблицу 1 для определения кода изготовителя.
4.4.3.3.4.3 Назначенный экземпляр функции
См. таблицу 1 для определения экземпляра функции.
4.4.3.3.4.4 Назначенный экземпляр ECU
См. таблицу 1 для определения экземпляра ECU.
4.4.3.3.4.5 Назначенная функция
См. таблицу 1 для определения функции.
4.4.3.3.4.6 Назначенный класс устройства
См. таблицу 1 для определения класса устройства.
4.4.3.3.4.7 Назначенная возможность самонастраивания адреса
См. таблицу 1 для определения возможности самонастраивания адреса.
4.4.3.3.4.8 Назначенная отраслевая группа
См. таблицу 1 для определения отраслевой группы.
4.4.3.3.4.9 Назначенный экземпляр класса устройства
См. таблицу 1 для определения экземпляра класса устройства.
4.4.3.4 Процедуры управления NAME
4.4.3.4.1 Поддержка сообщений управления NAME
Чтобы определить, поддерживает ли CF сообщение NM, управляющая CF может отправить запрос PGN (59904) для сообщения NM. Как указано в ИСО 11783-3, CF, которые не поддерживают запрошенное сообщение, должны ответить сообщением подтверждения PGN 59392 с соответствующим байтом управления NACK.
Если целевая CF поддерживает сообщение NM, он должна отправить сообщение NM по запросу. Если она имеет действительное отложенное NAME, она должна установить индикатор режима на "отложенное NAME", а байты с 3 по 8 - на отложенное NAME. Если у нее нет действующего отложенного NAME, она должна установить индикатор режима на "текущее NAME", а байты с 3 по 8 - на текущее NAME. Это позволяет использовать метод для запроса поддержки сообщения NM и текущего или отложенного NAME. Это может быть полезно для сервисного инструмента или других ECU, пытающихся настроить несколько устройств.
Если NAME успешно изменено, целевая CF имеет "отложенное" NAME. Находясь в этом состоянии ожидания, целевая CF все еще может передавать сообщения, используя свое текущее NAME. Отложенное NAME не вступает в силу до тех пор, пока устройство, отвечающее за настройку сети, не отправит сообщение NM с индикатором режима, установленным для "принять отложенное NAME". Когда это сообщение получено, целевая CF должна повторно выдать объявление адреса со своим новым NAME и успешно объявить адрес с этим NAME, прежде чем инициировать или возобновить передачи в сети.
Сообщение управления NAME имеет разные варианты использования. Это использование определяется параметром индикатора режима в сообщении. См. 4.4.3.3.3.
4.4.3.4.2 Установить отложенное NAME
Целевая CF при получении сообщения управления NAME с режимом "установить отложенное NAME" и своим собственным адресом источника в качестве адреса назначения должна ответить любым из двух способов:
- Целевая CF может принять назначенные изменения в полях NAME. Эти изменения в NAME с неизмененными частями NAME становятся отложенным NAME. Целевая CF должна ответить, отправив сообщение NM с соответствующим индикатором режима ACK. См. определения режимов в 4.4.3.3.3. Ответ должен содержать отложенное NAME в байтах с 3 по 8 и отправляется на SA управляющей CF. Целевая CF должна использовать свой текущий SA (адрес, который последний раз успешно объявлен) при отправке этого сообщения.
- Целевая CF может отклонить назначенные изменения в NAME, отправив сообщение NM с индикатором режима для NACK и полем код ошибки, установленным в наиболее подходящее значение. См. 4.4.3.3.1 для значений ошибок. Если значением ошибки является "элемент не разрешен" или "конфликт элементов", определяющие флаги в байте 2 должны быть установлены в 1 для полей, которые не могут быть изменены, и в 0 для полей, которые могут измениться. Другие байты данных сообщения должны быть установлены на 1.
4.4.3.4.3 Принять отложенное NAME
Командные изменения NAME должны временно сохраняться целевой CF до тех пор, пока управляющая CF не завершит все такие команды и не отправит сообщение NM с индикатором режима для "принять отложенное NAME". Целевая CF с временно сохраненным (отложенным) NAME должна принять отложенное NAME и выполнить необходимую "перезагрузку" CF, включая отправку сообщения объявления адреса с новым NAME. Обратите внимание, что сообщение NM с индикатором режима "принять отложенное NAME" может быть отправлено на глобальный адрес. Это позволяет управляющей CF настраивать несколько CF и одновременно активировать все изменения NAME.
4.4.3.4.4 Подтверждение адреса источника NAME
Идентификатор CF, подлежащей изменению, и ее адрес источника должны быть проверены до отправки сообщения NM. Целевая CF может в любое время получить новый SA через процесс объявления адреса. Поскольку синхронизация этого события относительно управляющей CF, отправляющей сообщение NM с индикатором режима "установить отложенное NAME", не синхронизирована, требуется способ предотвращения неправильной команды CF с вновь полученным SA от некорректной команды на новое NAME. Чтобы предотвратить это возможное несоответствие между SA и NAME, режим "установить отложенное NAME" сообщения NM включает контрольную сумму всех 8 байтов исходного NAME предполагаемого получателя нового NAME. См. пункт 4.4.3.3.1.
4.4.3.4.5 Правила использования сообщения управления сетью (NM)
Целевая CF должна проверить каждое поле, помеченное для изменения, и убедиться, что она может обеспечить указанную реакцию, прежде чем принять изменение.
Если это сообщение поддерживается, оно должно как минимум разрешить изменение экземпляра ECU и экземпляра функции.
Целевые CF могут принимать команды "установить отложенное" от любой CF.
Целевая CF должна проверить, что CF, отправившая команду "принять NAME", является той же CF, которая отправила самую последнюю команду "установить отложенное NAME", которую приняла целевая CF.
4.4.4.1 Общие положения
Управление ошибками в сети относится к обнаружению определенных ошибок адресации, например, неспособности CF защитить адрес. Другие ошибки адресации, такие как повторяющиеся объявления адреса или NAME, могут быть обнаружены диагностическим средством с помощью сообщения о запросе объявления адреса.
4.4.4.2 Невозможно объявить адрес
Если CF, пытающаяся объявить SA, не достигает успеха, она должна отправить сообщение о невозможности объявить адрес источника, как описано в 4.4.2.4, и продолжить работу в соответствии с 4.5.5.
4.4.4.3 Конфликт адресов
Конфликты адресов возникают, когда две CF используют один и тот же SA.
Если CF получает сообщение, кроме сообщения объявления адреса, которое использует собственный SA CF, CF:
- должна отправить сообщения объявления адреса на Глобальный адрес;
- должна активировать диагностический код ошибки с SPN = 2000+SA и FMI = 31 (диагностические коды ошибок см. в ИСО 11783-12).
Примечание - Данные требования были добавлены во втором издании данного стандарта (ИСО 11783-5:2011).
После включения питания и перед началом любых коммуникаций CF должна получить уникальный адрес в сети.
CF с самонастраиваемыми адресами должны использовать одну из следующих последовательностей для получения адреса:
a) Составить таблицу адресов следующим образом.
1) Отправить запрос объявления адреса на Глобальный адрес.
2) Ждать как минимум 250 мс + RTxD.
3) Сохранить SA всех сообщений объявления адреса, полученных за время ожидания.
4) Отправить сообщение объявления адреса, объявив неиспользованный адрес.
CF должна объявлять свой начальный адрес, если он еще не был объявлен другой CF. Если начальный адрес уже объявлен, CF должна попытаться объявить другой неиспользованный адрес.
b) Опросить один адрес следующим образом.
1) Отправить запрос на объявление адреса на конкретный адрес, являющийся начальным адресом CF.
2) Ждать как минимум 250 мс + RTxD.
Если сообщение объявления адреса, объявляющее начальный адрес, получено до завершения периода ожидания, то CF должна выбрать новый начальный адрес и повторить шаг 1.
3) Отправить сообщение объявления адреса, объявив свой начальный адрес.
Примечание 1 - Данные требования были добавлены во втором издании данного стандарта (ИСО 11783-5:2011).
Примечание 2 - В то время как вышеописанные последовательности минимизируют риск объявления одного и того же адреса двумя CF, они не исключают данный риск полностью. Требования 4.5.2 и 4.5.3 гарантируют использование только подтвержденных адресов.
Примечание 3 - Первое издание данного стандарта (ИСО 11783-5:2001) устанавливало период ожидания 1,25 с вместо 250 мс. Если время загрузки не является критично важным, считается правильным реализовать период ожидания дольше 250 мс.
Алгоритм выбора другого начального адреса является собственностью CF, но новый адрес должен быть либо предпочтительным адресом CF, либо адресом в диапазоне от 128 до 247.
Когда CF успешно объявила адрес, этот новый адрес должен быть сохранен как начальный адрес, который будет использоваться при всех последующих включениях. Это также относится к CF с назначенными предпочтительными адресами.
CF без самонастраиваемых адресов могут опускать из приведенных выше последовательностей запрос объявления адреса, но, тем не менее, должны отправлять сообщение объявления адреса, прежде чем инициировать любое другое сообщение.
Рекомендуется, чтобы CF всегда отправляли запрос объявления адреса, прежде чем объявлять адрес.
В следующем списке приведены основные требования, позволяющие избежать конфликтов, а также обнаружить и устранить дублирующиеся адреса во время инициализации.
a) CF должна объявлять свой собственный адрес при инициализации и при ответе на команду изменить ее NAME или адрес (последний экземпляр в подтверждение своего принятия сообщения с командно-заданным адресом). Это гарантирует, что каждая CF берет на себя ответственность за получение действительного адреса и правильно использует адрес, если его объявление еще не получено другой CF.
b) Адресом назначения для сообщения объявления адреса должен быть Глобальный адрес (255), чтобы передача объявления CF отправлялась всем остальным CF в сети. (Следует отметить, что это исключение из требований ИСО 11783-3).
c) CF должна различать сообщения об объявлении адреса, которые она получает от других CF, и те, которые она отправляет сама.
d) Ни одна CF не должна начинать или возобновлять передачу в сети до истечения 250 мс после того, как она успешно объявила адрес (см. рисунок 4), за исключением случаев, когда она отвечает на запрос объявления адреса.
CF должна ответить на сообщение с запросом объявления адреса, отправленное на глобальный адрес, либо сообщением объявления адреса, либо, если запрос не выполнен, сообщением о невозможности запроса объявления адреса.
CF не должна отвечать на сообщение с запросом объявления адреса (как требуется выше), если объявление адреса не было предпринято.
CF отвечает на сообщение с запросом объявления адреса, когда адрес назначения совпадает с адресом CF, и передает свой ответ на Глобальный адрес (255).
CF передает объявление адреса, если она получает запрос объявления адреса с SA, соответствующим ее собственному, и если ее собственное NAME имеет приоритет выше (меньшее значение), чем полученное объявление адреса.
Если NAME CF имеет более низкий приоритет (более высокое значение), чем NAME в полученном сообщении объявления адреса, она должна прекратить использование адреса. Затем она должна передать сообщение о невозможности объявить адрес или попытаться объявить другой адрес (см. 4.5.1).
CF с ненастраиваемым, сервисно-настраиваемым или командно-настраиваемым адресом CF, которая не может использовать конкретный адрес, должна передать сообщение о невозможности объявления адреса.
CF с самонастраиваемым адресом, которая не может использовать конкретный адрес, на который она пытается претендовать, должна выбрать другой адрес и попытаться объявить его (см. 4.5.1).
CF, которая ранее связывалась с другой CF, неспособной объявить адрес, должна иметь возможность обнаруживать, когда эта другая CF будет "disabled", путем мониторинга ее сообщения о невозможности объявления адреса, а также сообщения объявления адреса CF с более высоким приоритетом, которое препятствует объявлению.
Ожидается, что сервисные инструменты и мосты в определенных системах будут обнаруживать и устранять сбои при объявлении адреса. Такие инструменты могут быть в состоянии контролировать сообщение о невозможности объявления адреса источника и сообщить о проблеме своему оператору.
4.5.4 Последовательность сообщений
4.5.4.1 Инициализация без конфликтов
Последовательность инициализации CF, объявляющей адрес, который не объявляет никакая другая CF, показана на рисунке 4.
![]() Если две самонастраиваемые CF имеют одинаковый начальный адрес, то при инициализации происходит один из трех перечисленных далее сценариев:
b) обе CF завершают задержку 250 мс + RTxD одновременно, но одна отправляет объявление адреса несколько раньше, чем другая;
c) обе CF завершают задержку 250 мс + RTxD одновременно и отправляют объявление адреса одновременно.
![]() Если один адрес оспаривается двумя CF, приоритет должен быть отдан CF с NAME с меньшим числовым значением и, следовательно, с более высоким приоритетом. Это NAME должно рассматриваться как 8-байтовое значение с наиболее значимым битом в числовом значении, определяемом битом самонастраиваемого адреса. Несмотря на необходимость сравнения 8-байтовых NAME в соответствующих полях данных сообщений объявления адреса конкурирующих CF, это устраняет неоднозначность из процесса объявления адреса.
Пример - Две CF (CF A и CF B) с одинаковыми функциями запрашивают один и тот же адрес. CF A - имеет экземпляр функции 0, и поэтому он имеет более низкое абсолютное значение NAME и получает адрес.
Последовательность сообщений, которая устраняет конфликт адресов, зависит от возможности настройки адреса участвующих CF. На рисунках ниже показаны последовательности для решения конфликта адресов между двумя CF с самонастраиваемыми адресами (см. рисунок 6), CF с ненастраиваемым и самонастраиваемым адресом (см. рисунок 7) и двумя CF с ненастраиваемыми адресами (см. рисунок 8).
![]() с самонастраиваемыми адресами при получении адресов
![]() между CF с ненастраиваемым адресом и CF с самонастраиваемым
адресом при получении адресов
![]() между двумя CF с ненастраиваемыми адресами
при получении адресов
Сетевые сообщения с одинаковыми идентификаторами могут генерироваться различными CF при использовании сообщения с запросом объявления адреса, объявления адреса или невозможности объявления адреса (рисунок 9). Случай двух идентичных идентификаторов, сгенерированных сообщением о запросе объявления адреса, передаваемом одновременно двумя CF, оба из которых отправляются с адреса NULL (254), не представляет проблемы, так как поле данных будет одинаковым для обоих сообщений. Однако в случае сообщений объявления адреса, передаваемых одновременно более чем одной CF, конкурирующими за один и тот же адрес, могут возникать сетевые ошибки из-за разницы между NAME в их соответствующих полях данных. По той же причине сообщения о невозможности объявления адреса, передаваемые одновременно более чем одной CF с адреса NULL, также могут вызывать сетевые ошибки.
![]() один и тот же адрес, объявление адресов
которых синхронизировано
Если базовый уровень передачи данных может обнаруживать и сообщать о вышеупомянутых сетевых ошибках, то для устранения ошибки может быть использована следующая процедура. После передачи сообщения с запросом объявления адреса передающая CF отслеживает информацию о коде ошибки и, если эта информация указывает, что произошла ошибка сети, повторная передача сообщения объявления адреса происходит после RTxD.
CF которая не может объявить адрес (см. рисунок 10) не должна отправлять никаких сообщений, кроме
- сообщения о невозможности объявить адрес в ответ на сообщения с запросами объявления адреса;
- ответа на сообщение с командой назначения адреса.
![]() CF может пытаться объявить адрес каждый раз при включении питания.
В случае возникновения конфликтов или сообщений о невозможности объявления адреса следует использовать процедуру, описанную в 4.5.4.3.
(обязательное)
А.1 ECU, обслуживающий двигатель трактора с одним двигателем
В таблице А.1 показан процесс именования, который применяется к данному примеру, выраженный в двоичной форме в соответствии с соглашением о NAME. NAME составлено с использованием таблиц в приложениях ИСО 11783-1. Код отраслевой группы (глобальной) равен 0 (другие отраслевые группы могут быть применимы для двигателя с функцией от 0 до 127); класс устройства (трактор) равен 1. Экземпляр класса устройства равен 0 для первого экземпляра. Двигатели имеют код функции 0, и, поскольку это относится к одномоторному транспортному средству, поле экземпляра функции также установлено на 0. Существует только один ECU, поэтому в поле экземпляра ECU устанавливается 0, в то время как код производителя и идентификационные данные числовые биты показаны в общем.
Таблица А.1
трактора с одним двигателем
А.2 Несамонастраиваемый ECU, обслуживающий систему ABS первого прицепа при движении трактора по дорогам общего пользования
В таблице А.2 показан процесс именования, который применяется к данному примеру, выраженный в двоичной форме в соответствии с соглашением о NAME. NAME составлено с использованием таблиц в приложениях ИСО 11783-1. Код для отраслевой группы (дорожная техника) равен 0, а код системы устройств (прицеп) 2. Экземпляр класса устройства равен 0 для первого экземпляра. Блоки антиблокировочной системы тормозов (ABS) на прицепах имеют код функции 129, и, предполагая, что это единственный блок ABS на прицепе, в поле экземпляра функции установлено 0. Поскольку существует только один ECU, поле экземпляра ECU также равно 0, в то время как код производителя и биты идентификационного номера показаны в общем виде.
Таблица А.2
обслуживающего ABS первого прицепа при движении трактора
по дорогам общего пользования
А.3 Две сельскохозяйственные сеялки, объединенные в систему с раздельным управлением рядами для восьми отдельных рядов, каждый из двух ECU
В таблице А.3 показан процесс именования, который применяется к данному примеру, выраженный в двоичной форме в соответствии с соглашением о NAME. NAME составлено с использованием таблиц в приложениях ИСО 11783-1. Код отраслевой группы (сельскохозяйственное оборудование) равен 2, а код класса (сеялка) равен 4. Поскольку сеялка является сельскохозяйственным орудием, предполагается самонастраиваемая адресация, а соответствующий бит адреса устанавливается в 1. Поскольку есть две сеялки, экземпляр класса устройства устанавливается 0 для сеялки 1 и 1 для сеялки 2. Управления рядом - это функция, код функции еще не определен и поэтому представлен в общем виде. Поле экземпляра функции меняется от 0 до 7 для каждой сеялки. Поскольку в строке два ECU, экземпляры ECU 0 и 1 используются для каждой из восьми функций. Наконец, биты кода производителя и идентификационного номера также отображаются в общем виде.
Таблица А.3
сеялок с раздельным управлением рядами
A.4 Таблица сопоставления адресов и NAME
Сообщение запроса объявления адреса, передаваемое либо на конкретный, либо на глобальный адрес, может использоваться для построения таблицы сопоставления адреса с NAME, используемой некоторыми CF для подтверждения сопоставлений для критических функций.
Пример - Таблица сопоставления адреса с NAME подтверждает, что двигатель расположен по адресу 0, тем самым гарантируя, что сообщения управления крутящим моментом/скоростью от трансмиссии отправляются с правильным назначением.
Для CF, где требуется только небольшое количество сопоставлений адрес-NAME, сообщение может быть отправлено на конкретный адрес, в то время как в случае диагностического инструмента, примененного ко всем CF в сети, сообщение может быть отправлено на Глобальный адрес.
(справочное)
НАЦИОНАЛЬНЫМ СТАНДАРТАМ
Таблица ДА.1
Вернуться в "Каталог нормативных документов"
Источник информации: https://internet-law.ru/documents/prod/gost-r_gosudarstvennyj-standart/23/gost_10878.html
На правах рекламы:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||