Булева логика и таблицы истинности — КиберПедия 

Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...

История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...

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

2019-06-06 349
Булева логика и таблицы истинности 0.00 из 5.00 0 оценок
Заказать работу

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

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

Для представления логики используются логические блоки, известные из булевой алгебры.

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

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

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

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

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

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

Таблица 1

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

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

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

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

Результаты логической операции ИЛИ представлены в таблице истинности (табл.2).

Таблица 2

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

 

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

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

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

(т.е. не на обоих одновременно).

Результаты логической операции исключающее ИЛИ представлены в таблице 3.

 

Таблица 3

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

 

  Меркеры

Для обозначения используют различные термины: внутренние реле, виртуальные реле, меркеры, флаги, биты памяти и т.д.

Меркеры используются для хранения промежуточных состояний операций и другой управляющей информации. При адресации к этой области используется символ M.

Эти внутренние реле не существуют как реально выполненные реле, это биты в памяти, которые ведут себя как реле (порядка 100). При программировании они могут использоваться как реальные входы или выходы.

Реальные входы могут использоваться для того, чтобы передать на выход сигналы от внутреннего реле.

Меркеры представляют собой элементы памяти, которые так же, как входы/выходы могут принимать состояние «0» или «1» и подобно выходам опрашиваться и устанавливаться в любом месте программы.

Поэтому меркеры можно назвать выходами без связи с исполнительными элементами. Чтобы отличить внутренние реле от настоящих, используются различные области памяти. В Siemens это M.

Первые 14 байт меркеров (от MB0 до MB13), когда пропадает питание PLC, сохраняются в энергонезависимом EEPROM, если они были определены как сохраняемые.

Специальные меркеры

Системные меркеры - область памяти для обмена информацией между CPU и программой пользователя.

Они используются для управления специальными функциями CPU. При адресации к этой области используется символ SM.

Некоторые часто применяемые специальные меркеры.

SM0.0 - Бит, установленный всегда.

SM0.1 - Бит инициализации - только в первом рабочем цикле.

SM0.4 – Генератор импульсов ½ минуты

SM0.5 – Генератор импульсов 1 секунда (SM0.5 тактовый меркер - импульс ON на 0.5с и OFF на 0.5s, т.е. используется как 2Hz генератор импульсов).

SM0.6 - Это бит изменения состояния в каждом цикле

Циклические прерывания

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

Время цикла устанавливается в пределах от 1 до 255 мс шагами по 1 мс. Время цикла записывается в меркерный байт SMB34 для циклического прерывания 0 и в SMB35 для циклического прерывания 1. В байт специальных меркеров SMB34 заносится интервал времени, с которым вызывается прерывание по времени с номером 10 (первое прерывание по времени). В байт специальных меркеров SMB 35 интервал времени, с которым вызывается прерывание по времени с номером 11 (второе прерывание по времени - поддерживается только CPU 224). Интервал времени в обоих случаях будет определен с инкрементом 1мс.

Минимальное допустимое значение интервала времени составляет 5 мс, максимальное - 255 мс.

Основные примеры использования меркеров.

1. Программы с увеличением входных условий.

Пример 1

Рис.1 показывает увеличение входных условий. Система включается, если выполнены два входных условия, т.е. логика И. Однако проще использовать внутренние реле. Первое входное условие используется для выдачи выходного сигнала на внутреннее реле.

Рис.1 Программа в языке LDR

 

Network1. Для первой цепи: когда вх. I0.0 или I0.2 замкнуты и вход I0.3 замкнут, то внутреннее реле M0.0 активируется. Затем этот выход используется для управления переключением контактов в других ветках программы. В результате контакты реле M0.0 замыкаются.

Network 2. Если вход I0.3 затем активируется, то есть выходной сигнал с выхода Q0.0.

Применение.

Пусть вход I0.0 и вход I0.2 – это сигналы от фотоэлектрических датчиков, которые фиксируют наличие человека (или автомобиля), приближающегося или удаляющегося по обе стороны барьера, вход I0.0 – с одной стороны и вход I0.2 – с другой. Вход I0.1 – разрешающий вход для запуска системы.

Если вход I0.0 или вход I0.2 и вход I0.1 активируются, то выход есть с внутреннего реле М0.0. Этот выход закрывает внутренние входные контакты реле, и если вход I0.3 (например, датчик положения – концевой выключатель) фиксирует, что барьер закрыт, то активируется выход Q0.0, и мотор поднимает барьер. Если датчик (концевой выключатель I0.3) определяет, что барьер уже открыт, то человек или машина могут идти.

