Запрос.
Это сообщение модифицирует одну логическую ячейку. Ячейки нумеруются с нуля (ячейка 1 = 0, ячейка 2 = 1 и т.д.). Число 65280 (FF00H) устанавливает ячейку в 1, а число 0 – в 0. Другие числа не влияют на содержимое ячейки. Данная функция может использоваться в широковещательном режиме.
Ниже приведен пример установки в 1 ячейки 0173 в SL 17.
Таблица 19
Адрес |
Функция |
Старший байт адреса ячейки |
Младший байт адреса ячейки |
Индикатор установки или сброс ячейки |
Всегда 0 |
Контрольная сумма |
|
|
11 |
05 |
00 |
AC |
FF |
00 |
3F |
LRC |
|
Ответ.
Нормальное ответное сообщение полностью совпадает с запросом.
Запрос.
Данная функция позволяет модифицировать содержимое одного регистра. Хотя запрос и является асинхронным, SL изменяет содержимое регистра только в конце рабочего цикла.
Когда в запросе указан адрес равный 0 (широковещательный запрос), все SL, подключенные к шине, загрузят соответствующий регистр указанным значением.
ПРИМЕЧАНИЕ. В широковещательном режиме используются только функции 5, 6, 15 и 16.
Ниже приведен пример записи регистра 40136 значением 926 в SL с номером 17.
Таблица 20
Адрес |
Функция |
Старший байт адреса регистра 40136 |
Младший байт адреса регистра 40136 |
Старший байт значения 926 |
Младший байт значения 926 |
Контрольная сумма |
|
|
11 |
06 |
00 |
87 |
03 |
9E |
C1 |
LRC |
|
Ответ.
В случае успешного выполнения функции ответное сообщение идентично запросу.
Запрос.
Данная функция предназначена для проверки коммуникационной системы и не влияет на данные прибора.
Поле информации содержит 2 байта диагностического кода, указывающего SL выполнить определенное действие, и 2 байта необходимой, для данной диагностики, информации.
Таблица 21
Код |
Действие |
00 |
Вернуть запрос |
01 |
Сбросить установки связи (без ответа) |
02 |
Вернуть регистр диагностики |
03 |
Изменить символ начала пакета |
04 |
Перевести SL в режим прослушивания линии без посылки ответных сообщений (Listen Only Mode) |
05 |
Сбросить счетчики и регистр диагностики |
06 |
Вернуть счетчик сообщений, полученных с шины MODBUS. |
07 |
Вернуть счетчик сообщений с неправильными контрольными суммами. |
08 |
Вернуть счетчик сообщений, вызвавших исключительную ситуацию. |
09 |
Вернуть счетчик сообщений, адресованных только данному SL. |
10 |
Вернуть счетчик сообщений, адресованных данному SL и оставленных без ответа. |
11 |
Вернуть счетчик сообщений, адресованных данному SL и вызвавшим исключительную ситуацию NACK. |
12 |
Вернуть счетчик сообщений, адресованных данному SL и вызвавшим исключительную ситуацию BUSY. |
Ниже дан пример запроса вернуть эхо (диагностический код 0) SL с номером 17.
Таблица 22
Адрес |
Функция |
Старший байт диагностического кода |
Младший байт диагностического кода |
Старший байт данных1 |
Младший байт данных |
Контрольная сумма |
|
|
11 |
08 |
00 |
00 |
00 |
00 |
0B |
LRC |
|
Ответ.
Таблица 23
Адрес |
Функция |
Старший байт диагностического кода |
Младший байт диагностического кода |
Старший байт данных2 |
Младший байт данных |
Контрольная сумма |
|
|
11 |
08 |
00 |
00 |
00 |
00 |
0B |
LRC |
|
Запрос.
Во многих случаях, для быстрого получения статуса некоторых событий контроллера, желательно иметь в протоколе сообщение, имеющее небольшой размер. Данная функция разработана именно для этой цели.
Функция с номером 7 позволяет пользователю опрашивать состояние восьми ячеек контроллера. Эти ячейки могут программироваться для хранения информации состояния контроллера. Широковещательный режим не поддерживается.
Назначение этих ячеек зависит от типа контроллера.
Ниже представлен пример запроса статуса SL с номером 17.
Таблица 24
Адрес |
Функция |
Контрольная сумма |
|
11 |
07 |
E8 |
LRC |
В этой функции не требуется поле данных.
Ответ.
Нормальный ответ содержит статус восьми ячеек, упакованных в один байт данных.
Таблица 25
Адрес |
Функция |
Данные ячеек |
Контрольная сумма |
|
11 |
07 |
6D |
7B |
LRC |
В приборах ЗАО “ВЗЛЁТ” постоянно используются два младших разряда регистра статуса, которые отражают состояние прибора во время программирования памяти программ прибора.
Запрос.
Данное сообщение меняет содержимое любого регистра опрашиваемого контроллера. Сообщение позволяет записывать регистры с максимальным логическим адресом до FFFFH. Неиспользуемые старшие биты адреса регистра должны заполняться нулями. Если используется адрес SL равный 0, то содержимое поля данных записывается во все устройства, подключенные к шине (широковещательный режим).
Ниже дан пример записи в SL с номером 17 двух регистров 40136, 40137 значениями 0х00а0, 0х0102.
Таблица 26
Ад-рес |
Функция |
Старший байт адреса пер-вого регис-тра |
Младший байт адреса первого регистра |
Количество регис-тров |
Количество байт в поле данных |
Стар-ший байт регис-тра 40136 |
Млад-щий байт регис-тра 40136 |
Стар-ший байт регис-тра 40137 |
Млад-ший байт регистра 40137 |
Конт-роль-ная сумма |
|
||
11 |
10 |
00 |
87 |
00 |
02 |
04 |
00 |
0A |
01 |
02 |
45 |
LRC |
|
Ответ.
Нормальное ответное сообщение возвращает адрес SL, функцию, адрес первого регистра и количество записанных регистров.
Таблица 27
Адрес |
Функция |
Старший байт адрес первого регистра |
Младший байт адреса первого регистра |
Количество регистров |
Контрольная сумма |
|
||
11 |
10 |
00 |
87 |
00 |
02 |
56 |
LRC |
|
Запрос.
Пример запроса прибору с адресом 17.
Таблица 28
Адрес |
Функция |
Контрольная сумма |
|
|
11 |
11 |
DE |
LRC |
|
Ответ.
Общая форма ответного сообщения приведена ниже.
Таблица 29
Адрес |
Функция |
Число байт в поле данных |
Поле данных |
Контрольная сумма |
Информация в поле данных различна для каждого конкретного прибора и указана в протоколе на прибор.
Для приборов фирмы «ВЗЛЕТ» в поле данных обязательно передается следующая информация:
Таблица 30
Название параметра |
Формат |
Версия прибора |
ASCII строка, завершающаяся нулем в формате: “VZLJOT AA.BB.CC.DD” |
Название прибора |
ASCII строка, завершающаяся нулем. |
Максимальное число регистров в таблице регистров прибора. |
Unsigned (2 байта). |
В случае если какая-либо из строк в приборе не существует, на ее месте в ответном сообщении должен передаваться нуль.
Остальная информация зависит от типа прибора, и указывается в описании протокола прибора.
Запрос.
В запросе указывается адрес SL, номер функции, номер массива (индексация с нуля), количество запрашиваемых записей, тип запроса (0 – по индексу, 1 – по времени архивации) и данные запроса.
Для запроса по индексу в поле данных указывается номер первой запрашиваемой записи. Для запроса по времени архивации в поле данных указывается время архивации первой запрашиваемой записи (сс, мм, чч, дд, мм, гг).
Ниже приведен пример запроса по времени архивации 6-ти записей массива 1 с 10-12-1998 13:12:00 из устройства с номером 17.
Таблица 31
Адрес устройства |
Фун-кция |
Стар-ший байт номер мас-сива |
Млад-ший байт номера мас-сива |
Стар-ший байт коли-чество запрашиваемых записей |
Младший байт коли-чество запрашиваемых записей |
Тип запроса |
Секунды |
Ми-нуты |
Часы |
День |
Месяц |
Год |
Контрольная сумма |
11 |
41 |
00 |
01 |
00 |
06 |
01 |
00 |
0С |
0D |
0A |
0C |
62 |
|