Типы данных, обусловленные пользователем
Типы данных, обусловленные пользователем (UDT), могут объединять элементарные и составные типы данных. Можно присваивать UDT имена и использовать их много раз.
Вместо введения всех типов данных по одному или в виде структуры довольно лишь определить "UDT20" как тип данных и STEP 7 автоматически выделит соответствующее пространство памяти.
Параметрические типы
Кроме элементарных и составных типов данных используются также параметрические типы данных.
К этому типу принадлежат следующие данные:
• TIMER или COUNTER – определяет конкретный таймер или конкретный счетчик, который будет использоваться во время выполнения блока. При параметризации формальный параметр типа TIMER или COUNTER обеспечивается значением, то есть после введения "Т" или "С" вводится положительное целое число.
• BLOCK – определяет конкретный блок, используемый как вход или выход. Описание этого параметра определяет используемый тип блока (FB, FC, DB и т.д.) и значение, которые задается как фактический адрес блока, например, "FC101" при использовании абсолютной адресации или "Valve" при символьной адресации.
• POINTER – указывает адрес переменной вместо ее значения. Так, например, указатель для адресации данных, которые начинаются с М 50.0, будет иметь такой формат: Р#М50.0.
• ANY – используется, когда тип данных фактического параметра неизвестен или когда можно использовать любой тип данных.
Ограничение типов данных для блоков
В STEP 7 есть ограничения на назначение элементарных, составных и параметрических типов данных.
Поскольку вызвать ОВ нельзя, то в ОВ не может быть входных, выходных или проходных параметров. Таким образом, в ОВ могут быть только временные переменные элементарных или составных типов.
Для FB количество ограничений на назначение типов меньше. При описании входных параметров FB ограничений нет, но для выходного параметра нельзя назначать параметрические типы. Временные переменные могут иметь тип данных ANY. Все другие параметрические типы запрещены.
Контрольные вопросы
1. Какие функции обеспечивает операционная система?
2. Какие функции обеспечивает программа пользователя?
3. Что представляет собой структурирование пользовательской программы?
4. Чем отличается структурное программирование от линейного?
5. Какие фазы включает в себя циклическая обработка программы?
6. От чего зависит время выполнения цикла?
7. Для чего назначаются организационные блоки программы?
8. Для чего создаются функциональные блоки FB?
9. Для чего используются функции FC?
10. Для чего создаются блоки данных DB?
11. В чем состоят особенности системных функций и блоков SFC, SFB?
12. В чем состоит различие между формальными и фактическими параметрами данных?
13. Какие варианты количественного отношения можно применять при создании DB и FB?
14. Какие основные объекты образовывают иерархию структуры проекта?
15. В каком порядке создаются блоки программы?
16. В чем состоит различие между глобальными и локальными переменными?
17. Какие три части необходимо редактировать при создании блоков?
18. Что создает операционная система контроллера в результате описания переменных?
19. Какую роль играют метки времени при создании блоков данных и кодовых блоков?
20. При каких условиях возникает конфликт временных меток?
21. Как осуществляется адресация данных?
22. Какие данные принадлежат к элементарным типам?
23. Какие данные принадлежат к составным типам?
24. Какие данные принадлежат к параметрическим типам?
2 ПРОГРАММИРОВАНИЕ УСТРОЙСТВ ЛОГИЧЕСКОГО
УПРАВЛЕНИЯ
Для программирования устройств логического управления обычно применяются текстовый язык STL (Statement List) и два графических языка – LAD (Ladder Diagram) и FBD (Function Block Diagram). Разработка программы на выбранном языке осуществляется в одном редакторе – «LAD, STL, FBD: Programming S7 Blocks». Редактор позволяет переходить от одного представления программы к другому, например, от представления программы на языке LAD к представлению на языке FBD, или STL. Такой переход становится возможным благодаря одинаковому набору функций в этих трех языках.
В языках LAD, STL, FBD используются базовые функции, функции для обработки чисел и функции управления в программе.
Базовые функции содержат в себе двоичные логические операции, операции с памятью, функции передачи данных, а также функции таймеров и счетчиков.
Функции для обработки чисел – это функции сравнения, математические и арифметические функции, а также функции преобразования и сдвига.
Функции управления в программе содержат в себе функции переходов и функции обработки блоков.
Дата добавления: 2016-12-09; просмотров: 4231;