Через короткое время барьер закрывается.

Внутренние реле связывают две части программы: одна часть - определяет присутствие человека или автомобиля, а другая – открыт уже барьер или нет.

Меркер может быть использован таким образом, что его контакты замыкаются только на один цикл, т.е. на время одного периода сканирования программы. Если М0.0 программируется так, он остаётся активным только на один программный цикл. Рис. 5 показывает выполнение операции, когда вход меняет состояние с 0 до 1, т.е. по положительному фронту (Р) разрешающего имппульса.

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

Применение

Эта встроенная функция используется для того, чтобы создать импульсы для сброса счётчиков и таймеров или чтобы отмечать начала циклов.

 

Пример.

Положительный фронт и отрицательный для LAD соответственно -|P|- и -|N|-.

LD M1.0

EU

= Q1.0

LD M1.0

ED

= Q1.1

Рис. 6 Положительный и отрицательный фронт в Step 7

 

. Set и reset.

Меркеры можно сбрасывать и устанавливать. Пример программы изображён на рисунке 7.

Рис. 7 Set, Reset.

Сигнал на входе I0.0 включает выход Q0.0 с запоминанием. Если даже вход I0.0 сбрасывается, выход Q0.0.остаётся активным. Сигнал на входе I0.1 сбрасывает выход Q0.0. Между двумя операциями Set и Reset могут выполняться другие операции.

Рис. 9 Программа «Чёткая единица» в Step 7

Решение задач на меркеры

Как задать булеву константу 0 или 1 на языке LAD?

 

Таймеры

Таймеры управляются через единственный вход разблокировки (IN). Текущее значение таймера указывает время, истекшее с момента разблокировки. Предустановленное значение (PT-preset) сравнивается с текущим значеним каждый раз, когда актуализируется текущее значение или выполняется таймерная операция. В зависимости от результата сравнения устанавливается или сбрасывается бит таймера. Если текущее значение больше или равно предустановленному значению, то включается бит таймера.

Таймеры доступны с тремя разными разрешающими способностями. Разрешающая способность определяется номером таймера (таблица). Каждый отсчёт в текущем значении представляет величину, кратную базе времени.

Таблица для таймеров

Пример 1.

Если t = 1min = 60s

Таймер с временем задержки t = 1 ms:

Число 60000 больше, чем максимальное 32767 и задать интервал таким таймером нельзя.

 

Пример 2

Таймер с временем задержки t =10 ms:

Число меньше, чем максимально разрешённое, таймер использовать можно.

Пример 3

Таймер с временем задержки t = 1 ms:

Если t = 3c

Рассчитаем время по введённой уставке по формуле (2)

 

Пример 4

Таймер с разрешением 100мс, уставка 3:

Пример 5

Таймер с разрешением 10мс, уставка 3:

 

Пример 6

 

Таймеры с разрешающей способностью 1мс. Эти таймеры актуализируются раз в миллисекунду.

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

Например, если предустановка 56 мс при использовании таймера с разрешающей способностью 1мс, то надо задать преустановленное значение 57.

С помощью нескольких таймеров с разрешающей способностью 1мс можно создать событие прерывания это рассматривается в лекции 9).

Таймер с задержкой по включению TON (On-Delay).

Этот таймер позволяет активизироваться выходам единичным сигналом после того, как время выдержки истечёт. Таймерная предустановка представляет период выдержки. Когда таймер включается, статус таймера TON не становится 1, а достигает 1 после того, как время выдержки истечёт. Возрастающий край импульса в условной части включает таймер и он начинает работу. Таймер TON имеет один вход и один выход и предустановку таймера (PT - preset). Пусть PT=3 (для таймера Т33 это 30мс). Когда вход включается, таймер запускается на 30 мс перед тем, как он включает выход (через 30 мс). Таймер сбрасывается всякий раз, когда выход выключается, и включение таймера опять будет происходить с 30 мс задержкой.

Рис. 1 Таймер TON

Рис. 2 Импульсная диаграмма TON.

 

1. Разрешающий вход включён, таймер разблокирован, текущее значение отсчитывает время (с интервалами 1мс, 10мс, 100мс).

2. Текущее значение достигает предустановленного значения (РТ=3), бит таймера устанавливается в 1, отсчёт текущего значения продолжается до РТmax=32767.

