- •Этапы автоматизации.
- •Методы формирования методов технических средств (агрегатирование, унификация).
- •Блочно-модульный принцип в тса.
- •Виды сигналов.
- •Типовая структура асу тп.
- •Виды подсистем в асу тп.
- •Виды программного обеспечения в асу тп.
- •Состав полевого оборудования в асу тп.
- •1.Структура исполнительных механизмов в асу тп.
- •Требования и состав схем пневмопитания.
- •Типовая схема установки запорной арматуры в трубопроводе.
- •У стройство рдф.
- •Устройство квд.
- •Устройство эпк для зк.
- •Устройство эпк для зрк.
- •Конструкция пк.
- •Конструкция ок.
- •Регулятор прямого действия.
- •Пилотные клапаны в гидравлических схемах.
- •Устройство эпп.
- •Режимы работы эпп.
- •Пневматический позиционер.
- •Изодромный регулятор гидравлического типа.
- •Искрозащита в средствах асу тп.
- •Устройство барьеров типа hid.
- •Стандарт namur.
- •Усилители для датчиков namur.
- •2.Электропривод в исполнительных устройствах.
- •Синхронный двигатель. Его пуск.
- •Асинхронный двигатель. Его пуск, реверс. Синхронные двигатели
- •Частотно регулируемый привод. Принципы реализации.
- •Структура чрп Miсromaster.
- •Привод постоянного тока.
- •Двигатель с печатной обмоткой якоря.
- •Бесколлекторный двигатель.
- •Шаговый двигатель.
- •Однооборотные и многооборотные им.
- •Методика выбора электрических им.
- •Эмим. Их виды. Показатели.
- •Релейные устройства. Их характеристики.
- •Устройство моментной муфты.
- •Структура управляющего канала асу тп.
- •Структура измерительного канала в асу пт.
- •1. Расчёт характеристик элементов
- •2. Расчет характеристики прибора по структурной схеме
- •Буйковый уровнемер.
- •Прецизионная схема резистивного датчика.
- •Интеллектуальные датчики расхода.
- •Контроллер расхода Floboss s600.
- •Комплекс «Поток».
- •Приборы измерения свободного газа в жидкости.
- •3.Схема управления газлифтной добычей.
- •Вопрос 30
- •Уосг-100.
- •Устройство измерения капельной жидкости в потоке газа.
- •Датчики загазованности, принципы работы (нкпр, вкпр).
- •Устройство стм-30 (общая схема).
- •Hart-коммуникатор.
- •4.Датчики «Дженерал Мониторс».
- •Линии связи в асу тп.
- •Мультиплексирование.
- •Типовая схема связи асу тп с волс.
- •Стандарт ieee для сетей.
- •Раздел 802.2 определяет подуровень управления логическим каналом llc.
- •Программируемые контроллеры. Структура по.
- •Языки программирования контроллеров.
- •Походы к реализации асу тп.
- •Мосты и маршрутизаторы.
- •Виды птк(Siemens,Allen Bradley,Ge Fanuc и т.Д.)
- •Комплексы программирования контроллеров.
- •Данные переменные в CoDeSys.
- •Массивы и структуры в CoDeSys.
- •Венгерская запись в CoDeSys.
- •Распределение памяти, формат чисел и преобразование типов в CoDeSys.
- •Интерпретатор и компилятор. Принципы работы и отличительные особенности.
Данные переменные в CoDeSys.
Типы данных CoDeSys
Тип данных определяет род информации и методы ее обработки и хранения, количество выделяемой памяти. Программист может непосредственно использовать элементарные (базовые) типы данных или создавать собственные (пользовательские) типы на их основе.
Элементарные типы данных
Логический (BOOL)
BOOL логический тип данных. Переменная может принимать 2 значения ИСТИНА (TRUE) или ЛОЖЬ (FALSE). Занимает 8 бит памяти, если не задан прямой битовый адрес.
Целочисленные
BYTE, WORD, DWORD, SINT, USINT, INT, UINT, DINT, и UDINT - все это целочисленные типы. Они отличаются различным диапазоном сохраняемых данных и, естественно, различными требованиями к памяти.
Рациональные
REAL и LREAL данные в формате с плавающей запятой, используются для сохранения рациональных чисел. Для типа REAL необходимо 32 бита памяти и 64 для LREAL.
Строки
Строковый тип STRING представляет строки символов. Максимальный размер строки определяет количество резервируемой памяти и указывается при объявлении переменной. Размер задается в круглых или квадратных скобках. Если размер не указан, принимается размер по умолчанию – 80 символов.
Длина строки не ограничена в CoDeSys, но строковые функции способны обращаться со строками от 1до 255 символов!
Время и дата
TIME представляет длительность интервалов времени в миллисекундах. Максимальное значение для типа TIME: 49d17h2m47s295ms (4194967295 ms).
Пользовательские типы данных
Массивы
Элементарные типы данных могут образовывать одно-, двух-, и трехмерные массивы. Массивы могут быть объявлены в разделе объявлений POU или в списке глобальных переменных. Путем вложения массивов можно получить многомерные массивы, но не более 9 мерных ( "ARRAY[0..2] OF ARRAY [0..3] OF …" ).
Функция CheckBounds
Определив в проекте функцию с именем CheckBounds, вы сможете использовать её для контроля за соблюдением границ индексов. Имя функции фиксировано, изменять его нельзя.
Указатели
Указатели позволяют работать с адресами переменных или функциональных блоков.
Синтаксис:
<Имя_указателя>: POINTER TO <Тип данных/Функциональный блок>;
Указатели применимы для всех базовых типов данных или функциональных блоков, включая определяемые пользователем. Адреса переменных и функциональных блоков можно получить во время исполнения программы при
помощи оператора ADR. Для обращения через указатель необходимо добавить оператор "^" (content) после его имени.
Функция CheckPointer:
Данная функция позволяет контролировать обращение к допустимой области памяти через указатели. Если определена функция CheckPointer, то она будет автоматически вызываться при любом обращении через указатель. Функция должна быть определена в проекте (непосредственно или в библиотеке). Ее имя (CheckPointer) изменять нельзя.
Перечисление
Перечисление - это определяемый пользователем тип данных, задающий несколько строковых псевдонимов для числовых констант. Перечисление доступно в любой части проекта, даже при локальном его объявлении внутри POU. Поэтому наиболее разумно создавать все перечисления на вкладке типы данных (Data types) «Организатора Объектов» (Object Organizer). Объявление должно начинаться с ключевого слова TYPE и заканчиваться строкой END_TYPE.
Переменная типа <Имя_перечисления> может принимать только перечисленные значения. При инициализации переменная получает первое из списка значение. Если числовые значения элементов перечисления не указаны явно, им присваиваются последовательно возрастающие числа, начиная с 0.
Фактически элемент перечисления - это число типа INT и работать с ними можно точно также. Можно напрямую присвоить число переменной типа перечисление.
Структуры
Структуры создаются на вкладке типы данных (Data types) «Организатора Объектов» (Object Organizer). Объявление должно начинаться с ключевых слов TYPE и STRUCT и заканчиваться строками END_STRUCT и END_TYPE.
<Имя _структуры> образует новый тип данных, который может быть использован в любой части проекта наряду с базовыми типами. Вложенные структуры допускаются. Единственное ограничение заключается в запрете размещения элементов структуры по прямым адресам (AT объявления недопустимы!).
Псевдонимы типов
Псевдонимы типов нужны для создания альтернативных пользовательских наименований типов данных. Это удобно при работе с большим числом однотипных констант, переменных и функциональных блоков.
Псевдонимы типов определены на вкладке типы данных (Data types) «Организатора Объектов» (Object Organizer). Объявление должно начинаться с ключевого слова TYPE и заканчиваться строкой END_TYPE.
Ограничение диапазона значений
Ограничение диапазона позволяет объявить переменную, значения которой ограничены в определенных пределах. Существует возможность создать в проекте новые типы данных с ограниченным диапазоном значений либо задать диапазон непосредственно при объявлении переменной.
Для контроля значений «ограниченных» переменных в процессе исполнения применяются функции CheckRangeSigned или CheckRangeUnsigned. Они позволяют обрабатывать ошибки произвольным образом. Например, ограничить присваиваемое значение или сформировать флаги ошибки. Первая
функция работает для переменных со знаком, вторая для переменных без знака (unsigned). Изменять идентификаторы этих функций нельзя.
Переменные
Переменные могут быть объявлены либо как локальные в разделе определений POU, либо как глобальные - в списке глобальных переменных.
Имя переменной (идентификатор) не должно содержать пробелов и спецсимволов, не должно объявляться более одного раза и не должно совпадать с ключевыми словами. Регистр символов не учитывается, это означает, что VAR1, Var1 и var1 - это одна и та же переменная.
Символ подчеркивания является значимым, т.е. "A_BCD" и "AB_CD" - это разные имена.
Имя должно включать не более одного символа подчеркивания. Ограничений на длину имени нет. Область применения переменной задается ее типом. Список всех объявленных переменных в CoDeSys доступен через ассистент ввода (Input Assistant).
Системные флаги
Системные флаги - это неявно объявленные переменные, различные для конкретных моделей PLC.
Для получения списка доступных системных флагов используйте команду "Insert" "Operand". В диалоге ассистента ввода (Input Assistant) флаги собраны в разделе System Variable.
Битовая адресация через глобальные константы
Если объявить целую глобальную константу, то ее можно будет затем использовать для доступа к битам.
