opn pib что это

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

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

Команды как элементы

STEP 7 представляет часть команд FUP в виде отдельных элементов, которые не нуждаются ни в адресах, ни в параметрах

opn pib что это. Смотреть фото opn pib что это. Смотреть картинку opn pib что это. Картинка про opn pib что это. Фото opn pib что это

Команда как блок с адресом

STEP 7 представляет некоторые из команд FUP в виде блоков, для которых Вы должны указать адрес

БлокОписаниеРаздел в этом руководстве

opn pib что это. Смотреть фото opn pib что это. Смотреть картинку opn pib что это. Картинка про opn pib что это. Фото opn pib что это

Команда как блок с адресом и значением

STEP 7 представляет некоторые из команд FUP в виде блоков, для которых нужно указать адрес и значение (например, значение таймера или счетчика, см. рисунок ниже)

БлокОписаниеРаздел в этом руководстве

opn pib что это. Смотреть фото opn pib что это. Смотреть картинку opn pib что это. Картинка про opn pib что это. Фото opn pib что это

Команда как блок с параметрами

STEP 7 представляет некоторые из команд FUP в виде блоков с входами и выходами. Входы расположены слева от блока, а выходы справа. Вы указываете входные параметры и некоторые из выходных параметров. Большинство из выходных параметров предоставляется программным пакетом STEP 7. Для назначения параметров необходимо использовать специальную запись типов данных. Параметры EN (деблокировать вход) и ENO (деблокировать выход) описаны ниже.

БлокОписаниеРаздел в этом руководстве

opn pib что это. Смотреть фото opn pib что это. Смотреть картинку opn pib что это. Картинка про opn pib что это. Фото opn pib что это

Параметры EN и ENO

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

Области памяти и их функции

Большинство адресов в FUP относятся к областям памяти. Следующая таблица показывает типы областей и их функции.

БлокОписаниеРаздел в этом руководстве
Таблица 5-1 Области памяти и их функции
Название
области
Функция области памятиДоступ к области через
единицы следующих размеров:Сокращние
Отображение процесса на входахВ начале цикла операционная система читает входы с процесса и записывает значения в этой области. Программа использует эти значения при циклической обработке.Входной бит
Входной байт
Входное слово
Двойное входное слово
I
IB
IW
ID
Отображение
процесса на
выходах
Во время цикла программа рассчитывает выходные значения и сохраняет их в этой области. В конце цикла операционная система считывает рассчитанные выходные значения из этой области и пересылает их на выходы к процессу.Выходной бит
Выходной байт
Выходное слово
Двойное выходное слово
Q
QB
QW
QD
МаркерыЭта область предоставляет место в памяти для промежуточных результатов, рассчитанных программой. ( Не знаю почему ребята из сименса называют их меркеры, но я предпочитаю называть маркеры)Маркерный бит
Маркерный байт
Маркерное слово
Двойное маркерное слово
M
MB
MW
MD
Периферий-ная
область:
внеш. входы

Периферий-ная
область:
внеш. выходы

Эта область дает Вашей программе возможность прямого доступа к модулям ввода и вывода (периферийные входы и выходы).Периферийный входной
байт
Периферийное входное
слово
Периферийное двойное
входное слово

Периферийный выходной
байт
Периферийное выходное
слово
Периферийное двойное
выходное слово

PIB

DIX
DIB
DIW
DID

Локальные данныеЭта область содержит временные данные логического блока(FB или FC). Этот тип данных называется также динамическими локальными данными. Эта область используется как буфер. Когда логический блок закрывается, эти данные теряются. Эти данные расположены в стеке локальных данных (L-stack).Врем. локальный бит
Врем. локальный байт
Врем. локальное слово
Врем. локальное двойное слово
L
LB
LW
LD

В таблице 5–2 перечислены максимальные диапазоны адресов для различных областей памяти.

от 0.0 до 65 535.7
от 0 до 65 535
от 0 до 65 534
от 0 до 65 532

от 0.0 до 65 535.7
от 0 до 65 535
от 0 до 65 534
от 0 до 65 532

