Modbus_Rus (1031648), страница 3
Текст из файла (страница 3)
6 1
7 0
Slave Entered Listen Only Mode
Этот тип байта события сохраняется подчиненным когда он вводится в режим Listen Only Mode.
Описание битов:
Бит Описание
0 0
1 0
2 1
3 0
4 0
5 0
6 0
7 0
Slave Initiated Communication Restart
Этот тип байта события сохраняется подчиненным когда был сделан рестарт коммуникационного порта. Рестарт подчиненного может быть сделан посредством диагностической функции (код 08 Hex) подфункция Restart Communication Option (код 00 01).
Эта функция также может переводить подчиненного в режим 'Continue on Error' или 'Stop on Error'. Если подчиненный находится в режиме 'Continue on Error Mode', байт события добавляется к существующему журналу событий. Если подчиненный находится в режиме 'Stop on Error' байт добавляется в журнал и остаток журнала сбрасывается в 0.
Описание битов
Бит Содержание
0 0
1 0
2 0
3 0
4 0
5 0
6 0
7 0
15 (0F Hex) Force Multiple Coils
ОПИСАНИЕ
Устанавливает каждый выход (ссылка 0Х) последовательности выходов в одно из состояний ON или OFF. При широковещательной передаче функция устанавливает подобные выходы на всех всех подчиненных.
ЗАМЕЧАНИЕ Функция может пересекаться с установкой защиты памяти и установкой недоступности выходов.
ЗАПРОС
Запрос специфицирует выходы для установки. Выходы адресуются начиная с 0.
Ниже показан пример запроса на установку последовательности выходов начиная с 20 (адресуется как 19) в подчиненном устройстве 17.
Поле данных запроса содержит 2 байта: CD 01 Hex (1100 1101 0000 0001 двоичное). Соответствие битов и выходов представлено ниже:
Бит: 1 1 0 0 1 1 0 1 0 0 0 0 0 0 0 1
Выход: 27 26 25 24 23 22 21 20 - - - - - - 29 28
Запрос
Имя поля Пример
(Hex)
Адрес подчиненного 11
Функция 0F
Адрес выхода ст. 00
Адрес выхода мл. 13
Кол-во выходов ст. 00
Кол-во выходов мл. 0A
Счетчик байт 02
Данные для установки (Выходы 27-20) CD
Данные для установки (Выходы 29-28) 01
Контрольная сумма --
ОТВЕТ
Нормальный ответ возвращает адрес подчиненного, код функции, начальный адрес, и количество установленных выходов.
Это пример ответа на представленный выше запрос.
Ответ
Имя поля Пример
(Hex)
Адрес подчиненного 11
Функция 0F
Адрес выхода ст. 00
Адрес выхода мл. 13
Кол-во выходов ст. 00
Кол-во выходов мл. 0A
Контрольная сумма --
16 (10 Hex) Preset Multiple Regs
ОПИСАНИЕ
Запись данных в последовательность регистров (ссылка 4Х). При широковещательной передаче, функция устанавливает подобные регистры во всех подчиненных устройствах.
ЗАМЕЧАНИЕ
Функция может пересекаться с установленной защитой памяти.
ЗАПРОС
Запрос специфицирует регистры для записи. Регистры адресуются начиная с 0.
Данные для записи в регистры содержатся в поле данных запроса. Контроллеры M84 и 484 используют 10-битовую величину, со старшими шестью битами установленными в 0. Все остальные контроллеры используют 16 бит.
Ниже приведен пример запроса на установку двух регистров начиная с 40002 в 00 0A и 01 02 Hex, в подчиненном устройстве 17:
Запрос
Имя поля Пример
(Hex)
Адрес подчиненного 11
Функция 10
Начальный адрес 00
Начальный адрес 01
Кол-во регистров ст. 00
Кол-во регистров мл. 02
Счетчик байт 02
Данные ст. 00
Данные мл. 0A
Данные ст. 01
Данные мл. 02
Контрольная сумма --
ОТВЕТ
Нормальный ответ содержит адрес подчиненного, код функции, начальный адрес, и количество регистров.
17 (11 Hex) Чтение идентификатора подчиненного
ОПИСАНИЕ
Возвращает описание типа контроллера представленного по данному адресу, текущее состояние индикатора пуска, и другую информацию о подчиненном устройстве.
ЗАПРОС
Имя поля Пример
(Hex)
Адрес подчиненного 11
Функция 11
Контрольная сумма (CRC или LRC) --
ОТВЕТ
Формат нормального ответа показан ниже. Содержание байтов данных специфично для каждого типа контроллера.
Имя поля Пример
(Hex)
Адрес подчиненного Возврат адреса подчиненного
Функция 11
Счетчик байт 4 0Зависит от устройства
Идентификатор у-ва Зависит от устройства
Индикатор пуска 00=OFF, FF=ON
Добавочная информация Зависит от устройства
...
Контрольная сумма (CRC или LRC) --
Список идентификаторов устройств
Идентификатор Контроллер
0 Micro 84
1 484
2 184/384
3 584
8 884
9 984
184/384
184 или 384 контроллеры возвращают счетчик байт 4 или 74. Если J347 Modbus Slave Interface инициализирован правильно, и если внутренняя PIB-таблица нормальная, счетчик байт будет содержать 74. Иначе - 4.
Эти четыре байта будут возвращены в любом случае:
Байт Содержимое
1 Идентификатор (2 для 184/384)
2 Индикатор пуска (0=OFF, FF=ON)
3,4 Слово статуса:
Бит 0 = 0
Бит 1 = Защита памяти (0=OFF, 1=ON )
Бит 2,3 = Тип контроллера :
Бит 2=0 и Бит 3=0 - 184
Бит 2=1 и Бит 3=0 - 384
Биты 4-15 = не используются
Дополнительные 70 байт:
Байт Содержание
5,6 Начальный адрес PIB-таблицы
7,8 Серийный номер контроллера
9,10 Идентификатор исполнителя
Байты 11-74 содержат PIB-таблицу.
Эти данные верны если контроллер работает
(см. байт 2).
11,12 Максимальное количество выходов
13,14 Таблица доступных выходов
15,16 Адрес таблицы входов coil/run
17,18 Количество входов
19,20 Таблица доступных входов
21,22 Первое ключевое число
(должно быть кратно 16)
23,24 Последнее ключевое число
(должно быть кратно 16)
25,26 Адрес входных регистров
27,28 Количество входных регистров
29,30 Количество выходных и захваченных
регистров
31,32 Адрес пользовательской логики
33,34 Адрес output coil RAM table
35,36 Маска недоступных функций
37,38 Адрес программы расширенной функции
39,40 Адрес программы передачи данных
41,42 Адрес traffic cop
43,44 Не используются
45,46 Маска недоступных функций
47,48 Адрес таблицы истории "А"-режима
49,50 Таблица запросов для DX принтера
51,52 Количество групп последовательностей
53,54 Адрес таблицы последовательностей отображения
55,56 Адрес последовательности RAM (адрес ОЗУ)
57,58 Количество 50ХХ регистров
59,60 Адрес таблицы 50ХХ
61,62 Адрес output coil RAM image
63,64 Адрес input RAM image
65,66 Delayed output start group
67,68 Delayed output end group
69,70 Сторожевой таймер
71,72 RAM adress of latches
(адрес ключей в ОЗУ)
73,74 Адрес delayed output groups
584
584 контроллер возвращает счетчик байт = 9.
Байт Содержание
1 Идентификатор (3 для 584)
2 Индикатор пуска (0=OFF, 1=ON)
3 Количество 4К секций нулевой страницы
памяти
4 Количество 1К секций в статическом ОЗУ
5 Количество сегментов пользовательской
логики
6,7 Слово состояния машины (слово таблицы
конфигурации 101, 65 Hex)
Организация этого слова показана ниже:
Байт 6:
Бит 15 = Port 1 setup
Бит 14 = Port 2 setup
Бит 13 = Port 1 adress set
Бит 12 = Port 2 adress set
Бит 11 = Не присвоен
Бит 10 = Статус Constant Sweep
(0=Constatnt Sweep OFF, 1=ON)
Бит 9 = Статус Single Sweep
(0=Single Sweep OFF, 1=ON)
Бит 8 = 16/24-битовый узел
(0=24-битовый, 1=16-битовый)
Байт 7:
Бит 7 = Питание ON (1=ON, никогда OFF)
Бит 6 = RUN - индикатор (0=ON, 1=OFF)
Бит 5 = Защита памяти (0=ON, 1=OFF)
Бит 4 = Состояние батареи (0=OK, 1=Not OK)
Биты 3-0 Не используются
8,9 Машинный код стопа
(таблица конфигурации слово 105, 69 Hex)
Организация этого слова показана ниже:
Байт 8:
Бит 15 = Стоп переферийного порта
(стоп контроллера)
Бит 14 = Не используется
Бит 13 = Dim awareness
Бит 12 = Недопустимое вторжение перифе-
рии
Бит 11 = Неправильная таблица задач
Бит 10 = Старт узла не является стартом
сегмента
Бит 9 = Ошибка теста статического ОЗУ
Бит 8 = Не обнаружен конец логики, или
неверное количество сегментов
Бит 9:
Бит 7 = Сторожевой таймер накрылся
Бит 6 = Ошибка часов реального времени
Бит 5 = Ошибка диагностики процессора
Бит 4 = Неправильный тип traffic cop
Бит 3 = Неправильный тип узла
Бит 2 = Ошибка контрольной суммы логики
Бит 1 = Ошибка резервной контрольной суммы
Бит 0 = Неверная конфигурация
984
984 контроллер возвращает счетчик байт = 9.
Байт Содержание
1 Идентификатор подчиненного (9 для 984)
2 Статус RUN-индикатора (0=OFF, 1=ON)
3 Количество 4К секций нулевой страницы
памяти
4 Количество 1К секций в статическом ОЗУ
5 Количество сегментов пользовательской
логики
6,7 Слово состояния машины (слово таблицы
конфигурации 101, 65 Hex)
Организация этого слова показана ниже:
Байт 6:
Бит 15 = Не используется
Бит 14-11 = Не используется
Бит 10 = Статус Constant Sweep
(0=Constatnt Sweep OFF, 1=ON)
Бит 9 = Статус Single Sweep
(0=Single Sweep OFF, 1=ON)
Бит 8 = 16/24-битовый узел
(0=24-битовый, 1=16-битовый)
Байт 7:
Бит 7 = Питание ON (1=ON, никогда OFF)
Бит 6 = RUN - индикатор (0=ON, 1=OFF)
Бит 5 = Защита памяти (0=ON, 1=OFF)
Бит 4 = Состояние батареи (0=OK, 1=Not OK)
Биты 3-1 = Не используются
Бит 0 = Флаг размера памяти
Размер памяти : Бит 0 слова состояния машины определяет использование величины размера памяти в словах 00, 100, 175 (63, 64, AF Hex) таблицы конфигурации. Если бит 0 = логической 1, размер памяти вычисляется следующим образом:
Размер 0 страницы(16 бит)=(Слово 99*4096)-(Слово 175 мл.байт*16)
Размер статической таблицы(16 бит) =
(Слово 100*1024)-(Слово 175 ст. байт*16)
8,9 Машинный код стопа
(таблица конфигурации слово 105, 69 Hex)
Организация этого слова показана ниже:
Байт 8:
Бит 15 = Стоп периферийного порта
(стоп контроллера)
Бит 14 (984A,B,X) = Ошибка паритета
расширенной памяти
Бит 13 = Dim awarness
Бит 12 = Недопустимое вторжение периферии
Бит 11 = Неверная таблица списков сегментов
Бит 10 = Старт узла не является стартом
сегмента
Бит 9 = Ошибка теста статического ОЗУ
Бит 8 = Не обнаружен конец логики, или
неверное количество сегментов
Байт 9:
Бит 7 = Сторожевой таймер накрылся
Бит 6 = Ошибка часов реального времени
Бит 5 (984A, B, X) =
Ошибка диагностики процессора
Бит 5 (Другие 984) =
Плохая таблица использования выходов
Бит 4 = S908 remote IO head failure
Бит 3 = Неправильный тип узла
Бит 2 = Ошибка контрольной суммы логики
Бит 1 = Выхода недоступны пока контроллер
работает
Бит 0 = Неверная конфигурация
Micro 84
Micro 84 возвращает счетчик байт 8:
Байт Содержание
1 Идентификатор подчиненного (0 для Micro 84)
2 Статус индикатора RUN (0=OFF, FF=ON)
3 Текущий номер порта
4 Размер памяти (1 = 1К, 2 = 2К)
5 Не используется (все 0)
484
484 контроллер возвращает счетчик байт 5:
Байт Содержание
1 Идентификатор подчиненного (1 для 484)
2 Статус индикатора RUN (0=OFF, FF=ON)
3 Установка системы
4 Первый байт конфигурации
5 Второй байт конфигурации
884
884 контроллер возвращает счетчик байт 8:
Байт Содержание
1 Идентификатор подчиненного (0 для Micro 84)
2 Статус индикатора RUN (0=OFF, FF=ON)
3 Текущий номер порта
4 Размер пользовательской логики плюс
статическая память, в килобайтах
5 Зарезервирован
6 Биты:
Бит 0-2 = Зарезервированы
Бит 3 = Обход mapper:
1 = не использовать стандартный mapper
Бит 4 = Конец теста Scan
1 = Конец теста сканирования
Бит 5 = Зарезервирован
Бит 6 = Обход решателя логики:
1 = не использовать стандартный решатель
Бит 7 = зарезервирован
7,8 Зарезервированы
20 (14 Hex) Read General Reference
ОПИСАНИЕ
Возвращает содержание регистров файла расширенной памяти (6ХХХХ). Широкое вещание не поддерживается.
Функция может читать несколько групп. Группы могут быть разделены, но посылка внутри каждой группы должна быть непрерывной.
ЗАПРОС
Запрос специфицирует группу или группы для чтения. Каждая группа определяется в поле "суб-запроса" которое содержит 7 байт:
- Тип ссылки : 1 байт (должен быть специфицирован как 6)
- Номер файла расширенной памяти: 2 байта (от 1 до 10)
- Начальный адрес регистра внутри файла: 2 байта
- Количество регистров для чтения: 2 байта.