Лекция
Привет, сегодня поговорим про элементы контактного плана, обещаю рассказать все что знаю. Для того чтобы лучше понимать что такое элементы контактного плана, LAD , настоятельно рекомендую прочитать все из категории Программирование в контактном плане / LAD.
Команды LAD состоят из элементов и блоков, графически объединяемых в сегменты. Элементы и блоки можно разделить на следующие группы:
Команды как элементы - эти команды контактного плана представляються в виде отдельных элементов, которым не нужны ни адреса, ни параметры
Элемент |
Команды как элементы с адресом - эти команды контактного плана представляются как отдельные элементы, для которых нужно вводить адрес.
Элемент |
Команды как элементы с адресом и значением - эти команды контактного плана представлены как отдельные элементы, для которых нужно вводить адрес и значение
Элемент |
Команды в виде блоков с параметрами -эти команды в виде блоков с линиями входов и выходов. Входы находятся с левой стороны блока; выходы – с правой стороны блока. Вы заполняете входные параметры. Для выходных параметров вы указываете места, куда программное обеспечение STEP 7 может поместить для вас выходную информацию. Для этих параметров вы должны использовать нотацию, соответствующую отдельным типам данных.
Элемент |
Команды в виде блоков с параметрами
STEP 7 представляет некоторые команды контактного плана в виде блоков с линиями входов и выходов (см. таблицу 2–4). Входы находятся с левой стороны блока; выходы – с правой стороны блока. Вы заполняете входные параметры. Для выходных параметров вы указываете места, куда программное обеспечение STEP 7 может поместить для вас выходную информацию. Для этих параметров вы должны использовать нотацию, соответствующую отдельным типам данных. Как действуют параметры EN (разрешить вход) и ENO (разрешить выход) объяснено ниже.
Параметры "Разрешить вход" и "Разрешить выход"
Передача энергии на разрешающий вход (EN) блока контактного плана (активизация) приводит к тому, что блок выполняет заданную функцию. Если блок способен выполнить свою функцию без ошибок, то разрешающий выход (ENO) передает энергию по цепи. Параметры блока КОР EN и ENO имеют тип BOOL и могут находиться в области памяти I, Q, M, D или L
EN и ENO функционируют в соответствии со следующими принципами:
Ограничения для блоков и катушек
Вы не можете размещать блоки и коннекторы в цепи контактного плана, которая не начинается на левой питающей шине. Исключением являются операции сравнения.
Области памяти и их функции
Большинство адресов в LAD относятся к областям памяти. Следующая таблица показывает их типы и функции.
Программа LAD следит за тем, как поток энергии проходит между питающими шинами через различные входы, выходы и другие элементы и блоки. Многие команды контактного плана действуют в соответствии с принципами булевой логики.
Каждая логическая операция опрашивает состояние сигнала электрического контакта на 0 (не активизирован, выключен) или на 1 (активизирован, включен) и вслед за этим выдает результат. Затем операция или сохраняет это результат, или использует его для выполнения булевой логической операции. Принципы булевой логики демонстрируются здесь с помощью замыкающих и размыкающих контактов.
Нормально открытый (замыкающий) контакт
На рисунке показана релейна-контактная схема с одним контактом реле между питающей шиной и катушкой. В нормальном состоянии этот контакт открыт. Если контакт не активизирован, он остается открытым. Сигнальное состояние открытого контакта равно 0 (не активизирован). Если контакт остается открытым, энергия от питающей шины не может возбудить катушку в конце цепи. Если контакт активизирован (состояние сигнала контакта равно 1), то ток будет проходить через катушку. На рисунке показан нормально открытый контакт реле, как его иногда представляют на релейно-контактных схемах.
Вы можете использовать команду Нормально открытый контакт для опроса состояния сигнала нормально открытого контакта управляющего реле. Опрашивая состояние сигнала, команда определяет, может ли ток протекать через контакт или нет. Если ток может протекать, то команда дает результат 1; если ток не может протекать, то команда дает результат 0. Команда может сохранить этот результат или использовать его для выполнения булевой логической операции.
Данный элемент является инверсией открытого контакта. То есть когда если сигнал равен 0 то результат операции равен 1.
Команда | Результат, если сигнальное состояние контакта равно 1 (контакт активизирован) |
Результат, если сигнальное состояние контакта равно 0 |
—| |— | 1 (Имеющаяся в распоряжении энергия может передаваться, так как нормально открытый контакт замкнут). | 0 (Имеющаяся в распоряжении энергия не может передаваться, так как нормально открытый контакт открыт.) |
—|/|— | 0 (Имеющаяся в распоряжении энергия не может передаваться, так как нормально замкнутый контакт открыт). | 1 (Имеющаяся в распоряжении энергия может передаваться, так как нормально замкнутый контакт замкнут.) |
С помощью нормально открытых контактов можно создать логическую операцию И или логическйю операцию ИЛИ.
Для того чтобы создать логическую операцию И соеденим последовательно два нормально открытых контакта, так как это показано на рисунке.
Здесь показана логическая операция И результат которой равен 0 | ||
Контакты которые активизированы выделяются другим цветом | ||
Если оба контакта активизированы то на выходе Q 4.0 результат будет равен 1, то есть ток может протекать по этой цепи. |
Таблица истиности для И | ||
Контакт I 1.0 | Контакт I 1.0 | Катушка Q 4.0 |
0 | 0 | 0 |
1 | 0 | 0 |
0 | 1 | 0 |
1 | 1 | 0 |
Логическую операцию ИЛИ можно получить соеденив контакты параллельно.
Если хотя бы на одном из контактов I 1.0 или I 1.1 есть сигнал то на выходе Q 4.0 сигнал RLO равен 1. | |
путь тока выделяеться другим цветом. |
Таблица истиности для ИЛИ | ||
Контакт I 1.0 | Контакт I 1.0 | Катушка Q 4.0 |
0 | 0 | 0 |
1 | 0 | 1 |
0 | 1 | 1 |
1 | 1 | 1 |
Регистры помогают CPU выполнять логические и арифметические операции, операции сдвига и операции преобразования. Об этом говорит сайт https://intellect.icu . Эти регистры описаны ниже.
Аккумуляторы
Это регистры общего назначения для обработки байтов, слов и двойных слов. Они имеют размер 32 бита.
Слово состояния содержит биты, к которым вы можете обращаться в операндах битовых логических операций. Следующие разделы объясняют значения битов с 0 по 8. рис 1-6.
Изменение битов в слове состояния
Значение | Объяснение |
0 | Устанавливает состояние сигнала в 0 |
1 | Устанавливает состояние сигнала в 1 |
х | Изменяет состояние |
— | Состояние остается неизменным |
Бит 0 слова состояния называется битом первичного опроса (бит FC, см. рис.1.6). В начале сегмента LAD состояние сигнала бита FC всегда равно 0, если только предыдущий сегмент не закончился командой --(SAVE). (Черта над FC указывает, что он инвертирован, т.е. состояние его сигнала в начале сегмента контактного плана всегда равно 0).
Каждая логическая команда опрашивает состояние сигнала бита FC и контакта, к которому адресуется эта команда. Сигнальное состояние бита FC определяет последовательность выполнения логической цепочки. Если бит FC равен 0 (в начале сегмента LAD), то команда сохраняет результат в бите результата логической операции слова состояния и устанавливает бит FC в 1. Этот процесс называется первичным опросом. К 1 или 0, сохраняемым после первичного опроса в бите RLO, затем обращаются как к результату первичного опроса.
Если сигнальное состояние бита FC равно 1, то операция логически сопрягает результат опроса состояния сигнала на обрабатываемом ею контакте с ранее образованным RLO и сохраняет этот результат в бите RLO.
Последовательность команд контактного плана (цепь логических операций) всегда заканчивается командой вывода (“Установить выход”, “Сбросить выход”, “ Выходная катушка ”) или командой перехода, связанной с результатом логической операции. Эти команды сбрасывают бит FC в 0.
Бит 1 слова состояния называется битом результата логической операции (бит RLO, см. рис. 2.6). Этот бит хранит результат цепи битовых логических операций или операций сравнения. Изменения сигнального состояния бита RLO может дать информацию, относящуюся к потоку сигнала.
Например, первая команда в сегменте контактного плана опрашивает состояние сигнала контакта и выдает результат 1 или 0. Эта команда сохраняет результат этого опроса состояния сигнала в бите RLO. Вторая команда в цепи битовых логических операций также опрашивает сигнальное состояние контакта и выдает результат опроса. Затем команда сопрягает этот результат со значением, хранящимся в бите RLO слова состояния, в соответствии с принципами булевой логики (см. выше Первичный опрос и главу 4). Результат этой логической операции сохраняется в бите RLO слова состояния, заменяя предыдущее значение, хранившееся в бите RLO. Каждая следующая команда в цепи выполняет логическую операцию с двумя значениями: результатом, полученным при опросе командой контакта, и текущим значением RLO. Например, вы можете использовать булеву битовую логическую команду после первичного опроса для присваивания состояния содержимого ячейки памяти биту RLO или для запуска перехода.
Бит 2 слова состояния называется битом состояния (бит STA, см. рис.1-6). Бит состояния сохраняет значение того бита, к которому производится обращение. Cостояние битовой команды, имеющей доступ к памяти для чтения (“Нормально открытый контакт”, “ Нормально замкнутый контакт”), всегда равно значению бита, который эта операция опрашивает (бит, с которым она выполняет логическую операцию). Состояние битовой команды, имеющей доступ к памяти для записи (“Установить выход”, “Сбросить выход”, “Выходная катушка ”) равно значению бита, в который команда производит запись, или, если запись не производится, значению бита, к которому команда обращается. Бит состояния не имеет значения для битовых команд, которые не обращаются к памяти. Эти команды устанавливают бит состояния в 1 (STA=1). Бит состояния не опрашивается командой. Он анализируется только при тестировании программы (статус программы).
Бит 3 слова состояния называется битом OR (см. рис. 1-6). Бит OR необходим, если вы используете команды над контактами для выполнени логической операции И перед ИЛИ. Логические операции ИЛИ соответствуют параллельному включению контактов. Логические операции И соответствуют последовательному включению контактов. Функция И может содержать следующие команды: “Нормально открытый контакт” и “
Нормально замкнутый контакт”. Бит OR показывает этим операциям, что ранее выполненная функция И дала значение “1”, тем самым предвосхищая результат логической операции ИЛИ. Любая другая команда, обрабатывающая биты, сбрасывает бит OR.
Бит 5 слова состояния называется битом переполнения (бит OV, см рис. 1–6). Бит OV указывает на наличие ошибки. Он устанавливается арифметической операцией или операцией сравнения для чисел с плавающей точкой, после возникновения ошибки (переполнение, недопустимая операция, недопустимое число с плавающей точкой). Бит устанавливается (в случае ошибки) или сбрасывается в соответствии с результатом арифметической операции или операции сравнения.
Бит 4 слова состояния называется битом сохраняемого переполнения (бит OS, см. рис. 1-6). Бит OS устанавливается вместе с битом OV при возникновении ошибки. Так как бит OS остается установленным после устранения ошибки (в отличие от бита OV), то он указывает, произошла ли ошибка в одной из ранее выполненных операций. Бит OS сбрасывают следующие команды: JOS (Перейти после сохраненного переполнения,
программирование на STL), вызовы блоков и конец блока.
Биты 7 и 6 слова состояния называются кодом условия 1 и кодом условия 0 (CC 1 и CC 0, см. рис. 2–6). CC 1 и CC 0 дают информацию о следующих результатах или битах:
Следующие таблицы перечисляют значения CC 1 и CC 0, после того как ваша программа выполняет определенные команды.
CC 1 и CC 0 после арифметических операций, без переполнения | ||
СС 1 | СС 0 | пояснение |
0 | 0 | Результат = 0 |
0 | 1 | Результат < 0 |
1 | 0 | Результат > 0 |
CC 1 и CC 0 после арифметических операций с целыми числами, с переполнением | ||
0 | 0 | Переполнение отрицательной области при сложении целых и двойных целых чисел |
0 | 1 | Переполнение отрицательной области при умножении целых и двойных целых чисел Переполнение положительной области при сложении и вычитании целых чисел, сложении и вычитании двойных целых чисел, при получении дополнения до двух целого числа и двойного целого числа |
1 | 0 | Переполнение положительной области при умножении целых и двойных целых чисел, при делении целых и двойных целых чисел Переполнение отрицательной области при сложении и вычитании целых чисел, сложении и вычитании двойных целых чисел |
1 | 1 | Деление на 0 при делении целых и двойных целых чисел и при получении остатка от деления двойных целых чисел |
CC 1 и CC 0 после арифметических операций над числами с плавающей точкой, с переполнением | ||
0 | 0 | Поэтапная потеря значимости |
0 | 1 | Переполнение отрицательной области |
1 | 0 | Переполнение положительной области |
1 | 1 | Недопустимая операция |
CC 1 и CC 0 после операций сравнения | ||
0 | 0 | IN2 = IN1 |
0 | 1 | IN2 < IN1 |
1 | 0 | IN2 > IN1 |
1 | 1 | IN1 или IN2 – недопустимое число с плавающей точкой |
CC 1 и CC 0 после операций сдвига и циклического сдвига | ||
0 | 0 | Последний выдвинутый бит = 0 |
1 | 0 | Последний выдвинутый бит = 1 |
CC 1 и CC 0 после логических операций со словами | ||
0 | 0 | Результат = 0 |
1 | 0 | Результат <> 0 |
Бит 8 слова состояния называется битом двоичного результата (бит BR, см. рис. 1-6). Бит BR образует связь между обработкой битов и слов. Этот бит позволяет вашей программе интерпретировать результат операции над словами как двоичный результат и встроить этот результат в цепь двоичных логических операций. С этой точки зрения, BR представляет собой внутримашинный меркер, в котором сохраняется RLO перед изменяющей RLO операцией со словами, так что RLO остается доступным для продолжения прерванной цепи битов после того, как операция выполнена.
Например, бит BR дает вам возможность программировать функциональный блок (FB) или функцию (FC) в списке команд (STL) и вызывать этот FB или эту FC из контактного плана (LAD).
Когда вы пишете функциональный блок или функцию, которые хотите вызвать из LAD, безразлично, пишете ли вы FB или FC в STL или LAD, вы отвечаете за манипулирование с битом BR. Бит BR соответствует разрешающему выходу (ENO) блока LAD. Вы должны сохранить RLO в бите BR командой SAVE (в STL) или с помощью катушки ---(SAVE) (в LAD) в соответствии со следующими критериями:
Вы должны запрограммировать эти команды в конце FB или FC, так чтобы
они выполнялись как последние команды в блоке.
Параметры разрешающего входа (EN) и разрешающего выхода (ENO) блока LAD функционируют в соответствии со следующими принципами:
Если вы в своей программе вызываете системный функциональный блок (SFB) или системную функцию (SFC), то SFB или SFC указывает, выполнил ли CPU эту функцию без ошибок или с ошибкой, предоставляя следующую информацию в бите двоичного результата:
Надеюсь, эта статья об увлекательном мире элементы контактного плана, была вам интересна и не так сложна для восприятия как могло показаться. Желаю вам бесконечной удачи в ваших начинаниях, будьте свободными от ограничений восприятия и позвольте себе делать больше активности в изученном направлени . Надеюсь, что теперь ты понял что такое элементы контактного плана, LAD и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Программирование в контактном плане / LAD
Комментарии
Оставить комментарий
Промышленное программирование. программирование контроллеров
Термины: Промышленное программирование. программирование контроллеров