Области памяти и их диапазоны адресов
Название областиДоступ к области черезМаксимальный
диапазон адресов
единицы следующих размеров:Сокр.
Отображение процесса на входахВходной бит
Входной байт
Входное слово
Двойное входное слово
I
IB
IW
ID
0 от 0.0 до 65 535.7
от 0 до 65 535
от 0 до 65 534
от 0 до 65 532
Отображение процесса на выходахВыходной бит
Выходной байт
Выходное слово
Двойное выходное слово
Q
QB
QW
QD
от 0.0 до 65 535.7
от 0 до 65 535
от 0 до 65 534
от 0 до 65 532
МаркерыМаркерный бит
Маркерный байт
Маркерное слово
Двойное маркерное слово
M
MB
MW
MD
от 0.0 до 255.7
от 0 до 255
от 0 до 254
от 0 до 252
Периферийная область внешние входы

Периферийная область внешние выходы

Периферийный входной байт
Периферийное входное слово
Периферийное двойное входное слово

Периферийный выходной байт
Периферийное выходное слово
Периферийное двойное выходное слово

от 0 до 65 535
от 0 до 65 534
от 0 до 65 532

от 0 до 65 535
от 0 до 65 534
от 0 до 65 532

ТаймерыТаймерТот 0 до 255
СчетчикиСчетчикСот 0 до 255
Блок данныхБлок данных, открытый командой DB [OPN]
Бит данных в блоке данных
Байт данных
Слово данных
Двойное слово данных

Блок данных, открытый командой DI [OPN]
Бит данных в экземпляре DB
Байт данных
Слово данных
Двойное слово данных

Локальные данные*Времен. бит локальных данных
Времен. байт локальных данных
Времен. слово локальных данных
Времен. двойное слово локальных данных
L
LB
LW
LD

от 0.0 до 65 535.7
от 0 до 65 535
от 0 до 65 534
от 0 до 65 532

* С командами FUP Вы можете использовать адрес в области памяти L только тогда, когда Вы описали его как VAR_TEMP в таблице описания переменных.

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

Язык программирования FUP основан на двоичной логике булевой алгебры, в которой переменные могут принимать значения “истина” (1) или “ложь” (0). Каждая логическая команда проверяет состояние сигнала переменной на равенство 1 (истина, удовлетворяется) или 0 (ложь, не удовлетворяется) и генерирует результат. Затем команда или сохраняет результат, или использует его для выполнения булевой логической операции. Результат логической операции называется RLO

Для представления логики используются логические блоки, известные из булевой алгебры.
Результаты логических операций для всех возможных комбинаций логических переменных перечисляются в таблицах истинности. Правила булевой логики иллюстрируются ниже на примере логических операций И, ИЛИ и исключающее ИЛИ.

Логическая операция И

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

opn pib что это. Смотреть фото opn pib что это. Смотреть картинку opn pib что это. Картинка про opn pib что это. Фото opn pib что это

Условие удовлетворяется, когда сигнальное состояние равно 1 на входах I1.0 И I1.1.

Возможные результаты логической операции И могут быть представлены в таблице истинности (табл. 5–3). Здесь 1 означает “удовлетворяется”, а 0 означает “не удовлетворяется”.

результат опроса сигнального состояния по адресу I1.0 равенрезультат опроса
сигнального состояния
по адресу I1.1 равен
результат логической операции имеет cледующее значение:
111
010
100
000

Логическая операция ИЛИ

В логической операции ИЛИ опрашиваются сигнальные состояния двух или более указанных адресов. Если хотя бы на 1 входе сигнал равен 1 то и на выходе будет единица.

opn pib что это. Смотреть фото opn pib что это. Смотреть картинку opn pib что это. Картинка про opn pib что это. Фото opn pib что это

Условие удовлетворяется, когда
равно 1 сгнальное состояние на
входе I1.0 или I1.1.
результат опроса сигнального состояния по адресу I1.0 равенрезультат опроса
сигнального состояния
по адресу I1.1 равен
результат логической операции имеет cледующее значение:
101
011
111
000

Логическая операция исключающее ИЛИ

В логической операции исключающее ИЛИ опрашиваются сигнальные состояния двух или более указанных адресов. Если сигнальное состояние одного из адресов равно 1, то условие удовлетворяется, и команда дает результат 1. Если сигнальные состояния всех адресов равны 0 или 1, то условие не удовлетворяется, и операция результат равен 0.

opn pib что это. Смотреть фото opn pib что это. Смотреть картинку opn pib что это. Картинка про opn pib что это. Фото opn pib что это

