Конфигурирование контроллера

Память ввода-вывода

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

Внешние устройства обмениваются данными с пользовательской программой ПЛК через область памяти ввода-вывода ПЛК (%I и %Q). Память ввода-вывода включает дискретные и аналоговые входы и выходы, модули расширения функционала (в том числе организующие обмен информацией между ПЛК и отдельными приборами и устройствами, связанными по сети с ПЛК). Размер памяти ввода-вывода определяется типом лицензии CODESYS контроллера ПЛК (см. раздел).

Память ввода-вывода настраивается в окне редактора «Конфигурация ПЛК», которое вызывается на вкладке «Ресурсы» организатора объектов.

Graphic
Окно редактора «Конфигурация ПЛК»

Окно редактора «Конфигурация ПЛК» разделено на две части. В левой части окна отображается дерево конфигурации с ресурсами контроллера. Структура и компоненты дерева определяются файлом настроек целевой платформы (см. раздел) конфигурации, но могут быть изменены пользователем. В правой части окна отображаются параметры, доступные для текущего (выделенного) элемента дерева конфигурации. Параметры отображаются в виде одной или нескольких табличных вкладок (см. рисунок). В полях, расположенных на вкладках диалогов, задаются требуемые значения параметров канала или модуля. Значение параметра устанавливается интерактивно до компиляции проекта. Оно передается в ПЛК и влияет на работу контроллера и подключенных к нему устройств.

Graphic
Параметры в окне редактора «Конфигурация ПЛК»
Примечание
Правая часть окна видна по умолчанию, но может быть скрыта выбором переключателя Дополнения → Свойства главного меню.

Корневой элемент конфигурационного дерева определяется используемым target-файлом. Если проект создается без установки настроек целевой платформы, или если в процессе создания проекта target-файл был заменен другим (т. е. был совершен переход на другую платформу), то вместо дерева конфигурации может отобразиться запись «Not found (Не найдено)». В этом случае следует выбрать команду Дополнения → Стандартная конфигурация главного меню, и в окне отобразится дерево конфигурации, соответствующее текущему target-файлу.

Конфигурация ПЛК определяет аппаратные средства системы. В дереве конфигурации задается распределение адресов входов/выходов контроллера, что определяет привязку проекта к аппаратным средствам. На основе описания конфигурации ПЛК CODESYS проверяет правильность задания МЭК адресов, используемых в программах, на их соответствие фактически имеющимся аппаратным средствам.

В дереве конфигурации отображаются элементы:

  • Модуль (элемент конфигурации) – независимая единица аппаратных средств. Модуль включает набор каналов ввода-вывода и (как и каждый отдельный канал) может иметь параметры. Каждый тип модуля имеет уникальный идентификатор. Модуль может иметь вложенные подмодули (подэлементы конфигурации);

  • Канал – данные ввода-вывода. Как правило, модуль имеет фиксированный набор каналов или подмодулей. Каждый канал имеет определенный МЭК тип и адрес. Для каждого канала автоматически выделяется определенное пространство памяти. Каждый канал имеет уникальный в пределах данной конфигурации ПЛК идентификатор;

  • Битовый канал – идентификатор отдельного бита в многобитном канале.

В конфигурации ПЛК присутствуют модули, отвечающие за структурирование областей ввода и/или вывода, каждый из которых может содержать вложенные подэлементы (подмодули и каналы). Для каналов могут быть назначены символические имена. Прямые МЭК адреса отображаются в конфигурации для каждого символического имени.

Адреса каналов в области ввода-вывода ПЛК рекомендуется определять в автоматическом режиме установкой флажка переключателя «Автоматическое вычисление адресов» на вкладке «Настройки». В случае изменения положения модуля адреса его каналов соответствующим образом смещаются. Альтернативой может служить фиксированная адресация. В случае фиксированной адресации для каждого модуля отводится фиксированное адресное окно, которое определяется физическим расположением (номером слота) модуля. Например: %QB0, %IB26, %MW4. Подробнее см. раздел «Конфигуратор ПЛК (PLC Configuration)» документа «Руководство пользователя по программированию ПЛК в CoDeSys V2.3» на сайте owen.ru.

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

Внимание
Добавление и удаление модулей конфигурации, а также настройка их параметров осуществляются при контроллере, отключенном от CODESYS. Для отключения контроллера следует вызвать команду Онлайн → Отключение главного меню или нажать кнопку Отключение (Graphic) на панели инструментов.
Внимание
Во время конфигурирования ПЛК следует иметь в виду, что можно изменять только значения переменных, лежащих в области вывода. Значения переменных из области ввода можно только считывать.

Если в процессе создания пользовательской программы требуется изменить используемый ПЛК (сменить настройки целевой платформы), то следует:

  1. В окне «Настройки целевой платформы» (вкладка «Ресурсы» организатора объектов) открыть настройки целевой платформы и выбрать новый target-файл (соответствующий новому ПЛК).

  2. Перейти в окно редактора «Конфигурация ПЛК» и выбрать команду Дополнения → Стандартная конфигурация главного меню.

Если предполагается переход от одного типа контроллера к другому, то переменные следует задавать в режиме («ресурсе») «Глобальные переменные». Во время задания стандартной конфигурации («Standard Configuaration») переменные, заданные в редакторе «Конфигурация ПЛК», пропадают, и ранее созданное распределение и именование переменных теряется. Глобальные переменные и их имена не будут потеряны, и в случае перехода к другому target-файлу достаточно только скорректировать адреса.

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

Для объявления глобальной переменной следует:

  1. Открыть окно объявлений «Глобальные переменные» на вкладке «Ресурсы» организатора объектов.

  2. В контекстном меню окна объявлений «Глобальные переменные» выбрать команду «Авто объявление…» (см. рисунок).

    Graphic
    Команда «Авто объявление…»
  3. Задать и сохранить глобальную переменную в открывшемся окне автоматического объявления переменной (см. рисунок).

    Graphic
    Окно объявления переменной

Подробнее об объявлении и применении глобальных переменных см. раздел «Глобальные и конфигурационные переменные, файл комментариев» документа «Руководство пользователя по программированию ПЛК в CoDeSys V2.3», который доступен в разделе CODESYS V2 на сайте owen.ru.

Редактирование конфигурации ПЛК

Начальный вид конфигурации ПЛК задает файл конфигурации (*.cfg) ПЛК, расположенный в директории, определенной в установленном целевом файле (target-файле) и считываемый во время открытия проекта в CODESYS.

Редактирование элементов конфигурации ПЛК заключается в выполнении операций над элементами дерева окна редактора «Конфигурация ПЛК» (добавление, замена и удаление модулей, подмодулей и каналов) и редактировании значений параметров элементов дерева в правой части окна.

Типы и виды модулей в конфигурации

Виды модулей в конфигурации:

  • Фиксированные модули – заданы обязательно и не могут быть удалены или заменены. Доступно только редактирование их параметров;

  • Добавляемые модули – добавляются (заменяются, удаляются) пользователем в процессе конфигурирования. Модули подразделяются на типы:

    • SLOT – для модуля зарезервировано место, которое может быть занято или оставлено пустым. На одно зарезервированное место может быть установлен один модуль;

    • VAR (свободный) – можно установить любое количество модулей (с учетом физических возможностей области ввода-вывода).

Добавление подмодуля (подэлемента)

К модулям конфигурации могут быть добавлены подмодули («подэлементы»), которые расширяют функционал или изменяют алгоритм работы модуля.

Для добавления подмодуля (подэлемента) в текущую конфигурацию следует:

  1. Выделить требуемый модуль (элемент) конфигурации и нажатием ПКМ вызвать контекстное меню.

  2. Выбрать в контекстном меню требуемую команду Добавить Подэлемент → <Имя Подэлемента>. Выбранный подэлемент будет добавлен в редактируемую конфигурацию.

Другой способ добавления подмодуля (подэлемента) в текущую конфигурацию:

  1. Выделить требуемый элемент (модуль) конфигурации.

  2. Выбрать команду Вставка → Добавить Подэлемент → <Имя Подэлемента> в главном меню. Выбранный подэлемент будет добавлен в редактируемую конфигурацию.

Graphic
Добавление подмодуля в контекстном меню

Замена модуля (элемента)

Для замены модуля (элемента) в текущей конфигурации следует:

  1. Выделить требуемый модуль (элемент) конфигурации.

  2. В контекстном меню модуля выбрать команду Заменить Элемент → <Имя элемента>. Выбранный элемент заместит собою выделенный модуль (элемент) редактируемой конфигурации.

Другой способ замены модуля (элемента) в текущей конфигурации:

  1. Выделить требуемый модуль (элемент) конфигурации.

  2. Выбрать команду «Дополнения → Заменить элемент → <Имя элемента> в главном меню. Выбранный элемент заместит собою выделенный модуль (элемент) редактируемой конфигурации.

Graphic
Замена элемента в контекстном меню

Удаление модуля (элемента)

Для удаления модуля (элемента) из текущей конфигурации (можно удалить только добавляемые модули, фиксированные модули не могут быть удалены из конфигурации) следует:

  1. Выделить требуемый модуль в дереве конфигурации.

  2. Выбрать команду Удалить в контекстном меню модуля.

  3. В открывшемся окне запроса подтверждения операции нажать кнопку «Да» для подтверждения операции (или кнопку «Нет» для отказа от завершения операции удаления). Выделенный модуль будет удален из дерева конфигурации.

Размер файла конфигурации

Для определения размера файла конфигурации ПЛК следует:

  1. Отключить ПЛК от ПК.

  2. Создать копию проекта.

  3. Удалить из копии проекта все кроме файла конфигурации.

  4. Выбрать команду Онлайн → Создание загрузочного проекта. В папке с проектом появится файл <имя_проекта>.PRG. Размер файла примерно соответствует размеру файла конфигурации.

Верхний предел размера файла конфигурации – 150 Кб.

Если отведенных 150 Кб не хватает для проекта, то рекомендуется использовать для опроса входов и выходов библиотеки программных компонентов ModBus.lib и OwenModbusSlave.lib, см. раздел.

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

Параметры модулей

Параметры текущего (выделенного в дереве конфигурации) модуля отображаются на вкладках в правой части окна ресурса «Конфигурация ПЛК».

Вкладка «Базовые параметры»

В полях вкладки «Базовые параметры» отображаются значения параметров:

  • Идент. модуля – идентификационный номер модуля;

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

  • Адрес входов, Адрес выходов, Адрес диагностики – адреса областей ввода-вывода (приводятся конкретные номера). Адреса могут использоваться для обращения при программировании, значения недоступны для редактирования;

  • Комментарий – произвольный текст комментария.

Graphic
Вкладка «Базовые параметры» окна редактора «Конфигурация ПЛК» для модуля дискретных выходов

Вкладка «Параметры модуля»

На вкладке «Параметры модуля» отображаются значения параметров, представленные в виде таблицы, содержащей столбцы:

  • Индекс;

  • Имя;

  • Значение (текущее);

  • По умолчанию – значение по умолчанию;

  • Мин. – минимальная величина диапазона возможных значений;

  • Макс. – максимальная величина диапазона возможных значений.

Примечание
Значения параметров по умолчанию, минимальные и максимальные значения – опциональные и не всегда присутствуют во вкладках параметров модулей.
Graphic
Вкладка «Параметры модуля» окна редактора «Конфигурация ПЛК», модуль дискретных входов

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

Для редактирования значений параметров, которые могут принимать определенное значение из списка значений, следует щелкнуть ЛКМ кнопку с треугольной стрелкой, отображаемую рядом со значением параметра. Нажатие этой кнопки раскрывает список допустимых значений параметра, в котором следует выбрать требуемое значение. Значение будет подставлено в перечень параметров. После щелчка ЛКМ в любой другой области окна выбранное значение сохраняется в списке.

Каналы

В состав модуля входят каналы (битовые, байтовые, каналы для данных типа REAL или STRING).

Каждый канал – это транслятор данных от внешнего оборудования в область памяти ввода-вывода ПЛК и, если требуется, их преобразователь в цифровой вид. Через канал передается значение входов и выходов (физических или сетевых), также в канале указывается, в каком месте памяти области ввода-вывода хранится данное значение (каждому каналу соответствует переменная в области ввода-вывода).

Каналу и соответствующей ячейке памяти может быть присвоено имя. Правила наименования переменных:

  • имя может состоять из латинских букв, цифр и знака «_» (нижнее подчеркивание);

  • имя должно начинаться с буквы или знака «_»;

  • имя должно быть уникальным;

  • в некоторых случаях редактирование имен каналов может быть запрещено.

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

