Программирование
промышленных контроллеров,
роботов, hmi, scada-систем,
разработка БД, проектирование
и автоматизация под ключ

Есть вопросы? Звони!

Полезное

Полезное

« Назад

ModBUS протокол.  21.06.2013 02:11

ModBUS протокол.

Введение в MODBUS протокол.

Передача в сети MODBUS.

Стандартные MODBUS-порты в контроллерах MODICON используют RS-232C совместиимый последовательный интерфейс . Контроллеры могут быть соединены на прямую или через модем.

Контроллеры соединяются используя технологию главный-подчиненный, при которой только одно устройство (главный) может инициировать передачу (сделать запрос). Другие устройства (подчиненные) передают запрашиваемые главным устройством данные, или производят запрашиваемые действия. Типичное главное устройство включает в себя ведущий (HOST) процессор и панели программирования. Типичное подчинненое устройство - программируемый контроллер.

Главный может адресоваться к индивидуальному подчиненному или может инициировать широкую передачу сообщения на все подчиненные устройства. Подчиненное устройство возвращает сообщение в ответ на запрос, адресуемый именно ему. Ответы не возвращаются при широковещательном запросе от главного.

Цикл запрос - ответ.

                Запрос от главного                               Ответ подчиненного

                Адрес устройства                                 Адрес устройства

                Код функции                                        Код функции

                8 - битные                                             8 - битные

                байты данных                                       байты данных

                Контрольная сумма                             Контрольная сумма

Запрос : Код функции в запросе говорит подчиненному устройству какое действие необходимо провести. Байты данных содержат информацию необходимую для выполнения запрошенной функции. Например, код функции 3 подразумевает запрос на чтение содержимого регистров подчиненного.

Ответ : Если подчиненный дает нормальный ответ, код функции в ответе повторяет код функции в запросе. В байтах данных содержится затребованная информация. Если имеет место ошибка, то код функции модифицируется, и в байтах данных передается причина ошибки.

Два режима последовательной передачи.

В сетях MODBUS может быть использован один из двух способов передачи: ASCII или RTU. Пользователь выбирает необходимый режим вместе с другими параметрами (скорость передачи, режим паритета и т.д.) во время конфигурации каждого контроллера.

Режим ASCII.

При использовании ASCII - режима каждый байт сообщения передается как два ASCII символа. Главное преимущество этого способа время между предачей символов может быть до 1 сек. без возникновения ошибок при передаче.

Формат каждого байта в ASCII-режимме:

Система кодировки: Шестнадцатиричная, ASCII-символы 0-9, A-F

Назначение битов:                                                1 старт бит

                                                                              7 бит данных, младшим битом вперед

                                                                              1 бит паритета; нет бита паритета

                                                                              1 стоп бит если есть паритет; 2 бита если

                                                                              нет паритета

                                                                               Контрольная сумма: Longitudinal Redundancy Chek (LRC)

                                                                              Режим RTU.

При использовании ASCII - режима каждый байт сообщения содержит два 4-х битных шестнадцатиричных числа.

Каждое сообщение передается непрерывным потоком.

Формат каждого байта в RTU-режиме:

Система кодировки: 8-ми битовая двоичная, шестнадцатиричная

                                 0-9, A-F

                                  Две шестнадцатиричные цифры содержатся в

                                  каждом 8-ми битовом байте сообщения.

Назначение битов:                1 старт бит

                                  8 бит данных, младшим значащим разрядом

                                  вперед

                                  1 бит паритета; нет бита паритета

                                  1 стоп бит если есть паритет; 2 бита если

                                  нет паритета

                                  Контрольная сумма: Cyclical Redundancy Check (CRC)

Содержание сообщения MODBUS.

ASCII фрейм.

В ASCII-режиме, сообщение начинается с "двоеточия" (:, ASCII 3A hex), и заканчивается последовательностью "возврат каретки-перевод строки" (CRLF, ASCII 0D и 0A hex).

Допустимые символы для передачи - это шестнадцатиричные цифры 0-9, A-F. Монитор сетевого устройства в сети непрерывно отслеживает символ "двоеточие". Когда он принят, каждое устройство декодирует следующие поле сообщения (поле адреса) и т.д.

Интервалы между символами сообщения могут быть до 1 сек. Если интервал больше, то принимающее устройство распознает это как ошибку. Типичный фрейм сообщения показан ниже.

 ------T------T------T------T-----T-----¬

 ¦старт¦адрес ¦ ф-ия ¦данные¦ LRC ¦конец¦

 +-----+------+------+------+-----+-----+

 ¦1 сим¦2 сим ¦2 сим ¦n сим ¦2 сим¦2 сим¦

 ¦   : ¦      ¦      ¦      ¦     ¦CR LF¦

 L-----+------+------+------+-----+------

 Исключение: В контроллерах типа 584 и 984A/B/X ASCII-сообщение может нормально заканчиваться после контрольной суммы без CRLF последовательности. Интервалы меньше 1 сек допускаются.

RTU фрейм.

В RTU режиме сообщение начинается с интервала тишины равного времени передачи 3.5 символов при данной скорости передачи в сети. Первым полем затем передается адрес устройства.

Вслед за последним передаваемым символом также следует интервал тишины продолжительностью не менее 3.5 символов. Новое сообщение может начинаться после этого интервала.

Фрейм сообщения передается непрерывно. Если интервал тишины продолжительностью 1.5 возник во время передачи фрейма, принимающее устройство заканчивает прием сообщения и следующий байт будет воспринят как начало следующего сообщения.

Таким образом, если новое сообщение начнется раньше 3.5 интервала, принимающее устройство воспримет его как продолжение предыдущего сообщения. В этом случае устанавливается ошибка, так как будет несовпадение контрольных сумм. Типичный фрейм сообщения показан ниже.

 ------------T--------T--------T--------T--------T-----------¬

 ¦   старт   ¦  адрес ¦функция ¦ данные ¦   CRC  ¦   конец   ¦

 +-----------+--------+--------+--------+--------+-----------+

 ¦T1-T2-T3-T4¦  8 бит ¦  8 бит ¦n x бит ¦ 16 бит ¦T1-T2-T3-T4¦

 L-----------+--------+--------+--------+--------+------------

 

Содержание адресного поля.

Адресное поле фрейма содержит два символа (ASCII) или 8 бит (RTU). Допустимый адрес передачи находится в диапазоне 0 - 247. Каждому подчиненному устройству присваивается адрес в пределах от 1 до 247.

Адрес 0 используется для широковещательной передачи, его распознает каждое устройство. Когда MODBUS протокол используется на более высоком уровне сети, широковещательная передача может не поддерживаться или может быть реализована другими методами.

Содержание поля функции.

Поле функции фрейма содержит два символа (ASCII) или 8 бит (RTU). Диапазон числа 1 -255. Некоторые функции работают на всех контроллерах MODICON, некоторые - на определенных моделях, другие же коды зарезервированы для будущего использования. Имеющийся набор функций описан в приложении 2.

Когда подчиненный отвечает главному, он использует поле кода функции для фиксации ошибки. В случае нормального ответа подчиненный повторяет оригинальный код функции. Если имеет место ошибка, возвращается код функции с установленным в 1 старшим битом.

Например, сообщение от главного подсиненному прочитать группу регистров имеет следующий код функции:

0000 0011              ( 03 hex) Если подчиненный выполнил затребованное действие без ошибки, он возвращает такой же код. Если имеет место ошибка, то он возвращает:

1000 0011              ( 83 hex) В добавление к изменению кода функции, подчиненный размещает в поле данных уникальный код, который говорит главному какая именно ошибка произошла или причину ошибки.

Содержание поля данных.

Поле данных в сообщении от главного к подчиненному содержит дополнительную информацию, которая необходима подчиненному для выполнения указанной функции. Оно может содержать адреса регистров или выходов, их количество, счетчик передаваемых байтов данных.

Например, если главный запрашивает у подчиненного прочитать группу регистров (код функции 03), поле данных содержит адрес начального регистра и количество регистров. Если главный хочет записать группу регистров (код функции 10 hex), поле данных содержит адрес начального регистра, количество регистров, счетчик количества байтов данных и данные для записи в регистры.

Поле данных может не существовать (иметь нулевую длину) в определенных типах сообщений.

Содержание поля контрольной суммы.

В MODBUS - сетях используются два метода контроля ошибок передачи. Содержание поля контрольной суммы зависит от выбранного способа передачи. ASCII Когда используется ASCII-режим поле контрольной суммы содержит два ASCII-символа. Контрольная сумма является результатом вычисления Longitudinal Redundancy Check (LRC) сделанного над содержанием сообщения начиная с ":" и заканчивая CRLF. RTU Когда используется RTU-режим поле контрольной суммы содержит 16-ти битовую величину. Контрольная сумма является результатом вычисления Cyclical Redundancy Check сделанного над содержанием сообщения. CRC добавляется к сообщению последним полем младшим байтом вперед.

Формат передачи символов.

Передача символов идет младшим битом вперед.

ASCII фрейм

С контролем четности

 ------T-----T-----T-----T-----T-----T-----T-----T-----T-----¬

 ¦старт¦  1  ¦  2  ¦  3  ¦  4  ¦  5  ¦  6  ¦  7  ¦ Пар ¦Стоп ¦

 L-----+-----+-----+-----+-----+-----+-----+-----+-----+------

Без контроля четности

 ------T-----T-----T-----T-----T-----T-----T-----T-----T-----¬

 ¦старт¦  1  ¦  2  ¦  3  ¦  4  ¦  5  ¦  6  ¦  7  ¦Стоп ¦Стоп ¦

 L-----+-----+-----+-----+-----+-----+-----+-----+-----+------

RTU фрейм

С контролем четности

 ------T-----T-----T-----T-----T-----T-----T-----T-----T-----T-----¬

 ¦старт¦  1  ¦  2  ¦  3  ¦  4  ¦  5  ¦  6  ¦  7  ¦  8  ¦ Пар ¦Стоп ¦

 L-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+------

Без контроля четности

 ------T-----T-----T-----T-----T-----T-----T-----T-----T-----T-----¬

 ¦старт¦  1  ¦  2  ¦  3  ¦  4  ¦  5  ¦  6  ¦  7  ¦  8  ¦Стоп ¦Стоп ¦

 L-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+------

Методы контроля ошибок.

Стандартная MODBUS сеть использует два метода контроля ошибок. Контроль паритета (even/odd) и контрольная сумма. Обе эти проверки генерируются в головном устройстве. Подчиненное устройство проверяет каждый байт и все сообщение в процессе приема.

Пользователь может устанавливать продолжительность интервала таймаута в течении которого головное устройство будет ожидать ответа от подчиненного. Если подчиненный обнаружил ошибку передачи, то он не формирует ответ главному.

Контроль паритета.

                Пользователь может конфигурировать контроллеры на проверку четного или нечетного паритета (Even/Odd).

                Например, 8 бит RTU-режима содержат следующую информацию:

1100 0101 Общее количество единиц - 4. Если используется четный паритет, то бит паритета будет равен 0, и общее количество 1-иц будет по прежнему четным числом. Если используется нечетный паритет, то бит паритета будет равен 1, тогда общее количество 1-иц вместе с битом паритета будет равно 5, т.е. нечетному числу.

Контрольная сумма LRC.

Метод LRC проверяет содержание сообщения исключая начальный символ ":" и пару CRLF.

LRC это 1 байт. LRC вычисляется передающим устройством и добавляется в конец сообщения. Принимающее устройство вычисляет LRC в процессе приема сообщения и сравнивает его с принятым от главного. Если есть несовпадение, то имеет место ошибка.

Контрольная сумма CRC.

Контрольная сумма CRC состоит из двух байт. Контрольная сумма вычисляется передающим устройством и добавляется в конец сообщения. Принимающее устройство вычисляет контрольную сумму в процессе приема и сравнивает ее с полем CRC принятого сообщения.

Счетчик контрольной суммы предварительно инициализируется числом FF hex. Только восемь бит данных используются для вычисления контрольной суммы CRC. Старт и стоп биты, бит паритета, если он используется, не учитываются в контрольной сумме.

Во время генерации CRC каждый байт сообщения складывается по исключающему ИЛИ с текущим содержимым регистра контрольной суммы. Результат сдвигается в направлении младшего бита, с заполнением нулем старшего бита. Если младший бит равен 1, то производится исключающее ИЛИ содержимого регистра контрольной суммы и определенного числа. Если младший бит равен 0, то исключающее ИЛИ не делается.

Процесс сдвига повторяется восемь раз. После последнего (восьмого) сдвига, следующий байт складывается с текущей величиной регистра контрольной суммы, и процесс сдвига повторяется восемь раз как описано выше. Конечное содержание регистра и есть контрольная сумма CRC.

Функции контроля и обработки данных.

01 Чтение статуса выходов

                ОПИСАНИЕ

                Читает статуса ON/OFF дискретных выходов в подчиненном.

                ЗАПРОС

                Запрос содержит адрес начального выхода и количество выходов для чтения. Выхода адресуются начиная с нуля: выхода 1-16 адресуются как 0-15.

                Ниже приведен пример запроса на чтение выходов 20-56 с подчиненного устройства 17.

                Имя поля                                                                                             Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              01

                Начальный адрес Hi                                                                            00

                Начальный адрес Lo                                                                            13

                Количество Hi                                                                                      00

                Количество Lo                                                                                     25

                Контрольная сумма (CRC или LRC)                                 --

 

                ОТВЕТ

                Статус выходов в ответном сообщении передается как один выход на бит.

                Если возвращаемое количество выходов не кратно восьми, то оставшиеся биты в последнем байте сообщения будут установлены в 0. Счетчик байт содержит количество байт передаваемых в поле данных.

                Имя поля                                                                                             Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              01

                Счетчик байт 4                                                                                     005

                Данные(Выхода 27-20)                                                                       CD

                Данные(Выхода 35-28)                                                                       6B

                Данные(Выхода 43-36)                                                                       B2

                Данные(Выхода 51-44)                                                                       0E

                Данные(Выхода 56-52)                                                                       1B

                Контрольная сумма (CRC или LRC)                                 --

 

02 Read Input Status

                ОПИСАНИЕ

                Чтение ON/OFF состояния дискретных входов (ссылка 1Х) в пдчиненном.

                ЗАПРОС

                Запрос содержит номер начального входа и количество входов для чтения. Входа адресуются начиная с 0.

                Ниже приведен пример запроса на чтение входов 10197-10218 с подчиненного устройства 17.

                               Запрос

                Имя поля                                                                                             Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              02

                Начальный адрес ст.                                                                            00

                Начальный адрес мл.                                                                           C4

                Кол-во входов ст.                                                                00

                Кол-во входов мл.                                                                               16

                Контрольная сумма                                                                             --

 

                ОТВЕТ

                Статус входов в ответном сообщении передается как один выход на бит.

                Если возвращаемое количество входов не кратно восьми, то оставшиеся биты в последнем байте сообщения будут установлены в 0. Счетчик байт содержит количество байт передаваемых в поле данных.

                Имя поля                                                                                             Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              01

                Счетчик байт 4                                                                                     005

                Данные(Входы 10204-10197)                                                             AC

                Данные(Входы 10212-10205)                                                             DB

                Данные(Входы 10218-10213)                                                             35

                Контрольная сумма (CRC или LRC)                                 --

 

03 Read Holding Registers

                ОПИСАНИЕ

                Чтение двоичного содержания регистров (ссылка 4Х) в подчиненном.

                ЗАПРОС

                Сообщение запроса специфицирует начальный регистр и количество регистров для чтения. Регистры адресуются начина с 0: регистры 1-16 адресуются как 0-15.

                Ниже приведен пример чтения регистров 40108-40110 с подчиненного устройства 17.

                Запрос

                Имя поля                                                                                              Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                           11

                Функция                                                                                              03

                Начальный адрес ст.                                                                           00

                Начальный адрес мл.                                                                         6B

                Кол-во регистров ст.                                                                           00

                Кол-во регистров мл.                                                                         03

                Контрольная сумма                                                                            --

 

                ОТВЕТ

                Данные регистров в ответе передаются как два бйта на регистр. Для каждого регистра, первый байт содержит старшие биты второй байт содержит младшие биты.

                За одно обращение может считываться 125 регистров для контроллеров 984-Х8Х (984-685 и т.д.), и 32 регистра для других контроллеров. Ответ дается когда все данные укомплектованы.

                Это пример ответа на запрос представленный выше:

                Ответ

                Имя поля                                                                                             Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                           11

                Функция                                                                                              03

                Счетчик байт                                                                                       06

                Данные (регистр 40108) ст.                                                 02

                Данные (регистр 40108) мл.                                                               2B

                Данные (регистр 40109) ст.                                                 00

                Данные (регистр 40109) мл.                                                               00

                Данные (регистр 40110) ст.                                                 00

                Данные (регистр 40110) мл.                                                               64

                Контрольная сумма                                                                            --

 