Условие удовлетворяется, когда
сигнальное состояние равно 1
только на входе I1.0 или I1.1
(т.е. не на обоих одновременно).
результат опроса сигнального состояния по адресу I1.0 равенрезультат опроса
сигнального состояния
по адресу I1.1 равен
результат логической операции имеет cледующее значение:
101
011
110
000

Значение регистров CPU в командах

opn pib что это. Смотреть фото opn pib что это. Смотреть картинку opn pib что это. Картинка про opn pib что это. Фото opn pib что это

Слово состояния содержит биты, к которым Вы можете обращаться в операндах битовых логических операций. Следующие разделы объясняют значения битов с 0 по 8.

opn pib что это. Смотреть фото opn pib что это. Смотреть картинку opn pib что это. Картинка про opn pib что это. Фото opn pib что это

Изменение битов в слове состояния

ЗначениеСмысл
0устанавливает состояние сигнала в 0
1устанавливает состояние сигнала в 1
xизменяет состояние
1состояние остается неизменным

Первичный опрос

Если честно, я сам иногда не совсем понимаю зачем надо было все так усложнять, но тем не менее биты состояния всегда приводятся, но я их прячу за всплывающие окна, поэтому кому интересно может учить целиком, кому нет, тот может и вовсе не смотреть, но отрицать их существования нельзя тем более что это важно!

Бит 0 слова состояния называется битом первичного опроса (бит FC, см. рис. выше). В начале сегмента FUP сигнальное состояние бита FC всегда равно 0, если только предыдущий сегмент не был завершен блоком SAVE.
Каждая логическая операция опрашивает сигнальное состояние бита FC, а также сигнальное состояние адреса, к которому обращается команда. Сигнальное состояние бита FC определяет последовательность выполнения цепи логических сопряжений. Если бит FC равен 0 (в начале сегмента FUP), то команда сохраняет результат в бите
результата логической операции (RLO) слова состояния и устанавливает бит FC в 1. Это называется первичным опросом. Результат “1” или “0”, сохраняемый после первичного опроса в бите RLO, называют результатом первичного опроса. Если сигнальное состояние бита FC равно 1, то операция логически сопрягает результат опроса состояния сигнала по обрабатываемому адресу с RLO, сформированным после первичного опроса, и сохраняет результат в бите RLO. Логическая цепочка, составленная из команд FUP, всегда заканчивается операцией над выходом (например, установить выход, сбросить выход, присвоить значение) или командой перехода в зависимости от результата логической операции (RLO). Эти команды сбрасывают бит FC в 0.

Результат логической операции

Бит 1 слова состояния называется битом результата логической операции (бит RLO, см. рис. выше). Этот бит сохраняет результат цепи логических операций или операций сравнения. Сигнальное состояние бита RLO дает информацию о потоке сигнала. Первая команда в сегменте FUP опрашивает сигнальное состояние адреса и выдает результат 1 или 0. Эта команда сохраняет результат опроса в бите RLO. Вторая команда в цепи логических операций также опрашивает сигнальное состояние некоторого адреса и формирует результат. Теперь команда комбинирует этот результат со значением бита RLO слова состояния в соответствии с правилами
булевой логики (см. выше Первичный опрос). Этот результат логической операции сохраняется в бите RLO слова состояния, заменяя предыдущее значение в бите RLO. Каждая следующая команда в цепи логических операций комбинирует два значения: результат опроса сигнала по указанному адресу и текущее значение RLO. Вы можете, например, присвоить RLO во время первичного опроса состояние некоторого меркерного бита или запустить команду перехода.

Бит состояния

Бит 2 слова состояния называется битом состояния (бит STA, ). Бит состояния сохраняет значение того бита, к которому производится обращение. Состояние логической операции, выполняющей чтение из памяти, всегда совпадает со значением бита, который опрашивается этой командой (бита, над которым выполняется логическая операция). Состояние битовой операции, которая записывает в память (установить выход, сбросить выход или присвоить), совпадает со значением бита, в который эта команда осуществляет запись. Если запись не производится, то значение совпадает со значением бита, к которому обращается команда. Бит состояния не имеет значения для битовых операций, которые не обращаются к памяти. Эти команды устанавливают бит состояния в 1 (STA=1). Бит состояния не опрашивается командами. Он интерпретируется только во время тестирования программы (статус программы).

Бит OR

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

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

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

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

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