3. Разрешающий вход выключен, бит таймера сброшен, текущее значение равно 0.

Накапливающий таймер TONR (Retentive On-Delay).

Рис.3 Таймер TONR

Рис. 4 Импульсная диаграмма TONR.

1. разрешающий вход включён(1), таймер разблокирован, текущее значение отсчитывает время.

2. Разрешающий вход выключен (2): бит таймера и текеущее значение сохраняют последние значения.

3. Текущее значение достигло предустановленного РТ=10, бит таймера установлен, текущее значение продолжает расти до 32767.

4. Таймер TONR. Мщжет быть сброшен только командой «RESET»

Отличия таймеров TON и TONR.

Функции таймеров похожи, но есть отличие.

Таймеры TON и TONR ведут отсчёт времени до максимального значения, если они активизированы. Оба таймера отсчитывают значение времени, когда активирован вход разблокировки.

Если операция «Запуск таймера TON» деактивируется, то таймер сбрасывается. Если операция «Запуск таймера TONR» деактивируется, то таймер останавливается.

При выключенном входе разблокировки оба таймера не работают. Но таймер TON автоматически сбрасывается, а таймер TONR сохраняет своё последнее значение времени, а не сбрасывается.

Таймер TONR отсчитывает время в течение всего промежутка времени, когда включен разрешающий вход, но не сбрасывается, когда вход отключается. Таймер должен быть сброшен командой RESET. При сбросе таймера текущее значение устанавливается в ноль, бит выключается. Это единственная команда, которая сбрасывает таймер TONR.

Оба таймера останавливаются, если они достигают максимального значения.

Когда нужен отдельный интервал времени, необходимо использовать TON, когда нужно накопить несколько интервалов времени, нужен TONR.

Таймер Таймер останавливается, но не сбрасывается разблокируется

Рис. 5 Tаймер TONR не сбрасывается, а сохраняет своё последнее значение времени.

Рис. 6 Пример TONR.

 

Пример.

Когда ключ на входе I0.1 закрывается, таймер Т5 начинает отсчёт времени. Когда ключ открывается после 2 секунд, таймер останавливается. Когда ключ снова закрывается, таймер начинает отсчёт времени с 2 секунд, и лампа будет гореть 3 секунды, в общем, 5 с.

Кнопка, соединённая с входом I0.0, используется для сброса таймера. Если ключ на на входе I0.1 будет открыт через 2 с, таймер может быть сброшен моментально ключом I0.0. если на вход I0.1 будет снова подан сигнал, таймер будет отсчитывать полный промежуток времени 5 секунд. Запись нуля в текущее значение и бит таймера не сбрасывают таймер.

Таймер TOF (Off-Delay).

Таймер TOF используется, чтобы задержать выключение выхода на установленное время после того, как выключится вход. Когда разрешающий вход таймера (IN) разблокирован, бит таймера устанавливается немедленно. Величина таймера устанавливается в 0. Когда вход выключен, таймер считает до установленного значения, затем таймер сбрасывается.

Бит таймера включается, таймер устанавливается в 0 Таймер начинает отсчёт, после отсчёта бит таймера выключается:

Рис. 7 Таймер с задержкой выключения.

Рис. 8. Импульсная диаграмма TOF.

1. Разрешающий вход включён (1), таймер разблокирован, бит таймера установлен, текущее значение = 0.

2. Разрешающий вход выключен, отсчёт времени начинается по заднему краю разрешающего импульса, т. е. в точке 2, в момент перехода от включенного состояния к выключенному.

3. Текущее значение таймера достигает предустановленного значения (РТ=3), бит таймера сброшен, текущее значение=РТ, отсчёт времени прекращён.

Основные используемые функции таймера.

1. Задержка по включению. Выход В включается на определённое время после выхода А. Когда выход А выключается, выход В тоже выключается.

2. Задержка по выключению. Оба выхода А и В включаются одновременно. Оба выхода активны некоторое время. Когда выход А выключается, выход В остаётся активным некоторое время перед выключением.

3. Ограничение времени. Оба выхода А и В включаются одновременно. В выключается после определённого времени, A остаётся включенным.

4. Повторяющийся цикл. Выход включается на короткое время и быстро выключается на установленное время.

5. Режим one-shot. Выход В включается на определённое время после выхода А. В будет оставаться включённым, даже если А выключится в течение этого времени.