Способы получения данных из канала:

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

    Graphic
    Ввод и редактирование имени переменной канала
  • объявление необходимого количества глобальных переменных (в окне «Глобальные переменные» и связь добавленных переменных с областью ввода-вывода через МЭК адрес, указывающий в какой области памяти ввода-вывода хранится значение переменной;

Пример

Дискретный вход 1: DI1 AT %IX0.0.1: bool,

где DI1 – имя переменной, задаваемое пользователем;

AT – указатель, что свое значение переменная будет получать из памяти ввода-вывода;

%IX0.0.1 – указание на ячейку хранения значения в области памяти ввода-вывода.

  • обращение к значениям переменных в программе непосредственно через МЭК-адрес переменной в области ввода-вывода.

Внимание
Не рекомендуется использовать прямую адресацию с помощью ключевого слова АТ. В случае использования прямой адресации компилятор не проверяет за пользователем область памяти, на которую он ссылается во время объявления переменной. Переменным, размещаемым в области конфигурации ПЛК, следует присваивать имена непосредственно в области конфигурации. Дополнительное объявление переменных, объявленных в области конфигурации, не требуется.

Данные в полях вкладки «Базовые параметры» носят информационный характер и (за исключением текста комментария) не редактируются.

Для байтового канала отображаются следующие данные:

  • комментарий – характеристика канала (например, для модуля дискретных входов – «8 discrete inputs» = «8 дискретных входов»);

  • ID канала – идентификационный номер канала в общем списке;

  • размер – указывается в битах.

Для битового канала программа выводит только комментарий с номером битового канала, например, «Bit 3».

Задание времени цикла

Для изменения параметров времени цикла ПЛК следует:

  1. В дереве окна «Конфигурация ПЛК» выделить корневой элемент (например, «PLC110-60», см. рисунок).

  2. В области задания параметров перейти на вкладку «Параметры модуля».

    Graphic
    Задание минимального значения цикла работы ПЛК
  3. Задать требуемые значения параметров времени цикла ПЛК:

    • PLCName – имя контроллера, используемое в текущем проекте. Максимальная длина имени – 80 символов. Имя может содержать любые русские и латинские буквы и знаки и предназначено для хранения описаний элементов конфигурации ПЛК и их назначения непосредственно в ПЛК. Имя контроллера может быть использовано для идентификации контроллера в сети или для вывода на ЖК-панель.

    • MinCycleLength, ms (Минимальное значение цикла работы ПЛК, в мс) – параметр определяет минимальный период, с которым ПЛК выполняет полный цикл своей работы. Диапазон значений от 0 до 50 мс, значение по умолчанию – 1 мс.

      Программная реализация ПЛК обеспечивает вызов цикла ПЛК не чаще, чем 1 раз в установленное число миллисекунд. Поэтому, задавая значение параметра, следует учитывать, что после выполнения цикла ПЛК (т. е. после выполнения операции ввода данных, выполнения пользовательской программы и вывода данных) выполняется еще ряд сервисных функций (обеспечивающих сетевой обмен, работу с файлами и т. д.), на выполнение которых также требуется процессорное время. Если пользовательская программа ПЛК выполняется за время, превышающее 70–80 % от значения, заданного в параметре «MinCycleLength», то на выполнение сервисных операций контроллеру не остается времени. В таком случае возможны сбои, замедление или прекращение сетевого обмена с модулями ввода-вывода, сбои в записи архивов и т. д. Для исправления некорректной ситуации следует увеличить значение параметра.

      Узнать о времени выполнения пользовательской программы, сервисных функций и о времени простоя процессора можно в модуле «Statistic» (см. раздел).

      Для нормальной работы рекомендуется, чтобы время простоя процессора составляло не менее 20 % от значения, заданного в параметре MinCycleLength.

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

      Примечание
      Не рекомендуется устанавливать время цикла равное нулю.
    • MaxCycleLength, ms (Максимальное значение цикла работы ПЛК, в мс) – параметр определяет максимальное допустимое время, за которое ПЛК выполняет полный цикл своей работы. Если в процессе работы ПЛК заданная величина будет превышена (зависание программы или выполнение бесконечного цикла), то ПЛК будет принудительно перезагружен. То есть параметр MaxCycleLength задает время ожидания сторожевого таймера («WatchDog Timer»). Диапазон значений от 1000 до 10000 мс, значение по умолчанию – 1000 мс.

Фиксированные модули (элементы) конфигурации. Входы и выходы

Fast discrete inputs (Быстрые дискретные входы)

Модуль быстрых (высокочастотных) дискретных входов (Fast discrete input) отображает в области ввода-вывода значения, характеризующие состояния дискретных быстрых (высокочастотных) входов ПЛК.

Модуль имеет битовые каналы по числу быстрых входов.

Параметры модуля:

  • Name – имя элемента конфигурации ПЛК, используемое в текущем проекте. Максимальная длина имени – 80 символов, имя может содержать любые кириллические и латинские символы и предназначено для хранения описаний элементов конфигурации ПЛК и их назначения непосредственно в ПЛК. Значение имени может быть использовано, например, для вывода на ЖК-экран или панель;

  • Time of filtration fast inputs, mks (Время фильтрации быстрых входов, мкс) – период опроса состояния одного дискретного входа; задается в микросекундах (1 ед. = 1 мкс). Диапазон значений от 0 до 65535, значение по умолчанию – 10000 (10 мс).

    Принцип действия фильтрации:

    • в сдвиговом регистре в драйвере каждого дискретного входа накапливаются значения четырех последних состояний, полученных в результате опроса с периодом, заданным в параметре «Время фильтрации»;

    • если состояние битового канала дискретного входа равно 1 (TRUE), а количество единиц в сдвиговом регистре менее двух, то битовый канал переключается на 0 (FALSE);

    • если состояние битового канала равно 0 (FALSE), а количество единиц в сдвиговом регистре три и более, то битовый канал переключается на 1 (TRUE);

    • если количество единиц в сдвиговом регистре равно двум, то состояние битового канала дискретного входа не меняется.

    Режим фильтрации можно отключить установкой в параметре «Время фильтрации» значения 0. Отключение фильтрации требуется для работы с подчиненными модулями энкодеров, чтобы не пропускать высокочастотные сигналы, а также в тех случаях, когда ПЛК функционирует без ограничения цикла по частоте, т. е. на максимальной возможной частоте.

Graphic
Параметры модуля быстрых (высокочастотных) дискретных входов (Fast Discrete input)
Замещающие элементы (модули)

Процедура замещения модуля описана в разделе.

Модули для замены модуля «Быстрые дискретные входы» (Fast discrete input):

  • Fast Counters (Высокочастотный Счетчик) (см. раздел);

  • Fast Encoders (Высокочастотный энкодер) (см. раздел);

  • Fast Z-Encoder+Counter (Высокочастотный Z-энкодер) только для ПЛК110-60 и ПЛК160 (см. раздел);

  • Fast discrete inputs - direct control (Прямое управление дискретными быстрыми входами) только для ПЛК110-60 (см. раздел).

Graphic
Модули для замены модуля «Быстрые дискретные входы» (Fast discrete input)
Fast Counters (Высокочастотный счетчик)

Высокочастотный счетчик – программный модуль, ведущий учет входных импульсов, поступающих на быстрые дискретные входы ПЛК, и экспортирующий учетные данные в программу ПЛК, в соответствующее место в области памяти входов-выходов.

Модуль «Высокочастотный счетчик» (Fast Counter) является модулем, замещающим модуль быстрых дискретных входов.

Значение быстрого счетчика каждый программный цикл увеличивается на количество импульсов на входе, которое он зарегистрировал в течение цикла. Счетчик обнуляется в случае достижения значения большего, чем 65535 (FFFF16), либо, если происходит не увеличение, а уменьшение значения счетчика, после того, как будет достигнут ноль, значение счетчика станет равно 65535 (FFFF16). Импульсы считаются по переднему (возрастающему) фронту импульса. Таким образом, для использования и обработки значения данного канала, необходимо считывать его каждый раз в начале цикла пользовательской программы. Например, можно ввести в программу дополнительную переменную, и в начале цикла передавать в эту переменную значение переменной, привязанной к счетчику.

Модуль имеет два (для ПЛК110-30 и ПЛК110-32) или четыре (для ПЛК110-60 и ПЛК160) шестнадцатибитовых каналов, по числу быстрых входов.

Модуль не имеет параметров.

Fast Encoder (Высокочастотный энкодер)

Высокочастотный энкодер – программный модуль, позволяющий подключать к двум быстрым дискретным входам относительного энкодера для получения данных о вращении или линейном перемещении контролируемого механизма с последующей передачей информации в цифровой форме в программу ПЛК. Для работы с механическими энкодерами следует включать режим фильтрации дребезга сигналов в параметре Time of filtration in mks. Схемы подключения энкодеров к быстрым входам ПЛК приводятся в руководствах по эксплуатации.

Модуль является замещающим для модуля Быстрых дискретных входов (Fast discrete input).

Модуль имеет один или два шестнадцатибитовых канала (формат WORD) по максимальному числу подключаемых к контроллеру энкодеров.

Параметры модуля:

  • Name – имя элемента, см. раздел;

  • Time of filtration in mks (Время фильтрации, в микросекундах) – время установления сигнала, значения от 0 до 255 (1 единица = 1 мкс). Параметр задает время, в течение которого контроллер игнорирует дребезг контактов механического энкодера. Отсчет времени начинается с момента переключения выхода энкодера в противоположное положение. Если по истечении заданного времени сигнал выхода энкодера не изменяется, то считается, что он установился и дребезг контакта закончился.

    Значение параметра задается в сотнях микросекунд (т. е. 1 единица равна 100 мкс, 10 ед. = 1 мс).

    Для механических энкодеров рекомендуется устанавливать значение параметра в диапазоне от 20 до 40 (от 2 до 4 мс). Для отключения фильтрации (при применении оптических энкодеров) следует задать значение 0. Если в модуле только один параметр, то его действие распространяется на все энкодеры, подключенные к контроллеру.

  • Visibility (Видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Graphic
Параметры модуля Высокочастотный энкодер (FastEncoder) для ПЛК110-32
Graphic
Параметры модуля Высокочастотный энкодер (FastEncoder) для ПЛК160
Fast Z-Encoder+Counter (Высокочастотный Z-энкодер + счетчик)

Высокочастотный Z-энкодер – программный модуль, который позволяет подключать на трех быстрых дискретных входах контроллера относительный энкодер с отметкой пересечения нуля для получения данных о вращении или линейном перемещении контролируемого механизма, с последующей передачей информации в цифровой форме в программу ПЛК. Для работы с механическими энкодерами следует включать режим фильтрации дребезга сигналов в параметре Time of filtration in mks.

Модуль является замещающим для модуля Быстрых дискретных входов (Fast discrete input). Модуль доступен только в ПЛК110-60 и ПЛК160.

Неиспользуемый при подключении Z-энкодера дискретный вход может быть использован в качестве высокоскоростного счетчика.

Модуль имеет два шестнадцатибитовых канала (формат WORD), по числу подключаемых к контроллеру Z-энкодеров и счетчиков.

Параметры модуля:

  • Name – имя элемента, см. раздел;

  • Time of filtration in mks (Время фильтрации, в микросекундах) – время установления сигнала, значения от 0 до 255, 1 единица = 1 мкс (см. раздел);

  • Visibility (Видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Graphic
Параметры модуля «Высокочастотный Z-энкодер + счетчик»

Особенностью подключения Z-энкодера является порядок подключения выходов энкодера. Контроллер требует следующего порядка подключения:

  • на первый быстрый вход (DI1) – сигнал А;

  • на второй быстрый вход (DI2) – сигнал В;

  • на третий быстрый вход (DI3) – сигнал Z;

  • четвертый быстрый вход (DI4) – может использоваться в качестве высокоскоростного счетчика.

Fast discrete inputs - direct control (Прямое управление быстрыми дискретными входами)

Модуль переводит быстрые дискретные входы в режим прямого управления из функций стандартной библиотеки SysLibPort. Дискретные входы не отображаются в пространстве области ввода (%I).

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

Модуль является замещающим для модуля Быстрых дискретных входов (Fast discrete input).

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

Модуль доступен в ПЛК110 и ПЛК160 и не имеет параметров и каналов.

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

Discrete inputs (Дискретные входы)

Фиксированный модуль «Discrete inputs» (Дискретные входы) отображает в области ввода-вывода значения, характеризующие состояния дискретных входов ПЛК.

Модуль имеет два (для ПЛК110-30, ПЛК110-32 и ПЛК160) или четыре (для ПЛК110-60) восьмибитовых канала.

Параметры модуля:

  • Name – имя элемента, см. раздел;

  • Time of filtration general inputs in ms (Время фильтрации основных входов в миллисекундах) – период опроса состояния одного дискретного входа, задается в сотнях микросекунд (1 ед. = 1 мс). Диапазон значений от 0 до 1000, значение по умолчанию – 10.

    Принцип действия фильтрации описан в разделе. Режим фильтрации может быть отключен установкой в параметре «Время фильтрации» значения «0». Фильтрацию следует отключать во время работы с подчиненными модулями энкодеров, чтобы не пропускать высокочастотные сигналы, а также в тех случаях, когда ПЛК функционирует без ограничения цикла по частоте, т. е. на максимальной возможной частоте.

Graphic
Параметры модуля «Дискретные входы» (Discrete input)

Fast discrete outputs (Быстрые дискретные выходы)

Фиксированный модуль быстрых (высокочастотных) дискретных выходов (Fast discrete output) отображает в области памяти ввода-вывода значения быстрых дискретных выходов ПЛК.

Модуль имеет несколько битовых каналов по числу быстрых выходов контроллера.

Примечание
Следует обратить внимание, что в ПЛК160 при частых коммутациях ресурс электромеханических реле может быстро исчерпаться. Частота срабатывания выходов ограничена возможностями электромеханических реле.

Параметры модуля:

  • Name – имя элемента, см. раздел;

  • Safe Value (Безопасное значение)TRUE или FALSE для быстрого дискретного выхода.

    Во время загрузки или в случае сбоя в работе ПЛК, выходы могут оказаться выключены или включены. Такая неопределенность может быть недопустима во время эксплуатации управляемого оборудования, и для исключения подобной ситуации ПЛК переводит выходы во время сбоя или загрузки в состояние, заданное в параметре «Безопасное состояние выхода» (Safe Value).Значение параметра FALSE означает, что выход выключен (0), TRUE – выход включен (1). Значение параметра устанавливается раздельно для каждого битового канала.

  • Visibility (Видимость) – задает видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Graphic
Параметры модуля Быстрые дискретные выходы (Fast discrete output)
Замещающие элементы (модули)

Процедура замещения модуля описана в разделе.

Модули для замены модуля «Быстрые дискретные выходы (Fast Discrete output)»:

  • PWM (Pulse-wide modulator) – ШИМ, см. раздел;

  • Fast discrete outputs - Direct control – прямое управление быстрыми дискретными выходами, см. раздел.

Graphic
Замещающие модули модуля Быстрые дискретные выходы (Fast Discrete output)
PWM (Pulse-wide modulator) – ШИМ

Модуль ШИМ (PWM – Pulse-wide modulator) предназначен для работы с генератором ШИМ, который подключен к дискретному выходу. Модуль является замещающим для модуля быстрых дискретных выходов.

Примечание
Следует обратить внимание, что в ПЛК160 при частых коммутациях ресурс электромеханических реле может быстро исчерпаться. Частота срабатывания выходов ограничена возможностями электромеханических реле.

Каналы модуля:

  • PWM power – шестнадцатибитовый канал (формат WORD), задающий значение скважности ШИМ. Изменяется от 0 (0 %) до 1000 (100 %);

  • PWM Period – тридцатидвухбитный канал (формат DWORD), позволяющий задать или прочитать значение периода ШИМ, заданного в мкс.

    В начале работы значение периода ШИМ записывается из одноименного параметра в канал, затем оно может быть изменено в канале. Измененное значение канала PWM Period не передается в одноименный параметр модуля, поэтому в случае выключения контроллера значение не сохраняется.

Параметры модуля:

  • Min. duration of PWM in mksec (минимальная длительность импульса ШИМ в мкс) – ограничение на минимальную длительность импульса ШИМ. Диапазон значений от 1 до 65000, значение по умолчанию – 3000 мкс;

  • PWM default Period in mks (период ШИМ в мкс) – длительность одного периода ШИМ-регулирования. Принимает значения от 2 до 4 294 000 000 мкс, соответственно задавая период ШИМ до 4294 секунд. При наличии одноименного канала в модуле значение параметра переписывается в канал при загрузке пользовательской программы. В дальнейшем значение периода ШИМ может быть изменено в канале модуля;

  • Visibility (видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Graphic
Параметры модуля ШИМ (PWM – Pulse-wide modulator)
Fast discrete outputs – Direct control (Прямое управление быстрыми дискретными выходами)

Модуль переводит быстрые дискретные выходы в режим прямого управления из функций стандартной библиотеки SysLibPorts.lib. Выходы не отображаются в пространстве области вывода (%Q).

Примечание
Следует обратить внимание, что в ПЛК160 при частых коммутациях ресурс электромеханических реле может быстро исчерпаться. Частота срабатывания выходов ограничена возможностями электромеханических реле.

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

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

Модуль не имеет параметров и каналов.

Discrete outputs (Дискретные выходы)

Модуль дискретных выходов (Discrete outputs) отображает в области памяти ввода-вывода значения дискретного выхода ПЛК.

Модуль имеет несколько битовых каналов (количество каналов зависит от варианта исполнения контроллера).

Параметры модуля:

  • Name – имя элемента, см. раздел;

  • Safe Value (Безопасное значение)TRUE или FALSE для быстрого дискретного выхода.

    Во время загрузки или в случае сбоя в работе ПЛК его выходы могут оказаться выключены или включены. Такая неопределенность может быть недопустима во время эксплуатации управляемого оборудования, и для исключения подобной ситуации ПЛК переводит выходы во время сбоя или загрузки в состояние, заданное в параметре «Безопасное состояние выхода» (Safe Value). Значение параметра FALSE означает, что выход выключен (0), TRUE – выход включен (1). Значение параметра устанавливается раздельно для каждого битового канала.

Graphic
Параметры модуля Дискретные выходы (Discrete outputs)

Fast analog inputs (Аналоговые входы)

Структура модуля

Фиксированный модуль «Analog input» (Аналоговые входы) отображает в области ввода-вывода значения, характеризующие состояния аналоговых входов ПЛК.

Модуль имеет восемь идентичных каналов (%IR4.0–%IR4.7), измеряющих напряжение в диапазоне от 0 до 10 В или ток в диапазонах 4–20 мА, 0–20 мА и 0–5 мА.

Аналоговые входы имеют групповую гальваническую изоляцию на 560 В от остальной части схемы. Период обновления значений каналов %IR4.0–%IR4.7 равен 10 мс. Каналы аналогового ввода во всех режимах работы имеют защиту от перегрузки и выдерживают подачу на вход сигналов с напряжением от –40 до +40 В.

Структура одного из входных каналов приведена на рисунке ниже.

Graphic
Структура каналов модуля аналогового ввода

Параметры модуля:

  • Fltr Comm (Тип входного фильтра) – общий для всех каналов параметр. Входной цифровой фильтр обеспечивает предварительную фильтрацию сигналов на аналоговых входах. Частота отсчетов на входе фильтра равна 1600 Гц, частота выходных отсчетов 200 Гц. Параметр может принимать следующие значения (по умолчанию установлен фильтр «50 Hz 4por»):

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

    • 50 Hz 1por – входной фильтр среднего, первого порядка, длиной 32. Групповое время задержки фильтра равно 10 мс;

    • 50 Hz 2por – входной фильтр среднего, второго порядка, длиной 32. Групповое время задержки фильтра равно 20 мс;

    • 50 Hz 4por – входной фильтр среднего, четвертого порядка, длиной 32. Групповое время задержки фильтра равно 40 мс;

    • 200 Hz 1por – входной фильтр среднего, первого порядка, длиной 8. Групповое время задержки фильтра равно 2,5 мс. При работе с этим типом фильтра не гарантируется заявленная точность измерения.

    Примечание

    Фильтры меньшего порядка рекомендуется устанавливать только в случае необходимости получения задержки измерения менее 40 мс.

    Фильтры 50 Hz 1, 2 и 4 порядков обеспечивают подавление помех с частотами, кратными 50 Гц.

  • Input Type (Тип аналогового входа) – параметр определяет тип измеряемого сигнала: 4–20 мА, 0–20 мА, 0–5 мА, 0–10 В;

  • Peak Filter (Пиковый фильтр) – пиковый фильтр используется для подавления импульсных помех. Режим работы пикового фильтра устанавливается индивидуально для каждого канала. Параметр может принимать значения от 1 до 200. Работа фильтра описана ниже;

  • Filter Ch (Канальный фильтр) – канальный фильтр используется для дополнительной, индивидуально для каждого канала, фильтрации измеряемого сигнала. Параметр может принимать следующие значения:

    • Off – фильтр отключен;

    • Avr 4 – фильтр среднего длиной 4, время групповой задержки 10 мс;

    • Avr 8 – фильтр среднего длиной 8, время групповой задержки 20 мс;

    • Avr 12 – фильтр среднего длиной 12, время групповой задержки 30 мс;

    • Avr 16 – фильтр среднего длиной 16, время групповой задержки 40 мс;

    • RC – аналог RC фильтра. Постоянная времени RC-фильтра определяется параметром «Tau RC».

  • Tau RC (Постоянная времени RC-фильтра) – постоянная времени RC-фильтра. Параметр может принимать значения от 10 до 10 000 мс;

  • Min FV и Max FV – параметры приведения результатов измерения к физической величине.

    Параметры обеспечивают приведение результатов измерения к физической величине и могут принимать значения от –1Е9 до +1Е9. При подаче на вход измерения минимального сигнала выбранного диапазона результат измерения будет равным «Min FV», при подаче на вход измерения максимального сигнала выбранного диапазона результат измерения будет равным «Max FV». При подаче на вход измерения сигналов с уровнями от минимального до максимального результат измерения будет линейно преобразован в диапазон от «Min FV» до «Max FV» (прямо пропорционально при Max FV > Min FV и обратно пропорционально при Min FV > Max FV).

Внимание

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

Пример
На датчике с выходным током от 4 до 20 мА (параметр «Input Type» равен 4–20 мА), который контролирует давление в диапазоне от 0 до 25 атм, в параметре «Min FV» задано значение 00,00, в параметре «Max FV» – значение 25,00. Вывод результатов измерения будет выполняться в атмосферах. При значении измеренного тока, равном 4 мА, результат измерения будет равен 00,00, при значении измеренного тока, равном 20 мА, результат измерения будет равен 25,00.
Работа пикового фильтра

Пиковый фильтр работает в соответствии с формулой:

Graphic

где X – сигнал на входе фильтра;

Y – сигнал на выходе фильтра;

Yi–1 – сигнал на выходе фильтра в предыдущий такт (5 мс) измерения;

P – параметр ограничения скорости, рассчитанный по формуле ниже.

Graphic

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

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

Пример
Если максимальная скорость изменения тока равна 50 мА/с, измеряемый диапазон равен 20 – 4 = 16 мА, то скорость изменения тока за одну секунду будет равна Graphic

В случае установки параметра равным 4, исключается влияние фильтра на полезный сигнал, и в то же время обеспечивается эффективная защита от импульсных помех. Значение параметра, равное 200, отключает фильтр. По умолчанию значение параметра «Peak Filter» устанавливается равным 200.

Поведение модуля в исключительных ситуациях

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

Модуль аналогового ввода распознает следующие исключительные ситуации:

  • результаты измерения заведомо не верны – 0xF1;

  • результаты измерения не готовы – 0xF6;

  • сигнал на входе больше возможного – 0xFA;

  • сигнал на входе меньше возможного – 0xFB;

  • перегрузка в канале измерения тока – 0xFС;

  • обрыв датчика в канале измерения напряжения – 0xFD.

Analog output (Аналоговые выходы)

Фиксированный модуль «Analog output» (Аналоговые выходы) отображает в области ввода-вывода значения, характеризующие состояния аналоговых выходов ПЛК. Модуль имеет четыре идентичных канала (%QR4.0–%QR4.3). В каждый канал может выводится значение с плавающей точкой в диапазоне от 0,0 мА до 20,0 мА для токового модуля и от 0,0 В до 10,0 В для модуля напряжения. В случае записи в канал значения, выходящего за указанные пределы, значение автоматически ограничивается. Значения, записываемые пользовательской программой в каналы аналогового вывода (%QR4.0–%QR4.3) с периодом 50 мс выводятся в ЦАП соответствующего канала и обновляют состояния аналоговых выходов.

Каждый из каналов имеет следующие параметры:

  • Mode (Режим работы выхода) – тип аналогового выхода. Возможные значения: «ток 4…20 мА» или «напряжение 0…10 В». Если параметр Type задан неверно, модуль работать не будет. Выбор параметра должен соответствовать исполнению ПЛК (значение по умолчанию – «ток 4…20 мА»):

    • ПЛК 160-Х.И-М – «ток 4…20 мА»;

    • ПЛК 160-Х.У-М – «напряжение 0…10 В»;

    • ПЛК 160-Х.А-М – «ток 4…20 мА» или «напряжение 0…10 В».

  • SafeState (Безопасное состояние) – значение задается в тех же единицах, что и основные параметры, значение по умолчанию – 0. В безопасное состояние аналоговые выходы устанавливаются при подаче питания на ПЛК и при паузе в обмене между верхней и средней платой на время более 100 мс (которая может быть вызвана сбоем основного процессора или отказом канала связи между верхней и средней платой).

Внимание
Для корректной работы ПЛК160-х.У-М [М02] в конфигурации ПЛК следует указать режим работы всех аналоговых выходов как «напряжение 0…10 В» вне зависимости от их использования.
Graphic
Параметры модуля аналогового выхода

Special input (Специальный дискретный вход)

Модуль специального дискретного входа (Special input) – программный модуль, отображающий в область памяти ввода-вывода состояние трехпозиционного переключателя, расположенного на передней панели контроллера. В рабочем режиме переключатель функционирует как дискретный вход: положению «Работа» соответствует состояние TRUE, положению «Стоп» – FALSE. Состояние «Сброс» никак не отображается.

Модуль имеет один битовый выходной канал и один параметр «Видимость» (Visibility), задающий видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Special output (Специальный дискретный выход)

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

Модуль имеет битовый канал и один параметр: «Видимость» (Visibility), задающий видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Добавляемые модули и подмодули (подэлементы) конфигурации

Процедура добавления подмодулей (подэлементов) в текущую конфигурацию описана в разделе.

В конфигурацию могут быть добавлены подмодули (подэлементы) настройки режимов работы (Master/Slave) и интерфейсов связи:

  • ModBus (Master);

  • ModBus (Slave);

  • DCON (Master);

  • OWEN (Slave);

  • OWEN (Spy);

  • OWEN (Master).

В конфигурацию могут быть добавлены вспомогательные модули:

  • Statistic (модуль статистики);

  • Universal network module;

  • Extended settings;

  • Archiver (архиватор).

Модуль ModBus (Master)

Модуль ModBus (Master) используется для работы контроллера в режиме Мастера сети, т. е. для опроса и контроля других Modbus устройств, работающих в сети в подчиненном режиме (slave) – например, модули ввода-вывода, панели оператора, частотные преобразователи и т. д. Во время установки модуля «ModBus (Master)» выбирается коммуникационный интерфейс для обмена данными с другими устройствами, добавляются и настраиваются требуемые переменные.

Модуль имеет один параметр: «Visibility (Видимость)», который задает видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Во время опроса модулем «ModBus (Master)» подчиненных устройств информация о ходе обмена записывается в соответствующих каналах его переменных.

Каналы модуля:

  • Last Address – адрес последнего опрошенного ModBus (Slave) устройства. Модуль запрашивает устройство, и, соответственно, тут же меняется значение: показывается значение адреса последнего запроса.

  • Last Error – код ошибки. В переменной отображается код ошибки, если информационный обмен прошел неудачно, что требуется для корректности работы опрашиваемого устройства. Коды ошибок данного модуля представлены в приложении Сообщения об ошибках в ПЛК.

Добавление и настройка коммуникационных интерфейсов «ModBus (Master)»

При добавлении модуля «ModBus (Master)» в конфигурацию ПЛК в состав модуля уже подключен порт Debug RS-232. В случае необходимости работы через другой коммуникационный интерфейс этот порт можно заменить требуемым последователным портом или модемом (команда Заменить элемент → <Элемент> контекстного меню строки «Debug RS-232»).

Graphic
Выбор коммуникационных интерфейсов «ModBus (Master)»
Внимание
Если предполагается, что Мастер сети будет работать с устройствами по протоколу TCP, то необходимая настройка производится в подмодуле устройства (параметр «TCP port» модуля Universal ModBus Device).

Подмодуль Universal Modbus Device

Для добавления в список опроса, проводимого мастером сети, устройств, работающих в режиме ModBus (Slave), следует в модуле ModBus Master добавить подмодуль «Universal Modbus Device» (универсальное устройство Modbus). Для добавления в список нескольких опрашиваемых устройств эту процедуру следует повторить столько раз, сколько устройств должно быть подключено. Для каждого устройства должен быть добавлен соответствующий ему модуль Universal Modbus Device с индивидуальными настройками.

Чтобы добавить подмодуль «Universal Modbus Device» в конфигурацию, следует выбрать команду Добавить подэлемент → Universal Modbus Device контекстного меню строки «ModBus (Master)».

Добавленные подмодули «Universal Modbus device» опрашиваются последовательно, в порядке следования в конфигурации (если другой порядок не задан отдельно, в настройках модуля).

Подмодуль «Universal Modbus Device» имеет один канал: Command (0xff - Start):

  • если в него записывается значение 0xFF, то происходит старт работы данного устройства Modbus;

  • если модуль уже запущен, то повторная запись в канал значения 0xFF приводит к внеочередному запросу одной очередной переменной устройства Modbus;

  • если в канал записано значение 0xFE, то происходит его остановка и прекращение всех посылок в сеть;

  • если в канал ничего не записано, то устройства опрашиваются автоматически, в порядке очереди.

В случае необходимости устройство можно исключить из списка опроса, подав соответствующую команду в канал Command (0xff - Start). Во время добавления подмодуля «Universal ModBus Device» его параметры и идентификаторы не привязаны к конкретному внешнему устройству (модулю ввода-вывода, операторской панели). Тип внешнего устройства конкретизируется заданием значений параметров подмодуля (конфигурированием модуля).

Параметры подмодуля «Universal ModBus device»:

  • Name – имя элемента, см. раздел;

  • ModuleIP (IP-адрес) – IP-адрес ModBus Slave устройства, которым управляет Мастер, если обмен будет идти по TCP;

    Примечание
    В качестве разделителей октетов IP-адреса используется двоеточие. Пример: 192:168:1:1.
  • Max timeout (Максимальный тайм-аут, в мс) – максимальное время, в течение которого устройство должно ответить на запрос. Если по истечении этого времени Мастер не получил ответ на запрос, то это значит, что произошел сбой или авария. Информация о сбое фиксируется в переменной модуля Last error. Мастер продолжает опрос других устройств. Максимальное значение не ограничено, оно может быть любым, в том числе дробным, но не меньше 10 мс, значение по умолчанию – 150 мс;

  • TCPport (Порт TCP) – используется только при обмене по протоколу TCP, стандартное значение для протокола Modbus TCP – 502 (значение по умолчанию), но в случае необходимости может быть установлено и другое;

  • NetMode (Режим работы в сети) – значения выбираются из списка («TCP» и «Serial»), значение по умолчанию – «Serial». Значение «TCP» – подчиненное устройство работает по протоколу TCP используется интерфейс Ethernet, опрашиваемое внешнее устройство идентифицируется по IP-адресу. Значение «Serial» – подчиненное устройство обменивается данными через последовательный интерфейс, опрашиваемое внешнее устройство идентифицируется по адресу в сети;

  • ModuleSlaveAddress (Адрес подчиненного устройства) – диапазон значений от 1 до 247, значение по умолчанию – 1.

    Внимание
    Значение «0» – специфично и используется для широковещательных сообщений. Например, для работы через шлюз.
  • Work mode (Режим работы) – режим работы модуля ModBus (Master) при опросе внешних устройств может иметь несколько значений (значение по умолчанию – «Polling time»):

    • By Poll time – «по времени» – контролируемые устройства опрашиваются с периодичностью, заданной в параметре Polling time (Период опроса устройства);

    • By Value change – «по изменению значения переменных» – модуль ModBus (Master) генерирует запрос к соответствующему Slave-устройству в случае изменения значений выходных переменных модуля;

      Примечание
      Выходные переменные – значения, которые модуль ModBus (Master) передает (записывает) в Slave-устройства, входные переменные – параметры, значение которых Мастер запрашивает у Slave-устройств.
    • Both – «оба варианта» – параметр опрашивается с временным интервалом, заданным в параметре «Polling time» и когда изменяются значения выходных переменных (в соответствии с значением «By Value change»);

    • By Command – «по команде» – производится однократная посылка запроса, когда в командный канал «Command» переменной записывается значение 0xFF.

      Внимание
      Для переменных с командным каналом при работе в режиме By Command (По команде) управление осуществляется следующим образом: первая посылка значения 0xFF в командный канал включает функционирование этой переменной, повторная посылка значения 0xFF инициирует проведение опроса. Аналогично опрос инициируется для переменных с командным каналом при работе в других режимах. При посылке в командный канал значения 0xFE переменная исключается из цикла опроса мастера.
  • Amount Repeat (Число повторов) – число повторов чтения/записи переменных при неудачном сеансе связи. В режиме «По времени» (Polling time) значение этого параметра не используется. Рекомендуемый диапазон значений от 0 до 5, значение по умолчанию – 0;

  • Byte Sequence (Порядок передачи байтов посылки) – значения выбираются из списка: «Native» (порядок байтов, используемый в ПЛК) и «Trace_mode» (порядок байтов, используемый в программе Tracemode). Значение по умолчанию – «Trace_mode». Параметр определяет, в каком порядке будут передаваться байты посылки протокола ModBus для переменных длиной 32 бита. У устройств разных производителей этот порядок разный, он не стандартизирован в рамках протокола и поэтому должен быть задан для конкретного устройства. Для работы с модулями ввода-вывода компании «ОВЕН» (например, МВ110-224.8А) следует задать значение параметра Trace_mode;

  • Polling time (Период опроса устройства, в мс) – период опроса внешнего устройства. Диапазон значений от 10 до 10000, значение по умолчанию – 100.

    Примечание
    В Мастере, когда он работает в режиме «По изменению значения переменных» или «По команде», нельзя ставить значение параметра Polling time слишком маленьким. По умолчанию его значение 100 мс, и в этих режимах оно не влияет на периодичность посылки запросов мастера. Но если на реальном проекте будет замечено, что Мастер при загрузке программы или при Login формирует лишние пакеты и/или запросы, которых не должно быть, значение параметра следует увеличить (до 200, 300 и т. д.) до предотвращения появления лишних пакетов.
  • Visibility (Видимость) – задает видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Graphic
Параметры подмодуля Universal ModBus device
Настройка входов и выходов подмодуля

После задания значений параметров подмодуля «Universal Modbus Device» к нему требуется подключить каналы, задающие входные параметры (параметры, значение которых Мастер запрашивает у Slave-устройств) и выходные параметры (значения, которые Мастер передает (записывает) в Slave устройства) подмодуля.

Каналы добавляются выбором команды Добавить подэлемент → <Наименование подэлемента> контекстного меню строки «Universal Modbus Device».

Graphic
Добавление каналов ввода-вывода подмодуля Universal Modbus device

После добавления канала в «Universl Modbus Device» в дерево конфигурации добавляется подкаталог, содержащий внутри себя канал, в котором и отображаются полученное/передаваемое по сети значение.

Graphic
Подкаталог канала ввода-вывода

В подмодуль «Universal Modbus Device» могут быть добавлены каналы из таблицы ниже. Каналы (переменные) могут принадлежать следующим типам: REAL (32 бита), STRING (настраивается параметром, по умолчанию – 80 символов), 4 байта, 2 байта или 8 бит.

Типы каналов подмодуля «Universal Modbus Device»
КаналРазмер в памятиCommand (Команда)Чтение/запись
8-bit input module 8 бит

Read coils status (0x01),

Read inputs status (0x02),

Read holding registers (0x03),

Read input registers (0x04),

Read bytes (0x70)

Чтение
Register input module2 байта
32-bit input module32 бит
Real input module32 бита

String input module

80 бит*

8-bit input module State

8 бит

Register input module State

2 байта

32-bit input module State

32 бита

Real input module State

32 бита

String input module State

80 бит*

8-bit output module

8 бит

Force multiply coils (0x0f),

Write bytes (0x71)

Запись

8-bit output module State

Register output module

2 байта

Preset single register (0x06),

Write bytes (0x71),

Write multiple registers (0x10)

Register output module State

String output module

80 бит*

Force multiple coils (0x0f),

Preset multiple Registers (0x10),

Preset single Register (0x06),

Write bytes (0x71)

String output module State

32-bit output module

32 бита

Force multiply coils (0x0f),

Preset multiple Registers (0x10),

Write bytes (0x71)

Real output module

32-bit output module State

Real output module State

Примечание
* Для каналов типа String указан размер 80 бит, задаваемый по умолчанию. Размер может изменяться пользователем.

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

Запуск/остановка обмена по каналам «Command» управляется значением, записываемым в канал:

  • 0xFF – старт работы данного устройства Modbus;

  • если модуль уже запущен, то повторная запись в канал значения 0xFF приводит к внеочередному запросу одной очередной переменной устройства Modbus;

  • 0xFE – остановка и прекращение всех посылок в сеть;

  • если в канал ничего не записано, то устройства опрашиваются автоматически, в порядке очереди.

Graphic
Канал ввода и канал ввода типа «State»

Параметры каналов ввода-вывода подмодуля «Universal Modbus Device»:

  • Command (Номер команды протокола) – номер команды (номер функции) протокола, по которой будет производиться обмен. Команда для обмена определяется Slave-устройством и описана в документации на него. Во время конфигурирования требуемая команда выбирается из списка;

  • Register Address (Адрес регистра Slave-устройства) – адрес регистра опрашиваемого устройства. Адрес определяется Slave-устройством и описан в документации на него. Во время конфигурирования ПЛК указывается адрес регистра Slave-устройства;

  • Visibility (Видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

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

Модуль ModBus (Slave)

Модуль «ModBus (Slave)» используется для работы контроллера в сети в подчиненном режиме (slave), т. е. отвечает на запросы устройства, работающего в режиме Master. Во время установки модуля «ModBus (Slave)» выбирается коммуникационный интерфейс для обмена данными с другими устройствами, добавляются и настраиваются требуемые переменные.

Модуль «ModBus (slave)» имеет в своем составе подмодуль ModBus (FIX), см. раздел.

Параметры модуля:

  • Name – имя элемента, см. раздел;

  • Address (адрес устройства) – адрес ПЛК, по которому прибор будет опрашиваться в сети Master-устройством (например, панелью оператора). Параметр имеет значения в диапазоне от 1 до 247, значение по умолчанию – 1;

  • Visibility (видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Переменные, которыми будет обмениваться ПЛК по протоколу Modbus, выбираются пользователем командой контекстного меню «Append Subelements (добавить подэлемент)».

Примечание
При случайном отключении питания во время работы ПЛК последние (текущие) значения переменных сохраняются в энергонезависимой памяти и восстанавливаются при возобновлении работы прибора.
Graphic
Параметры модуля ModBus (Slave)
Подмодуль ModBus (FIX). Настройка коммуникационных интерфейсов

При добавлении модуля «ModBus (slave)» в конфигурацию ПЛК в состав модуля уже подключен подмодуль «ModBus (FIX)», к которому, в свою очередь, подключается коммуникационный интерфейс (см. рисунок).

В ПЛК предусмотрена возможность обмена данными по интерфейсам:

  • RS-232;

  • RS-485;

  • TCP (Ethernet).

Для работы с разными коммуникационными интерфейсами в ПЛК предусмотрены соответствующие подмодули (подэлементы). Подэлементы подключаются выбором требуемой команды Добавить подэлемент → <Имя подэлемента> контекстного меню (см. рисунок).

Во время работы ПЛК в режиме «Ведомый (slave)» можно использовать нескольких разных портов, т. е. опрос может вестись по разным интерфейсам. Таким образом, подключая несколько разных портов, один модуль можно соединить с разными Master-устройствами по разным физическим линиям (и интерфейсам). Этот прием может использоваться, например, для создания межсетевого шлюза и/или линии резервного управления (например, подключения SCADA-системы в резервном варианте): например, при выходе из строя порта Ethernet (авария, сбой и пр.), вышестоящая SCADA понимает, что произошел сбой, и начинает информационный обмен с устройством по резервной линии – через COM-порт. Скорость обмена информацией уменьшается, но функционирование устройства продолжается.

Graphic
Контекстное меню добавления подмодулей настройки коммуникаций

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

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

Graphic
Подключение нескольких портов в подмодуле ModBus (FIX)
Настройка входов и выходов подмодуля

После задания значений параметров подмодуля «ModBus (Slave)» к нему подключаются каналы (переменные) входа/выхода.

Каналы добавляются выбором команды Добавить подэлемент → <Наименование подэлемента> контекстного меню строки «ModBus (Slave)».

Graphic
Добавление переменных в модуль «ModBus (Slave)»

Возможные типы каналов (переменных) приведены в таблице ниже.

Типы каналов (переменных) модуля «ModBus (Slave)»
Типы передаваемых переменныхКаналРазмер в памятиКоманды считыванияКоманды записи
1…8 (8 bits) бит8 bit 8 бит 01, 0205
Word, INT, (2 byte) 16 бит2 byte2 байта03, 046, 16
Dword, DINT, (4 byte) 32 бита4 byte4 байта

16

Real (Float)Float32 бита

Файл (File)

File*

20

Примечание
* Об использовании подэлемента «File» см. раздел.

Во время работы по протоколу ModBus обращение Master-устройства к используемым переменным производится по адресу переменной в памяти модуля «ModBus (Slave)». Адресация переменных автоматически формируется CODESYS при программировании контроллера, но не отображается в интерфейсе программы. Поэтому для обращения к переменной ее адрес следует вычислить, учитывая особенности распределения адресов ячеек памяти («выравнивание» переменных).

Выравнивание адресации

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

Типы переменных для адресации:

  • Логический (BOOL) – занимает один бит памяти и адресуется как бит с заданным номером в пронумерованном байте;

  • Короткие знаковые и беззнаковые целые, байты (BYTE, SINT, USINT) – занимают восемь бит и имеют адрес, который увеличивается на единицу для каждых следующих восьми бит, то есть адресуется каждый байт;

  • Знаковые и беззнаковые целые, слова (WORD, INT, UINT) – занимают 16 бит и имеют адрес, который увеличивается на единицу для каждых следующих шестнадцати бит, то есть адресуется каждые два байта, и началу следующей по адресу ячейке с двухбайтовой переменной соответствует начало байта с адресом, равным адресу слова, умноженному на два;

  • Знаковые и беззнаковые двойные целые, двойные слова (DWORD, DINT, UDINT) – занимают 32 бита и имеют адрес, который увеличивается на единицу для каждых следующих 32 бит, то есть адресуются каждые четыре байта, и началу следующей по адресу ячейки с четырехбайтовой переменной соответствует байт с адресом, равным адресу двойного слова, умноженному на четыре.

Данный способ адресации наглядно показан в таблице.

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

Если в модуле используются переменные одного типа, то при запросе устройством – Мастером регистра с адресом «0», модуль считывает первые два байта, для регистра с адресом «1» – вторые два байта и т. д.

Если переменные имеют длину более двух байт, то во время запроса регистра с адресом «0», модуль считывает первые два байта первой переменной, для регистра с адресом «1» – вторые два байта первой переменной и т. д.

Пример
Адресация битов и регистров в памяти модуля
Адрес битаАдрес байта (BYTE, SINT, USINT)Адрес двухбайтовой переменной (WORD, INT, UINT)Адрес четырехбайтовой переменной (DWORD, DINT, UDINT)
0…70x00000x00000x0000
8…150x0001
16…230x00020x0001
24…310x0003
32…390x00040x00020x0001
40…470x0005
48…550x00060x0003
56…630x0007

Если в модуле используются переменные разных типов (например, одновременно восьмибитный, двухбайтный и четырехбайтный), то во время распределения адресов CODESYS «выравнивает» адресов переменных – упорядочивать адреса переменных в памяти модуля. Упорядочение адресов заключается в организации памяти таким образом, что переменные размером 8 бит, 2 байта и 4 байта располагаются только по определенным адресам: четырехбайтным переменным присваиваются адреса, кратные 2, двухбайтным – кратные 1. Вне зависимости от порядка задания переменных, выравнивание назначает переменным адреса, кратные их длине.

Первая восьмибитная переменная будет расположена в 0…7 битах памяти модуля, вторая – в 8… 15 и т. д. Если вторая переменная двухбайтная, то она будет располагаться в 16…31 битах, т. е., по любому (то есть, кратному 1) адресу. Четырехбайтная переменная займет следующее свободное место, кратное 2.

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

Пример
«Выравнивание» адресации переменных в памяти модуля
Адрес регистраАдрес битаАдресация переменных
0x000…78 бит (1 байт)
8…15↓ Сдвиг выравнивания: пропущенные адреса
0x0116…232 байта
24…31
0x0232…398 бит (1 байт)
40…478 бит (1 байт)
0x0348…558 бит (1 байт)
56…63↓ Сдвиг выравнивания: пропущенные адреса
0x0464…714 байта
72…79
0x0580…87
88…95
Внимание

В некоторых версиях CODESYS во время подключения модулей «ModBus (Slave)» в конфигурацию ПЛК могут возникнуть ошибки выравнивания адресации. Например, один и тот же адрес может быть ошибочно присвоен двум каналам разных модулей.

Основной способ исправления ошибки выравнивания – вставить перед неправильно выровненным модулем модуль другого типа. Автоматическое переназначение адресов исправит ошибку.

В случае возникновения подобной проблемы с выравниванием пространства адресации следует обратиться в группу технической поддержки компании «ОВЕН» или описать свою проблему на форуме сайта www.owen.ru  – технические специалисты компании посоветуют способ исправить ошибку, чтобы она не возникала в дальнейшем.

Подмодуль «File». Передача архивных данных

Подмодуль «File» используется для передачи архивных данных (файла) при помощи функции 20 протокола Modbus.

Записанные c помощью модуля Archiver (см. раздел) архивные данные (файл) могут быть переданы по последовательному интерфейсу по протоколу Modbus c помощью специализированной функции № 20. Данные могут быть приняты специализированным ПО на ПК или OPC-сервером, поддерживающим работу с этой функцией (например Lectus OPC).

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

Для реализации передачи архивных файлов следует подключить к модулю «ModBus (Slave)» подмодуль «File». Параметры модуля:

  • File name (имя) – имя файла с архивной информацией, находящегося на Flash-диске ПЛК, внешнем Flash-диске либо на RAM-диске ПЛК, записанного модулем Archiver (см. раздел). Расположение файла задается с помощью префикса, так же, как и в модуле работы с файлами (см. раздел);

  • Amount Byte (размер записи) – размер одной архивной записи в байтах (в запросе записей может быть больше одной);
  • Visibility (видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Graphic
Параметры подмодуля «File»

В случае необходимости работать с несколькими архивными файлами следует последовательно подключить в модуль ModBus (Slave) требуемое количество подмодулей File, настроив каждый из них. Во время настройки следует иметь в виду, что в запросе нет возможности передать имя файла. Поэтому соответствие имени файла (которых может быть много) и запроса осуществляется следующим образом: номер файла в запросе соответствует позиции файла в дереве режима «Конфигурация ПЛК» (PLC Configurations), начиная с нуля. Таким образом, запрос с нулевым номером файла будет читать данные из первого файла в конфигурации подмодуля, первый – из второго, и т. д. Если запрошен файл, которого нет на диске (или в конфигурации он не указан), то выдается код ошибки с номером 0x04.

Примечание
Чтобы Lectus OPC работал с этой функцией, следует дополнительно поместить в рабочую директорию библиотеку ModBus.dll.
Форматы запросов и ответов

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

Формат запросов и ответов приведен в таблице ниже.

Формат запросов и ответов
Function Code0x14ByteКод функции

Формат запросов

Byte count0x07

Byte

Количество байт, следующих ниже
Referens Type0x06Подфункция (здесь константа = 6)
Hi File numberСтарший байт номера требуемого файла
Lo File numberМладший байт номера требуемого файла
Hi Rec addrСтарший байт адреса записи в файле
Lo Rec addrМладший байт адреса записи в файле

Hi Rec num

Старший байт количества запрашиваемых записей

Lo Rec num

Младший байт количества запрашиваемых записей

Формат ответов

Byte count

0x07

Byte

Количество байт, следующих ниже

Byte count

Количество байт, следующих ниже (необходимо по стандарту)

Referens Type

0x06

Подфункция (здесь константа = 6)

Data

Byte*Rec_num*Amount_byte

Данные длиной Rec num из (запроса), умноженные на длину одной записи из конфигурации

Примечание
  1. File number может принимать значение от 0x0000 до 0xffff.

  2. Rec number может принимать значение от 0x0000 до 0xffff.

  3. Rec addr может принимать значение от 0x0000 до 0xfffe.

  4. В случае ошибки возвращается стандартный код ошибки Modbus 0x02.

  5. При запросе с адресом Recaddr = 0xffff происходит удаление файла.

Модуль «DCON (Master)»

Модуль «DCON (Master)» используется для работы контроллера по протоколу DCON в режиме Мастера сети, т. е. для опроса и контроля других устройств, работающих в сети в подчиненном режиме (Slave). Во время работы по протоколу DCON ПЛК может функционировать только в режиме Мастера сети.

Во время установки модуля «DCON (Master)» требуется выбрать коммуникационный интерфейс для обмена данными с другими устройствами, добавить и настроить требуемые переменные.

Модуль имеет один параметр: «Visibility (Видимость)», который задает видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Во время опроса модулем «DCON (Master)» подчиненных устройств информация о ходе обмена записывается в канал модуля:

  • Last Error – код ошибки. В переменной отображается код ошибки, если информационный обмен прошел неудачно, что требуется для корректности работы опрашиваемого устройства. Коды ошибок данного модуля представлены в приложении Сообщения об ошибках в ПЛК.

Настройка коммуникационных интерфейсов

При добавлении модуля «DCON (Master)» в конфигурацию ПЛК в состав модуля уже подключен порт Debug RS-232. Для работы через другой коммуникационный интерфейс порт Debug RS-232 можно заменить требуемым последовательным портом или модемом (выбрать команду Заменить элемент → <Элемент> контекстного меню строки «Debug RS-232»).

Graphic
Выбор коммуникационных интерфейсов «DCON (Master)»
Подмодуль Universal DCON Device

Для добавления в список опроса, проводимого мастером сети, устройств, работающих в режиме DCON (Slave), следует в модуле DCON (Master) добавить подмодуль «Universal DCON Device» (универсальное устройство DCON). Для добавления в список нескольких опрашиваемых устройств процедуру следует повторить столько раз, сколько устройств должно быть подключено: для каждого устройства должен быть добавлен соответствующий ему модуль Universal DCON Device с индивидуальными настройками.

Чтобы добавить подмодуль «Universal DCON Device» в конфигурацию, следует выбрать команду Добавить подэлемент → Universal DCON Device контекстного меню строки «ModBus (Master)».

Добавленные подмодули «Universal DCON device» опрашиваются последовательно, в порядке следования в конфигурации (если другой порядок не задан отдельно, в настройках модуля).

Подмодуль «Universal DCON device» имеет один канал Status:

  • если в него записывается значение 0x00FF, то происходит старт работы данного устройства DCON;

  • если модуль уже запущен, то повторная запись в канал значения 0x00FF приводит к внеочередному запросу одной очередной переменной устройства DCON;

  • если в канал записано значение 0x00FE, то происходит его остановка и прекращение всех посылок в сеть;

  • если в канал ничего не записано, то опрос устройства производится автоматически, в порядке очереди.

В случае необходимости устройство можно исключить из списка опроса, подав соответствующую команду в канал Start\Stop.

При добавлении модуля «Universal DCON Device» его параметры и идентификаторы не привязаны к конкретному внешнему устройству (модулю ввода-вывода, операторской панели). Тип внешнего устройства указывается заданием значений параметров модуля (конфигурированием модуля).

Graphic
Параметры подмодуля Universal DCON device

Параметры подмодуля «Universal DCON device»:

  • Name – имя элемента, см. раздел;

  • Request format (Формат запроса) – формат запроса, может быть любым, ограничения не накладываются (см. ниже);

  • Good response format (Формат правильного ответа) – формат правильного ответа, значение по умолчанию – «!» (см. ниже);

  • Bad response format (Формат неправильного ответа) – формат неправильного ответа, значение по умолчанию – «?» (см. ниже);

  • Max response timeout (Максимальное время ответа) – время, за которое опрашиваемый прибор должен ответить на запрос DCON (Master). Если в течение этого времени прибор не отвечает, то считается, что он отключен или произошел обрыв линии связи. Информация об этом заносится в переменную «Код последней ошибки» (Last error). Значение сверху не ограничено, может быть любым, в том числе дробным, но не меньше 10 мс, значение по умолчанию – 150 мс;

  • Work mode (Режим работы) – режим работы модуля «DCON (Master)» при опросе внешних устройств. Значения выбираются из списка (значение по умолчанию – «By poll time»):

    • By poll time (по времени) – контролируемые устройства опрашиваются с периодичностью, заданной в параметре «Период опроса устройства» (Polling time);

    • By value change (по изменению значения переменных) – модуль DCON (Master) генерирует запрос устройству при изменении значений выходных переменных модуля;

    • Both (оба варианта) – опрос производится с временным интервалом, заданным в параметре Polling time и когда изменяются значения выходных переменных;

    • By command (по команде) – производится однократная посылка запроса, когда в канал Статус (Status) модуля Универсальное устройство DCON записывается значение 0x00FF.

  • Polling time (Период опроса устройства, в мс) – диапазон значений от 10 до 10000, значение по умолчанию – 100;

  • Visibility (Видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Примечание
В Мастере, когда он работает в режиме «По изменению значения переменных» или «По команде» , нельзя ставить значение параметра Polling time слишком маленьким. По умолчанию его значение 100 мс. Однако, если на реальном проекте будет замечено, что Мастер при загрузке программы или при Login формирует лишние пакеты и/или запросы, которых не должно быть, значение параметра увеличивают (до 200, 300 и т. д.) до предотвращения появления ложных пакетов.
Параметры «Формат…»

В протоколе DCON при организации опроса устройств создается строка запроса. При ее посылке опрашиваемое устройство может вернуть два варианта ответа: ответ правильный (команда распознана, данные есть) – один формат, и ответ неправильный (не распознана команда, нет данных и/или пр.) – другой формат.

Строки «Формат запроса» (Request format), «Формат правильного ответа» (Good response format), «Формат неправильного ответа» (Bad response format) используются для задания формата запроса DCON (Master) и разбора правильного/неправильного ответа.

Строки формата ответа могут не задаваться, если устройство не отвечает на запрос.

Строка формата представляет собой строку, содержащую символы и спецкоманды:

  • символы – любой символ, кроме служебных, к которым относятся символы «$» (знак доллара), «[» и «]» (открывающая и закрывающая квадратные скобки);

    Примечание
    При необходимости вывести служебный символ в качестве обычного, он вводится в строку два раза подряд.
  • спецкоманда имеет формат: [{модификатор}действие]:

    • модификатор – количество символов, обрабатываемых действием. Представляет собой десятичное целое число. Может быть у всех действий, кроме вычисления контрольных сумм. Наличие модификатора необязательно, значение по умолчанию = 1;

    • действие – отображается в строке спецкоманды одним из символов – D, H, F, S, *, +, %. Регистр символов значения не имеет.

    Символы соответствуют следующим видам действий:

    • D – представляет передаваемую переменную в ASCII-символах в десятичном формате (без знака) или преобразует ASCII-строку из десятичного формата (без знака) в принимаемую переменную. Количество символов задается модификатором;

    • H – представляет передаваемую переменную в ASCII-символах в шестнадцатеричном формате или преобразует ASCII-строку из шестнадцатеричного формата в принимаемую переменную. Количество символов задается модификатором;

    • F – представляет передаваемую переменную в ASCII-символах в десятичном формате со знаком, разделителем целой и дробной части числа (точкой). Строка имеет фиксированное число символов, заданное модификатором. Для принимаемых переменных производит обратное преобразование из ASCII-строки в число;

    • S – осуществляет прямое копирование из передаваемой строковой переменной в строку запроса числа символов, заданного модификатором или обратное копирование из строки ответа в принимаемую переменную строкового типа;

    • * – задает в строке ответа набор символов, которые надо пропустить. Количество символов может быть задано модификатором;

    • + – вставляет в строку запроса контрольную сумму или получает ее в строке ответа. Контрольная сумма вычисляется путем сложения с переполнением по модулю 256. Данное действие не может иметь модификатора;

    • % – вставляет в строку запроса контрольную сумму или получает ее в строке ответа. Контрольная сумма вычисляется по восьмибитному полиному (DOW-CRC). Данное действие не может иметь модификатора.

    Примечание
    Во время работы ПЛК по протоколу DCON есть три варианта работы: без расчета контрольных сумм, с расчетом контрольных сумм путем сложения значений всех символов и с расчетом контрольных сумм восьмибитовых. Вариант работы пользователь выбирает в соответствии с тем, какой вариант расчета контрольной суммы используется в опрашиваемом приборе.

    Используются следующие алгоритмы преобразования:

    • при формировании запроса – все символы вне спецкоманд копируются в строку запроса без изменения, спецкоманды заменяются на значения передаваемых (выходных) переменных. Значения переменных кодируются в формате, заданном действием, число символов соответствует модификатору;

    • при разборе ответа – все символы вне спецкоманд сравниваются с соответствующими позициями ответа и, при нахождении различия, вырабатывается сообщение об ошибке. Данные в позициях ответа, соответствующих спецкомандам, преобразуются и сохраняются в соответствующих принимаемых (входных) переменных.

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

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

Настройка входов и выходов подмодуля

После задания значений параметров подмодуля «Universal DCON Device» к нему требуется подключить каналы, задающие входные параметры (параметры, значение которых Мастер запрашивает у Slave-устройств) и выходные параметры (значения, которые Мастер передает – записывает – в Slave устройства) подмодуля.

Каналы добавляются выбором команды Добавить подэлемент → <Наименование подэлемента> контекстного меню строки подмодуля «Universal DCON Device».

В подмодуль «Universal DCON Device» можно добавить каналы из таблицы ниже.

Каналы (переменные) могут принадлежать следующим типам: REAL (32 бит, целое беззнаковое, с плавающей точкой или строка), STRING (16 байтовая строка), 8, 16 или 32 бит.

Типы каналов модуля «Universal DCON Device»
КаналРазмер в памятиНаправление пересылки данных
8-bit input8 битЧтение
16-bit input16 бит
32-bit input

32 бита

Float input
String input

16 байт (строка)

8-bit input8 битЗапись
16-bit input16 бит
32-bit input

32 бита

Float input
String input

16 байт (строка)

Тип и порядок расположения входных и выходных переменных в модуле должны соответствовать строкам команд в полях «Request format» и «Good response format» (см. выше).

Примеры настройки модуля DCON (Master) для опроса устройств ввода-вывода представлены в приложении Примеры настройки опроса для модуля «DCON (Master)».

Модуль «Owen (Master)»

Модуль «Owen (Master)» используется для работы контроллера в режиме Мастера сети, т. е. для опроса и контроля других устройств, работающих в сети по протоколу ОВЕН в подчиненном режиме (Slave) – например, модули ввода-вывода, панели оператора, частотные преобразователи и т. д. (протокол предназначен для описания процесса обмена информацией между приборами компании «ОВЕН» и между приборами и ПК на базе сети RS-485).

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

Во время установки модуля «Owen (Master)» следует выбрать коммуникационный интерфейс для обмена данными с другими устройствами, добавить и настроить требуемые переменные.

Параметры модуля:

  • Name – имя элемента, см. раздел;

  • Max response delay, ms (Максимальное время задержки ответа, мс) – время, за которое опрашиваемый прибор должен ответить на запрос Owen (Master). Если прибор не отвечает, то считается, что прибор отключен или произошел обрыв линии связи. Диапазон значений от 0 до 32000, значение по умолчанию – 50;

  • Visibility (Видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Graphic
Каналы и параметры модуля «Owen (Master)»

Во время опроса модулем «Owen (Master)» подчиненных устройств информация о ходе обмена записывается в соответствующих каналах его переменных.

Каналы модуля:

  • Last address (Последний адрес) – адрес последнего прибора, по которому обращался Owen (Master). При использовании 8 бит адреса – восьмибитный адрес при отображении умножается на 23 (т. е. на 8), при 11 – не умножается;

  • Last error (Код последней ошибки) – код ошибки, которая произошла при последнем опросе;

  • Last Hash (Последний Hash-код) – hash-код параметра, который фигурировал в последнем опросе;

  • Start/Stop (Старт/Стоп) – используется для управления включением/выключением работы модуля мастера: если в канал записывается значение 0x00FF, то происходит старт работы модуля, если же в канал записано значение 0x00FE, то происходит его остановка и прекращение всех посылок в сеть. Если модуль уже запущен, то повторная запись в канал значения 0x00FF приводит к внеочередному запросу очередной переменной протокола ОВЕН.

Коды ошибок работы ПЛК и пояснения к ним представлены в приложении Сообщения об ошибках в ПЛК.

Настройка коммуникационных интерфейсов

Во время добавлении модуля «OWEN (Master)» в конфигурацию ПЛК в состав модуля уже подключен порт Debug RS-232 (см. рисунок). Если необходимо использовать другой коммуникационный интерфейс, порт по умолчанию можно заменить требуемым последовательным портом или модемом (выбрать команду Заменить элемент → <Элемент> контекстного меню строки «Debug RS-232»).

Graphic
Выбор коммуникационных интерфейсов
Настройка входов и выходов

После задания значений параметров модуля «OWEN (Master)» к нему требуется подключить каналы, задающие входные параметры (параметры, значение которых Мастер запрашивает у Slave-устройств) и выходные параметры (значения, которые Мастер передает – записывает в Slave устройства) модуля.

Каналы добавляются выбором команды Добавить подэлемент → <Наименование подэлемента> контекстного меню строки «OWEN (Master)».

Graphic
Добавление каналов ввода-вывода

При добавлении канала в «OWEN (Master)» в дерево конфигурации добавляется подкаталог, содержащий внутри себя канал, в котором и отображаются полученное/передаваемое по сети значение.

Graphic
Каналы и параметры переменной

В модуле« Owen (Master)» могут быть использованы следующие типы переменных:

  • для чтения («Listen»);

  • для записи («Write»);

  • для чтения («Listen») с дополнительным командным управляющим каналом («Comm»);

  • для записи («Write») с дополнительным командным управляющим каналом («Comm»).

Переменные различаются по типу данных:

  • Float variable – число с плавающей точкой;

  • Float variable + time – число с плавающей точкой с модификатором времени;

  • Unsigned variable – целочисленная переменная;

  • Unsigned variable + time – целочисленная переменная с модификатором времени;

  • String variable – строковая переменная, максимальная длина – 15 символов, в соответствии со стандартом протокола ОВЕН;

  • String variable + time – строковая переменная с модификатором времени;

  • Time variable – позволяет передать время, в протоколе ОВЕН при передаче времени данные имеют следующий формат: «год:месяц:день:час:минута:секунда:миллисекунда».

Особенности переменных типа Unsigned

Переменные типа «Unsigned» позволяют пользователю передавать любые данные в любом произвольном (в том числе собственном специализированном) формате. В переменную типа «Unsigned» командой Добавить подэлемент (Insert element) контекстного меню вставляются переменные длиной 1, 2 или 4 байта. Допускается вставить не более четырех переменных суммарной длинной не более 16 байт.

Параметры переменных протокола ОВЕН

Параметры переменных протокола ОВЕН (общие для всех типов переменных):

  • Name – имя элемента, см. раздел;

  • Address Length (Длина адреса устройства) – значения выбираются из списка «8 bit» и «11 bit», значение по умолчанию – «8 bit»;
  • Address (Адрес устройства) – диапазон значений от 0 до 255 или от 0 до 2048, в зависимости от размера адреса, значение по умолчанию – 0;

  • Hash name (Сетевое имя переменной) – сетевое имя переменной. Имена переменных ведомых приборов указываются в руководствах по эксплуатации этих приборов. Вводимое имя преобразуется в ПЛК в hash-код, который используется при обмене по сети RS-485;

  • Index (Индекс прибора) – индекс прибора. В параметре «Use a index? (Использовать индекс?)» задают использование индекса. В совокупности параметры применяются для управления конфигурационными параметрами ПЛК, определяют наличие линейного индекса у параметра и задают значение индекса. Диапазон значений от 0 до 65535, значение по умолчанию – 0;

  • Use a index? (Использовать индекс?) – значения выбираются из списка «yes» и «no», значение по умолчанию – «no»;

  • Polling time, ms (Период опроса устройства, мс) – диапазон значений от 20 до 5000, значение по умолчанию – 100;

    Примечание
    Следует учитывать физические ограничения сети: скорость информационного обмена в сети ограничена, и если задается большое количество переменных, значения которых часто запрашиваются, то информация будет поступать к прибору с запаздыванием. Поэтому требуется заранее просчитать пропускную способность сети, и, соответственно, уменьшить частоту опроса или опрашивать по разным линиям. При работе в режимах «Value change (По изменению значения переменных)» и «By Command (По команде)» (режим задается значением параметра «Work mode (Режим работы)», см. ниже), не следует задавать значение параметра «Polling time» слишком маленьким. По умолчанию его значение 100 мс. Если на реальном проекте будет замечено, что модуль «Owen (Master)» при загрузке программы или при выборе команды «Login» формирует лишние пакеты и/или запросы, то значение параметра следует увеличить (до 200, 300 и более мс), вплоть до прекращения появления лишних пакетов.
  • Work mode (Режим работы) – режим работы модуля «Owen (Master)» при опросе внешних устройств (для переменных различных типов список допустимых значений различен, см. примечание ниже):

    • Polling time (По времени) – контролируемые устройства опрашиваются с периодичностью, заданной в параметре «Polling time (Период опроса устройства)»;

    • Value change (По изменению значения переменных) – модуль «Owen (Master)» генерирует запрос устройству при изменении значений выходных переменных модуля;

    • Both (Оба варианта» – опрос производится с временным интервалом, заданным в параметре «Polling time» и тогда, когда изменяются значения выходных переменных;

    • By Command (По команде) – производится однократная посылка запроса, когда в командный канал («Command») переменной, имеющей такой канал, записывается значение 0x00FF.

      Примечание

      Для считываемых переменных (тип «Listen») доступен только режим «Polling time (По времени)».

      Для записываемых переменных (тип «Write») доступны режимы «Polling time» (По времени), «Value change» (По изменению значения переменных) и «Both» (По времени и по изменению значения переменных).

      Для переменных с командным каналом (тип «Command») доступен режим «Command (По команде)». В этом режиме управление осуществляется следующим образом: первая посылка значения 0x00FF в командный канал включает функционирование этой переменной, повторная посылка значения 0x00FF инициирует проведение опроса. Аналогично опрос инициируется для переменных с командным каналом при работе в других режимах. При посылке в командный канал значения 0x00FE переменная выключается из цикла опроса мастера.

  • Repiat Counter – число повторов запроса при ошибке связи;

  • Visibility (Видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Для переменных типов «Float variable» (число с плавающей точкой), «Float variable + time» (число с плавающей точкой с модификатором времени) всех модификаций («Listen» – предназначенные для чтения, «Write» – предназначенные для записи, «Command» – имеющие дополнительный командный управляющий канал) – задаются параметры «Float Type» (Тип числа с плавающей точкой), который уточняет вид переменной типа Float и «Precision», который задает точность (определяет положение десятичной точки):

  • Float Type (тип числа с плавающей точкой) – значение выбирается пользователем из списка (значение по умолчанию – «Float»):

    • Float – число с плавающей точкой в формате IEEE, обычно используемое в программировании, в CODESYS называется Real, имеет длину 4 байта;

    • Float-Pic – переменная размером в 3 байта, и один байт из мантиссы удаляется, т. е. число с меньшей точностью, но и размер переменной (количество байт) меньше;

    • Fix point binary – число с фиксированной точкой в двоичном виде; например, число 3 будет записано в виде «0011». Положение десятичной точки для параметров с фиксированной точкой задается параметром «Precision (Точность)»;

    • Fix point BCD – число с фиксированной точкой в двоично-десятичном виде (двоично-десятичный код – форма записи целых чисел, когда каждый десятичный разряд числа записывается в виде его четырехбитного двоичного кода. Например, число 311 будет записано в виде «0011 0001 0001». Положение десятичной точки для параметров с фиксированной точкой задается параметром «Precision» (Точность).

  • Precision (Точность) – точность (определяет положение десятичной точки) для параметров с фиксированной точкой: если выбирается значение точности «2», то число «10,12» так и будет передано. При значении «1» – «10,1», при значении «3» – «10,120». Диапазон значений от 0 до 7, значение по умолчанию – 2.

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

Примеры задания параметров для различных случаев применения ПЛК представлены в приложении Примеры настройки опроса переменных по протоколу ОВЕН.

Модуль «Owen (Slave)»

Модуль «OWEN (Slave)» используется для работы контроллера в сети в подчиненном режиме (slave), т. е. для ответа на запросы устройства, работающего в режиме Master. Во время установки модуля «OWEN (Slave)» следует выбрать коммуникационный интерфейс для обмена данными с другими устройствами, добавить и настроить требуемые переменные. Модуль «OWEN (Slave)» обеспечивает обмен информацией по протоколу ОВЕН (протокол предназначен для описания процесса обмена информацией между приборами компании «ОВЕН» и между приборами и ПК на базе сети RS-485).

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

Модуль «OWEN (Slave)» – составной и имеет в своем составе подмодуль «OWEN (FIX)» (см. раздел).

Параметры модуля:

  • Name – имя элемента, см. раздел;

  • Slave Name (Имя прибора) – имя ПЛК в сети протокола ОВЕН. Значение по умолчанию – «max 8 sym» (т. е. максимально 8 символов);

  • Address Length (Длина адреса устройства) – длина адреса в битах. Приборы разработки компании «ОВЕН» поддерживают два варианта адресов – 8-ми и 11-ти битовые (задается тот же вариант адреса, что выставлен на управляющей стороне: значение длины адреса Master и Slave-устройств должны совпадать). Значения выбираются из списка «8 bit» и «11 bit», значение по умолчанию – «8 bit»;

  • Address (Адрес устройства) – адрес прибора, по которому посылаются запросы. Параметр имеет значения в диапазоне от 0 до 2048 значение по умолчанию – 1;

  • Visibility (Видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Graphic
Параметры модуля «Owen (Slave)»
Подмодуль «OWEN (FIX)»
Настройка коммуникационных интерфейсов

Во время добавления модуля «OWEN (Slave)» в конфигурацию ПЛК в состав модуля уже подключен подмодуль «OWEN (FIX)», к которому, в свою очередь, подключается коммуникационный интерфейс (см. рисунок).

В ПЛК предусмотрена возможность обмена данными по следующим интерфейсам:

  • RS-232;

  • RS-485;

  • TCP (Ethernet).

Для работы с разными коммуникационными интерфейсами в ПЛК предусмотрены соответствующие подмодули (подэлементы). Подэлементы подключаются выбором команды Добавить подэлемент → <Имя подэлемента> контекстного меню (см. рисунок).

Во время работы ПЛК в режиме «Ведомый (slave)» возможно использование нескольких разных портов, т. е. опрос может вестись по разным интерфейсам. Таким образом, подключая несколько разных портов, можно один модуль соединить с разными Мастерами по разным физическим линиям (и интерфейсам).

Graphic
Выбор интерфейса связи

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

Пример
Graphic
Подключение нескольких портов
Настройка входов/выходов подмодуля

После задания значений параметров подмодуля «OWEN (Slave)» к нему следует подключить каналы входа/выхода.

Каналы добавляются выбором команды Добавить подэлемент → <Наименование подэлемента> контекстного меню строки «OWEN (Slave)».

В модуле «Owen (Slave)» могут быть использованы только переменные для чтения (обозначены «Listen»), использующие следующие типы данных:

  • Float variable – число с плавающей точкой;

  • Float variable + time – число с плавающей точкой с модификатором времени;

  • Unsigned variable – целочисленная переменная;

  • Unsigned variable + time – целочисленная переменная с модификатором времени;

  • String variable – строковая переменная, максимальная длина – 15 символов, в соответствии со стандартом протокола ОВЕН;

  • Time variable – позволяет передать время; в протоколе ОВЕН при передаче времени данные имеют следующий формат: год:месяц:день:час:минута:секунда:миллисекунда.

Переменные, которыми будет обмениваться ПЛК по протоколу ОВЕН, выбираются командой Добавить Подэлемент (Append Subelements) контекстного меню строки «OWEN (slave)».

Graphic
Выбор переменных для обмена ПЛК по протоколу ОВЕН
Параметры переменных протокола ОВЕН

Параметры переменных протокола ОВЕН, общие для всех типов переменных:

  • Name – имя элемента, см. раздел;

  • Address Length (длина адреса устройства) – значения выбираются из списка «8 bit» и «11 bit», значение по умолчанию – «8 bit»;
  • Address (адрес устройства) – диапазон значений от 0 до 255 или от 0 до 2048, в зависимости от размера адреса, значение по умолчанию – 0;

  • Hash name (сетевое имя переменной) – сетевое имя переменной. Имена переменных ведомых приборов указываются в руководствах по эксплуатации этих приборов. Вводимое имя преобразуется в ПЛК в hash-код, который используется при обмене по сети RS-485;

  • Index (индекс прибора) – индекс прибора, в параметре «Use a index? (использовать индекс?)» задают использование индекса. В совокупности параметры применяются для управления конфигурационными параметрами ПЛК, определяют наличие линейного индекса у параметра и задают значение индекса. Диапазон значений от 0 до 65535, значение по умолчанию – 0;

  • Use a index? (использовать индекс?) – значения выбираются из списка «yes» и «no», значение по умолчанию – «no»;

  • Polling time, ms (период опроса устройства, мс) – диапазон значений от 20 до 5000, значение по умолчанию – 100;

    Примечание
    Следует учитывать физические ограничения, накладываемые характеристиками сети: скорость информационного обмена в сети ограничена, и если задается большое количество переменных, значения которых часто запрашиваются, то информация будет поступать к прибору с запаздыванием. Поэтому требуется заранее просчитать пропускную способность сети, и, соответственно, уменьшить частоту опроса, или производить опрос по разным линиям и/или др. При работе в режимах «Value change» (По изменению значения переменных) и «By Command (По команде)» (режим задается значением параметра «Work mode» (Режим работы), см. ниже), нельзя задавать значение параметра «Polling time» слишком маленьким. По умолчанию его значение 100 мс. Если на реальном проекте будет замечено, что модуль «Owen (Master)» при загрузке программы или при выборе команды «Login» формирует лишние пакеты и/или запросы, то значение параметра следует увеличить (до 200, 300 и более мс), вплоть до прекращения появления лишних пакетов.
  • Work mode (режим работы) – режим работы модуля «Owen (Master)» при опросе внешних устройств (для переменных различных типов список допустимых значений различен, см. примечание ниже):

    • Polling time (по времени) – контролируемые устройства опрашиваются с периодичностью, заданной в параметре «Polling time» (Период опроса устройства);

    • Value change (по изменению значения переменных) – модуль «Owen (Master)» генерирует запрос устройству при изменении значений выходных переменных модуля;

    • Both (оба варианта» – опрос производится с временным интервалом, заданным в параметре «Polling time» и тогда, когда изменяются значения выходных переменных;

    • By Command (по команде) – производится однократная посылка запроса, когда в командный канал («Command») переменной, имеющей такой канал, записывается значение 0x00FF.

    Примечание

    Для считываемых переменных (тип «Listen») доступен только режим «Polling time (По времени)».

    Для записываемых переменных (тип «Write») доступны режимы «Polling time (По времени)», «Value change (По изменению значения переменных)» и «Both (По времени и по изменению значения переменных)».

    Для переменных с командным каналом (тип «Command») доступен режим «Command (По команде)». В этом режиме управление осуществляется следующим образом: первая посылка значения 0x00FF в командный канал включает функционирование этой переменной, повторная посылка значения 0x00FF инициирует проведение опроса. Аналогично опрос инициируется для переменных с командным каналом при работе в других режимах. При посылке в командный канал значения 0x00FE переменная выключается из цикла опроса мастера.

  • Repiat Counter – число повторов запроса при ошибке связи;

  • Visibility (Видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Для переменных типов «Float variable» (число с плавающей точкой), «Float variable + time» (число с плавающей точкой с модификатором времени) всех модификаций («Listen» – предназначенные для чтения, «Write» – предназначенные для записи, «Command» – имеющие дополнительный командный управляющий канал) – задаются параметры «Float Type (Тип числа с плавающей точкой)», который уточняет вид переменной типа Float и «Precision», который задает точность (определяет положение десятичной точки):

  • Float Type (тип числа с плавающей точкой) – значение выбирается пользователем из списка (значение по умолчанию – «Float»):

    • Float – число с плавающей точкой в формате IEEE, в CODESYS называется Real, имеет длину 4 байта;

    • Float-Pic – переменная размером в 3 байта, и один байт из мантиссы удаляется, т. е. число с меньшей точностью, но и размер переменной (количество байт) меньше;

    • Fix point binary – число с фиксированной точкой в двоичном виде. Например, число 3 будет записано в виде «0011». Положение десятичной точки для параметров с фиксированной точкой задается параметром Precision (Точность);

    • Fix point BCD – число с фиксированной точкой в двоично-десятичном виде (двоично-десятичный код – форма записи целых чисел, когда каждый десятичный разряд числа записывается в виде его четырехбитного двоичного кода. Например, число 311 будет записано в виде «0011 0001 0001». Положение десятичной точки для параметров с фиксированной точкой задается параметром Precision (Точность).

  • Precision (Точность) – точность (определяет положение десятичной точки) для параметров с фиксированной точкой: если выбирается значение точности «2», то число «10,12» так и будет передано. При значении «1» – «10,1», при значении «3» – «10,120». Диапазон значений от 0 до 7, значение по умолчанию – 2.

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

Примеры задания параметров для различных случаев применения ПЛК представлены в приложении Примеры настройки опроса переменных по протоколу ОВЕН.

Graphic
Параметры переменных протокола ОВЕН

Модуль «Owen (Spy)»

Модуль «OWEN (Spy)» используется для мониторинга информационных обменов в сети, в которую включен ПЛК. Модуль не отвечает на запросы Мастера сети, а только прослушивает обмен данными в сети RS-485 и может быть настроен таким образом, что в ходе опроса Мастером сети какого-либо устройства, ответ этого устройства прослушивается модулем «OWEN (Spy)» и записывается им во встроенную переменную. Этот механизм может быть использован, если ПЛК требуется интегрировать в существующую сеть: получать из нее данные для последующей обработки и выполнения заданных действий. Использование модуля «OWEN (Spy)» позволяет не останавливать работу системы в ходе интеграции: ПЛК прослушивает требуемые данные и выполняет запрограммированные действия.

Во время установки модуля «OWEN (Spy)» следует выбрать коммуникационный интерфейс для обмена данными с другими устройствами, добавить и настроить требуемые переменные. Модуль «OWEN (Spy)» обеспечивает обмен информацией по протоколу ОВЕН (протокол предназначен для описания процесса обмена информацией между приборами компании «ОВЕН» и между приборами и ПЭВМ на базе сети RS-485).

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

Модуль «OWEN (Spy)» – составной и имеет в своем составе подмодуль «OWEN [FIX]» (см. раздел).

Модуль имеет единственный параметр «Visibility (Видимость)», который задает видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Подмодуль «OWEN (FIX)»
Настройка коммуникационных интерфейсов

При добавлении модуля «OWEN (Spy)» в конфигурацию ПЛК, в состав модуля уже подключен подмодуль «OWEN (FIX)», к которому подключается коммуникационный интерфейс.

В ПЛК предусмотрена возможность обмена данными по интерфейсам RS-232 и RS-485.

Для работы с разными коммуникационными интерфейсами в ПЛК предусмотрены соответствующие подмодули (подэлементы). Подэлементы подключаются выбором команды Добавить подэлемент → <Имя подэлемента> контекстного меню (см. рисунок). Допустимо использование нескольких разных портов, т. е. опрос может вестись по разным интерфейсам.

Graphic
Выбор интерфейса связи

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

Пример
Graphic
Подключение нескольких портов
Настройка входов и выходов модуля

После задания значений параметров подмодуля «OWEN (Spy)» к нему следует подключить каналы, задающие входные параметры (параметры, значение которых модуль запрашивает у сети) модуля.

В модуле «Owen (Spy)» могут быть использованы только переменные для чтения (обозначены «Listen»), использующие следующие типы данных:

  • Float variable – число с плавающей точкой;

  • Float variable + time – число с плавающей точкой с модификатором времени;

  • Unsigned variable – целочисленная переменная;

  • Unsigned variable + time – целочисленная переменная с модификатором времени;

  • String variable – строковая переменная, максимальная длина – 15 символов, в соответствии со стандартом протокола ОВЕН;

  • Time variable – позволяет передать время, в протоколе ОВЕН при передаче времени данные имеют следующий формат: «год:месяц:день:час:минута:секунда:миллисекунда».

Переменные, которыми будет обмениваться ПЛК по протоколу ОВЕН, выбираются командой Добавить Подэлемент (Append Subelements) контекстного меню строки «OWEN (Spy)».

При добавлении канала в «OWEN (Spy)» в дерево конфигурации добавляется подкаталог, содержащий внутри себя канал, в котором отображаются полученное/передаваемое по сети значение (см. рисунок).

Graphic
Добавление каналов ввода/вывода
Параметры переменных протокола ОВЕН

Параметры переменных протокола ОВЕН, общие для всех типов переменных:

  • Name – имя элемента, см. раздел;

  • Address Length (Длина адреса устройства) – размер адреса ведомого устройства в битах, ответ которого необходимо прослушать, значения выбираются из списка «8 bit» и «11 bit», значение по умолчанию – «8 bit»;
  • Address (Адрес устройства) – адрес ведомого устройства, ответ которого требуется прослушать, диапазон значений от 0 до 255 или от 0 до 2048, в зависимости от размера адреса, значение по умолчанию – 0;

  • Hash name (Сетевое имя переменной) – сетевое имя переменной ведомого устройства, опрашиваемого Мастером сети. Имена переменных ведомых приборов указываются в руководствах по эксплуатации этих приборов. Вводимое имя преобразуется в ПЛК в hash-код, который используется при обмене по сети RS-485;

  • Index (Индекс прибора) – индекс прибора, в параметре «Use a index? (Использовать индекс?)» задают использование индекса. В совокупности параметры применяются для управления конфигурационными параметрами ПЛК, определяют наличие линейного индекса у параметра и задают значение индекса. Диапазон значений от 0 до 65535, значение по умолчанию – 0;

  • Use a index? (Использовать индекс?) – значения выбираются из списка «yes» и «no», значение по умолчанию – «no»;

  • Polling time, ms (Период опроса устройства, мс) – модулем «OWEN (Spy)» не используется;

  • Work mode (Режим работы) – режим работы модуля при опросе внешних устройств: «Polling time (По времени)»;

  • Repiat Counter – число повторов запроса при ошибке связи;

  • Visibility (Видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Для переменных типов «Float variable» (число с плавающей точкой), «Float variable + time» (число с плавающей точкой с модификатором времени) всех модификаций («Listen» – предназначенные для чтения, «Write» – предназначенные для записи, «Command» – имеющие дополнительный командный управляющий канал) – задаются параметры «Float Type» (тип числа с плавающей точкой), который уточняет вид переменной типа Float и «Precision», который задает точность (определяет положение десятичной точки):

  • Float Type (тип числа с плавающей точкой) – значение выбирается пользователем из списка (значение по умолчанию – «Float»):

    • Float – число с плавающей точкой в формате IEEE, в CODESYS называется Real, имеет длину 4 байта;

    • Float-Pic – переменная размером в 3 байта, и один байт из мантиссы удаляется, т. е. число с меньшей точностью, но и размер переменной (количество байт) меньше;

    • Fix point binary – число с фиксированной точкой в двоичном виде. Например, число 3 будет записано в виде «0011». Положение десятичной точки для параметров с фиксированной точкой задается параметром Precision (Точность);

    • Fix point BCD – число с фиксированной точкой в двоично-десятичном виде (двоично-десятичный код – форма записи целых чисел, когда каждый десятичный разряд числа записывается в виде его четырехбитного двоичного кода. Например, число 311 будет записано в виде «0011 0001 0001». Положение десятичной точки для параметров с фиксированной точкой задается параметром Precision (Точность).

  • Precision (Точность) – точность (определяет положение десятичной точки) для параметров с фиксированной точкой: если выбирается значение точности «2», то число «10,12» так и будет передано. При значении «1» – «10,1», при значении «3» – «10,120». Диапазон значений от 0 до 7, значение по умолчанию – 2.

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

Примеры задания параметров для различных случаев применения ПЛК представлены в приложении Примеры настройки опроса переменных по протоколу ОВЕН.

Graphic
Параметры переменных протокола ОВЕН

Модуль статистики Statistic

Модуль статистики (Statistic) предназначен для выдачи в пользовательскую программу информационные данные о функционировании ПЛК.

Модуль не имеет параметров и содержит следующие каналы (см. рисунок):

  • Last cycle time in mks (Значение последнего цикла работы ПЛК в мкс) – позволяет пользователю оценить объем вычислительных ресурсов, который требуется для работы написанной им программы. Если цикл оказывается больше, заданного в параметрах работы ПЛК параметра MinCycleLength, то это означает, что пользовательская программа слишком требовательна к ресурсам и параметр MinCycleLength желательно увеличить, чтобы циклы не перекрывались;

  • Temp inside PLC (Температура внутри ПЛК) – температура, замеренная датчиком внутри корпуса ПЛК (у разных моделей ПЛК температура может измеряться на разных платах, определяется интенсивностью нагрева конкретных плат). Характеристика косвенно свидетельствует о рабочем состоянии ПЛК;

  • Power status (Состояние питания)– логическая переменная, имеющая значение TRUE при наличии питания от сети и значение FALSE в случае отсутствия питания или аварии по питанию;

Примечание

Сейчас переменная Power status всегда имеет значение TRUE и не настраивается. Эта переменная оставлена в таргет-файлах для обратной совместимости с уже существующими пользовательскими проектами.

  • CPU is overloaded, optimize your program or increase PLC cycle (центральный процессор перегружен, оптимизируйте вашу программу или увеличьте время цикла ПЛК) – логическая переменная, имеющая значение TRUE, если цикл оказывается больше, заданного в параметрах работы ПЛК параметра MinCycleLength, в случае выполнения программы в рамках заданного времени цикла переменная имеет значение FALSE;

  • Free processor resource mks in 1 cycle (свободное процессорное время за один цикл в мкс) – значение этой переменной соответствует времени в цикле исполнения программы, не занятому исполнением программы.

Graphic
Каналы модуля статистики (Statistic)

Модуль «Universal network module» (Универсальный сетевой модуль)

Универсальный сетевой модуль предназначен для организации универсального коммуникационного интерфейса ПЛК, выполняющего прием/передачу последовательности байт через встроенные порты контроллера (RS-232/RS-485/Ethernet). Подключение модуля резервирует область памяти ввода-вывода ПЛК, с которой будут выполняться функции, включенные в специализированную библиотеку дополнительных программных модулей UNM.lib (Universal Network Module).

Особенностью данной библиотеки (и, соответственно, модуля конфигурации ПЛК) является возможность работать одновременно с протоколами Modbus, DCON и ОВЕН на одном физическом интерфейсе.

Одновременная работа с разными протоколами позволяет создать модуль опроса устройства стандартными командами и в то же время выдавать в интерфейс и получать из интерфейса в нужное время произвольную последовательность байт. Например, если к порту RS-232 подключен модем, то до начала работы стандартного модуля опроса пользовательская программа позволит установить связь с удаленным устройством, используя «AT»-последовательности. После этого начнет работать модуль опроса устройства через стандартный протокол.

Описание функций библиотеки UNM.lib (Universal Network Module) см. в документе Библиотека UNM на странице CODESYS V2 на сайте owen.ru.

Модуль имеет один канал (Debug RS-232[SLOT]) и один параметр Видимость (Visibility), задающий видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Во время добавления модуля «Universal network module» (Универсальный сетевой модуль) в конфигурацию ПЛК в состав модуля уже подключен подмодуль «Debug RS-232[SLOT]», к которому подключается коммуникационный интерфейс (см. рисунок).

В ПЛК предусмотрена возможность обмена данными по интерфейсам:

  • RS-232;

  • RS-485;

  • TCP (Ethernet).

Для работы с разными коммуникационными интерфейсами в ПЛК предусмотрены соответствующие подмодули (подэлементы). Подэлементы подключаются выбором команды Заменить подэлемент → <Имя подэлемента> контекстного меню.

Graphic
Параметры и контекстное меню замены подэлементов Универсального сетевого модуля (Universal network module)

Модуль «Archiver» (Архиватор)

Модуль «Archiver» (Архиватор) используется для архивирования требуемых данных. Архивируемые данные могут храниться на Flash-диске ПЛК и извлекаться оттуда при необходимости, или выводиться через коммуникационный интерфейс (например, данные могут быть распечатаны на принтере, подключенном к ПЛК через последовательный интерфейс). К модулю «Archiver» (Архиватор) может быть добавлен подмодуль архивации информации в файл «File Output» (см. раздел).

Перечень архивируемых переменных (внесение переменных в список для последующего архивирования) создается вызовом команды Добавить подэлемент (Append Subelement) контекстного меню строки «Archiver».

В список могут быть добавлены переменные следующих типов:

  • 8-битная;

  • 16-битная;

  • 32-битная;

  • число с плавающей точкой («Float»);

  • текстовая строка («String») – максимум 15 символов + завершающий нуль.

После добавления переменной любого типа в ее параметрах следует задать имя архивируемой переменной – Variable Name. Этим же именем переменная будет именоваться в архивном файле (см. рисунок).

Graphic
Внесение переменных в список архивируемых
Graphic
Именование переменных в список архивируемых

Параметры передачи архивных данных (режим передачи, формат данных) задаются в параметрах модуля:

  • Name – имя элемента, см. раздел;

  • Archive Mode (Режим проведения архивации) – режим архивации. Значения выбираются из списка:

    • By timer (по таймеру) – данные записываются в архив с заданным периодом архивации, значение по умолчанию;

    • By change value (по изменению значений) – если какая-то переменная, включенная в список архивации, меняет свое значение, то происходит ее архивация, причем только этой переменной. Изменения могут записываться не чаще, чем раз в пять секунд;

    • By command (по команде) – если в переменной Status модуля архивации записана специальная команда, то происходит старт архивации, либо ее остановка (0x00FE – «стоп», 0x00FF – «старт»).

      Примечание

      Действия архиватора в ответ на команды сводятся к следующему:

      • во время загрузки проекта модуль архивации находится в режиме «Работает»;

      • повторная команда «Старт» приводит к немедленному акту архивации;

      • если архиватор остановлен, то команда «Старт» запустит его.

  • Type of archive (тип данных архивации) – тип записи архивируемых данных. Значения выбираются из списка:

    • ASCII only – данные выдаются в текстовом виде, удобном для чтения пользователя, для печати и т. п. (значения по умолчанию);

    • Mixed – данные выдаются в смешанном виде: запись имеет заголовок архива с именами переменных, временные данные в удобном для чтения виде, а все архивируемые переменные записываются в бинарном виде.

  • Period of Archiving (период архивации, с) – периодичность обновления данных архива при работе модуля в режиме «по таймеру». Диапазон значений от 5 до 65535 секунд, значение по умолчанию – 60;

  • Archive Name (имя архива) – имя архива, которое записывается в начале файла;

  • Comment (комментарий архива) – текст комментария к архиву. Здесь может быть введена информация, позволяющая в будущем идентифицировать конкретный архив по дополнительным признакам;

  • Start time (время начала архивации) – время старта архивации;

  • Stop time (время остановки архивации) – время остановки архивации;

    Внимание
    Параметры «Start time (Время начала архивации)» и «Stop time (Время остановки архивации)», задающие временные рамки процесса архивирования, независимы друг от друга, т. е. один или оба параметра могут быть не заданы. Для параметров определен формат, в котором они должны задаваться – чч:мм:сс, – с обязательным использованием полноформатного задания величин и разделителя «двоеточие». При неполном формате и/или использовании иного разделителя программа проигнорирует информацию, как ошибочную.
  • On Sunday (воскресенье)…On Saturday (суббота) (всего семь параметров) – назначается день (дни) недели, когда будет производиться архивация. Значения выбираются из списка «yes» и «no», значение по умолчанию – «yes»;

  • Visibility (видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

    Внимание
    Между всеми условиями старта и остановки архивирования установлен приоритет . Главный приоритет имеет переменная File Status: если в ней записана команда «стоп», то операция в любом случае прекратится, если «старт» – она будет выполнена минимум один раз. Следующим по приоритету идет день недели и, далее, время старта и время останова процедуры архивации.
Graphic
Параметры модуля
Настройка коммуникационных интерфейсов

По умолчанию к модулю «Archiver (Архиватор)» подключен подмодуль интерфейсного порта, через который передаются архивные данные. Интерфейсный порт может быть заменен на требуемый выбором команды «Replace element» (Заменить элемент) контекстного меню (см. рисунок).

Настройка последовательных интерфейсов, интерфейса TCP, модема, и выгрузка архива в файл (порт «File Output») описана в разделе.

В модуле «Archiver (Архиватор)» имеется канал «Status», который отображает статус архива и коды возникающих ошибок. Коды ошибок ПЛК представлены в приложении Сообщения об ошибках в ПЛК.

Graphic
Смена интерфейсного порта
Подмодуль архивации информации в файл («File output»)

Подмодуль интерфейсного порта «File output» задает параметры архивации информации в файл и является подчиненным подмодулем модуля «Архиватор».

Подмодуль «File output» имеет собственную переменную «File Status», в которой сохраняется информация о работе подмодуля. Коды ошибок ПЛК представлены в приложении Сообщения об ошибках в ПЛК.

Параметры подмодуля:

  • Name – имя элемента, см. раздел;

  • File name (имя файла) – имя файла, в который будет записываться архивная информация. Значение по умолчанию – «File_name.log»;

  • Mode (режим работы модуля) – вариант архивации информации:

    • Append to end (добавить в конец) – информация добавляется в конец файла, и, как только файл переполняется, запись прекращается. Файл имеет ограничение по размеру (в байтах) или по количеству записей (задаваемому в параметре Max file size), значение по умолчанию;

    • Rewrite on start (перезапись при старте) – старый файл стирается во время старта ПЛК или загрузки новой конфигурации и начинается запись файла с самого начала;

    • Rewrite on oversize (перезапись старого файла при превышении заданного размера) – файл стирается при достижением им заданного размера, и запись начинается сначала;

    • Shift Mode (режим сдвига) – вариант работы, при котором, при достижении файлом заданного размера, вторая (более поздняя по времени записи) половина файла переносится в начало, запись продолжается, дописывается, т. е. остаются самые последние записи.

  • Type (тип) – способ подсчета размера файла:

    • Text (текстовый режим) – по количеству записей, каждая запись заканчивается символом перевода каретки;

    • Binary (цифровой или двоичный режим) – по размеру файла в байтах.

  • Max file size (размер записи) – ограничение размера записываемого файла, размер определяется в зависимости от типа (Type). Диапазон значений от 100 до 320000, значение по умолчанию – 500;

  • Visibility (видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Graphic
Параметры подмодуля «File output»

Модуль «Extended settings» (Расширенные настройки)

Модуль «Расширенные настройки» (Extended settings) служит для управления режимом работы подтяжки линий RS-485 интерфейсов (Физический мастер — физическое устройство расширения). При загрузке конфигурации значение записывается в канал модуля и может быть считано в программу ПЛК. Управление возможно как при старте, так и в ходе работы программы ПЛК. По умолчанию оба интерфейса RS-485 работают в режиме «Физический мастер».

Также в модуле «Extended settings» индицируется состояние батареи питания часов ПЛК.

Параметры модуля:

  • «Состояние батареи» (Batery discharged) – в зависимости от состояния батареи данный параметр принимает состояние: False (0) – батарея заряжена, True (1) – до окончания срока работы батарее не более 5 месяцев. Поле в модуле дублирует индикатор на лицевой панели и включается при снижении напряжения на батарее до 2,7 В. Часы ПЛК сохраняют работоспособность при снижении напряжения питания на батарее до 1,4 В. После включения индикатора «батарея разряжена» работа часов при нормальных условиях обеспечивается ещё на протяжении 6 месяцев;

  • «Подтягивающий резистор интерфейса RS 485-1» (RS 485-1 master mode) – значения выбираются из списка «master device» и «terminal device», значение по умолчанию – «master device». Значение выбирается в зависимости от режима работы по данному порту: «master device» – режим master и «terminal device» – режим slave на данном порте;

  • «Подтягивающий резистор интерфейса RS 485-2» (RS 485-2 master mode) – значения выбираются из списка «master device» и «terminal device», значение по умолчанию – «master device». Значение выбирается в зависимости от режима работы по данному порту: «master device» – режим master и «terminal device» – режим slave на данном порте;

Graphic
Параметры модуля «Extended settings»

Настройка коммуникационных интерфейсов модуля

У большинства модулей есть возможность подключения подмодуля интерфейсного порта, через который будут передаваться и/или считываться данные. Интерфейсный порт можно заменить на другой с помощью команды «Replace element» (Заменить элемент) контекстного меню.

Graphic
Смена интерфейсного порта модуля «ModBus (slave)»
Подмодули последовательных портов

Параметры последовательных портов Debug RS-232, RS-232, RS-485-1 и RS-485-2, используемых в ПЛК, идентичны (см. рисунок). Для конфигурирования меняется только название и физический порт, в котором происходит работа.

Нумерация последовательных портов для программировании
Последовательный портRS-485-1RS-232RS-485-2Debug RS-232
Программный номер порта COM0COM1COM2COM4
Graphic
Параметры последовательных портов

Параметры последовательного порта:

  • Name – имя элемента, см. раздел;

  • Communication speed (скорость передачи информации) – скорость передачи информации через последовательный порт. Значения выбираются из списка (2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600, 115200), значение по умолчанию – 115200;

  • Parity (проверка четности) – наличие бита четности и его значение (четность, нечетность). Значения выбираются из списка (EVEN, ODD, SPACE, MARK) значение по умолчанию – «NOPARITYCHECK» (отсутствие проверки четности);

  • Data Bits (количество бит данных) – количество значащих бит в одном байте посылке. Значения в диапазоне от 5 до 8 бит, значение по умолчанию – 8;

  • Stop Length (количество стоп-битов) – количество стоп-битов. Значения выбираются из списка (один, полтора или два стоп-бита), значение по умолчанию – один стоп-бит (Onestopbit);

  • Interface Type (тип интерфейса) – тип последовательного интерфейса, по которому осуществляется информационный обмен. Задается при выборе подэлемента (RS-232 или RS-485);

  • Frame Oriented (тип протокола обмена) – значения выбираются из списка «ASCII» и «RTU», значение по умолчанию – ASCII;

    Примечание

    В ПЛК используются следующие типы протоколов обмена: ориентированный на передачу текстовых символов ASCII и ориентированный на передачу потока байтов RTU.

    В ASCII-режиме информация передается последовательностью символов, и начало и окончание посылки имеют четко обозначенные специальные символы, обычно это – символы решетки, перевода строки и др.

    В RTU-режиме иная структура передачи информации: передаются байты, несущие полезную информацию, без какого-либо указания начальных и/или конечных границ (заголовочных и конечных байтов). Сама посылка и ее границы определяются по наличию разрыва. Если время разрыва превышает определенное время (например, для Modbus – время передачи 3,5 символов), устройство определяет, что посылка закончилась, началась другая посылка. Таким образом, посылки отделяются друг от друга и их можно идентифицировать.

  • Framing time (время, на которое необходимо задерживать ответ на запрос в мс) – временная задержка между последним байтом принятого пакета и первым байтом, передаваемым в ответ. Задержка бывает необходима для работы с устройствами с низкими скоростями информационного обмена. Рекомендуемый диапазон значений от 0 до 50 мс (для работы в режиме «slave»), значение по умолчанию – 0 (для работы в режиме «master»);

  • Visibility (видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Порт ТСР

Помимо последовательного порта в системе устройств может использоваться порт TCP.

Параметры порта TCP:

  • Name – имя элемента, см. раздел;

  • Remote Port (удаленный порт) – адрес удаленного порта. Значения устанавливаются в диапазоне от 0 до 65535, значение по умолчанию – 502;

  • Visibility (видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Примечание
Обращение мастера сети к ПЛК по Ethernet происходит по базовым сетевым настройкам ПЛК, заводским или пользовательским. Изменить сетевые настройки ПЛК можно в режиме «ПЛК-Браузер (PLC-Brauser)» (см. раздел). В данном случае модуль использует MAC-адрес и IP-адрес контроллера.
Graphic
Параметры порта TCP
Порт Empty

В ряде модулей, работающих в режиме master, также может использоваться порт Empty. Данный порт используется при передачи данных по Ethernet и для освобождения последовательных портов при работе по ТСР.

Подмодуль Cloud

Подмодуль Cloud используется для подключения контроллеров к облачному сервису OwenCloud. Доступ к облачному сервису осуществляется через подключение контроллера к локальной сети с доступом в Интернет. Для передачи данных используется протокол Modbus TCP.

Подробнее о подключении к облачному сервису OwenCloud см. раздел.

Параметры подмодуля Cloud:

  • Name – имя элемента, см. раздел;

  • CloudToken – уникальный ключ, который вводится в конфигурации устройства для соединения с облачным сервисом. Генерируется при добавлении прибора в OwenCloud;

  • SSLKeyFileName – параметр не используется, зарезервирован на будущее;

  • Visibility (видимость) – видимость параметров модуля в протоколе «Gateway» (в частности, в программе «EasyWorkPLC» разработки компании «ОВЕН»). Значения выбираются из списка «yes» и «no», значение по умолчанию – «no».

Graphic
Параметры подмодуля Cloud
Настройка модемного подключения

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

Особенностью ПЛК является реализация поддержки протоколов стека PPP через модем (GPRS). Поддерживается один сетевой интерфейс PPP (№ 1) и один модем на любом из портов ПЛК. Маршрутизация пакетов из Ethernet (сетевой интерфейс № 0) в PPP и обратно в автоматическом режиме не поддерживается.

Для настройки PPP соединения следует отредактировать файл local_addres.dat в соответствии с настройками порта, типом модема, адресом точки доступа и настройками протокола.

Режим GPRS

Для работы с модемом в режиме GPRS не требуется установка PPP-драйвера, но рекомендуется установить порт Empty (см. рисунок).

Для корректной работы модема в режиме GPRS требуется скорректировать файл ПЛК local_addres.dat. Подробнее о настройке см. раздел Примеры с GSM/GPRS модемом ПМ01 на странице CODESYS на сайте owen.ru.

Graphic
Конфигурация модуля при использовании модема