CC1 и CC0

Биты 7 и 6 слова состояния называются кодом условия 1 и кодом условия 0 (СС1 и СС0). Биты СС1 и СС0 предоставляют информацию о следующих результатах или битах:
• результат арифметической операции
• результат операции сравнения
• результат цифровой операции
• биты, которые были выдвинуты из операнда операцией сдвига или циклического сдвига.

В таблицах ниже представлены значения битов CC1 и CC0 после выполнения программой определенных операций.

CC1 и CC0 после арифметических операций, без переполнения
CC1CC0Объяснение
00Результат = 0
01Результат 0
CC1 и CC0 после арифметических операций над целыми числами, с переполнением
CC1CC0Объяснение
00Переполнение в отрицательной области при сложении целых и двойных целых чисел
01Переполнение в отрицательной области при умножении целых и двойных целых чисел Переполнение в положительной области при сложении целых чисел, вычитании целых чисел, сложении двойных целых чисел, вычитании двойных целых чисел, получении дополнения до 2 целого числа и получении дополнения до 2 двойного целого числа
10Переполнение в положительной области при умножении целых чисел и двойных целых чисел, делении целых чисел и двойных целых чисел Переполнение в отрицательной области при сложении целых чисел, вычитании целых чисел, сложении двойных целых чисел, вычитании двойных целых чисел
11Деление на 0 при делении целых чисел, при делении двойных целых чисел и при получении остатка от деления двойных целых чисел.
CC1 и CC0 после арифметических операций над числами с
плавающей точкой, с переполнением
CC1CC0Объяснение
00Ступенчатая потеря значимости
01Переполнение отрицательной области
10Переполнение положительной области
11Недопустимое число с плавающей точкой
CC1 и CC0 после операций сравнения
CC1CC0Объяснение
00IN2 = IN1
01IN2 IN1
11IN1 или IN2 недопустимое число с плавающей точкой
CC1 и CC0 после операций сдвига и циклического сдвига
CC1CC0Объяснение
00Последний сдвинутый бит = 0
10Последний сдвинутый бит = 1
CC1 и CC0 после поразрядных логических операций со словами
CC1CC0Объяснение
00Результат = 0
10Результат <> 0

Бит двоичного результата

Бит 8 слова состояния называется битом двоичного результата (бит BR, ). Бит BR образует связь между обработкой битов и слов. Этот бит позволяет эффективно интерпретировать результат операции над словами как двоичный результат и включать этот результат в цепочку логических операций. Бит BR предтавляет собой бит
внутренней памяти, в котором может быть сохранен результат логической операции RLO перед выполнением операции над словами, изменяющей RLO, так что старое значение RLO снова доступно после операции, когда возобновляется прерванная последовательность битовых операций. С помощью бита BR Вы можете, например, запрограммировать функциональный блок (FB) или функцию (FC) на языке AWL и вызвать FB или FC в FUP.
Если Вы хотите написать функциональный блок или функцию, которые Вы хотите вызвать в FUP, независимо от того, пишете Вы FB или FC на AWL или на FUP, Вы должны принять во внимание бит BR. Бит BR соответствует параметру ENO (деблокировать выход) блока FUP. RLO сохраняется в бите BR с помощью команды SAVE (в AWL) или блока FUP SAVE в соответствии со следующими критериями:
• Сохранить RLO, равный 1, в бите BR, когда FB или FC обрабатывается без ошибок.
• Сохранить RLO, равный 0, в бите BR, если при обработке FB или FC возникает ошибка.
Запрограммируйте эти команды в конце FB или FC, так чтобы они были последними командами, выполняемыми в блоке.

Значение EN/ENO

Параметры EN (деблокировать вход) и ENO (деблокировать выход) блока FUP функционируют следующим образом:
• Если EN не активизирован (т.е. состояние сигнала равно ”0”), то блок свою функцию не выполняет, и ENO не активизируется (т.е. состояние сигнала тоже равно ”0”).
• Если EN активизирован (т.е. состояние сигнала равно ”1”) и соответствующий блок выполняет свою функцию без ошибок, то ENO тоже активизируется (т.е. состояние сигнала тоже равно ”1”).
• Если EN активизирован (т.е. состояние сигнала равно ”1”) и при обработке функции возникает ошибка, то ENO не активизируется (т.е. состояние сигнала равно ”0”).

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *