step7-pro
голосование
Чего не хватает сайту
поиска
новых статей
статей о подключении оборудования
примеров решения задач
форума
ничего не нужно
поиск


новости
Появился поиск по сайту. Обещаю его улучшить и сделать более адекватным
--------------11.10.11
Новая гостевая книга надеюсь избавит от спама. Еще немного и появится поис и многое другое
--------------11.07.11
C НАСТУПАЮЩИМ НОВЫМ ГОДОМ И РОЖДЕСТВОМ!
--------------30.12.10
Новые статьи по системным функциям и блокам
--------------25.12.10
Теперь у нас новый дизайн, конечно не супер но надеюсь всем понравиться
--------------05.12.10
Форум закрыт по причине ненадобности
--------------08.09.10
Гостевая книга временно отключена из спама
--------------15.10.10
Наш форум forum.step7-pro.ru общайтесь на здоровье!
--------------03.06.10
Наш сайт в twitter Вы сможете подписаться на рассылку новостей и узнавать о новых статьях на нашем сайте.
--------------20.03.10
После долгого перерыва наш сайт снова начал работать
--------------26.02.10
реклама

Элементы и блоки

Команды LAD состоят из элементов и блоков, графически объединяемых в сегменты. Элементы и блоки можно разделить на следующие группы:
Команды как элементы - эти команды контактного плана представляються в виде отдельных элементов, которым не нужны ни адреса, ни параметры

Элемент

Команды как элементы с адресом - эти команды контактного плана представляются как отдельные элементы, для которых нужно вводить адрес.

Элемент

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

Элемент

Команды в виде блоков с параметрами -эти команды в виде блоков с линиями входов и выходов. Входы находятся с левой стороны блока; выходы – с правой стороны блока. Вы заполняете входные параметры. Для выходных параметров вы указываете места, куда программное обеспечение STEP 7 может поместить для вас выходную информацию. Для этих параметров вы должны использовать нотацию, соответствующую отдельным типам данных.

Элемент

Команды в виде блоков с параметрами
STEP 7 представляет некоторые команды контактного плана в виде блоков с линиями входов и выходов (см. таблицу 2–4). Входы находятся с левой стороны блока; выходы – с правой стороны блока. Вы заполняете входные параметры. Для выходных параметров вы указываете места, куда программное обеспечение STEP 7 может поместить для вас выходную информацию. Для этих параметров вы должны использовать нотацию, соответствующую отдельным типам данных. Как действуют параметры EN (разрешить вход) и ENO (разрешить выход) объяснено ниже.

Параметры "Разрешить вход" и "Разрешить выход"
Передача энергии на разрешающий вход (EN) блока контактного плана (активизация) приводит к тому, что блок выполняет заданную функцию. Если блок способен выполнить свою функцию без ошибок, то разрешающий выход (ENO) передает энергию по цепи. Параметры блока КОР EN и ENO имеют тип BOOL и могут находиться в области памяти I, Q, M, D или L
EN и ENO функционируют в соответствии со следующими принципами:

Ограничения для блоков и катушек
Вы не можете размещать блоки и коннекторы в цепи контактного плана, которая не начинается на левой питающей шине. Исключением являются операции сравнения.
Области памяти и их функции
Большинство адресов в LAD относятся к областям памяти. Следующая таблица показывает их типы и функции.


Области памяти их функции ,адреса и типы данных
адрес в IEC*
описание
тип данных
диапозон значение
Функция области
I входной бит BOOL 0.0-65535.7 В начале цикла сканирования операционная система входы из процесса и записывает полученные значения в эту область. Программа может использовать эти значения при циклической обработке.
IB входной байт BYTE, CHAR 0-65535
IW входное слово WORD, INT, S5TIME 0-65534
ID входное двойное слово DWORD, DINT, REAL, TOD, TIME 0-65532

Q выходной бит BOOL 0.0-65535.7 Во время цикла сканирования программа рассчитывает выходные значения и помещает их в эту область. В конце цикла сканирования операционная система считывает рассчитанные выходные значения из этой области и передает их на выходы процесса.
QB выходной байт BYTE, CHAR 0-65535
QW выходное слово WORD, INT, S5TIME 0-65534
QD выходное двойное слово DWORD, DINT, REAL, TOD, TIME 0-65532

M меркерный бит BOOL 0.0-65535.7 Эта область предоставляет место для хранения промежуточных результатов расчетов, выполненных в программе.
MB меркерный байт BYTE, CHAR 0-65535
MW меркерное слово WORD, INT, S5TIME 0-65534
MD меркерное двойное слово DWORD, DINT, REAL, TOD, TIME 0-65532

PIB переферийный входной байт BYTE, CHAR 0-65535 Эта область позволяет вашей программе непосредственно обращаться к модулям ввода и вывода (т.е. к периферийным входам и выходам).
PIW переферийное входное слово WORD, INT, S5TIME 0-65534
PID переферийное входное двойное слов DWORD, DINT, REAL, TOD, TIME 0-65532

