Обьект 1600h-17ffh: Параметр отображения RPDO.
Описывает отображение для PDO которые могут приниматься. Тип Параметр
отображения PDO (PDO mapping parameter – 21h ) описывался в п 9.5.4. Элемент с
подиндексом 0h содержит количество элементов отображаемых в PDO, - то есть
количество переменных приложений, которые передаются/принимаются с помощью
данного PDO. Элементы с индеками 1- фактическое количество элементов(максимум 40h),
хранят информацию об отображённых переменных приложений. Формат этих элементов:
индекс подиндекс и длина в битах отображаемого элемента, как показано на рисунке 66.
Параметр длина отображаемой переменной обязателен, и служит для проверки полной
длинны PDO отображения.
Рисунок 66. Структура описателя отображаемого элемента.
Если не может быть выполнено изменение PDO отображения(например если длина
превысила максимально возможную, или SDO клиент пытается отобразить обьект
который не может быть отображён), устройство должно произвести аварийное завершение
SDO трансферта
Элемент с подиндексом 0h определяет количество элементов, которые могут быть
отображены. Для изменения отображения, PDO должен быть сначала удалён(в бит 31
COB-ID записывается 1 ), затем в элемент с подиндексом 0 должен быть записан 0. После
этого обьект может быть переотображён. Когда отображается новый обьект(путём
занаесения в элемент отображения его индекса и подиндекса), устройство может
проверить существует ли обьект с данным индексом/подиндексом. Если обьект не
существет или не может быть отображён, то SDO трансферт должен быть аварийно
прерван с кодом ошибки 0602 0000h или 0604 0041h, соответственно. После того как
отображены все требуемые обьекты, в элемент параметра отображения с подиндексом 0h
записывается действительное количество отображённых в PDO параметров. В конце, PDO
должен быть создан путём записывания идентификатора (COB-ID) в параметр связи
соответствующего PDO. Когда элемент с подиндексом устанавливается из значения 0
в
значение количества действительных элементов отображённых в данном PDO, устройство
(SDO сервер) перед квитированием SDO сервиса может проверить вновь заданное PDO
отображение. В случае обнаружения ошибки устройство должно произвести Аварийное
завершение SDO трансферта с кодом 0602 0000h, 0604 0041h или 0604 0042h.
При чтении элемента с подиндексом 0 получается реальное количество
действительных отображённых обьектов.
Если в обьекте отображены типы данных(элементы
с индексом 0-7h), то они
служат «фиктивными элементами». Данные соответствующие данным параметрам
отображения не рассматриваются устройством. Данная дополнительная особенность
может использоваться, например, для устройств, которые используют один PDO, и каждое
из которых использует только часть PDO. В таком случае для тех полей RPDO, которые не
содержат данные для этого устройства, отображение должно указывать на один из таких
обьектов - типов данных(1-7h). Нельза создавать фиктивные элементы в TPDO.
Устройства поддерживающие динамическую настройку отображения(то есть
настройку отображения во время работы) должны производить его при сететвом статусе
устройства PREOPERATIONAL. Если динамическое отображение задаётся в состоянии
OPERATIONAL, то SDO клиент который производит это всё, ответственен за цельность и
согласованность данных.