6. Включение двух выходов в противофазе: один включен, другой выключен. Время может быть или одинаковым, или разным.

7. Два разных события начинаются в разные временные промежутки после возникновения начального условия.

8. Две разные функции остаются активными на разное время после того, как закончился процесс.

9. Интервал внутри цикла. Выход включается на 7,5 секунд после запуска системы, остаётся на 4,5 секунды, затем выключается и остаётся выключенным. Цикл может быть повторен после того, как система остановилась и затем снова включилась.

Задачи на основные функции таймеров.

1. Последовательность:

1) Когда ключ включён, загорается А

2) 8 секунд спустя загорается В. Оба горят.

3) Оба А и В гаснут, когда вход включён.

2. Мотор и насос для смазки мотора включаются одновременно. Смазка необходима ещё на некоторое время при остановке мотора. После того, как мотор остановился, насос смазки остаётся включённым на время остановки мотора. В примере на 20 секунд.

3. Задача решается для одиночного интервала и для множественных интервалов.

а) Два выхода A и B включаются одновременно. Затем один из них горит и выключается.

b) Три выхода G, H, J включаются одновременно. Один остаётся гореть, другой гаснет через 8 секунд, третий через 14 секунд.

4. Пульсирующий выход. Короткий импульс на выходе появляется каждые 12 секунд. Таймер сам себя сбрасывает.

5. Выход В включается и работает, даже если входной сигнал пропадёт в течение этотого периода. Вход должен сбрасывать систему.

6. Два мигающих выхода. Выходы меняются через 5/10 секунд. Время может быть одинаковым или разным.

7. Последовательное включение огней. Две возможности: включить одновременно таймеры на 7 и 12 секунд или добавить к 7 секундам 5.

8. Когда все огни в офисе погашены, свет над входной дверью остаётся на дополнительное время 42 секунды. Свет парковки остаётся ещё на 3 минуты после выключения света над входной дверью.

9. Встроенный интервал времени для фена (вентилятора). Фен включается через 8,7 секунд после запуска системы и работает до установленного времени 16 с. (Время работы его 7,3 секунды.)

Примеры решения задач

Задача 1. Создать генератор прямоугольных импульсов с заданными длительностями импульса и паузы (мультивибратор).

Задача 2. Последовательное включение выходов.

Счетчики

Размещение счетчика в памяти и его компоненты

Счетчики имеют собственную зарезервированную область памяти в CPU. Эта область памяти резервирует по одному 16-битному слову для каждого счетчика. Набор команд Siemens S7-200 поддерживает 256 счетчиков.

Область памяти счетчиков: Cxxx = C0 - C255. Операции счета являются единственными функциями, которые имеют доступ к области памяти, зарезервированной для счетчиков.

Биты с 0 по 9 в слове счетчика содержат счетное значение в двоичном коде. Когда счетчик устанавливается, счетное значение передается из аккумулятора в слово счетчика. Диапазон счетных значений лежит между 0 и 999. Можно изменять счетное значение внутри этого диапазона, используя команды прямого и обратного счета.

Чтобы установить счетчик на определенное значение, вводят число от 0 до 999, это означает двоично-десятичный формат (формат BCD: каждая группа из 4 битов содержит двоичный код одного десятичного разряда). Биты счетчика с 0 по 11 содержат счетное значение в двоично-десятичном формате.

На рисунке показано содержимое счетчика после того, как в него загружается счетное значение 127. Счетное значение представляется в двоичном формате.

Рис. 1 Содержимое счетчика 127

 

Счётчик считает число импульсов на входе. Это могут быть детали на конвейере, число поворотов, число людей, проходящих через двери. Счётчик для таких применений – это встроенный элемент в PLC. Счётчик должен быть предустановлен на определённый счёт. При достижении установленного значения контакт срабатывает (нормально открытый или нормально закрытый).

Таблица 1. Типы и принцип действия счетчиков

Тип Режим Бит счётчика Выключение – включение
CTU CTU увеличивает текущее значение. Текущее значение увеличивается до 32767   Бит счётчика устанавливается, когда текущее значение = предустановленному Бит счётчика сброшен. Текущее значение может быть сохранено.  
CTUD CU увеличивает текущее значение. CD уменьшает текущее значение. Текущее значение увеличивается или уменьшается, пока счётчик не сброшен.   Бит счётчика устанавливается, когда текущее значение = предустановленному   Бит счётчика сброшен. Текущее значение может быть сохранено.  
CTD CD уменьшает текущее значение, пока оно не достигнет 0.   Бит счётчика устанавливается, когда текущее значение = 0   Бит счётчика сброшен. Текущее значение может быть сохранено.  

 