PQB переферийный выходной байт BYTE, CHAR 0-65535 Эта область позволяет вашей программе непосредственно обращаться к модулям ввода и вывода (т.е. к периферийным входам и выходам).
PQW переферийное выходное слово WORD, INT, S5TIME 0-65534
PQD переферийное выходное двойное слово DWORD, DINT, REAL, TOD, TIME 0-65532

T таймер TIMER 0-65535 Эта область предоставляет место в памяти для таймерных ячеек. В этой области датчик импульсов времени обращается к таймерным ячейкам для их актуализации путем уменьшения значения времени. Таймерные операции обращаются к этим ячейкам.
C счетчик COUNTER 0-65535 Счетчики – эта область предоставляет место в памяти для счетчиков. К ней обращаются операции счета.

DBX бит данных Блок данных, открытый командой «OPN DB»: 0.0-65535.7 Эта область содержит данные, к которым можно обратиться из любого блока. Если вам нужно открыть одновременно два блока, то вы можете открыть один из них командой «OPN DB», а другой - командой «OPN DI». Нотация адресов, например, L DBWi или L DIWi определяет блок, к которому производится обращение. Хотя вы можете использовать команду «OPN DI» для открытия любого блока данных, она используется главным образом для открытия экземплярных блоков данных, связанных с функциональными блоками (FB) и с системными функциональными блоками (SFB).
DBB байт данных 0-65535
DBW слово данных 0-65534
DBD Двойное слово данных 0-65532

DIX бит данных Блок данных, открытый командой «OPN DI»: 0.0-65535.7
DIB байт данных 0-65535
DIW слово данных 0-65534
DID Двойное слово данных 0-65532

L Бит временных локальных данных   0.0-65535.7 Эта область содержит временные данные, используемые внутри логического блока (FB или FC). Эти данные называются динамическими локальными данными. Они служат в качестве промежуточной памяти. Когда кодовый блок закрывается, эти данные теряются. Эти данные содержатся в стеке локальных данных (L–стек).
LB Байт временных локальных данных   0-65535
LW Слово временных локальных данных   0-65534
LD Двойное слово временных локальных данных   0-65532

 

 

Булева логика и таблицы истинности

Программа 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 в командах

Регистры помогают CPU выполнять логические и арифметические операции, операции сдвига и операции преобразования. Эти регистры описаны ниже.

Аккумуляторы
Это регистры общего назначения для обработки байтов, слов и двойных слов. Они имеют размер 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). Бит состояния не опрашивается командой. Он анализируется только при тестировании программы (статус программы).

Бит OR

Бит 3 слова состояния называется битом OR (см. рис. 1-6). Бит OR необходим, если вы используете команды над контактами для выполнени логической операции И перед ИЛИ. Логические операции ИЛИ соответствуют параллельному включению контактов. Логические операции И соответствуют последовательному включению контактов. Функция И может содержать следующие команды: “Нормально открытый контакт” и “
Нормально замкнутый контакт”. Бит OR показывает этим операциям, что ранее выполненная функция И дала значение “1”, тем самым предвосхищая результат логической операции ИЛИ. Любая другая команда, обрабатывающая биты, сбрасывает бит OR.

Бит переполнения

Бит 5 слова состояния называется битом переполнения (бит OV, см рис. 1–6). Бит OV указывает на наличие ошибки. Он устанавливается арифметической операцией или операцией сравнения для чисел с плавающей точкой, после возникновения ошибки (переполнение, недопустимая операция, недопустимое число с плавающей точкой). Бит устанавливается (в случае ошибки) или сбрасывается в соответствии с результатом арифметической операции или операции сравнения.

Бит сохраняемого переполнения

Бит 4 слова состояния называется битом сохраняемого переполнения (бит OS, см. рис. 1-6). Бит OS устанавливается вместе с битом OV при возникновении ошибки. Так как бит OS остается установленным после устранения ошибки (в отличие от бита OV), то он указывает, произошла ли ошибка в одной из ранее выполненных операций. Бит OS сбрасывают следующие команды: JOS (Перейти после сохраненного переполнения,
программирование на STL), вызовы блоков и конец блока.

Код условия 1 и Код условия 0

Биты 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, так чтобы
они выполнялись как последние команды в блоке.

Внимание
Возможен непреднамеренный сброс бита BR в 0. Если вы пишете FB или FC в KOP и обрабатываете бит BR не так, как описано выше, то FB или FC может переписать бит BR другого FB или другой FC.
Во избежание этой ошибки сохраняйте RLO в конце FB или FC, как описано
выше.

Значение EN/ENO

Параметры разрешающего входа (EN) и разрешающего выхода (ENO) блока LAD функционируют в соответствии со следующими принципами:

Если вы в своей программе вызываете системный функциональный блок (SFB) или системную функцию (SFC), то SFB или SFC указывает, выполнил ли CPU эту функцию без ошибок или с ошибкой, предоставляя следующую информацию в бите двоичного результата:

 

    Следующая статья-->
сделано djoni политика конфидициальности Rambler's Top100