Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Конфигурирование I/O системы
Базовые термины Конфигуратор ПЛК (PLC Configuration ): пакетный редактор, в котором определяется состав аппаратных средств и производится настройка определенных параметров ввода-вывода. Модуль: независимая единица аппаратных средств. Модуль включает набор каналов ввода-вывода. Как и каждый отдельный канал, модуль может иметь параметры. Каждый тип модуля имеет уникальный идентификатор. Канал: это собственно данные ввода-вывода. Как правило, модуль имеет фиксированный набор каналов или подмодулей. Каждый канал имеет определенный МЭК тип и адрес. Естественно, для каждого канала выделяется определенное пространство памяти. Каждый канал имеет уникальный в пределах данной конфигурации ПЛК идентификатор. Битовый канал: идентификатор отдельного бита в многобитном канале. Плоская модель адресации: модель определения МЭК адресов, без спецификации иерархии модулей. Все адресное пространство ввода-вывода представляется в виде плоского набора последовательно пронумерованных ячеек памяти. Если включена опция 'Автоматическое вычисление адресов' (Automatic calculation of addresses), то при изменении положения модуля адреса его каналов соответствующим образом смещаются. Альтернативой может служить фиксированная адресация. В этом случае для каждого модуля отводится фиксированное адресное окно, которое определяется физическим расположением (номером слота) модуля. Например: %QB0, %IB26, %MW4. Иерархическая модель адресации: модель определения МЭК адресов, при котором адрес канала определяется путем указания модуля, подмодуля и номера канала в нем. Например: %QW2.4.6: карта CAN bus в VME Slot 2, CAN-модуль Id 4 и канал 6. %QX2.4.6.10: 10й бит этого канала. Параметр: атрибут канала или модуля. Значение параметра устанавливается интерактивно до компиляции проекта. Оно передается в ПЛК и влияет на работу аппаратуры. Итак, при написании программ для контроллера используются каналы входных и выходных модулей. Для привязки физического модуля к программе необходимо знать его адрес. Для определения адреса конкретного канала в большинстве пакетов программирования ПЛК имеется «Конфигуратор ПЛК» (в импортных пакетах – PLC Configuration). Конфигурация ПЛК определяет аппаратные средства системы. Здесь задается распределение адресов входов/выходов контроллера, что определяет привязку проекта к аппаратным средствам. На основе описания конфигурации ПЛК CoDeSys проверяет правильность задания МЭК адресов, используемых в программах, на их соответствие фактически имеющимся аппаратным средствам. Данный программный ресурс имеет встроенную библиотеку оборудования (контроллеры, модули ввода/вывода, стойки расширения, элементов внешней сети и т.д.), поэтому перед работой с тем или иным пакетом программирования ПЛК следует убедиться, что выбранное оборудование присутствует в библиотеке конфигуратора. Проверку данного условия следует выполнить на стадии проектирования системы во избежание дополнительных затрат. В программном ресурсе PLC Configuration из библиотеки выбирается тип контроллера, модули ввода/вывода, стойки расширения, элементов внешней сети и т.д., то есть все то, что заложено в проекте и описано в техническом задании (ТЗ) на разработку системы управления, и производятся соответствующие настройки оборудования. Конфигурация ПЛК отображается в редакторе в виде дерева. Для редактирования элементов применяются команды меню и специализированные диалоги. В конфигурации присутствуют элементы ввода и/или вывода, каждый из которых может содержать вложенные подэлементы (например, CAN-bus или модуль дискретного ввода может содержать 8 входов). Далее следует создание символических имен для каналов модуля. Для задания начального состояния каналов модуля необходимо создать переменные, чьи значения будут определять состояние каждого канала во время работы приложения, и установить для них начальные значения. Указанные переменные будут связывать разрабатываемую программу с окружением. Окружением программы являются каналы модулей ввода/вывода, входящих в состав контроллера, и коммуникационные объекты внешней сети. Данные объекты окружения представляются образом процесса. Среда разработки обычно поддерживает три способа организации связи программ с образом процесса: · Посредством декларации входных или выходных переменных, ссылающихся на адреса в соответствующей части образа процесса, непосредственно в секции переменных программы. · Посредством создания символических имен для каналов ввода/вывода в PLC Configuration. Заданные символические имена доступны в программах как обычные переменные. · Путем использования конфигурируемых переменных в ресурсе Global Variables (глобальные переменные). При создании символических имен для каналов модуля, следует обратить внимание на тип переменной, соответствующей данному каналу.
Типы данных Тип данных определяет род информации и методы ее обработки и хранения, количество выделяемой памяти. Программист может непосредственно использовать элементарные (базовые) типы данных или создавать собственные (пользовательские) типы на их основе.
Целочисленные типы BYTE, WORD, DWORD, LWORD, SINT, INT, DINT, LINT, USINT, UINT, UDINT и ULINT – все это целочисленные типы. Они отличаются различным диапазоном сохраняемых данных и, естественно, различными требованиями к памяти. Подробно данные характеристики представлены в следующей таблице:
Очевидно, присвоение данных большего типа переменной меньшего типа может приводить к потере информации. Логические переменные Объявляются словом BOOL и называются булевыми. Они могут принимать только два значения: логический 0 (False – ложь) и логическая 1 (True – истина). Переменная занимает 8 бит памяти, если не задан прямой битовый адрес. Действительные типы REAL и LREAL данные в формате с плавающей запятой, используются для сохранения рациональных чисел. Для типа REAL необходимо 32 бита памяти и 64 для LREAL.
REAL – представляет действительные числа диапазона ±10±38. Точность представления – 6-7 десятичных цифр. LREAL – представляет действительные числа диапазона ±10±307. Точность представления – 15-16 десятичных цифр. Числа с плавающей запятой записываются в формате с точкой (5.35) или в экспоненциальном порядке (1.8Е10). Интервал времени TIME – используется для обозначения интервала времени без ограничения. Формат записи: t#10h15m5s, что означает 10 часов, 15 минут и 5 секунд. Каждый элемент не может превышать верхнюю границу диапазона представления, например s – ограничена 59 секундами. Максимальное значение для типа TIME: 49d17h2m47s295ms (4194967295 ms).
Типы TOD, DATE и DT сохраняются физически как DWORD. Все три типа данных занимают 4 байта.
Строковый тип Строковый тип STRING представляет строки символов. Максимальный размер строки определяет количество резервируемой памяти и указывается при объявлении переменной. Размер задается в круглых или квадратных скобках. Если размер не указан, принимается размер по умолчанию – 80 символов. Например:
Str1: =STRING(10); – объявление строки длинной 10 символов. Str1: =’Продолжаем’
Массивы Массивы – пользовательские типы данных. Элементарные типы данных могут образовывать одно-, двух-, и трехмерные массивы. Массивы могут быть объявлены в списке глобальных переменных. Путем вложения массивов можно получить многомерные массивы, но не более 9 мерных ( " ARRAY[0..2] OF ARRAY[0..3] OF …" ). Синтаксис:
< Имя_массива>: ARRAY [< ll1>..< ul1>, < ll2>..< ul2>, < ll3>..< ul3> ] OF < базовый тип>
где ll1, ll2, ll3 указывают нижний предел индексов; ul1, ul2 и ul3 указывают верхние пределы. Индексы должны быть целого типа. Нельзя использовать отрицательные индексы. Например:
X: ARRAY [1..20, 1..10] OF INT; Txt: ARRAY [0..10] OF STRING(32); Mass1: ARRAY [1..6] OF SINT: =1, 1, 2, 2, 2, 2; Mass1: ARRAY [1..6] OF SINT: =1, 1, 4(2); Третье и четвертое представления идентичны, в четвертом случае присутствует сокращение N(a, b, c), обозначающее – повторить последовательность a, b, c … N раз.
Разработка программы Популярное:
|
Последнее изменение этой страницы: 2017-03-11; Просмотров: 1258; Нарушение авторского права страницы