2 доступ через sdo – Инструкция по эксплуатации Festo Контроллеры двигателя CMMS-ST
Страница 18
3. Способы доступа
18
Festo P.BE-CMMS-CO-SW-RU 1012a
NMT
Network Management Сетевой сервис: может действовать, например, на все
узлы CAN одновременно.
HEARTBEAT
Error Control Protocol
Контроль ведомых станций связи посредством
регулярных сообщений.
Каждое сообщение, отправляемое по шине CAN, содержит адрес типа, с помощью которого
можно установить, какой ведомой станции шины предназначается сообщение. Этот номер
называется “идентификатор”. Чем ниже идентификатор, тем выше приоритетность сообщения.
Для каждого из вышеуказанных объектов связи определен соответствующий идентификатор. На
следующем рисунке показана принципиальная схема сообщения CANopen:
Число байтов данных (здесь 8)
Байты данных 0 … 7
601
h
Len D0 D1 D2 D3 D4 D5 D6 D7
Идентификатор
3.2
Доступ через SDO
Доступ к словарю объектов контроллера двигателя можно получить через
Service Data Objects
(
объекты служебных данных) (SDO). Этот способ доступа является особенно простым и наглядным.
В связи с этим рекомендуется сначала создавать приложение только с SDO и лишь после этого
переключать некоторые случаи доступа на более быстрые, но и более сложные
Process Data
Objects (объекты данных процесса) (PDO).
Процедуры доступа SDO всегда начинаются с вышестоящей системы управления (хоста). Она
отправляет в контроллер двигателя или команду записи для изменения параметра словаря
объектов, или команду чтения для считывания параметра. На каждую команду хост получает
ответ, содержащий или считанное значение, или квитирование — в случае команды записи.
Чтобы контроллер двигателя распознал, что команда предназначена ему, хост должен отправлять
команду с определенным идентификатором. Он составляется на основе 600
h
+ номер узла
рассматриваемого контроллера двигателя. Контроллер двигателя отвечает, соответственно, с
идентификатором 580
h
+ номер узла
.
Состав команд и ответов зависит от типа данных объекта чтения или записи, поскольку нужно
отправить или принять 1, 2 или 4 байта данных. Поддерживаются следующие типы данных:
UINT8
величина 8 битов без знака 0
… 255
INT8
величина 8 битов со знаком -128
… 127
UINT16
величина 16 битов без знака 0
… 65535
INT16
величина 16 битов со знаком -32768
… 32767
UINT32
величина 32 бита без знака 0
… (2
32
-1)
INT32
величина 32 бита со знаком -(2
31
) … (2
31
-1)