Счетчик прямого счета (CTU)

Счетчик прямого счета считает от 0 до уставки, т.е. «1» устанавливается (счётчик изменяет состояние) по достиженни уставки. Команда Прямой счет увеличивает значение счетчика вплоть до максимального значения при появлении нарастающих фронтов сигнала на входе CU (Count Up = Прямой счет). Когда текущее значение больше или равно предустановленному значению (PV), устанавливается бит счетчика. Он прекращает счет при достижении PV.

Счетчик сбрасывается, когда включается вход сброса или когда выполняется команда Сброс. Счетчик останавливается при достижении максимального значения 32 767 (Рис.2).

       2а                         2б                     2в

Рис.2а, 2б, 2в. Прямой счетчик

 

Рис.2а показывает LDR-диаграмму счётчика. В первой ветке он рассматривается как элемент задержки выхода.

Счётчик сбрасывается (обнуляется) входом I0.1 и считает импульсы, входящие в I0.0. Уставка счётчика 10.

Рис. 2б и 2в - это примеры программирования счётчика в STL и FBD.

Счетчик обратного счета (CTD).

Счетчик обратного счета считает от предустановленного значения до нуля. Когда счёт дойдёт до нуля, счетчик изменяет состояние.

Счетчик сбрасывает бит счетчика и загружает текущее значение предустановленным значением PV (Preset Value - Предустановленное значение), когда включается положительный фронт входа загрузки. При положительном фронте на входе CD текущее значение счетчика уменьшается на 1, если счетное значение больше 0.

Счетчик останавливается при достижении нуля, при этом устанавливается его бит (C–бит).

Положительным фронтом на входе R счетчик сбрасывается. Сброс счетчика делает счетное значение равным 0.

Если счетчик сбрасывается с помощью команды Сброс, то бит счетчика сбрасывается, а текущее значение устанавливается в нуль.

Опрос состояния сигнала на «1» на выходе Q дает результат, равный 1, когда значение счетчика больше 0; опрос дает результат, равный 0, когда значение счетчика равно 0.

 

Программа для счетчика обратного счета:

Network 1. Текущее значение счетчика обратного счета C1 уменьшается с 3 до 0, когда I0.1 выключен.

Положительный фронт на I0.0 уменьшает текущее значение C1. Включение I0.1 загружает предустановленное значение 3 для обратного счета.

LD I0.0

LD I0.1

CTD C1, +3

 

Network 2. Бит C1 установлен, когда текущее значение счетчика C1 = 0.

LD C1

= Q0.0

 

Для обращения как к текущему значению, так и к C-биту, используется номер счетчика.

Рис. 3 Временная диаграмма счетчика обратного счета

 

Реверсивный счетчик (CTUD).

Счетчик прямого и обратного счета устанавливает счетчик значением на входе PV.

Команда Реверсивный счет увеличивает значение счетчика при появлении нарастающих фронтов сигнала на входе CU (Count Up = Прямой счет). Она уменьшает значение счетчика при появлении нарастающих фронтов сигнала на входе CD (Count Down = Обратный счет).

Когда текущее значение счётчика больше или равно предустановленному значению (PV), устанавливается бит счетчика. Счетчик сбрасывается, когда включается вход cброса R.

Счетчик сбрасывается, когда включается вход сброса R или когда выполняется команда Сброс. При достижении максимального значения (32 767) следующий нарастающий фронт на входе прямого счета вызывает переход к минимальному значению (-32 768). Аналогично, при достижении минимального значения (-32 768) следующий нарастающий фронт на входе обратного счета вызывает переход к максимальному значению (32 767).

Рис. 4 Временная диаграмма реверсивного счетчика

 

Если положительный фронт имеется на обоих входах, то обе операции выполняются и счетное значение остается тем же самым.

Рис. 5 Реверсивный счётчик

 

Примечание

- Так как для каждого счетчика имеется только одно текущее значение, нельзя назначать один и тот же номер более, чем одному счетчику (прямые, реверсивные и обратные счетчики с одним и тем же номером обращаются к одному и тому же текущему значению).

- Счётчик сбрасывается и устанавливается положительными фронтами на соответствующих входах.