04 Read Input Registers

                СОДЕРЖАНИЕ

                Чтение двоичного содержания входных регистров (ссылка 3Х) в подчиненном.

                ЗАПРОС

                Запрос содержит номер начального регистра и количество регистров для чтения.

                Ниже приведен пример запроса для чтения регистра 30009 с подчиненного устройства 17.

                Запрос

                Имя поля                                                                                             Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                           11

                Функция                                                                                              03

                Начальный адрес ст.                                                                           00

                Начальный адрес мл.                                                                          6B

                Кол-во регистров ст.                                                                           00

                Кол-во регистров мл.                                                                         03

                Контрольная сумма                                                                            --

 

                ОТВЕТ

                Данные регистров в ответе передаются как два бйта на регистр. Для каждого регистра, первый байт содержит старшие биты второй байт содержит младшие биты.

                За одно обращение может считываться 125 регистров для контроллеров 984-Х8Х (984-685 и т.д.), и 32 регистра для других контроллеров. Ответ дается когда все данные укомплектованы.

                Это пример ответа на запрос представленный выше:

                Ответ

                Имя поля                                                                                              Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              03

                Счетчик байт                                                                                        02

                Данные (регистр 30009) ст.                                                  00

                Данные (регистр 30009) мл.                                                               2A

                Контрольная сумма                                                                            --

 

05 Force Single Coil

                ОПИСАНИЕ

                Установка единичного выхода (ссылка 1Х) в ON или OFF. При широковещательной передаче функция устанавливает все выходы с данным адресом во всех подчиненных контроллерах.

                ЗАМЕЧАНИЕ Функция может пересекаться с установкой защиты

                                               памяти и установкой недоступности выходов.

                ЗАПРОС

                Запрос содержит номер выхода для установки. Выходы адресуются начиная с 0. Выход 1 адресуется как 0.

                Состояние, в которое необходимо установить выход (ON/OFF) описывается в поле данных. Величина FF00 Hex - ON. Величина 0000 - OFF. Любое другое число неверно и не влияет на выход.

                В приведенном ниже примере устанавливается выход 173 в состояние ON в подчиненном устройстве 17.

                Запрос

                Имя поля                                                                                             Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                           11

                Функция                                                                                              05

                Адрес выхода мл.                                                                00

                Адрес выхода ст.                                                                                 AC

                Данные ст.                                                                                            FF

                Данные мл.                                                                                          00

                Контрольная сумма                                                                            --

 

                ОТВЕТ

                Нормальный ответ повторяет запрос.

                Ответ

                Имя поля                                                                                             Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                           11

                Функция                                                                                              05

                Адрес выхода мл.                                                                00

                Адрес выхода ст.                                                                                 AC

                Данные ст.                                                                                            FF

                Данные мл.                                                                                          00

                Контрольная сумма                                                                             --

 

06 Preset Single Register

                ОПИСАНИЕ

                Записывает величину в единичный регистр (ссылка 4Х). При щироковезательной передаче на всех подчиненных устройствах устанавливается один и тот же регистр.

                ЗАМЕЧАНИЕ

                Функция может пересекаться с установленной защитой памяти.

                ЗАПРОС

                Запрос содержит ссылку на регистр, который необходимо установить. Регистры адресуются с 0.

                Величина, в которую необходимо установить регистр передается в поле данных. Контроллеры M84 и 484 используют 10-ти битную величину, старшие шесть бит заполняются 0. Все другие контроллерыиспользуют 16 бит.

                В приведенном ниже примере в регистр 40002 записывается величина 0003 Hex в подчиненном устройстве 17.

                Запрос

                Имя поля                                                                                              Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              06

                Адрес регистра мл.                                                                              00

                Адрес регистра ст.                                                                               01

                Данные ст.                                                                                            00

                Данные мл.                                                                                           03

                Контрольная сумма                                                                             --

 

                ОТВЕТ

                Нормальный ответ повторяет запрос.

                Ответ

                Имя поля                                                                                              Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              06

                Адрес регистра мл.                                                                              00

                Адрес регистра ст.                                                                               01

                Данные ст.                                                                                            00

                Данные мл.                                                                                           03

                Контрольная сумма                                                                             --

 

07 Read Exception Status

                ОПИСАНИЕ

                Чтение статусных выходов в подчиненном контроллере. Назначение некоторых выходов в контроллерах заранее определено. Другие же могут программироваться пользователем для вывода информации о контроллере, например "машина ВКЛ/ВЫКЛ" и др.

                Функция обеспечивает простой метод доступа к данной информации, потому что адрес статусных выходов известен (нет необходимости указывать адрес выхода).

                Статусные выходы имеют следующие предопределения:

                Модель контроллера                           Выход                    Назначение

                M84,184/384,584,984 1-8                                    Определяемые пользователем

                               484                                         257                          Состояние батареи

                                                                               258-264  Определяемые пользователем

                               884                                         761                          Состояние батареи

                                                                              762                          Статус Защиты памяти

                                                                              763                          RIO Health Status

                                                                              764-768 Определяемые пользователем

                ЗАПРОС

                Имя поля                                                                                              Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                           11

                Функция                                                                                              07

                Контрольная сумма                                                                            --

 

                ОТВЕТ

                Нормальный ответ содержит состояние восьми выходов статуса.

                Пример ответа на запрос описанный выше:

                Ответ

                Имя поля                                                                                              Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              06

                Данные выходов                                                                  6D

                Контрольная сумма                                                                             --

 

11 (0B Hex) Fetch Comm Event Ctr

                ОПИСАНИЕ

                Возвращает слово состояния и счетчик событий из коммуникационного счетчика событий подчиненного устройства. Просматривая текущий счетчик перед и после серии сообщений , главный может увидеть какие сообщения были нормально приняты подчиненным.

                Счетчик событий инкрементируется после каждого удачного приема сообщения. Он не инкрементируется после сообщений об ошибке, команд регистрации, или команд просмотра счетчика событий.

                Счетчик событий может быть переустановлен посредством Диагностической функции (код 08), подфункциями Restart Communication Option (код 00 01) или Clear Counters and Diagnostic Register (код 00 0A).

                ЗАПРОС

                Ниже приведен пример запроса на чтение коммуникационного счетчика событий в подчиненном устройстве 17:

                Имя поля                                                                                              Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              0B

                Контрольная сумма                                                                             --

 

                ОТВЕТ

                Нормальный ответ содержит два байта слова состояния, и два байта счетчика событий. Слово состояния содержит все 1 если предыдущая команда еще выполняется. Иначе слово состояния содержит все нули.

                Ниже приведен пример ответа на описанный выше запрос:

                Ответ

                Имя поля                                                                                             Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                           11

                Функция                                                                                              0B

                Состояние ст.                                                                                       FF

                Состояние мл.                                                                                      FF

                Счетчик событий ст.                                                                           01

                Счетчик событий мл.                                                                          08

                Контрольная сумма                                                                             --

 

                В этом примере слово состояния содержит число FFFF Hex, что говорит о том, что в подчиненном все еще выполняется функция. Счетчик событий содержит число 264, что говорит о том, что на данный момент произошло 264 события.

12 (0C Hex) Fetch Comm Event Log

                ОПИСАНИЕ

                Возвращает слово состояния, счетчик событий, счетчик сообщений, и поле байтов событий.

                Слово состояния и счетчик событий идентичны возвращаемым функцией 11 (0B Hex).

                Счетчик сообщений обработанных подчиненным со времени последнего рестарта, операции очистки счетчиков или с момента включения питания. Этот счетчик идентичен возвращаемому функцией диагностики (код 08), подфункцией Return Bus Message Count (код 11).

                Поле байтов событий содержит 0-64 байта, каждый байт содержит статус одной посылки или приема сообщения подчиненным. События размещаются подчиненным в поле в хронологическом порядке. Байт 0 содержит последнее по времени событие.

                ЗАПРОС

                Ниже приведен пример запроса на посылку коммуникационного журнала сообщений главному с подчиненного устройства 17:

                Имя поля                                                                                              Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              0C

                Контрольная сумма                                                                             --

 

                ОТВЕТ

                Нормальный ответ содержит два байта слова состояния, два байта счетчика событий, два байта счетчика сообщений, и поля содержащего 0-64 байта описания событий. Поле счетчика данных определяет общую длину данных в четырех полях.

                Это пример ответа на запрос представленный выше:

                Ответ

                Имя поля                                                                                             Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                           11

                Функция                                                                                              0C

                Счетчик байтов                                                                                   08

                Состояние ст.                                                                                       00

                Состояние мл.                                                                                     00

                Счетчик событий ст.                                                                           01

                Счетчик событий мл.                                                                          08

                Счетчик сообщений ст.                                                                       01

                Счетчик сообщений мл.                                                                      21

                Событие 0                                                                                            20

                Событие 1                                                                                            00

                Контрольная сумма                                                                            --

 

                Вданном примере, слово состояния содержит 00 00 Hex, это говорит о том, что подчиненный не занят выпонением программной функции. Счетчик событий содержит 264. Счетчик сообщений показывает, что 289 сообщений было обработано.

                Последнее коммуникационное событие показано в 0-ом байте событий. Его содержимое говорит о том, что подчиненный был введен в режим Listen Only Mode.

                Предыдущее событие показано в 1-ом байте событий. Его содержимое (00) говорит о том, что подчиненный принял Communications Restart.

                Содержимое байтов событий описано ниже.

ЧТО СОДЕРЖАТ БАЙТЫ СОБЫТИЙ

                Байты событий, возвращаемые функцией Fetch Communication Event Log, могут быть одним из четырех типов. Тип определяется старшим битом в каждом байте. Кроме того, он может определятся битом 6.

Slave Modbus Receive Event

                Этот тип байта события сохраняется подчиненным когда сообщение-запрос было принято. Он сохраняется перед тем как подчиненный обработает сообщение. Этот тип события определяется установкой бита 7 в "1". Остальные биты устанавливаются в "1" если произошли описанные ниже события:

                Бит                         Описание

                0                             Не используется

                1                             Коммуникационная ошибка

                2                             Не используется

                3                             Не используется

                4                             Character Overrun

                5                             Currently in Listen Only Mode

                6                             Широковещательный прием

                7                             1