Применение счётчиков.

Счётчик может использоваться в следующих 6 ситуациях:

1. Для обычного счёта в процессах. Выход счётчика активируется после достижения установленного счёта повторяющимися импульсами на вход счётчика.

2. Два счётчика используются с общим регистром, чтобы получить общую сумму двух подсчётов.

3. Два счётчика используются с общим регистром, чтобы получить разность двух подсчётов.

4. Для процессов, где начинается временной интервал, когда счётчик достигает уставки.

5. Для процессов, где счёт событий начинается после временного интервала.

6. Для процессов, где скорость определяется делением счёта на временной интервал.

 

Примеры применения.

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

2. Комбинация 2-х счётчиков. Предположим, что на выход счётчика 1 идёт сигнал, после прохождения 6 пачек на конвейере A и 8 пачек на конвейере B. Датчики – это датчики положения, которые реагируют на каждую пачку на своём конвейере. Лампа-индикатор загорается, когда N с одного и M с другого конвейера поступили на главный конвейер.

Для фиксации точного счёта деталей на конвейере. Число прибывающих деталей считает один сенсор (датчик), число убывающих – другой. Каждый сенсор вводит информацию в соответствующую счётную функцию. Общая информация поступает в общий для обоих счётчиков регистр хранения. Программа использует счётчики двух типов: прямого CTU и обратного счёта CTD.

3. Для процесса с задержкой времени (когда определённый счёт достигнут). После счёта N от сенсора, распылитель краски включается на t секунд. Эта программа совмещает функцию счётчика и таймера.

4. Для задержки периода счёта. В этом процессе счёт не начинается до того, как после процесса пройдёт определённое время. Выход таймера включается после предустановки таймера. Срабатывание таймера затем позволяет счётчику начать счёт входных импульсов. После счёта N включается выход.

5. Для получения скорости прохождения продукции. Сколько деталей в минуту проходит через определённую точку процесса? Таймер и счётчик работают в одно и то же время. Счётчик срабатывает на каждый импульс от сенсора, который соединён к входу. Счёт начинается, и таймер начинает отсчёт времени в то же самое время. После окончания t cек, таймерная цепь размыкается. Импульсы продолжаются, но не активируют счётчик.

Математические операции

 Инструкция сравнения данных.

PLC сравнивает два значения как цифровых, так и аналоговых данных.

 

Пример 1.

Можно сравнить цифровую величину, считанную от некоторого входного устройства со второй величиной, содержавшей в регистре. Например, мы хотим, чтобы некоторое действие выполнялось, когда вход от температурного датчика дает цифровую величину, которая будет меньше, чем установленная величина, сохраненная в регистре данных в PLC.

Пример 2.

Если сигнал с датчика находится между 0,8 и 1,1 А, надо включить выход 7. В этом случае имеем аналоговый вход и дискретный выход.

Для сравнения данных инструкция будет содержать источник (адрес) того, где данные должны быть получены для сравнения и адрес данных, с которыми полученные данные должны сравниваться.

Действие описывается по отношению к первому параметру.

Операции сравнения байтов не учитывают знака. Операции сравнения целых, двойных целых, вещественных чисел учитывают знак (Рис.4).

Рис. 5 Примеры сравнения

Команды сравнения используются, чтобы сравнить следующие пары величин:

B - байты (сравниваются без знака)

I - целые (16-битные с фиксированной точкой)

D - двойные целые (32-битные с фиксированной точкой)

R - вещественные (32-битные с плавающей точкой по IEEE).

Если результат сравнения "True", RLO команды "1 ", в противном случае он "0". (Рис.5)

Если сравнение истинно, то результат логической операции этой функции равен 1. В противном случае он равен 0. Отрицание выхода сравнения отсутствует. Входы IN1 и IN2 сравниваются в соответствии с выбранной операцией (Таблица 1).

Таблица 1 Типы сравнения для целых чисел.

Типы сравнения для целых чисел

 

Тип сравнения Символы в средней части блока
Вход IN1 равен входу IN2 = =
Вход IN1 не равен входу IN2 < >
Вход IN1 больше, чем вход IN2 >
Вход IN1 меньше, чем вход IN2 <
Вход IN1 больше или равен входу IN2 >=
Вход IN1 меньше или равен входу IN2 <=

 

                                                                  

Рис. 6 Примеры сравнения в языке LAD для S7-200.

 


Поделиться с друзьями:

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.166 с.