Slave Modbus Send Event

                Этот тип байта события сохраняется подчиненным когда он закончил обработку сообщения запроса. Он сохраняется если подчиненный возвращает нормальный ответ или возвращает сообщение об ошибке, или не отвечает на запрос. Это событие определяется установкой бита 7 в 0, с установкой бита 6 в 1. Остальные биты устанавливаются в 1 если произошли описанные ниже события:

                Бит                         Описание

                0                             Read Exeption Sent (Код ошибки 1-3)

                1                             Slave Abort Exeption Sent (Код ошибки 4)

                2                             Slave Busy Exeption Sent (Код ошибки 5-6)

                3                             Slave Program NAK Exeption Sent (Код ошибки 7)

                4                             Write Timeout Error Occured

                5                             Currently in Listen Mode

                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 байта.

                Количество регистров для чтения, вместе с другими полями в ответе, не должно превышать допустимую длину MODBUS-сообщения: 256 байт.

                Доступное количество файлов расширенной памяти зависит от установленного размера расширенной памяти в подчиненном контроллере. Каждый файл, исключая последний, содержит 10000 регистров, адресуемых как 0000-270F Hex (0000-9999).

                Для контроллеров кроме 984-785:

                Размер расш. памяти                            Кол-во файлов                                     Остаточные регистры

                               16К                                                        2                                             6383

                               32К                                                        4                                             2767

                               64К                                                        7                                             5535

                               96К                                                        10                                           8303

                Для контроллеров 984-785:

                984-785 с картриджем AS-M785-032:

                Польз.    Статич.

                логика    ОЗУ        Размер расш. пам. Кол. файлов                          Ост. рег.

                32К         32К                         0                                             0                             0

                16К         64К                         72К                                        8                             3727

 984-785 c картриджем AS-M785-048:

                Польз.    Статич.

                логика    ОЗУ        Размер расш. пам. Кол. файлов                         Ост. рег.

                48К         32К                         24К                                        3                             4575

                32К         64К                         96К                                         10                           8303

                Пример чтения двух групп с подчиненного устройства 17 показан ниже.

                Группа 1 состоит из двух регистров из файла 4, начиная с регистра 2 (адрес 0001).

                Группа 2 состоит из двух регистров из файла 3, начиная с регистра 10 (адрес 0009).

                Запрос

                Имя поля                                                                                              Пример (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              14

                Счетчик байт                                                                                       0E

                Суб-запрос 1, Тип ссылки                                                   06

                Суб-запрос 1, Номер файла ст.                                                          00

                Суб-запрос 1, Номер файла мл.                                                         04

                Суб-запрос 1, Стартовый адрес ст                                     .               00

                Суб-запрос 1, Стартовый адрес мл.                                   01

                Суб-запрос 1, Кол-во регистров ст.                                   00

                Суб-запрос 1, кол-во регистров мл.                                  02

                Суб-запрос 2, тип ссылки                                                                   06

                Суб-запрос 2, Номер файла ст.                                                          00

                Суб-запрос 2, Номер файла мл.                                                         03

                Суб-запрос 2, Стартовый адрес ст.                                                    00

                Суб-запрос 2, Стартовый адрес мл.                                   09

                Суб-запрос 2, Кол-во регистров ст.                                   00

                Суб-запрос 2, кол-во регистров мл.                                  02

                Контрольная сумма (LRC или CRC)                                 --

 

                ОТВЕТ

                Нормальный ответ состоит из серии суб-ответов, один на каждый суб-запрос.

                Имя поля                                                                                              Пример (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              14

                Счетчик байт                                                                                        0E

                Суб-ответ 1, Счетчик байт                                                 0C

                Суб-ответ 1, Тип ссылки                                                                    06

                Суб-ответ 1, Данные регистра ст.                                                      0D

                Суб-ответ 1, Данные регистра мл.                                                     FE

                Суб-ответ 1, Данные регистра ст.                                                      00

                Суб-ответ 1, Данные регистра мл.                                                     20

                Суб-ответ 2, Счетчик байт                                                 05

                Суб-ответ 2, Тип ссылки                                                                    06

                Суб-ответ 2, Данные регистра ст.                                                      33

                Суб-ответ 2, Данные регистра мл.                                                     CD

                Суб-ответ 2, Данные регистра ст.                                                      00

                Суб-ответ 2, Данные регистра мл.                                                     40

                Контрольная сумма                                                                            --

 

21 (15 Hex) Write general reference

                Описание

                Запись содержимого регистров в файл расширенной память (6ХХХХ).

                ЗАПРОС

                Запрос специфицирует группу или группы для записи, и данные которые содержатся в них.

                Запрос специфицирует группу или группы для чтения. Каждая группа определяется в поле "суб-запроса" которое содержит 7 байт:

                - Тип ссылки : 1 байт (должен быть специфицирован как 6)

                - Номер файла расширенной памяти: 2 байта (от 1 до 10)

                - Начальный адрес регистра внутри файла: 2 байта

                - Количество регистров для чтения: 2 байта.

                Количество регистров для записи, вместе с другими полями в ответе, не должно превышать допустимую длину MODBUS-сообщения: 256 байт.

                Доступное количество файлов расширенной памяти зависит от установленного размера расширенной памяти в подчиненном контроллере. Каждый файл, исключая последний, содержит 10000 регистров, адресуемых как 0000-270F Hex (0000-9999).

                Для контроллеров кроме 984-785:

                Размер расш. памяти                            Кол-во файлов                      Остаточные регистры

                               16К                                                        2                                             6383

                               32К                                                        4                                             2767

                               64К                                                        7                                             5535

                               96К                                                         10                                           8303

                Для контроллеров 984-785:

                984-785 с картриджем AS-M785-032:

                Польз.    Статич.

                логика    ОЗУ        Размер расш. пам  . Кол. файлов                        Ост. рег.

                32К         32К                         0                                             0                             0

                16К         64К                         72К                                        8                             3727

 984-785 c картриджем AS-M785-048:

                Польз.    Статич.

                логика    ОЗУ        Размер расш. пам.                Кол. файлов                          Ост. рег.

                48К         32К                         24К                                        3                             4575

                32К         64К                         96К                                        10                            8303

                Пример запроса и ответа приведен ниже.

                В данном примере требуется записать одну группу в подчиненное устройство 17.

                Группа состоит из трех регистров в файле 4, начиная с регистра 8 (адрес 0007).

                Запрос

                Имя поля                                                                                              Пример (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              15

                Счетчик байт                                                                                        0D

                Суб-запрос 1, тип ссылки                                                                   06

                Суб-запрос 1, Номер файла ст.                                                          00

                Суб-запрос 1, Номер файла мл.                                                         04

                Суб-запрос 1, Начальный адрес ст.                                    00

                Суб-запрос 1, Начальный адрес мл.                                   07

                Суб-запрос 1, Кол-во регистров ст.                                   00

                Суб-запрос 1, Кол-во регистров мл.                                  03

                Суб-запрос 1, Данные регистра ст.                                                    06

                Суб-запрос 1, Данные регистра мл.                                   AF

                Суб-запрос 1, Данные регистра ст.                                                    04

                Суб-запрос 1, Данные регистра мл.                                   BE

                Суб-запрос 1, Данные регистра ст.                                                    10

                Суб-запрос 1, Данные регистра мл.                                   0D

                Контрольная сумма                                                                            --

 

                Ответ

                Нормальный ответ повторяет запрос.

                Имя поля                                                                                              Пример (Hex)

                Адрес подчиненного                                                                           11

                Функция                                                                                              15

                Счетчик байт                                                                                        0D

                Суб-ответ 1, тип ссылки                                                                     06

                Суб-ответ 1, Номер файла ст.                                                            00

                Суб-ответ 1, Номер файла мл.                                                          04

                Суб-ответ 1, Начальный адрес ст.                                                     00

                Суб-ответ 1, Начальный адрес мл.                                    07

                Суб-ответ 1, Кол-во регистров ст.                                                     00

                Суб-ответ 1, Кол-во регистров мл.                                                   03

                Суб-ответ 1, Данные регистра ст.                                                      06

                Суб-ответ 1, Данные регистра мл.                                                     AF

                Суб-ответ 1, Данные регистра ст.                                                      04

                Суб-ответ 1, Данные регистра мл.                                                     BE

                Суб-ответ 1, Данные регистра ст.                                                      10

                Суб-ответ 1, Данные регистра мл.                                                     0D

                Контрольная сумма                                                                             --

 

22 (16 Hex) Mask Write 4X Register

                Описание

                Модифицирует содержание регистров 4ХХХХ используя комбинацию OR-маску, AND-маску и текущего содержимого регистра. Функция может использоваться для установки или сброса отдельного бита в регистре.

                Функция поддерживается только 984-785 контроллерами.

                ЗАПРОС

                Алгоритм функции следующий:

                Результат=(Текущ. знач. AND Маска_И) OR (Маска_ИЛИ AND ~Маска_И)

                Например:                                             Hex                                         Двоичное

                Текущее значение                 12                                            0001 0010

                Маска_И                                               F2                                           1111 0010

                Маска_ИЛИ                                          25                                            0010 0101

                ~Маска_И                                             0D                                           0000 1101

                Результат                                               17                                            0001 0111

                Пример записи с маской в регистр 5 в подчиненное устройство 17, с приведенной выше маской описан ниже.

                Запрос

                Имя поля                                                                                              Пример (Hex)

                Адрес подчиненного                                                                            17

                Функция                                                                                              16

                Адрес ссылки ст.                                                                                 00

                Адрес ссылки мл.                                                                04

                Маска_И ст.                                                                                         00

                Маска_И мл.                                                                                       F2

                Маска_ИЛИ ст.                                                                                   00

                Маска_ИЛИ мл.                                                                                  25

                Контрольная сумма                                                                            --

 

                ОТВЕТ

                Нормальный ответ повторяет запрос. Ответ возвращается после записи в регистр.

                Ответ

                Имя поля                                                                                              Пример (Hex)

                Адрес подчиненного                                                                            17

                Функция                                                                                              16

                Адрес ссылки ст.                                                                                 00

                Адрес ссылки мл.                                                                 04

                Маска_И ст.                                                                                         00

                Маска_И мл.                                                                                        F2

                Маска_ИЛИ ст.                                                                                    00

                Маска_ИЛИ мл.                                                                                  25

                Контрольная сумма                                                                             --

 

23 (17 Hex) Read/Write 4X Registers

                ОПИСАНИЕ

                Производит операцию чтения и записи за одну MODBUS транзакцию. Функция может записывать новое содержание регистров 4ХХХХ и возвращать содержание другой группы регистров 4ХХХХ. Эта функция поддерживается только на 984-785 контроллерах.

                ЗАПРОС

                Запрос специфицирует начальный адрес и количество регистров группы для чтения. И также специфицирует начальный адрес, количество регистров, и данные для записи в группу регистров. Счетчик байтов содержит количество байт передаваемых в поле данных.

                В примере, приведенном ниже требуется прочитать шесть регистров начиная с пятого, и записать три регистра начиная с 16, в подчиненном устройстве 17:

                Запрос

                Имя поля                                                                                              Пример (Hex)

                Адрес подчиненного                                                                            17

                Функция                                                                                              17

                Начальный регистр чтения ст.                                                           00

                Начальный регистр чтения мл.                                                          04

                Кол-во регистров для чтения ст.                                                       00

                Кол-во регистров для чтения мл.                                                      06

                Начальный регистр записи ст.                                                           00

                Начальный регистр записи мл.                                                          0F

                Кол-во регистров для записи ст.                                                        00

                Кол-во регистров для записи мл.                                                      03

                Счетчик байтов                                                                                   06

                Данные для записи 1 ст.                                                                     00

                Данные для записи 1 мл.                                                                    FF

                Данные для записи 2 ст.                                                                     00

                Данные для записи 2 мл.                                                                    FF

                Данные для записи 3 ст.                                                                     00

                Данные для записи 3 мл.                                                                    FF

                Контрольная сумма                                                                            --

 

                ОТВЕТ

                Нормальный ответ содержит данные прочитанных регистров.

                Ответ

                Имя поля                                                                                             Пример (Hex)

                Адрес подчиненного                                                                           17

                Функция                                                                                              17

                Счетчик байт                                                                                       0C

                Считанные данные 1 ст.                                                                      00

                Считанные данные 1 мл.                                                                     FE

                Считанные данные 2 ст.                                                                      0A

                Считанные данные 2 мл.                                                                    CD

                Считанные данные 3 ст.                                                                      00

                Считанные данные 3 мл.                                                                     01

                Считанные данные 4 ст.                                                                      00

                Считанные данные 4 мл.                                                                    03

                Считанные данные 5 ст.                                                                      00

                Считанные данные 5 мл.                                                                    0D

                Считанные данные 6 ст.                                                                      00

                Считанные данные 6 мл.                                                                    FF

                Контрольная сумма                                                                            --

 

24 (18 Hex) Read FIFO Queue

                ОПИСАНИЕ

                Чтение содержимого очереди FIFO (регистры 4ХХХХ). Функция возвращает счетчик регистров в очереди, следом идут данные очереди. До 32 регистров могут быть считаны: счетчик, плюс 31 регистр данных очереди.

                Функция читает содержимое очереди, но не очищает ее.

                Функция поддерживается только на 984-785 контроллерах.

                ЗАПРОС

                Запрос специфицирует начальный регистр 4ХХХХ для чтения FIFO очереди. Это адрес регистра указателя использующегося в функциональных блоках FIN и FOUT контроллеров.

                Ниже показан пример чтения FIFO очереди с подчиненного устройства 17. Чтение очереди начинается с регистра указателя 41247 (04DE Hex).

                Запрос

                Имя поля                                                                                              Пример (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              18

                Адрес указателя FIFO ст.                                                                   04

                Адрес указателя FIFO мл.                                                                 DE

                Контрольная сумма                                                                            --

 

                ОТВЕТ

                В нормальном ответе, счетчик байт содержит количество следующих за ним байтов, включая счетчик байтов очереди и регистры данных (но не включая поле контрольной суммы).

                Счетчик байтов очереди содержит количество регистров данных в очереди (не включая счетчик).

                Если счетчик очереди содержит число больше 31, то в ответе возвращается код ошибки 03 (Недопустимая величина данных).

                Ниже показан пример нормального ответа на запрос представленный выше:

                Ответ

                Имя поля                                                                                             Пример (Hex)

                Адрес подчиненного                                                                           11

                Функция                                                                                              18

                Счетчик байт ст.                                                                                  00

                Счетчик байт мл.                                                                  08

                Счетчик FIFO ст.                                                                                00

                Счетчик FIFO мл.                                                                03

                Регистр данных FIFO 1 ст.                                                 01

                Регистр данных FIFO 1 мл.                                                B8

                Регистр данных FIFO 2 ст.                                                 12

                Регистр данных FIFO 2 мл.                                                84

                Регистр данных FIFO 3 ст.                                                 13

                Регистр данных FIFO 3 мл.                                                22

                Контрольная сумма                                                                            --

 

ФУНКЦИЯ ДИАГНОСТИКИ

Функция 08 - Диагностическая

                ОПИСАНИЕ

                Функция 08 обеспечивает серию тестов для проверки системы коммуникации между главным и подчиненным, или проверку на различные внутренние ошибки в подчиненном. Широкое вещание не поддерживается.

                Функция использует два байта кода подфункции в запросе для определения типа теста который необходимо провести. Подчиненный возвращает оба кода функции и подфункции в нормальном ответе.

                Большинство диагностических запросов используют два байта поля данных для посылки диагностических данных или контрольной информации подчиненному. Некоторые результаты диагностики могут возвращаться подчиненным в поле данных нормального ответа.

ЭФФЕКТ ДИАГНОСТИКИ НА ПОДЧИНЕННОМ

       В общем, работа диагностической функции в подчиненном устройстве не влияет на работу пользовательской программы. Пользовательская логика, такая как дискретные выходы и регистры, не доступна для диагностики. Определенные функции могут выборочно сбросить счетчик ошибок в подчиненном.

КАК ОРГАНИЗОВАНА ИНФОРМАЦИЯ В ДАННОМ РУКОВОДСТВЕ

                Примеры диагностических запросов и ответов показаны на последующих страницах. В них показано размещение кода функции, кода подфункции, и поля данных внутри сообщения.

                Список кодов подфункций поддерживаемых различными контроллерами приведен ниже после примера ответа на запрос.

                ЗАПРОС

                Это пример запроса подчиненному устройству на возврат данных переданных в запросе. Здесь используется код подфункции 0.

                Запрос

                Имя поля                                                                                              Пример (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              08

                Подфункция ст.                                                                                   00

                Подфункция мл.                                                                                 00

                Данные ст.                                                                                            A5

                Данные мл.                                                                                           37

                Контрольная сумма                                                                             --

 

                ОТВЕТ

                Нормальный ответ возвращает те же данные.

                Имя поля                                                                                              Пример (Hex)

                Адрес подчиненного                                                                            11

                Функция                                                                                              08

                Подфункция ст.                                                                                   00

                Подфункция мл.                                                                                 00

                Данные ст.                                                                                            A5

                Данные мл.                                                                                           37

                Контрольная сумма                                                                             --

 

                ДИАГНОСТИЧЕСКИЕ КОДЫ ПОДДЕРЖИВАЕМЫЕ КОНТРОЛЛЕРАМИ

                Код Имя                                                                               383          484          584         884         M84       984

                00            Return Query Data                                 Y             Y             Y             Y             Y             Y

                01            Restart Comm Option                                            Y             Y             Y             Y             Y             Y

                02            Return Diagnostic Register                                   Y             Y             Y             Y             Y             Y

                03            Change ASCII Input Delimiter                              Y             Y             Y             N                            Y

                04            Force Listen Only Mode                                        Y             Y             Y             Y             Y             Y

                05-09      Зарезервированы

                10            Clear Ctrs and Diagnostic Reg.                             Y             Y             (1)           N             N             (1)

                11            Return Bus Message Count                   Y             Y             Y             N             N             Y

                12            Return Bus Comm. Error Count                            Y             Y             Y             N             N             Y

                13            Return Bus Exeption Error Count                         Y             Y             Y             N             N             Y

                14            Return Slave Message Count                 Y             Y             Y             N             N             Y

                15            Return Slave No Response Cnt                             Y             Y             Y             N             N             Y

                16            Return Slave NAK Count                                      Y             Y             Y             N             N             Y

                17            Return Slave Busy Count                                      Y             Y             Y             N             N             Y

                18            Return Bus Char. Overrun Cnt                              Y             Y             Y             N             N             Y

                19            Return Overrun Error Count                  N             N             N             Y             N             N

                20            Clear Overrun Counter and Flag                            N             N             N             Y             N             N

                21            Get/Clear Modbus Plus Statistic                            N             N             N             N             N             Y

 22 и далее Зарезервированы

                Примечание:

                (1) Только очистка счетчиков.

ДИАГНОСТИЧЕСКИЕ ПОДФУНКЦИИ

00 Return Query Data

                Данные расположенные в поле данных запроса должны быть возвращены в ответе. Ответ должен быть идентичен запросу.

                Подфункция          Поле данных(Запрос)           Поле данных(Ответ)

                00 00                      Любое значение                    Повтор данных запроса

01 Restart Communication Option

                Периферийный порт подчиненного инициализируется и перезапускается, все коммуникационные счетчики очищаются. Если порт находится в режиме 'Listen Only Mode', ответ не возвращается. Если порт не находится в данном режиме, то возвращается нормальный ответ. Это делается перед рестартом.

                Когда подчиненный принимает запрос, он делает рестарт и запускает тесты, которые проводятся при включении питания. После удачного прохождения тестов порт переходит в режим готовности.

                Поле данных запроса содержит FF 00 Hex для очистки Коммуникационного Журнала Событий. Содержимое поля данных 00 00 оставляет журнал без изменений.

                Подфункция          Поле данных(Запрос)          Поле данных(Ответ)

                00 01                      00 00                                       Повтор данных запроса

                00 01                      FF 00                                      Повтор данных запроса

02 Return Diagnostic Register

                Содержимое регистра диагностики подчиненного возвращается в ответе.

                Подфункция          Поле данных(Запрос)           Поле данных(Ответ)

                00 02                      00 00                                      Содержимое регистра диагностики

КАК ОРГАНИЗОВАНЫ ДАННЫЕ РЕГИСТРА

                Назначение битов регистра диагностики показано ниже.

                184/384 Регистр диагностики

                Бит                         Описание

                0                             Continue on Error

                1                             Run Light Filed

                2                             T-Bus Test Filed

                3                             Asynchronous Bus Test Failed

                4                             Force Listen Only Mode

                5                             Не используется

                6                             Не используется

                7                             ROM Chip 0 Test Failed

                8                             Continuos ROM Cheksum Test in Execution

                9                             ROM Chip 1 Test Failed

                10                           ROM Chip 2 Test Failed

                11                           ROM Chip 3 Test Failed

                12                           RAM Chip 5000-53FF Test Failed

                13                           RAM Chip 6000-67FF Test Failed, Even Adresess

                14                           RAM Chip 6000-67FF Test Failed, Odd Adresess

                15                           Timer Chip Test Filed

                484 Регистр диагностики

                Бит                         Описание

                0                             Continue on Error

                1                             CPU Test or Run Light Failed

                2                             Parallel Port Test Failed

                3                             Asynchronous Bus Test Failed

                4                             Timer 0 Test Filed

                5                             Timer 1 Test Filed

                6                             Timer 2 Test Filed

                7                             ROM Chip 0000-07FF Test Failed

                8                             Continuous ROM Checksum Test in Execution

                9                             ROM Chip 0800-0FFF Test Failed

                10                           ROM Chip 1000-17FF Test Failed

                11                           ROM Chip 1800-1FFF Test Failed

                12                           RAM Chip 4000-40FF Test Failed

                13                           RAM Chip 4100-41FF Test Failed

                14                           RAM Chip 4200-42FF Test Failed

                15                           RAM Chip 4300-43FF Test Failed

                584/984 Регистр диагностики

                Бит                         Описание

                0                             Illegal Configuration

                1                             Backup Cheksum Error in High-Speed RAM

                2                             Logic Checksum Error

                3                             Invalid Node Type

                4                             Invalid Traffic Cop Type

                5                             CPU/Solve Diagnostic Failed

                6                             Real Time Clock Failed

                7                             Watchdog Timer Failed-Scan Time exeeded 250ms

                8                             No End of Logic Node detected, or quantity of end of segment words (DOIO) does not match quantity

                                               of segments configured

                9                             Sate RAM Test Failed

                10                            Start of Network (SON) did not begin network

                11                           Bad Order of Solve Table

                12                           Illegal Peripherial Intervention

                13                           Dim Awareness Flag

                14                           Не используется

                15                           Peripherial Port Stop Executed, not an error

                884 Регистр диагностики

                Бит                         Описание

                0                             Modbus IOP Overrun Errors Flag

                1                             Modbus Option Overrun Errors Flag

                2                             Modbus IOP Failed

                3                             Modbus Option Failed

                4                             Ourbus IOP Failed

                5                             Remote IO Failed

                6                             Main CPU Failed

                7                             Table RAM Checksum Failed

                8                             Scan Task exceeded its time limit-too much user logic

                9                             Не используется

                10                           Не используется

                11                           Не используется

                12                           Не используется

                13                           Не используется

                14                           Не используется

                15                           Не используется

03 Change ASCII Input Delimeter

                Символ 'CHAR' Размещенный в поле данных запроса становится признаком конца сообщения в последующих обменах (заменяя символ LF).

                Подфункция          Поле данных (Запрос)          Поле данных (Ответ)

                00 03                      CHAR 00                               Повтор данных запроса

04 Force Listen Only Mode

                Установка адресуемого подчиненного в режим Listen Only Mode. Это изолирует его от других устройств сети, позволяя иметь связь без прерывания с адресуемого подчиненного.

                Когда подчиненный введен в данный режим, весь активный коммуникационный контроль выключается. Пока устройство находится в данном режиме, любые сообщения адресуемые подчиненному или широковещательная передача отслеживаются, но не выполняется никаких действий и ответы не возвращаются.

                Только одна функция может быть выполнена - это функция Restart Communication Option (код функции 8, подфункция 1).

                Подфункция          Поле данных (Запрос)          Поле данных (Ответ)

                00 04                      00 00                                       Ответ не возвращается

10 (0A Hex) Clear Counters and Diagnostic Register

                Для контроллеров кроме 584 или 984, очищаются все счетчики и регистр диагностики. Для 584 или 984 очищаются только счетчики. Счетчики также очищаются при включении питания.

                Подфункция          Поле данных (Запрос)          Поле данных (Ответ)

                00 0A                     00 00                                       Повтор данных запроса

11 (0B Hex) Return Bus Message Count

                Поле данных ответного сообщения содержит количество сообщений обнаруженных коммуникационной системой после последнего рестарта, операции очистки счетчиков, или включения питания.

                Подфункция          Поле данных (Запрос)          Поле данных (Ответ)

                00 0B                      00 00                                      Повтор данных запроса

12 (0C Hex) Return Bus Communication Error Count

                Поле данных ответного сообщения содержит количество ошибок контрольной суммы насчитанных после последнего рестарта, операции очистки счетчиков, или включения питания.

                Подфункция          Поле данных (Запрос)          Поле данных (Ответ)

                00 0C                      00 00                                      Счетчик ошибок контр. суммы

13 (0D Hex) Return Bus Exeption Error Count

Поле данных ответного сообщения содержит количество сообщений об ошибках насчитанных подчиненным после последнего рестарта, операции очистки счетчиков, или включения питания.

                Сообщения об ошибках описаны в приложении А.

                Подфункция          Поле данных (Запрос)         Поле данных (Ответ)

                00 0D                     00 00                                      Счетчик ошибок

14 (0E Hex) Return Slave Message Count

 Поле данных ответного сообщения содержит количество сообщений адресованных подчиненному или широковещательных сообщений насчитанных подчиненным после последнего рестарта, операции очистки счетчиков, или включения питания.

                Подфункция          Поле данных (Запрос)          Поле данных (Ответ)

                00 0E                      00 00                                      Счетчик сообщений подчиненного

15 (0F Hex) Return Slave No Response Count

                Поле данных ответного сообщения содержит количество сообщений адресованных подчиненному которые остались без ответа после последнего рестарта, операции очистки счетчиков, или включения питания.

                Подфункция          Поле данных (Запрос)          Поле данных (Ответ)

                00 0F                      00 00                                      Счетчик сообщений подчиненного

16 (10 Hex) Return Slave NAK Count

                Поле данных ответного сообщения содержит количество сообщений адресованных подчиненному, для которых был возвращен ответ с сообщением об ошибке типа Negative Acknowledge (NAK), после последнего рестарта, операции очистки счетчиков, или включения питания.

                Подфункция          Поле данных (Запрос)         Поле данных (Ответ)

                00 10                      00 00                                       Счетчик NAK сообщений

17 (11 Hex) Return Slave Busy Count

                Поле данных ответного сообщения содержит количество сообщений адресованных подчиненному, для которых был возвращен ответ с сообщением об ошибке типа Slave Device Busy, после последнего рестарта, операции очистки счетчиков, или включения питания.

                Подфункция          Поле данных (Запрос)          Поле данных (Ответ)

                00 11                      00 00 Счетчик ответов "      Устройство занято"

18 (12 Hex) Return Bus Character Overrun Count

                Поле данных ответного сообщения содержит количество сообщений адресованных подчиненному, в которых был обнаружен пропуск символа, после последнего рестарта, операции очистки счетчиков, или включения питания. Пропуск символа может возникать в случае если данные поступают в порт слишком быстро, или в случае аппаратных сбоев.

                Подфункция          Поле данных (Запрос)          Поле данных (Ответ)

                00 12                      00 00                                      Счетчик Slave Overrun

19 (13 Hex) Return IOP Overrun Count (884)

                Поле данных ответного сообщения содержит количество сообщений адресованных подчиненному, в которых был обнаружен пропуск символа (для 884 IOP), после последнего рестарта, операции очистки счетчиков, или включения питания. Пропуск символа может возникать в случае если данные поступают в порт слишком быстро, или в случае аппаратных сбоев. Эта функция специфична для 884.

                Подфункция          Поле данных (Запрос)          Поле данных (Ответ)

                00 13                      00 00                                       Счетчик Slave IOP Overrun

20 (14 Hex) Clear Overrun Counter and Flag (884)

                Очищает счетчик 884-го Overrun Counter и сбрасывает флаг ошибки. Текущее значение флага располагается в бите 0 регистра диагностики (смотри подфункцию 02). Эта функция специфична для 884.

                Подфункция          Поле данных (Запрос)          Поле данных (Ответ)

                00 14                      00 00                                      Повтор данных запроса

21 (15 Hex) Get/Clear Modbus Statistic

                Возвращает последовательность из 54 слов (108 байтов) в поле данных ответа. Данные содержат статистику Modbus Plus процессора подчиненного.

                В добавление к коду функции (08) и коду подфункции (00 15 Hex) следующие два байта в запросе специфицируют тип операции: 'Взять статистику' или 'Очистить статистику'. Статистика может бать также очищена выключением питания.

                Поле типа операции:

                - 00 03 специфицирует операцию 'Взять Статистику'

                - 00 04 специфицирует операцию 'Очистить Статистику'

                ЗАПРОС: Это последовательность полей в запросе:

                Функция                Подфункция          Операция

                08                           00 15                      00 03       (Get Statistic)

                08                           00 15                      00 04       (Clear Statistic)

                ОТВЕТ НА ОПЕРАЦИЮ ВЗЯТЬ СТАТИСТИКУ: Это последовательность полей нормального ответа на операцию 'Взять статистику':

                Функция                Подфункция          Операция               Данные(108 байт)

                08                           00 15                      00 03                      Слова 00-53

                ОТВЕТ НА ОПЕРАЦИЮ ОЧИСТИТЬ СТАТИСТИКУ: Нормальный ответ на эту операцию повторяет запрос.

                Функция                Подфункция          Операция

                08                           00 15                      00 04

                Сетевая статистика Modbus Plus

                Слово     Биты                       начение

                00                                           Тип Узла

                               0                             Незнакомый тип узла

                               1                             Программируемый контроллер

                               2                             Modbus Brige

                               3                             Host - компьютер

                               4                             Brige Plus

                               5                             I/O узел

                01            0..11                       Номер версии программного обеспечения

                               12..14                     Зарезервировано

                               15                           Определяет значение слова 15

                                                               (см. слово 15)

                02                                           Сетевой адрес для данной станции

                03                                           Установки MAC переменных

                               0                             Состояние питания

                               1                             Monitor offline state

                               2                             Duplicate offline state

                               3                             Состояние простоя

                               4                             Use token state

                               5                             Work response state

                               6                             Pass token state

                               7                             Solicit response state

                               8                             Check pass state

                               9                             Claim token state

                               10                           Claim response state

                04                                           Peer status(LED code); определяет статус  данного блока относительно сети.

                               0                             Monitor link operation

                               32                           Normal link operation

                               64                           Never getting token

                               96                           Sole station

                               128                         Duplicate station

                05                                           Счетчик символов; инкрементируется каждый раз когда станция принимает символ.

                06                                           Token rotation time in ms.

                07            Мл                          Data master failed during token owership bit map

                               Ст                           Program master failed during token owership bit map

                08            Мл                          Data master token owner work bit map

                               Ст                           Program master token owner work bit map

                09            Мл                          Data slave token owner work bit map

                               Ст                           Program slave token owner work bit map

                10            Ст                           Data slave/get slave command transfer request bit map

                11            Мл                          Program master/get master rsp transfer request bit map

                               Ст                           Program slave/get slave command transfer request bit map

                12            Мл                          Program master connect status bit map

                               Ст                           Program slave automatic logout request bit map

                13            Мл                          Pretransmit deferral error counter

                               Ст                           Receive buffer DMA overrun error counter

                14            Мл                          Repeated command received counter

                               Ст                           Frame size error counter

                15            Если бит 15 слова 1 не установлен, содержание слова 15 следующее:

                               Мл                          Receiver collision-abort error counter.

                               Ст                           Receiver alignment error counter

                               Если бит 15 слова 1 установлен, содержание слова 15 следующее:

                               Мл                          Cable A framing error

                               Ст                           Cable B framing error

                16            Мл                          Receiver CRC error counter

                               Ст                           Bad packet-lenght error counter

                17            Мл                          Bad link-address error counter

                               Ст                           Transmit buffer DMA-underrun error counter

                18            Мл                          Bad internal packet lenght error counter

                               Ст                           Bad MAC function error counter

                19            Мл                          Communication retry counter

                               Ст                           Communication failed error counter

                20            Мл                          Good receive packet error counter

                               Ст                           No response received error counter

                21            Мл                          Exeption response received error counter

                               Ст                           Unexpected path error counter

                22            Мл                          Unexpected response error counter

                               Ст                           Forgotten transaction error counter

                23            Мл                          Active station table bit map, nodes 1..8

                               Ст                           Active station table bit map, nodes 9..16

                24            Мл                          Active station table bit map, nodes 17..24

                               Ст                           Active station table bit map, nodes 25..32

                25            Мл                          Active station table bit map, nodes 33..40

                               Ст                           Active station table bit map, nodes 41..48

                26            Мл                          Active station table bit map, nodes 49..56

                               Ст                           Active station table bit map, nodes 57..64

                27            Мл                          Token station table bit map, nodes 1..8

                               Ст                           Token station table bit map, nodes 9..16

                28            Мл                          Token station table bit map, nodes 27..24

                               Ст                           Token station table bit map, nodes 25..32

                29            Мл                          Token station table bit map, nodes 33..40

                               Ст                           Token station table bit map, nodes 41..48

                30            Мл                          Token station table bit map, nodes

                               Ст                           Token station table bit map, nodes 49..56

                31            Мл                          Global data present table bit map, nodes 1..8

                               Ст                           Global data present table bit map, nodes 9..16

                32            Мл                          Global data present table bit map, nodes 17..24

                               Ст                           Global data present table bit map, nodes 25..32

                33            Мл                          Global data present table bit map, nodes 33..40

                               Ст                           Global data present table bit map, nodes 41..48

                34            Мл                          Global data present table bit map, nodes 49..56

                               Ст                           Global data present table bit map, nodes 57..64

                35            Мл                          Receive buffer in use bit map, buffer 1..8

                               Ст                           Receive buffer in use bit map, buffer 9..16

                36            Мл                          Receive buffer in use bit map, buffer 17..24

                               Ст                           Receive buffer in use bit map, buffer 25..32

                37            Мл                          Receive buffer in use bit map, buffer 33..40

                               Ст                           Station managment command processed initiation counter

                38            Мл                          Data master output path 1 command initiation counter

                               Ст                           Data master output path 2 command initiation counter

                39            Мл                          Data master output path 3 command initiation counter

                               Ст                           Data master output path 4 command initiation counter

                40            Мл                          Data master output path 5 command initiation counter

                               Ст                           Data master output path 6 command initiation counter

                41            Мл                          Data master output path 7 command initiation counter

                               Ст                           Data master output path 8 command initiation counter

                42            Мл                          Data slave input path 41 command processed counter

                               Ст                           Data slave input path 42 command processed counter

                43            Мл                          Data slave input path 43 command processed counter

                               Ст                           Data slave input path 44 command processed counter

                44            Мл                          Data slave input path 45 command processed counter

                               Ст                           Data slave input path 46command processed counter

                45            Мл                          Data slave input path 47 command processed counter

                                Ст                           Data slave input path 48 command processed counter

                46            Мл                          Program master output path 81 command initiation counter

                               Ст                           Program master output path 82 command initiation counter

                47            Мл                          Program master output path 83 command initiation counter

                               Ст                           Program master output path 84 command initiation counter

                48            Мл                          Program master output path 85 command initiation counter

                               Ст                           Program master output path 86 command initiation counter

                49            Мл                          Program master output path 87 command initiation counter

                               Ст                           Program master output path 88 command initiation counter

                50            Мл                          Program slave input path C1 command processed counter

                               Ст                           Program slave input path C2 command processed counter

                51            Мл                          Program slave input path C3 command processed counter

                               Ст                           Program slave input path C4 command processed counter

                52            Мл                          Program slave input path C5 command processed counter

                               Ст                           Program slave input path C6 command processed counter

                53            Мл                          Program slave input path C7 command processed counter

                               Ст                           Program slave input path C8 command processed counter

                ПРИЛОЖЕНИЕ А

                СООБЩЕНИЯ ОБ ОШИБКАХ

                Одна из четырех ситуаций может иметь место при запросе главного к подчиненному:

                - Если подчиненное устройство приняло запрос без коммуникационных ошибок, и может нормально распознать запрос, оно возвращает нормальный ответ.

                - Если подчиненное устройство не приняло запрос, ответ не возвращается. Главный ожидает ответа на запрос в течении определенного таймаута.

                - Если подчиненный принял запрос, но обнаружил коммуникационную ошибку(паритет, ошибка контрольной суммы), то ответ не возвращается. Главный ожидает ответа на запрос в течении определенного таймаута.

                - Если подчиненный принял запрос без коммуникационной ошибки, но не может выполнить затребованную функцию(например, чтение несуществующих выходов или регистров), подчиненный возвращает сообщение об ошибке и ее причинах.

                Сообщение об ошибке имеет два поля которые отличаются от полей нормального ответа:

                ПОЛЕ КОДА ФУНКЦИИ: В нормальном ответе, подчиненный повторяет код функции содержащийся в поле кода функции запроса. Во всех кодах функций старший значащий бит установлен в 0. При возврате сообщения об ошибке подчиненный устанавливает этот бит в 1.

                При установленному старшему биту в коде функции главный распознает сообщение об ошибке, и может проанализировать поле данных сообщения.

                ПОЛЕ ДАННЫХ: В нормальном ответе, подчиненный может может возвращать данные или статистику в поле данных(любую информацию которая затребована в запросе). В сообщении об ошибке, подчиненный возвращает код ошибки в поле данных.

                Ниже показан пример запроса главного и сообщения об ошибке подчиненного:

                ЗАПРОС

                Имя поля                                                                                             Пример

                                                                                                                             (Hex)

                Адрес подчиненного                                                                           0A

                Функция                                                                                              01

                Начальный адрес ст.                                                                            04

                Начальный адрес мл.                                                                           A1

                Кол-во входов ст.                                                                00

                Кол-во входов мл.                                                                               01

                Контрольная сумма (LRC)                                                  4F

                СООБЩЕНИЕ ОБ ОШИБКЕ

                Адрес подчиненного                                                                           0A

                Функция                                                                                              81

                Код ошибки                                                                                          02

                Контрольная сумма (LRC)                                                  73

                Вданном примере главный адресует подчиненное устройство 10. Код функции (01) - Read Coil Status. В запросе требуется прочитать выход с адресом 1245.

                Если указанный выход не существует подчиненный возвращает сообщение об ошибке с кодом ошибки (02). Этот код специфицирует несуществующий адрес данных в подчиненном. Например если подчиненный это 984-385 с 512 выходами, то этот код ошибки будет возвращаться при обращении к несуществующим выходам.

                Список кодов ошибок представлен ниже.

Код

Название

Описание

01

ILLEGAL FUNCTION

Принятый код функции не может быть обработан на подчиненном.

02

ILLEGAL DATA ADDRESS

Адрес данных указанный в запросе не доступен данному подчиненному.

03

ILLEGAL DATA VALUE

Величина содержащаяся в поле данных запроса является не допустимой величиной для подчиненного.

04

SLAVE DEVICE FAILURE

Невосстанавливаемая ошибка имела место пока подчиненный пытался выполнить затребованное действие.

05

ACKNOWLEDGE

Подчиненный принял запрос и обрабатывает его, но это требует много времени. Этот ответ предохраняет главного от генерации ошибки таймаута. Главный может выдать команду Poll Program Complete для обнаружения завершения обработки команды.

06

SLAVE DEVICE BUSY

Подчиненный занят обработкой команды. Главный должен повторить сообщение позже, когда подчиненный освободится.

07

NEGATIVE ACKNOWLEDGE

Подчиненный не может выполнить программную функцию, принятую в запросе. Этот код возвращается для неудачного программного запроса, использующего функции с номерами 13 или 14. Главный должен запросить диагностическую информацию или информацию обошибках с подчиненного.

08

MEMORY PARITY ERROR

Подчиненный пытается читать расширенную память, но обнаружил ошибку паритета. Главный может повторить запрос, но обычно в таких случаях требуется ремонт.

ПРИЛОЖЕНИЕ B

ПРИМЕЧАНИЯ К ПРИМЕНЕНИЮ

МАКСИМАЛЬНЫЕ ПАРАМЕТРЫ ДЛЯ ЗАПРОСА/ОТВЕТА

                В списке, представленном в данной секции, показано максимально возможное количество данных для каждого контроллера, которые могут быть использованы в запросе главного устройства или в ответе подчиненного.

184/384  Функция

Описание

Запрос

Ответ

 1

Read Coil Status

800 Выходов

800 Выходов

 2

Read Input Status

800 Входов

800 Входов

 3

Read Holding Registers

100 Регистров

100 Регистров

 4

Read Input Registers

100 Регистров

100 Регистров

 5

Force Single Coil

1 Выход

1 Выход

 6

Preset Single Register

1 Регистр

1 Регистр

 7

Read Exeption Status

Не доступна

8 Выходов

 8

Diagnostics

Не доступна

Не доступна

 9

Program 484

Не поддерживается

Не поддерживается

 10

Poll 484

Не поддерживается

Не поддерживается

 11

Fetch. Comm. Event Ctr.

 Не доступна

Не доступна

 12

Fetch. Comm. Event Log

Не доступна

70 байтов данных

 13

 Program Controller

32 байта данных

32 байта данных

 14

 Poll Controller

Не доступна

32 байта данных

 15

Force Multiply Coils

800 Выходов

800 Выходов

 16

Preset Multiply Regs

100 Регистров

100 Регистров

 17

Report Slave ID

Не доступна

Не доступна

 18

Program 884/M84

Не поддерживается

Не поддерживается

 19

Preset Comm. Link

Не поддерживается

Не поддерживается

 20

Read General Reference

Не поддерживается

Не поддерживается

 21

Write General Reference

Не поддерживается

Не поддерживается

484 Функция

 Описание

Запрос

Ответ

 1

Read Coil Status

512 Выходов

512 Выходов

 2

Read Input Status

512 Входов

512 Входов

 3

Read Holding Registers

254 Регистра

254 Регистра

 4

Read Input Registers

32 Регистра

32 Регистра

 5

Force Single Coil

1 Выход

1 Выход

 6

Preset Single Register

1 Регистр

1 Регистр

 7

Read Exeption Status

Не доступна

8 Выходов

 8

Diagnostics

Не доступна

Не доступна

 9

Program 484

16 байтов данных

16 байтов данных

 10

Poll 484

Не доступна

16 байтов данных

 11

Fetch. Comm. Event Ctr.

Не поддерживается

Не поддерживается

 12

Fetch. Comm. Event Log

Не поддерживается

Не поддерживается

 13

Program Controller

Не поддерживается

Не поддерживается

 14

Poll Controller

Не поддерживается

Не поддерживается

 15

Force Multiply Coils

800 Выходов

800 Выходов

 16

Preset Multiply Regs

60 Регистров

60 Регистров

 17

Report Slave ID

Не доступна

Не доступна

 18

Program 884/M84

Не поддерживается

Не поддерживается

 19

Preset Comm. Link

Не поддерживается

Не поддерживается

 20

Read General Reference

Не поддерживается

Не поддерживается

 21

Write General Reference

Не поддерживается

Не поддерживается

584 Функция

 Описание

Запрос

Ответ

 1

Read Coil Status

2000 Выходов

2000 Выходов

 2

Read Input Status

2000 Входов

2000 Входов

 3

Read Holding Registers

125 Регистров

125 Регистров

 4

Read Input Registers

125 Регистров

125 Регистров

 5

Force Single Coil

1 Выход

1 Выход

 6

Preset Single Register

1 Регистр

1 Регистр

 7

Read Exeption Status

Не доступна

8 Выходов

 8

Diagnostics

Не доступна

Не доступна

 9

Program 484

Не поддерживается

Не поддерживается

 10

Poll 484

Не поддерживается

Не поддерживается

 11

Fetch. Comm. Event Ctr.

Не доступна

Не доступна

 12

Fetch. Comm. Event Log

Не доступна

70 байтов данных

 13

Program Controller

33 байта данных

33 байта данных

 14

Poll Controller

Не доступна

33 байта данных

 15

Force Multiply Coils

800 Выходов

800 Выходов

 16

Preset Multiply Regs

100 Регистров

100 Регистров

 17

Report Slave ID

Не доступна

Не доступна

 18

Program 884/M84

Не поддерживается

Не поддерживается

 19

Preset Comm. Link

Не поддерживается

Не поддерживается

 20

Read General Reference

(1)

(1)

 21

Write General Reference

(1)

(1)

Примечание:

(1) Максимальная длина сообщения не должна превышать 256.

884 Функция

Описание

Запрос

Ответ

1

Read Coil Status

2000 Выходов

2000 Выходов

2

Read Input Status

2000 Входов

2000 Входов

3

Read Holding Registers

125 Регистров

125 Регистров

4

Read Input Registers

125 Регистров

125 Регистров

5

Force Single Coil

1 Выход

1 Выход

6

Preset Single Register

1 Регистр

1 Регистр

7

Read Exeption Status

Не доступна

8 Выходов

8

Diagnostics

Не доступна

Не доступна

9

Program 484

Не поддерживается

Не поддерживается

10

Poll 484

Не поддерживается

Не поддерживается

11

Fetch. Comm. Event Ctr.

Не поддерживается

Не поддерживается

12

Fetch. Comm. Event Log

Не поддерживается

Не поддерживается

13

Program Controller

Не поддерживается

Не поддерживается

14

Poll Controller

Не поддерживается

Не поддерживается

15

Force Multiply Coils

800 Выходов

800 Выходов

16

Preset Multiply Regs

100 Регистров

100 Регистров

17

Report Slave ID

Не доступна

Не доступна

18

Program 884/M84

(1)

(1)

19

Preset Comm. Link

(1)

(1)

20

Read General Reference

Не поддерживается

Не поддерживается

21

Write General Reference

Не поддерживается

Не поддерживается

Примечание:

(1) Максимальная длина сообщения не должна превышать 256.

M84 Функция

 Описание

Запрос

Ответ

 1

Read Coil Status

64 Выхода

64 Выхода

 2

Read Input Status

64 Входа

64 Входа

 3

Read Holding Registers

32 Регистра

32 Регистра

 4

Read Input Registers

4 Регистров

4 Регистров

 5

Force Single Coil

1 Выход

1 Выход

 6

Preset Single Register

1 Регистр

1 Регистр

 7

Read Exeption Status

Не доступна

8 Выходов

 8

Diagnostics

Не доступна

Не доступна

 9

Program 484

Не поддерживается

Не поддерживается

 10

 Poll 484

Не поддерживается

Не поддерживается

 11

Fetch. Comm. Event Ctr.

Не поддерживается

Не поддерживается

 12

Fetch. Comm. Event Log

Не поддерживается

Не поддерживается

 13

Program Controller

Не поддерживается

Не поддерживается

 14

Poll Controller

Не поддерживается

 Не поддерживается

 15

Force Multiply Coils

64 Выхода

64 Выхода

 16

Preset Multiply Regs

32 Регистра

64 Регистра

 17

Report Slave ID

Не доступна

Не доступна

 18

Program 884/M84

(1)

(1)

 19

Preset Comm. Link

Не доступна

Не доступна

 20

Read General Reference

Не поддерживается

Не поддерживается

 21

Write General Reference

Не поддерживается

Не поддерживается

Примечание:

(1) Максимальная длина сообщения не должна превышать 256.

984 Функция

Описание

Запрос

Ответ

 1

Read Coil Status

2000 Выходов

2000 Выходов

 2

Read Input Status

2000 Входов

2000 Входов

 3

Read Holding Registers

125 Регистров

125 Регистров

 4

Read Input Registers

 125 Регистров

125 Регистров

 5

Force Single Coil

1 Выход

1 Выход

 6

Preset Single Register

 1 Регистр

1 Регистр

 7

Read Exeption Status

Не доступна

8 Выходов

 8

Diagnostics

Не доступна

Не доступна

 9

Program 484

Не поддерживается

Не поддерживается

 10

 Poll 484

Не поддерживается

 Не поддерживается

 11

Fetch. Comm. Event Ctr.

 Не доступна

Не доступна

 12

 Fetch. Comm. Event Log

 Не доступна

70 байтов данных

 13

Program Controller

33 байта данных

 33 байта данных

 14

Poll Controller

Не доступна

33 байта данных

 15

Force Multiply Coils

800 Выходов

800 Выходов

 16

Preset Multiply Regs

100 Регистров

100 Регистров

 17

Report Slave ID

Не доступна

Не доступна

 18

 Program 884/M84

Не поддерживается

Не поддерживается

 19

 Preset Comm. Link

Не поддерживается

 Не поддерживается

 20

Read General Reference

 (1)

(1)

 21

Write General Reference

(1)

(1)

Примечание:

(1) Максимальная длина сообщения не должна превышать 256.

ОЦЕНКА ВРЕМЕНИ ПОСЛЕДОВАТЕЛЬНОЙ ПЕРЕДАЧИ

ПОСЛЕДОВАТЕЛЬНОСТЬ ПЕРЕДАЧИ

                Ниже приведена действий при последовательной передаче Modbus. Символы указанные в скобках ссылаются на примечания, перечисленные после списка действий.

                1. Главное устройство Modbus Формирует сообщение.

                2. Проверяются статусы RTS и CTS модема главного. (A)

                3. Сообщение запроса передается подчиненному.(B)

                4. Подчиненный принимает сообщение запроса. (C)(D)

                5. Подчиненный вычисляет контрольную сумму. (E)

                6. Проверяются статусы RTS и CTS модема подчиненного. (F)

                7. Ответное сообщение передается главному. (B)

                8. Главный производит необходимые действия над принятым отве-

                том и данными.

ПРИМЕЧАНИЯ

                (A) Если выводы RTS и CTS соединены вместе, то это время незначительно. Для модема J478, это время около 5 мс.

                (B) Следующая формула оценивает время передачи:

                                               1000 Х (счетчик символов) Х (битов в символе)

                                Время = ---------------------------------------------------

                                                               Скорость передачи

                (C) Modbus сообщение обрабатывается в конце скана контроллера. В худшем случае задержка будет равна времени одного скана. В среднем задержка составляет 0.5 скана.

                Время, выделяемое для обслуживания портов Modbus в конце каждого скана контроллера(перед началом нового), зависит от модели контроллера. Время для каждой модели описано ниже.Для 484 контроллера это время составляет приблизительно 1.5 мс.

                Для 584 и 984 контроллера время составляет приблизительно 1.5 мс. Порты обслуживаются последовательно, начиная с порта 1.

                Для 184/384 контроллеров время зависит от количества принимаемых данных. Это время варьируется от минимального 0.5 мс до максимального около 6.0 мс (для 100 регистров), или 7.0 мс (для 800 выходов).Если с контроллером используется программная панель, то Modbus порт отключается.

                (D) Modbus Функции с 1 по 4, 15 и 16 позволяет главному устройству запросить больше данных чем то количество, которое может обработать контроллер в течении времени выделяемого на обслуживание портов. Если подчиненный не успел обработать все данные, он может буферизировать их и обработать позже.

                Ниже приведены данные, которые могут быть обработаны за один цикл обслуживания Modbus порта.

 

Дискреты

Регистры

Micro 84

16

4

184/384

800

100

484

32

16

584

64

32

984A/B/X

64

32

984-X8X

1000

125

                Примечание: '984-X8X' ссылается на slot-mount модели(984-385, -685 и т.д.).

                Для 884, время обработки множественных данных следующее: Чтение 700 выходов: 14 сканов             Установка единич. выхода: 3 скана Чтение 256 входов: 7 сканов               Установка регистра: 3 скана Чтение 125 вых. рег-ов: 5 сканов Установка 768 выходов: 18 сканов Чтение 125 вх. рег-ов: 8 сканов Установка 100 рег.: 10 сканов

                (E) Вычисление контрольной суммы LRC - около 1 мс. Вычисление контрольной суммы CRC - около 0.3 мс для каждых 8-ми бит данных возвращаемых в ответе.

ПРИМЕЧАНИЯ ДЛЯ 584 И 984A/B/X

                Это примечание касается только 584 и 984A/B/X контроллеров.

                СКОРОСТЬ ПЕРЕДАЧИ: Когда используются оба Modbus порта 1 и 2, максимальная доступная скорость передачи - 19 200 бод.

                БЛОКИРОВКА ПОРТА: Когда вы используете ASCII режим, избегайте посылки сообщений с 'нулевой длиной данных', или сообщений без адреса устройства. Например, это неправильное сообщение:

                                                                              : CR LF

                При использовании такого рода сообщений может иметь место случайная блокировка порта.

                ПРИЗНАК КОНЦА ASCII СООБЩЕНИЯ: Нормальное ASCII сообщение должно заканчиваться парой CRLF. При использовании контроллеров 584 и 984A/B/X, ASCII сообщение может заканчиваться после поля контрольной суммы LRC (без установки символов CRLF), если после поля LRC имеет место интервал по крайней мере 1 сек. Если это случилось, контроллер считает что сообщение закончилось нормально.

                ПРИЛОЖЕНИЕ C

                ГЕНЕРАЦИЯ LRC/CRC

                Генерация LRC

                Longitudinal Redundancy Check(LRC) это один байт. LRC вычисляется передающим устройством и добавляется к концу сообщения. Принимающее устройство также вычисляет LRC в процессе приема и сравнивает вычисленную величину с полем контрольной суммы пришедшего сообщения. Если суммы не совпали - то имеет место ошибка.

                LRC вычисляется сложением последовательности байтов сообщения, отбрасывая все переносы, и затем двойным дополнением результата. LRC - это 8-ми битовое поле, где каждое новое прибавление символа, приводящее к результату более чем 255, приводит к простому перескакиванию через 0. Так как это поле не является 9-ти битовым, перенос отбрасывается автоматически.

                Алгоритм генерации LRC:

                1. Сложить все байты сообщения, исключая стартовый символ ':' и конечные CRLF, складывая их так, чтобы перенос отбрасывался.

                2. Отнять получившееся значение от числа FF(Hex) - это является первым дополнением.

                3. Прибавить к получившемуся значению 1 - это второе дополнение.

                РАЗМЕЩЕНИЕ LRC В СООБЩЕНИИ

                Когда 8-ми битовое поле LRC (2 ASCII символа) передается в сообщении, то старший символ будет передан первым, а за ним - младший. Например, если значение LRC 61 hex(0110 0001):

 

':'

Адрес

Функ ция

Сч-к байт

Байт

Байт

Байт

Байт

LRC Ст.

LRC Мл.

 CR

 LF

 

 

 

 

 

 

 

 

 

6

1

 

 

 

 

                Пример функции на языке C реализующей генерацию LRC приведен ниже. Функция принимает два аргумента:

       unsigned char *auchMsg; Указатель на буфер данных

       unsigned short usDataLen; Количество байт в буфере

       Функция возвращает LRC как тип unsigned char.

       ПРИМЕР

       static unsigned char LRC(auchMsg, usDataLen)

       unsigned char *auchMsg;/* Сообщение над которым */

                                  /* вычисляется LRC */

       unsigned char usDataLen; /* Количество байт в сообщении */

       {

       unsigned char uchLRC=0; /* Инициализация LRC */

       while(usDataLen)

       uchLRC+=*auchMsg++;

       return((unsigned char)(-((char uchLRC)));

       }

Генерация CRC

                CRC это 16-ти разрядная величина т.е. два байта. CRC вычисляется передающим устройством и добавляется к сообщению.Принимающее устройство также вычисляет CRC в процессе приема и сравнивает вычисленную величину с полем контрольной суммы пришедшего сообщения. Если суммы не совпали - то имеет место ошибка.

                16-ти битовый регистр CRC предварительно загружается числом FF hex. Процесс начинается с добавления байтов сообщения к текущему содержимому регистра. Для генерации CRC используются только 8 бит данных. Старт и стоп биты, бит паритета, если он используется, не учитываются в CRC.

                В процессе генерации CRC, каждый 8-ми битовый символ складывается по ИСКЛЮЧАЮЩЕМУ ИЛИ с содержимым регистра. Результата сдвигается в направлении младшего бита, с заполнением 0 старшего бита. Младший бит извлекается и проверяется. Если младший бит равен 1, то содержимое регистра складывается с определенной ранее, фиксированной величиной, по ИСКЛЮЧАЮЩЕМУ ИЛИ. Если младший бит равен 0, то ИСКЛЮЧАЮЩЕЕ ИЛИ не делается.

                Этот процесс повторяется пока не будет сделано 8 сдвигов. После последнего (восьмого) сдвига, следующий байт складывается с содержимым регистра и процесс повторяется снова. Финальное содержание регистра, после обработки всех байтов сообщения и есть контрольная сумма CRC.

Алгоритм генерации CRC:

                1. 16-ти битовый регистр загружается числом FF hex (все 1), и используется далее как регистр CRC.

                2. Первый байт сообщения складывается по ИСКЛЮЧАЮЩЕМУ ИЛИ с содержимым регистра CRC. Результат помещается в регистр CRC.

                3. Регистр CRC сдвигается вправо(в направлении младшего бита) на 1 бит, старший бит заполняется 0.

                4. (Если младший бит 0): Повторяется шаг 3 (сдвиг)

       (Если младший бит 1): Делается операция ИСКЛЮЧАЮЩЕЕ ИЛИ регистра CRC и полиномиального числа A001 hex.

       5. Шаги 3 и 4 повторяются восемь раз.

       6. Повторяются шаги со 2 по 5 для следующего сообщения. Это повторяется до тех пор пока все байты сообщения не будут обработаны.

       7. Финальное содержание регистра CRC и есть контрольная сумма.

РАЗМЕЩЕНИЕ CRC В СООБЩЕНИИ

                При передаче 16 бит контрольной суммы CRC в сообщении, сначала передается младший байт, затем старший. Например, если CRC равна 1241 hex :

 

Адрес

Функция

Счетчикк байт

Данные

Данные

Данные

Данные

CRC Ст.

CRC Мл.

 

 

 

 

 

 

 

41

12

ПРИМЕР

                Пример функции на языке C реализующей генерацию CRC приведен ниже. Все возможные величины CRC загружены в два массива. Один массив содержит все 256 возможных комбинаций CRC для старшего байта поля CRC, другой массив содержит данные для младшего байта. Идексация CRC в этом случая обеспечивает быстрое выполнение вычислений новой величины CRC для каждого нового байта из буфера сообщения.

   Функция принимает два аргумента:

unsigned char *puchMsg; /* Указатель на буфер */

unsigned short usDataLen; /* Количество байтов в буфере */

Функция возвращает CRC как тип unsigned short.

static unsigned char auchCRCHi[] = { 0x00,0xC1,0x81,0x40,0x01,0xC0,0x80,0x41,0x01,0xC0,0x80,0x41,0x00, 0xC1,0x81,0x40,0x01,0xC0,0x80,0x41,0x00,0xC1,0x81,0x40,0x00,0xC1, 0x81,0x40,0x01,0xC0,0x80,0x41,0x01,0xC0,0x80,0x41,0x00,0xC1,0x81, 0x40,0x00,0xC1,0x81,0x40,0x01,0xC0,0x80,0x41,0x00,0xC1,0x81,0x40, 0x01,0xC0,0x80,0x41,0x01,0xC0,0x80,0x41,0x00,0xC1,0x81,0x40,0x01, 0xC0,0x80,0x41,0x00,0xC1,0x81,0x40,0x00,0xC1,0x81,0x40,0x01,0xC0, 0x80,0x41,0x00,0xC1,0x81,0x40,0x01,0xC0,0x80,0x41,0x01,0xC0,0x80, 0x22,0x00,0xC1,0x81,0x40,0x00,0xC1,0x81,0x40,0x01,0xC0,0x80,0x41, 0x01,0xC0,0x80,0x41,0x00,0xC1,0x81,0x40,0x01,0xC0,0x80,0x41,0x00, 0xC1,0x81,0x40,0x00,0xC1,0x81,0x40,0x01,0xC0,0x80,0x41,0x01,0xC0, 0x80,0x41,0x00,0xC1,0x81,0x40,0x00,0xC1,0x81,0x40,0x01,0xC0,0x80, 0x41,0x00,0xC1,0x81,0x40,0x01,0xC0,0x80,0x41,0x01,0xC0,0x80,0x41, 0x00,0xC1,0x81,0x40,0x00,0xC1,0x81,0x40,0x01,0xC0,0x80,0x41,0x01, 0xC0,0x80,0x41,0x00,0xC1,0x81,0x40,0x01,0xC0,0x80,0x41,0x00,0xC1, 0x81,0x40,0x00,0xC1,0x81,0x40,0x01,0xC0,0x80,0x41,0x00,0xC1,0x81, 0x40,0x01,0xC0,0x80,0x41,0x00,0xC0,0x80,0x41,0x00,0xC1,0x81,0x40, 0x01,0xC0,0x80,0x41,0x00,0xC1,0x81,0x40,0x00,0xC1,0x81,0x40,0x01, 0xC0,0x80,0x41,0x01,0xC0,0x80,0x41,0x00,0xC1,0x81,0x40,0x00,0xC1, 0x81,0x40,0x01,0xC0,0x80,0x41,0x00,0xC1,0x81,0x40,0x01,0xC0,0x80, 0x41,0x01,0xC0,0x80,0x41,0x00,0xC1,0x81,0x40

}

static char auchCRCLo[] = { 0x00,0xC0,0xC1,0x01,0xC3,0x03,0x02,0xC2,0xC6,0x06,0x07,0xC7,0x05, 0xC5,0xC4,0x04,0xCC,0x0C,0x0D,0xCD,0x0F,0xCF,0xCE,0x0E,0x0A,0xCA, 0xCB,0x0B,0xC9,0x09,0x08,0xC8,0xD8,0x18,0x19,0xD9,0x1B,0xDB,0xDA, 0x1A,0x1E,0xDE,0xDF,0x1F,0xDD,0x1D,0x1C,0xDC,0x14,0xD4,0xD5,0x15, 0xD7,0x17,0x16,0xD6,0xD2,0x12,0x13,0xD3,0x11,0xD1,0xD0,0x10,0xF0, 0x30,0x31,0xF1,0x33,0xF3,0xF2,0x32,0x36,0xF6,0xF7,0x37,0xF5,0x35, 0x34,0xF4,0x3C,0xFC,0xFD,0x3D,0xFF,0x3F,0x3E,0xFE,0xFA,0x3A,0x3B, 0xFB,0x39,0xF9,0xF8,0x38,0x28,0xE8,0xE9,0x29,0xEB,0x2B,0x2A,0xEA, 0xEE,0x2E,0x2F,0xEF,0x2D,0xED,0xEC,0x2C,0xE4,0x24,0x25,0xE5,0x27, 0xE7,0xE6,0x26,0x22,0xE2,0xE3,0x23,0xE1,0x21,0x20,0xE0,0xA0,0x60, 0x61,0xA1,0x63,0xA3,0xA2,0x62,0x66,0xA6,0xA7,0x67,0xA5,0x65,0x64, 0xA4,0x6C,0xAC,0xAD,0x6D,0xAF,0x6F,0x6E,0xAE,0xAA,0x6A,0x6B,0xAB, 0x69,0xA9,0xA8,0x68,0x78,0xB8,0xB9,0x79,0xBB,0x7B,0x7A,0xBA,0xBE, 0x7E,0x7F,0xBF,0x7D,0xBD,0xBC,0x7C,0xB4,0x74,0x75,0xB5,0x77,0xB7, 0xB6,0x76,0x72,0xB2,0xB3,0x73,0xB1,0x71,0x70,0xB0,0x50,0x90,0x91, 0x51,0x93,0x53,0x52,0x92,0x96,0x56,0x57,0x97,0x55,0x95,0x94,0x54, 0x9C,0x5C,0x5D,0x9D,0x5F,0x9F,0x9E,0x5E,0x5A,0x9A,0x9B,0x5B,0x99, 0x59,0x58,0x98,0x88,0x48,0x49,0x89,0x4B,0x8B,0x8A,0x4A,0x4E,0x8E, 0x8F,0x4F,0x8D,0x4D,0x4C,0x8C,0x44,0x84,0x85,0x45,0x87,0x47,0x46, 0x86,0x82,0x42,0x43,0x83,0x41,0x81,0x80,0x40

}

unsigned short CRC16(puchMsg, usDataLen)

unsigned char *puchMsg;

unsigned short usDataLen;

{

unsigned char uchCRCHi = 0xFF;

unsigned char uchCRCLo = 0xFF;

while (usDataLen--)

{

uIndex = uchCRCHi

 *puchMsg++;

uchCRCHi = uchCRCLo

 auchCRCHi[uIndex];

uchCRCLo = auchCRCLo[uIndex];

}

return (uchCRCHi << 8 | uchCRCLo);

}

логотип+телефон-звони



Название

слайдер-11

ЯМАЛ СПГ
ЯМАЛ СПГ
Подготовка выездного курса в г. Сабетта по программированию и эксплуатации контроллеров Modicon TSX Quantum в среде Unity Pro для специалистов ЯМАЛ СПГ.
Simplex Aerospace
Simplex Aerospace
Диагностика вертолетной программы на плк MELSEC FX2NC-64MT с системы пожаротушения модели 328 американской компании Simplex (нынче DART Aerospace).
ABB, Inc. AlSCAN
ABB, Inc. AlSCAN

Подготовка к диагностике неисправностей старого (windows 98, Pentium IV) канадского анализатора водорода в жидком алюминии ABB AlSCAN HMA0100D с последующей поверкой. 

ООО "САФ-НЕВА"
ООО "САФ-НЕВА"
Внедрение и модернизация cуществующих трех котлов для системы подачи продукта на установку Cryovac® Onpack 3002 компании Sealed Air.
ООО "Агис Пак"
ООО "Агис Пак"
Программирование линии производства стрейч-пленки (экструдер+пневмозагрузка+каландры+намотчик) на плк LS GLOFA-G7M-DR10A и панели оператора HITECH PWS6300S-S.
ООО "Русский Радиатор"
ООО "Русский Радиатор"
Мониторинг показаний уровнемеров сжиженного газа  при помощи модернизации программы в плк S7-315-2.
SIW 4U CNC
SIW 4U CNC
Подготовка к программированию внутришлифовального станка на базе ЧПУ DELTA NC30/NC50 немецкой фирмы Winz Werkzeugmaschinen Fabrik GmbH.
СПб ГУП "Мостотрест"
СПб ГУП "Мостотрест"
Аудит и подготовка документации для восстановления и проектирования в здании Мостотреста системы диспетчеризации инженерных систем котельной, ИТП, вентиляции, выполненных на оборудовании сименс.
ООО "УГМК-Сталь"
ООО "УГМК-Сталь"
Диагностика, ремонт и поверка немецкого газоанализатора многоканального ABB MultiFID14 AO2020.
Роснефть
Роснефть
Запуск и анализ насосной в Хабаровском крае «РН-Комсомольский НПЗ» выполненной на оборудовании B&R в программном обеспечении Automation Studio.
Arlacon MC300 Control Techniques
Arlacon MC300 Control Techniques
Из-за дюймовой резьбы ШВП на финских линиях, использующих принцип "летучие ножницы" приходится полностью перепрограммировать устаревшие (MS-DOS) моушн-контроллеры MC300CSE от SKS Oy и переходить на наш "метрический" стандарт и современные плк и сервопривода XINJE со скриптами в кодесисе. 
Marangoni
Marangoni
Модернизация пульта управления по обработке шин "RINGTREADER 900" итальянского завода Marangoni Retreading systems, выполненных на контроллерах АББ.
Puratos
Puratos
Модернизация участка ферментации и приготовления дрожжевого экстракта на основе плк Siemens S7-317-2PN/DP.
LIEBHERR
LIEBHERR
Диагностика ошибок в плк ABB 07NG66R2 Procontic T200 на башенном кране Liebherr Likas Litronic.
Петербургский Мельничный Комбинат
Петербургский Мельничный Комбинат
Сервисное диагностирование контроллеров и панелей операторов Сименс и Омрон на фасовочных линиях предприятия с возможностью дописывания в программный код вновь вводимого оборудования и агрегатов.
MURAT MAKINA SAN. TIC. LTD. STI.
MURAT MAKINA SAN. TIC. LTD. STI.
Подготовка к модернизации скады и плк Сименс на турецкой автоматизированной линии "Murat NR-242" по распилу алюминиевых и ПВХ окон.
Hidria IMP Klima
Hidria IMP Klima
Разработка визуализации и ПО для контроллера с руссско-язычным веб-интерфейсом для чиллера со спиральными компрессорами словенского производителя Hidria.
ТК Мебельвуд
ТК Мебельвуд
Диспетчеризация вентустановок, чиллеров, ГРЩ, освещения, котельной и водоснабжения торгового комплекса Мебельвуд.
СПб Образцовая Типография
СПб Образцовая Типография
Диагностика неисправности модуля статической памяти в контроллере сименс SIMATIC S5 115U 942 и S7-316.
БЦ "Балтийская жемчужина"
БЦ "Балтийская жемчужина"

Подготовка к перепрошивке систем дымоудаления на контроллерах TAC XENTA 421A и 411A с конфигурацией частотников ABB ACS550-01-023A-4.

DS PACK CO., LTD
DS PACK CO., LTD
Модернизация и доработка контструктива корейских машин, формующих бумажные стаканчики (paper cup forming machine 4oz) DS-100A и DSN-50A , а также визуализация процессов на станках: (paper punching machine) DS-300RP, (paper roll diecutting machine) DS-80DC и (flexographic printing maching) DS-300FP компании DS PACK Co., Ltd.
ООО "Хейнен Хопман Рус"
ООО "Хейнен Хопман Рус"
Подготовка к написанию софта для вентиляции HVAC-систем на кораблях группы HEINEN & HOPMAN, выполненной на оборудовании carel pco5, schneider hmi scu6b5, weintek mt8071ip.
БЦ "Синоп"
БЦ "Синоп"
Аудит, проверка и предложение об оптимизации системы диспетчеризации на Siemens Desigo СС, выстроенной по сети BACNet с устройствами опроса: ИТП, Вентиляция, Освещение, Водоснабжение, Чиллера, Котельная, Теплоснабжение и Лифты.
Разработка видеоизмерительного микроскопа
Разработка видеоизмерительного микроскопа
Проработка технического решения по проектированию ПО, микроконтроллеров, сервоприводов и измерительных щупов для серии цифровых микроскопов в рамках программы импортозамещения и выделения грантов на разработку.
База отдыха "Связист"
База отдыха "Связист"
Диагностика и программирование контроллера TAC Xenta 401 для управления калориферами и вытяжкой в системе микроклимата бассейна и спортзала через панель TacXenta OP в АО "РПК"Связист".
Хологрейт
Хологрейт
Разработка системы управления секциями печати с приводкой по метке на контроллерах Omron NX102-1100 по сети EtherCAT c сервоприводами и визуализацией на панели омрон HMI NB10W-TW01B.
Mychrome Oy Ab
Mychrome Oy Ab
Программирование в ПО Control Expert v.15 плк BMXP342020 в финском сбивочном станке деревянных поддонов Kombiflex R-1000.
ЦПС Восточное Мессояхское месторождение
ЦПС Восточное Мессояхское месторождение

Подготовка программного обеспечения для конфигурирования контроллеров Siemens Desigo PCX 22.D  в шкафах вентустановок.

JACOBS
JACOBS
Подготовка настройки упаковочной машины TOYO на базе плк Mitsubishi A172SHCPUN и сервоприводов MR-J2S-70B по сети SSCNet.
Отель "Riviera Sunrise Resort & SPA"
Отель "Riviera Sunrise Resort & SPA"
Подготовка к прошивке интеллектуального реле SR3B261BD для переключения ввода "дизель-город" в АВР ГРЩ отеля и подача команд на мотор-редуктора Schneider Masterpact NT10H1 и Compact  NSX 250F.
Efasec SCADA
Efasec SCADA
Подготовка импортозамещения устаревшей  португальской Эфасек скады на автоматизированном складе холдинга Ретал с разработкой ПО для шлюзов между плк Сименс S7-319-3PN/DP, Keepware Server, 1С Предприятие 8.2 и БД Oracle.
Мусоросжигательный завод №3
Мусоросжигательный завод №3
Сервисный аудит бывшего австрийского завода EVN AG и проверка на импортозамещение всей архитектуры, построенной на базе скады ABB Maestro UX Symphony и плк Siemens S-400.
ФГАУ "ОК "Дагомыс"
ФГАУ "ОК "Дагомыс"
Диагностика возможности восстановления системы диспетчеризации Simatic WinCC, выполненной на базе плк S7-314 и SIPLUS ET200S IM151-7 CPU в оздоровительном комплексе Дагомыс г. Сочи.
HURCO
HURCO
Ремонт, программирование и модернизация ЧПУ HURCO VMX1 с разработкой алгоритма работы осей станка.
B.V. Scheepswerf "De Donge"
B.V. Scheepswerf "De Donge"
Поиск неисправностей и ошибок в ПО плк S7-CPU315-2DP на голландской плавучей станции D-TYPE DIPPERDREDGER с экскаватором на борту компании "DE DONGE".
Леруа Мерлен
Леруа Мерлен
Диагностика вентиляции в сети LEROY MERLIN и правка исходных программ на плк в среде Siemens Desigo CC.
ООО "Татинтек"
ООО "Татинтек"
Подбор PLC/HMI и согласование САУ метрологической установкой учета добываемой скважинной продукции по заданному алгоритму.
Сибирское Здоровье
Сибирское Здоровье
Проектирование автоматизированной линии упаковки пищевых батончиков на базе роботов с техническим зрением, картонажников для гофро-коробов с последующим палетированием поддонов.
БЦ "ТУСАР"
БЦ "ТУСАР"
Подготовка замены плк tac xenta 421А в ИТП Бизнес-центра "Тусар", установка пароля в системе диспетчеризации TAC VISTA и конфигурирование заново существующих модулей в щите управления.
MARVU
MARVU
Внедрение технического зрения и автоматизация процесса укладки крема на голландской линии MARVU.
ТГК-1
ТГК-1
Отрабатывание заявки на программирование контроллера METSO AUTOMATION PC BOARD PIC2 CARD PROCESS INTERFACE в филиале "Невский" ЦТЭЦ  ПАО «ТГК-1».
Юнайтед Элементс
Юнайтед Элементс
Настройка в скаде EBI/SymmetrE R410.2 прошивки автоматики ветроустановок DANX, смонтированных на контроллере Honewell EXCEL 50, для обеспечения передачи данных по родной шине C-BUS в программном обеспечении CARE.
SERI SPECIAL
SERI SPECIAL
Диагностика контроллера MODICON TSX Nano в итальянской туннельной сушке для шелкографии SERISPECIAL S. N.C (модель SERI FUTURA).
АО "Активный Компонент"
АО "Активный Компонент"
Программирование, монтаж и пуско-наладка технологического оборудования на заводе фармацевтических субстанций "Активный компонент" в соответствии со стандартом GMP.
Морской Рыбный Порт
Морской Рыбный Порт
Разработка системы управления турбокомпрессором мощностью 110квт на очистных сооружениях в Терминале морского рыбного порта.
CAS
CAS

Консультирование специалистов компании "Кореан Скейл Технолоджи" (официального дистрибьютора CAS Corporation в России) по программированию контроллеров LS XGT XBM в среде разработки XG5000.

AF Brew
AF Brew
Разработка алгоритмов управления и автоматизация производства бродильного цеха и бутылочного розлива, визуализация 19" панели сименс TP1900 COMFORT и встраивание нового оборудования в существующий технологический процесс варки пива.
CFT S.p.A.
CFT S.p.A.
Модернизация паллетайзера на базе роботов FANUC M-410iC и системы укладки RIO BOX на плк Mitsubishi R04ENCPU и Siemens 6ES7515-2AM01-0AB0.
ПАО ФосАгро
ПАО ФосАгро
Разработка программ под плк шнайдер TM241CE24T и панель GXU5512 для электрообогрева трубопроводов склада жидкого аммиака (СЖА) для группы "ФосАгро" (бывший АО Метахим) Волховского филиала АО "Апатит".
ООО "Русвата"
ООО "Русвата"
Диагностика и анализ работы итальянской линии для производства ватных палочек STREMA CF-1, реализованной на плк Modicon TM241CEC24T в паре с панелью Magelis HMIGTO2300 и сервоприводом LMX32MU45M2 на Рязанском заводе Русвата.
Орими Трейд
Орими Трейд

Проектирование алгоритма работы кейспекера и машин по упаковке алюминиевых и пластиковых капсул с кофе в коробку в определенном порядке.

Мебельное производство Лигрон
Мебельное производство Лигрон
Программирование контроллера АВВ Advant Controller 31 и панели МТ-45 для портала перемещения листов дсп со штабеля в раскрой.
JBT Gmbh
JBT Gmbh
Переоборудование и модернизация промышленных немецких пивоварен Joh. Albrecht Brautechnik на контроллерах Ваго и Сименс в рецептуру которых заложены: розлив, фильтрация, созревание, брожение, варка сусла, осветление затора, затирание и дробление солода.
Detel Strojegradnja Logitec, d.o.o.
Detel Strojegradnja Logitec, d.o.o.
Программирование и разработка алгоритма контроллера Twido TWDLMDA20DRT в сверлильно-присадочном станке Detel КМ 4/2Т производства Словении.
НП ГПСК «Возрождение»
НП ГПСК «Возрождение»
Диагностика и замена контроллера NAIS (Panasonic) AFP12713C-F в канатном камнерезном станке на Камнеобрабатывающем заводе «Кузнечное»
ООО "Метромаш"
ООО "Метромаш"
Программирование тягового преобразователя БПТ-100 шахтного электровоза К14М на базе плк Segnetics SMH2010-7112-01-0 и панели оператора ONI ETG 9,7" в среде  Oni Visual Studio V2.8.
EVG
EVG
Диагностика австрийской автоматизированной линии по сварке сетки LSM 16/48-2V, выполненной на контроллерах Beckhoff.
ММДЦ Москва-Сити, Южная башня
ММДЦ Москва-Сити, Южная башня
Диспетчеризация и визуализация фанкойлов на контроллерах Carel PCO5 и панели PlantWatchPRO в здании МФК "Город столиц".
LafargeHolcim
LafargeHolcim
Подготовка специалистов Холсим к комплексному обучению наладке, программированию и диагностике частотников холдинга Holcim Group (Schneider Electric, ABB, Siemens, Danfoss, Sew Eurodrive).
BLUE BOX GROUP s.r.l.
BLUE BOX GROUP s.r.l.
Программирование водяного чиллера OMEGA/LC 10002 через сервисное меню (00200) по снятию ограничения с наработки компрессора в 4 000 моточасов в старом плк Carel (INTMNTCB20).
Крафтовая пивоварня
Крафтовая пивоварня
Программирование контроллера WAGO 750-881 и проектирование визуализации на панели ELO-2094L c применением Codesys HMI для крафтовой пивоварни в г. Ростов.
Адмиралтейство
Адмиралтейство
Программирование, обвязка по модбасу контроллеров "МЗТА" и "Юнитроникс", панелей оператора "Вайнтек", системы управления "Энтроматик 110М", частотников "WILO" и узлов учета "Взлет" в котельной.
НИИЦ (АКМ и ВЭ) ЦНИИ ВВС МО РФ
НИИЦ (АКМ и ВЭ) ЦНИИ ВВС МО РФ
Проектирование конструктива в Catia V.5  и диспетчеризция системы моделирования климатических факторов термобарокамеры ТБК-12.
Вейк-парки
Вейк-парки
Програмирование, разработка, настройка и пуско-наладка систем управления реверсивными и круговыми лебедками (КБУ) с проектированием веб-интерфейса для удаленного мониторинга прошивок по ip-адресам plc и hmi установленных в городах России.
Водоканал
Водоканал

Разработка ПО на базе Сименс и пуско-наладка АСУТП головной части комплекса очастных сооружений МУП Водоканала.

IOPAK PACKAGING
IOPAK PACKAGING
Программирование и стыковка по сети австралийского упаковочного оборудования IOPAK с периферийными конвейерами и головным контроллером диспетчеризации на мучном производстве.
Мясоконсервный комбинат "Балтийский"
Мясоконсервный комбинат "Балтийский"
Обвязка и пнр автоклавов комбината, запуск системы автоматической стерилизации консервов.
Красногорский полиграфический комбинат
Красногорский полиграфический комбинат

Программирование полиграфического станка DGR на контроллере WAGO-750 в связке с панелью DOP-11B-20 (Sew Eurodrive) через DHE4-1B по CANopen.

 

ТМК
ТМК
Подготовка выездных курсов обучения по контроллерам сименс (ПО Step7 и TIA Portal).) на заводах СинТЗ (г. Каменск-Уральский) и СТЗ (г. Полевской) специалистов Корпоративного университета ТМК2U ПАО "ТМК".
ПИК
ПИК

Модернизация и расширение функций листогиба LSK HK-60 CNC под индивидуальное решение заказчика на производстве металлопластиковых окон и алюминиевых конструкций.

BEUMER
BEUMER
Подготовка модернизации и программирования немецких паллетайзеров от BEUMER GROUP paletpac® SCCBBQA 5000 и SBQ 1600, выстроенных на плк Siemens S7 315-2DP и HMI OP277.
Mars, Incorporated
Mars, Incorporated
Модернизация сушилок (dryer machine) посредством внедрения в технологическую цепочку триподов EXPT взамен старых захватов по принципу вакуумной плиты в г. Новосибирск.
ООО "Руссоль"
ООО "Руссоль"
Диагностика и ремонт немецкого термоконтроллера Ropex RES-5010.00 на предприятии Руссоль в Тульской области.
Аккорд
Аккорд
Модернизация станка по производству герметичных металлорукавов высокого давления с применением контроллера и панели оператора Омрон на заводе Аккорд.
ABBA GmbH & Co.KG
ABBA GmbH & Co.KG
Диагностика канального пресса для отходов ABBA KB-600V5, выполненного на плк SIMATIC S7-200 CPU226.
Mannesmann Demag
Mannesmann Demag
Модернизация немецкой линии MANNESMANN DEMAG RFA14 / RD115 для резки труб с последующим снятием на них фаски.
TOYOTA BOSHOKU
TOYOTA BOSHOKU
Модернизация, проектирование и программирование в (ПО GX WORKS 2) контроллеров Mitsubishi Q03UDECPU и панели оператора GOT 2000, параметрирование ввода-вывода I/O MELSEC A J65SBTB1-32DTE1 на линии оснастки автомобильных кресел.
Ковдорский ГОК
Ковдорский ГОК
ПНР АСУ технологической линии №2 в корпусе ККД-1 в рамках реконструкции Дробильной фабрики  и Обогоатительного комплекса для увеличения переработки руды.
Акварель
Акварель

Модернизация на печатном производстве бумагорезательной машины Challenge Champion 305CRT путем внедрения в нее автоматизированной системы управления на базе HMI и PLC фирмы Delta.

Ижевский автомобильный завод
Ижевский автомобильный завод
Подготовка автоматизации вентиляции покрасочных камер на контроллерах S7-300  CPU 314C-2 PN/DP на автомобильном заводе LADA в Ижевске.
BECK engineering
BECK engineering
Диагностика и разработка в ПО Motion Perfect V2.3.3.6 алгоритма работы норвежской лебедки Beck, реализованной на сервоприводах MiniDigiCOMB7 (magnetic), контроллере TRIO MC206X (P136) и панели Mini Membrane Keypad (P502).
Узбекнефтегаз
Узбекнефтегаз

Проработка АСУТП для реализации проекта  Мубарекский ГПЗ с полной заменой контроллеров и скада-системы Тэкон аналогом.

ООО "Самсон-Мед"
ООО "Самсон-Мед"
Подбор скада-системы для диспетчеризации, архивирования и сбора данных с систем установки через плк Mitsubishi FX2N-64MR и HMI A970GOT-TBA-CH.
Галенофарм
Галенофарм

Модернизация и ремонт роторного смесителя для приготовления косметического сырья на фармацевтическом производстве Галенофарм®.

Пеноплэкс
Пеноплэкс
Диагностика и перепрошивка контроллера Moeller PS4-141-MM1 в ПО Sucosoft S40  и модернизация установки Extruder ZE62 на контроллерах B&R компании KraussMaffei Berstorff GmbH.
Mamaison SPA Hotel Pokrovka
Mamaison SPA Hotel Pokrovka
Настройка диспетчеризации ИТП отеля-гостиницы "Мариот" (несмотря на уход из России Hyatt, Hilton и Mariott) в WINCC7.2 с установкой драйверов и апгрейтом ПО системного блока, правкой скриптов под связь с плк сименс S7-313C-2DP.
Подстанция 330кВ "Лужская"
Подстанция 330кВ "Лужская"
Диагностика головного контроллера сбора данных и проверка связи по карте регистров модбас между щитом ЩСН и скада-системой диспетчерской подстанции Лужская.
Trio Motion Technology Ltd.
Trio Motion Technology Ltd.
Разработка алгоритма и перепрограммирование английских (перебазировавшихся нынче вместе с мировым центром концентрации управления в Китай) контроллеров TRIO (теперь уже под брендом ESTUN Automation) для текстильного многоосевого станка с заменой самописной скады на более дружественную связку plc-servo-scada Omron NJ.
Металлургический комбинат имени Ильича г. Мариуполь
Металлургический комбинат имени Ильича г. Мариуполь
Подготовка к восстановлению и модернизации линии снятия фаски RFA14 и летучей пилы 22KA на ОМТС ММК им. Ильича. на базе плк Siemens s5-115u, чпу Indramat CLM1.3M, HMI Laurer PCS-02 и сервоприводов Bosch Rexroth HCS03.1E.
Атомэнергоремонт
Атомэнергоремонт

Программа углубленных обучающих курсов по Siemens TIA Portal на базе контроллеров S-1200, панели оператора KTP600PN и частотных преобразователей SINAMICS G-150 для специалистов "БалАЭР".

REMAK
REMAK
Диагностика, программирование, модернизация и визуализация чешских вентустановок REMAK, выполненных на контроллерах CAREL.
Старооскольский ЛВЗ "Люкс"
Старооскольский ЛВЗ "Люкс"
Программирование плк Дельта DVP-12SE (не имеющего на борту встроенного ethernet/IP Scannera (Originatatora) и OPC-сервера с конфигурированием сканеров COGNEX DM262X в софте DATAMAN V6.19 на линии розлива для считывания фискальной марки с пробок бутылок и групповой упаковки через связывания их в базе данных с кодом DM и GS.
JBT AeroTech
JBT AeroTech
Настройка и корректировка в ПО TwinCAT алгоритма программы и диагностика контроллера BECKHOFF BX90000-0000 пассажирского телетрапа JETWAY SYSTEMS®.
Mariner Ship's Equipment
Mariner Ship's Equipment
Перепрограммирование в софте Vijeo Designer Basic V.1.2.1.353 панели оператора Schneider Electric HMIGXU3500 турецкого морского палубного телескопичекого крана.
York International
York International
Программирование в софте ССT (v10.1) и пуско-наладка приточной вентиляции компании York, вошедшей, наряду с Becker Group, Varta, Optima, Sagem, Adient, Ikeda Bussan, Hoppecke в ирландский холдинг Johnson Controls.
DESTILA
DESTILA
Модернизация и программирование контроллера сименс (6ES7214-1HG40-0XB0) мини-пивоваренного завода промышленного типа на основе weidmuller I-O UR20-FBC-PN-IRT. 
БДТ Вторая сцена
БДТ Вторая сцена
Подготовка и генерация загрузочных файлов для внедрения дополнительных вентустановок на базе плк Carel в сети LON в существующую диспетчеризацию ZenOn v7.0 (COPA-DATA), развернутую в театре и последующая конфигурация настроек в Lon-Maker,
HYUNDAI
HYUNDAI
Подготовка к модернизации котельной на заводе ХЁНДАЙ МОТОРС на базе PLC и HMI сименс с параметрированием частотных приводов данфосс для насосов.
Степан Разин
Степан Разин
Разработка и программирование рецептов пропагаторов и мойки кег для стерилизации емкостей и сусла, процесса культивирования, запуск технологии фильтрации дрожжей и стабилизации пива на базе контроллеров омрон и митцубиси.
Северо-Западный нанотехнологический центр
Северо-Западный нанотехнологический центр
Согласование диспетчеризации на Мастерскаде смонтированных щитов насосной и КНС на контроллерах Овен и Шнайдер М172 (TM172PBG28R), панелях HMIS5T, БУС-1, БУЛ-3.
Pemag Makina
Pemag Makina

Настройка и модификация исходного кода турецкой упаковочной линии влажных салфеток на контроллерах LS XBC-DN64H, убирание из памяти сервисных запросов и программирование по тз заказчика дополнительных функций.

Северсталь
Северсталь
Предпроектное решение для автоматизации участка виткообразователей стана 150 на базе роботизированной ячейки FANUC и технического зрения.
Kampf
Kampf
Анализ и диагностика программ на плк сименс S7-300 на режущей машине Unislit II 625 компании JAGENBERG GROUP.
БЦ «AFI2B»
БЦ «AFI2B»
Диагностика и перепрограммирование вентиляции БЦ «AFI2B» на контроллерах Шнайдер модикон M 251.
JSC "Kirov CERAMICS"
JSC "Kirov CERAMICS"
Программирование на линии PCL2 выбора смены инструмента захватов робота KUKA KRC2 с панели оператора red lion G315C2 через контроллер S7-CPU315-2DP.
ООО "МилФудс"
ООО "МилФудс"
Подготовка к модернизации упаковочной машины на баазе плк сименс s-1500.
Управление Федерального Казначейства г. Севастополь
Управление Федерального Казначейства г. Севастополь
Восстановление логин/паролей в системе диспетчеризации зданием, сервисное обслуживание и обновление ядра скада-системы.
АО Казанский Вертолётный Завод
АО Казанский Вертолётный Завод
Диагностика и прошивка контроллера CAREL PCO1.
FOREST-LINE
FOREST-LINE
Модернизация фрезерного станка с ЧПУ, выполненного на стойке Sinumerik и контроллере Siemens S5-150U.
STAM
STAM
Доработка и автоматизация принципа "летучая пила" на механизме итальянской линии профилирования железа STAM.
BONINO
BONINO
Перепрограммирование итальянской кардочесальной машины для шерсти Bonino, выполненной на связке SIMATIC HMI MP 377 и распределенного ввода/вывода ET200S.
ПК "МорозКом"
ПК "МорозКом"
Модернизация линии по производству блинчиков на одной из четырех площадок (Спб, Ковалево, Белгород. Бронницы) Производственной корпорации "МорозКом".
SIDAT
SIDAT
Подготовка чешского щита сопряжения c MES Siemens IT (pallet&labeling) между итальянской линией на контроллере S-300 (CPU315F-2 PN/DP) и аппликатором Markem-Imaje 2200 Pallet System L2630.
АО "Ростерминалуголь"
АО "Ростерминалуголь"
Проектирование автоматической системы подачи смазки для стакера-реклаймера в Угольном терминале РТУ в Морском торговом порту Усть-Луга на контроллерах сименс.
Котеджный поселок Ландшафт
Котеджный поселок Ландшафт
Разработка алгоритма, программирование и настройка в котеджах параметров вентиляции и насосной, выполненных на контроллерах семейства TAC Xenta 301, 411, OP.
Барабинская ТЭЦ
Барабинская ТЭЦ

Программирование алгоритма и замена контроллера Modicon TSX Micro 37-10 с блоком TSX RKZ02 в системе возбуждения типа ETSA турбогенератора JEUMONT INDUSTRIE с предварительной комплексной наладкой и испытаниями на объекте АО «СИБЭКО».

Банк БФА
Банк БФА

Настройка под ключ приточно-вытяжных систем установок Ventrex risv 700W\1500W на контроллерах TAC Xenta 301\421A с применением панели оператора t.a.c. Xenta OP.

Угольный терминал порта Усть-Луга
Угольный терминал порта Усть-Луга
Разработка системы мониторинга за линиями конвейеров для разгрузи угля из вагонов на базе контроллеров Siemens S-1212C.
ДК им. Ленсовета
ДК им. Ленсовета
Диагностика и модернизация системы вентиляции на контроллере Carel pCOXS.
ECHOLO A/S
ECHOLO A/S

Модернизация паллетайзера PM 800-4 датской компании ECHOLO A/S.

Macring Oy
Macring Oy
Сервисное обслуживание, перепрограммирование и замена моушн-контроллера Rexroth IndraDrive HCS02.1E на линии профилирования с летающим ножом финской компании Macring Group.
Vimco
Vimco
Проектирование и встраивание в общую технологическую цепочку формирователя коробок Vimco для чайных пакетиков с последующей раскладкой по наборам, упаковкой и укладкой в гофрокороба.
Coca-Cola HBC Россия
Coca-Cola HBC Россия
Разработка концепта и проектирование модернизации линии Pet4 готовой продукции, исполненной на контроллере Сименс CPU315F-2PN/DP в сетевой связке с аппликатором MES MARKEM 2200Pallet и верхним уровнем.
ПАО "Акрон"
ПАО "Акрон"
Разработка программ и отладка системы вентиляции на контроллерах Siemens Desigo PXC 36.1.D на заводе минеральных удобрений группы компаний "Акрон" в Великом Новгороде.
Образовательный Фонд "Талант и успех"
Образовательный Фонд "Талант и успех"
Аудит вентсистем (Boukens Ice & Climate Solutions) и разработка их модернизации в комплексе Сириус Арена, выполненных на ПО: Reliance Industrial SCADA v.4, Citect SCADA v.7.20 sp3, Hitachi OPC Data Access Server v.1.4.0.3 в связке с плк Hitachi EHV-CPU16 и hmi UniOp eTOP407.
Лахта Центр
Лахта Центр
Разработка ПО для приборов освещения на KNX и DALI; программирование вентустановок, кондиционеров и диспетчеризации (Семён-Desigo™); визуализация на панелях (ABB Busch-SmartTouch®) в здании "Башня".
РУСАЛ
РУСАЛ
Подготовка консультационного обучения персонала на тему: "Частотно-регулируемый электропривод переменного тока SEW-Eurodrive"
Травушка текстиль
Травушка текстиль
Диагностика и модернизация итальянского ткацкого станка TEC MECCANOTEC S.R.L. (Tecquilt multineedle quilting machine), выполненного на плк TRIO MC206X Motion Coordinator посредством программного обеспечения MotionPerfect V4.
БЦ "Черная Речка"
БЦ "Черная Речка"
Модернизация и диспетчеризация приточно-вытяжной вентсистемы KORF на контроллерах RWC82 (Landis & Staefa) в Бизнес Центре "Черная Речка".
Ленэнерго
Ленэнерго
Конфигурация и внедрение по протоколу МЭК 60870-5-104 различных вакуумных реклоузеров, не прописанных штатно в сети скады ЭнтекTEL (Таврида Электрик) в диспетчерских пультах Ленэнерго.
Taisei engineering consultants Inc.
Taisei engineering consultants Inc.
Диагностика японского сцепного гидравлического устройства ARTICOUPL KVC3545L на буксире, выполненного на плк FUJI MICREX-SX NP1PH-16 в связке c HMI Hakko Electronics Monitouch V806CD. 
WAGNER
WAGNER
Внесение изменений в алгоритм работы контроллера  системы порошковой покраски "ProfiTech M" немецкой компании Wagner.
Scada novaPro Open
Scada novaPro Open
Подготовка к замене устаревшей скады Sauter EY3600 novaPro Open Suite на отечественный аналог системы диспетчеризации зданием с проведением технического аудита и разработки ПО.
ПАО "НПО" Стрела"
ПАО "НПО" Стрела"
Разработка программы проведения ПНР при реконструкции и техническом перевооружении производственных мощностей НПО "Стрела" в г.Тула.
ООО "ЭкоПром СПб"
ООО "ЭкоПром СПб"
Проектирование частотного регулирования и переоснащение крана стрелового КСП-500, выполненного на двигателе с короткозамкнутым ротором Элком 5АИ 100S4 ЕТ У2.
Bruderer
Bruderer
Модернизация и диагностика высокоскоростного штамповочного пресса BRUDERER BSTA-25А, выполненного на контроллере митцубиши.
HEIDENHAIN
HEIDENHAIN
Замена старенькой чпу стойки HeidenHain на 5-осевом фрезерном станке Deckel-Mano DMU 60T на CNC "Баллт-Систем" и "HNC" (Wuhan Huazhong Numerical Control Co, Ltd.)
Лесопильная линия SAB
Лесопильная линия SAB
Адаптация программ и замена контроллеров шнайдер TSX-17 и TSX-47 на лесопильной линии SAB.
Spitze AB
Spitze AB
Доработка софта и настроек шведского картонажника Spitze WA211, выполненного на оборудовании сименс.
АО "С.Е.Д.-СПб"
АО "С.Е.Д.-СПб"
Разработка программного обеспечения для системы управления и визуализации печей в режиме пайки и отжига на базе контроллера SMH4-0011000.
ООО "МЕТАПРОМ СПб"
ООО "МЕТАПРОМ СПб"
Диагностика и программирование гидравлического станка АС-273-1ГП, выполненного на плк LOGO (6ED1052-2HB00-0BA6).
ILAPAK
ILAPAK
Модернизация элементной базы и написание программного кода для панели оператора и контроллера вертикальной упаковочной машины ILAPAK Vegatronic 2000.
Уралкран
Уралкран
Разработка, проектирование и АСУТП системы управления портальным краном на гидроприводе.
CASK
CASK
Перепрограммирование в фестовском Designer Studio (V4.5.0.224) контроллера CDPX-HMI на канадской пивной баночной линии CASK mACS V2 (micro-automated canning system).
ЭКО-Золопродукт
ЭКО-Золопродукт
Проработка диспетчеризации завода по производству комовой, молотой и гидратной извести под торговой маркой ROSCA на базе WINCC, собирающей в единую сеть управление конвейерами, питателями, грохотом, паллетировщиками, бункерами для дальнейшей интеграции на верхний уровень передачи данных.
Сеть ресторанов Максимилиан
Сеть ресторанов Максимилиан
Параметрирование контроллеров WAGO 750-881 варочных котлов в сети ресторанов-пивоварен maximilian brauhaus.
ТК Бетон
ТК Бетон
Правка скады Индусофт V.6 на бетонном заводе в г. Набережные Челны с настройкой дозирования цемента и химдобавок и созданием таблицы в базе данных ClientID.
ASEM s.r.l.
ASEM s.r.l.
Диагностика и ремонт итальянской panel pc ASEM WS 410TE15H3.
Филиал №3 "ММЗ" ООО"ЮГМК" г. Макеевка ДНР
Филиал №3 "ММЗ" ООО"ЮГМК" г. Макеевка ДНР
Оценка разработки роботизации маркировки бунта готовой продукции и интеграция системы в общую АСУТП Макеевского металлургического завода.
Губский кирпичный завод
Губский кирпичный завод
Разработка scada-системы в связке с контроллером сименс по тз заказчика и проработанным рецептам приготовления смеси с аналитикой обратной связи с датчиков.
GUZZETTI s.p.a.
GUZZETTI s.p.a.
Подготовка к модернизации итальянской линии Technicoater путем внедрения системы измерения ширины клейкой ленты.
АО "ЦКБМ"
АО "ЦКБМ"
Программирование и запуск повысительной насосной станции на контроллере Modicon TM 241CE24T и панели оператора Шнайдер HMIGXO3501 в Центральном конструкторском бюро машиностроения госкорпорации "Росатом".
Roll-o-Matic A/S
Roll-o-Matic A/S

Диагностика контроллера в датском намотчике полиэтиленовых пакетов HSW (high speed winder) компании Roll-o-Matic в Московской области.

Производство холодильников NORD г. Донецк
Производство холодильников NORD г. Донецк
Инжиниринг АСУТП и подготовка к реконструкции линии по сборке холодильников с интеграцией в БД 1С.
ООО "ФУД МИЛК"
ООО "ФУД МИЛК"
Консультация по модернизации, программированию и запуску автоклава стерилизации ST 1200x2000 1D WR от компании GEA LEVATI Food Tech S.r.l., выполненного на плк и панели оператора SIEMENS и регистраторе данных ABB SM500.
A.T.F. S.r.l.
A.T.F. S.r.l.
Сервисное обслуживание и переписывание исходного кода контроллеров в TIA PORTAL V15 на итальянской линии ATF MC-574.2 намотки и упаковки в пленку синтепона.
НЛМК
НЛМК
Подготовка АСУ ТП аспирационной системы литейного двора, бункерной эстакады, приемного устройства и бункеров отсева мелочи доменной печи №6 доменного цеха №2 (ДЦ-2) на базе PLC и HMI Шнайдер в среде Unity Pro и Vijeo Designer.
Ижорский трубный завод
Ижорский трубный завод
Разработка концепции роботизированного комплекса установки и снятия муфт на АО «Ижорский трубный завод».
Bakels
Bakels
Модернизация двух линий сыпучих смесей Наута и Маткон посредством программирования PLC и HMI  компании Омрон и демонтажом существующего оборудования (дозаторы, смесители, просеиватели, фильтры, вентиляторы и загрузка\разгрузка в бункеры).
COS.M.A. PACK INTERNATIONAL S.r.l.
COS.M.A. PACK INTERNATIONAL S.r.l.
Программирование линии итальянских картонажников Космапак (модели 20081X, 20082X, 20083X, 20084X), реализованных на плк Омрон CJ1M-CPU31 и панелях Вайнтек в цеху розлива ликероводочного завода (бывший холдинг "Веда").
Альфа Автоматив Техноложиз
Альфа Автоматив Техноложиз
Модернизация и перенос с московской площадки АМО ЗиЛ в промзону Бирюлево линии конвейеров с последующим программированием контроллеров МЗТА Контар и полной автоматизацией линии.
Светлогорский ЦБК
Светлогорский ЦБК

Система маркировки бумажных рулонов в потоке на конвейере и стыковка по сети с имеющимся оборудованием Сименс.

Има
Има

Модификация и переоснащение линии Erca по выпуску нового формата йогуртов и укладка порталом в доработанный картонажник под обновленные треи.

ООО "Новартис Нева"
ООО "Новартис Нева"
Оценка и программирование управляющих программ на языке CFC (STEP7 V.5.5) для систем вентиляции на контроллерах Siemens, визуализация и доработка скады WinCC в диспетчере устройств BMS с коррекцией технологии.
SCHIESS GmbH
SCHIESS GmbH
Модернизация немецких токарно-карусельных станков фирмы Schiess (выкупленной китайским холдингом SMTCL) с устаревшей системой ЧПУ SINUMERIK 3/8/800 c последующей разработкой таблицы коррекции осей на лицензии Siemens CNC.
Пивоварня "Нахлебник"
Пивоварня "Нахлебник"
Разработка технологии пивоварни с программированием плк WAGO 750-881 и панели оператора ELO ET2094L в софте CoDeSys HMI.
Cabinplant A/S
Cabinplant A/S
Перепрограммирование линии дозации, начинки и заворота блинов, изготовленной датской компанией Cabinplant A/S.
SOLOPHARM
SOLOPHARM
Программирование вентиляции в лицензионном софте DESIGO CC V5.1 промышленных контроллеров Siemens PXC100-E.D и панелей PXM30.E в новом фармацевтическом комплексе Солофарм, с выводом тегов в существующую скаду Десиго Инсайт.
Нижнетагильский металлургический комбинат
Нижнетагильский металлургический комбинат
Разработка программного обеспечения на базе Siemens S7 CPU 315-2PN\DP для конвертерного цеха и технического перевооружения 3-х систем аспирации миксеров.
Presona AB
Presona AB
Разработка алгоритма работы шведского пресса переработки макулатуры Presona LP 60VH Baler и программирование в нем плк Омрон CP1L и HMI NB10W-TW01B.
АО "ПО СТРОНГ"
АО "ПО СТРОНГ"
Разработка программы и запуск системы управления станком прямой намотки скважинных щелевых фильтров с использованием сервоприводов Delta ASD-A2-1021-M и плк DVP12SA211T, работающих в сети CAN.
Заводы Цементум
Заводы Цементум
Подготовка к апгрейту и модернизации высоковольтных ячеек на заводе концерна Холсим, развернутых в ПО Siemens Sicam PAS и DIGSI V4.
Производство фурнитуры Сатурн
Производство фурнитуры Сатурн
Разработка  и внедрение гибкого производственного участка по механической обработке на  основе робота и фрезерного станка ЧПУ.
ООО "Дж. Дж. Уитли Дистиллери"
ООО "Дж. Дж. Уитли Дистиллери"
Анализ и разработка концептуального решения по диспетчеризации спиртоприемного и спиртоотпускного отделений завода, а также перепрограммирование панели TP270 (6AV6545-0CC10-0AX0) и плк S7-CPU315-2DP в спиртохранилище.
ООО "Багерстат Рус"
ООО "Багерстат Рус"
Подготовка КП по программированию контроллера S7-315-2DP на рецептурно-дозирующей станции  подачи муки MINC-99 и визуализации на АРМе АПР-8 ПХПП в софте FactoryTalk® View.
SICAM s.r.l.
SICAM s.r.l.
Реинжиниринг итальянской линии SICAM для термоскрепления текстиля с охлаждением и калибровкой, выполненной на контроллерах S7-300.
Распредцентр Wildberries
Распредцентр Wildberries
Проектирование и разработка системы автоматизации для линии конвейеров логистического центра WILDBERRIES в г. Подольск.
Ижорский Трубопрокатный Завод
Ижорский Трубопрокатный Завод
Предварительная разработка и проектирование систем управления для автоматизированной подачи смазки в автомат-стан ТПА-140 и повышение производительности прошивного стана.
Frito-Lay
Frito-Lay
Разработка программного обеспечения для системы холодоснабжения на предприятии в г. Кашира Московской области (градирня с вентиляторами, линия насосов, система подпитки\контроля оборотной воды и диспетчеризация холодильной машины) на базе контроллеров ControlLogix 1756 (Allen-Bradley).
AMADA CO., LTD.
AMADA CO., LTD.
Модернизация японского эксцентрикого пресса AMADA TP-60 и замена в нем устаревшего и снятого с производства контроллера Омрон CQM1H-CPU11.
ООО «Нипромтекс»
ООО «Нипромтекс»
Подготовка к модернизации итальянских линий, построенных на контроллерах Сименс на производстве нетканных материалов, геотекстиля и швейных изделий Нипромтекс.
Дамате
Дамате
Подготовка технического аудита на заводе переработки индейки для разработки отечественной системы диспетчеризации и мониторинга всех систем.
Automatyka-Pomiary-Sterowanie S.A.
Automatyka-Pomiary-Sterowanie S.A.
Перепрограммирование плк Siemens 6ES7214-1AG40-0XB0 и панели KTP900 польского щита управления HLP 3037 (APS) габаритными огнями на вертолетных площадках в связи с полным уходом из России.
"Стивидорная Компания "АВЛИТА"
"Стивидорная Компания "АВЛИТА"
Разработка скада-системы PcVue 8.40 и организация связи через модуль IBY100 по шине INTERBUS с ПЛК  для зернового терминала в г. Севастополь.
KAESER
KAESER
Подготовка проектирования и разработки программного обспечения для сетевого обмена по эзернету плк SIGMA CONTROL 2 компрессоров "КЕЗЕР КОМПРЕССОРЕН ГмбХ" с системой управления на контроллере Siemens S7-1515-2 PN и визуализация на HMI KTP1200.
БЦ "Левашовский"
БЦ "Левашовский"
 Подготовка на вентустановках замены неисправного плк Danfoss MCX06D на отечественный PIXEL с разработкой для него с нуля алгоритма и ПО.
OYSTAR Hassia
OYSTAR Hassia

Проектировка оборудования и совершенствование производительности линии Hassia в молочном производстве посредством замены устаревшего контроллера, доработка сетевого обеспечения серводвигателей и программирование CPU Siemens по тз заказчика.

ООО "ГЕО НПК" (УралХим)
ООО "ГЕО НПК" (УралХим)
Разработка предложения по модернизации щита управления на плк сименс S7 318-2DP и замене скада-системы AVEVA InTouch (бывшая Wonderware, Invensys plc) на заводе сложных минеральных удобрений холдинга ОХК "УралХим".
Карельский окатыш
Карельский окатыш
Программирование автоматического режима, стыковка по сети со шнековой и конусной дробилкой METSO, отладка скады WINCC для дробильно-сортировочной установки.
Морозко
Морозко
Написание программы для каретки c сервоприводом DELTA и шаговым двигателем заворотки на блинной линии на контроллере Омрон CJ1MCPU12.
Пожарная спецтехника
Пожарная спецтехника
Разработка и проектирование контроллера управления насосом, изготовление прототипов плат и ПО для комплектации пожарных автомобилей.
Ленинградский механический завод
Ленинградский механический завод
Анализ расчетных парамметров усилий конструкции и сведение в автоматизацию линии прокатного стана для изготовления алюминиевых пластин Норникелевых катодов и анодов.
Сухонский ЦБК
Сухонский ЦБК

Проектирование манипулятора на базе электромеханического привода с каретками и возможностью передачи данных о двухстрочной печати на рулонах в сеть завода.

Фабрика кухни
Фабрика кухни
Подготовка bim-проектирования в Ревите и Автокаде проектной и рабочей документации для капитального строительства ООО "БФФ".
АО "Узбекнефтегаз"
АО "Узбекнефтегаз"
Подготовка инжиниринга внедрения новых барьеров искрозащиты и интерфейсных шкафов в существующую РСУ Yokogawa Centum на базе AD Suite.
АО "Кировская Керамика"
АО "Кировская Керамика"
Перепрограммирование контроллера S7-312 чешской линии Abadia a.s. STLN4 на заводе "Кировская Керамика" в г. Киров.
Dell'Orco & Villani  s.r.l.
Dell'Orco & Villani
s.r.l.
Импортозамещение иностранного закрытого ПО на итальянской линии приготовления волокон, кипоразрыхлителей хлопка и автоматического их взвешивания.
БаренцКул
БаренцКул
Разработка тз для програмирования холодильной установки на базе контроллера Модикон М340 и Magelis панели HMIGTO2310 с применением компрессоров Bitzer OSN и частотных преобразователей Данфос.
АО "Фаберлик"
АО "Фаберлик"
Анализ и модернизация чешской (PRODUCT CZ s.r.o.) тубонабивной машины PAT-2500 с разработкой автоматического режима работы на сервоприводах и моушн-контроллере Омрон на заводе Фаберлик г. Москва.
ООО "Конвертор"
ООО "Конвертор"
Перепрошивка и восстановление с использованием SD-карты контроллера ABB AC500 посредством софта Automation Builder, проверка настроек портов и конфигурации ядра qModMasterом в щите собственных нужд завода Конвертор.
Есть вопросы? Звони!