Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Промышленные технологии

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

Когда инженеры проектируют цифровые системы, они обычно начинают с таблицы истинности, описывающей желаемое логическое поведение.

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

Хотя опытные проектировщики могут мгновенно сопоставить таблицу истинности с аппаратным решением, существуют систематические методы, доступные любому инженеру.

Булева алгебра предоставляет четкий пошаговый метод превращения любой таблицы истинности в работающую схему.

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

Высокотемпературное сжигание используется для нейтрализации опасных отходов. Этот метод распространен для медицинских отходов, которые могут содержать смертоносные патогены.

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

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

Наша система поэтому требует надежного детектора пламени, разрешающего подачу отходов только при подтвержденном пламени.

Обнаружение пламени можно осуществлять оптическими, термическими или электропроводностными датчиками — каждый со своими достоинствами и недостатками.

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

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

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

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

Сначала определим логическое поведение. Достаточно ли одного датчика? Нет — открытие клапана, если только один из трех датчиков сообщает о пламени, подрывает избыточность и безопасность.

Вместо этого требуем согласия всех трех датчиков перед открытием клапана. Этот подход гарантирует, что единичное ложное срабатывание «пламя» не удержит клапан открытым; все три должны отказать одновременно — крайне маловероятный сценарий.

Следовательно, таблица истинности проста: выход высокий только когда входы A, B и C все высоки.

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

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

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

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

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

Хотя этот дизайн максимизирует безопасность, он делает систему уязвимой к «ложно-отрицательным» отказам датчиков: датчик, не обнаруживший реальное пламя, закроет клапан без нужды, тратя топливо и время простоя.

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

Ниже таблица истинности для этой логики.

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

Использование Суммы Произведений

На первый взгляд неочевидно, какая схема реализует эту таблицу истинности. Форма Суммы Произведений (СП) булева выражения решает эту проблему.

Выражение СП — это сумма слагаемых-произведений, каждое произведение являясь конъюнкцией переменных или их инверсий.

Например: ABC + BC + DF — простое СП, где «ABC», «BC», «DF» — слагаемые-произведения.

Для получения СП из таблицы истинности перечислите все строки, где выход равен 1, и запишите слагаемое-произведение, равное 1 для этих входов.

Рассмотрим строку A=0, B=1, C=1. Слагаемое-произведение A′BC равно 1 только при этом точном условии.

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

Остальные строки с единицей дают еще три слагаемых-произведения:

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

Объединяя их логическим ИЛИ, получаем полное СП-выражение для логики «два из трех»:

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

Имея СП, проектирование схемы становится прямым: каждое слагаемое-произведение отображается на гейт И, а ИЛИ этих гейтов дает финальный выход.

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

Хотя верные, эти схемы могут быть громоздкими. Булева алгебра позволяет радикально упростить выражение.

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

С упрощенным выражением можно построить более компактную логику — на гейтах или реле — сохраняя ту же функцию.

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

Любая из этих оптимизированных схем надежно управляет клапаном сжигателя на основе подтверждения пламени по правилу «два из трех».

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

Когда все датчики исправны, они либо все читают низкий (000), либо все высокий (111). Любая другая комбинация (001, 010, 011, 100, 101, 110) указывает на несоответствие и потенциальный сбой.

Сигнализация, срабатывающая на таком расхождении, позволяет операторам решить: продолжать работу или остановиться для безопасности.

Для проектирования этого «детектора расхождений датчиков» расширим таблицу истинности дополнительным столбцом выхода, представляющим сигнал тревоги.

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

Формирование СП для этого столбца потребовало бы шести слагаемых-произведений — громоздко и ошибочно.

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

Использование Произведения Сумм

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

Выражение ПС перемножает суммы переменных (слагаемые-суммы). Например: (A + B)(C + D).

Сначала найдите строки с низким (0) выходом и запишите сумму, равную 0 при этих входных условиях.

Для первой строки (A=0, B=0, C=0) слагаемое-сумма — (A + B + C), равная 0 только когда все три нуля.

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

Только одна другая строка дает 0 на выходе: A=1, B=1, C=1. Соответствующая сумма — (A′ + B′ + C′).

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

Полное ПС-выражение — произведение этих двух сумм:

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

В то время как СП естественно отображается на сеть гейтов И, питающих один гейт ИЛИ, ПС отображается на гейты ИЛИ, питающие один гейт И.

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

Альтернативно, релейная реализация ПС использует параллельные контакты в последовательном соединении, зеркаля конфигурацию гейтов.

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

Эти две схемы иллюстрируют только логику расхождений датчиков; полная система объединяет детектор «хорошего пламени» и детектор расхождений.

В реализации на ПЛК полная логика может выглядеть так:

 

От таблиц истинности к надежной логике: мастерство булевых выражений для безопасного цифрового проектирования

 

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

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

ОБЗОР:

СВЯЗАННЫЕ РАБОЧИЕ ЛИСТЫ:


Промышленные технологии

  1. Основной чек-лист устранения неисправностей: стратегии быстрой диагностики сбоев системы
  2. Группировка бит в цифровых системах: терминология и значение
  3. Проектирование безопасных (fail-safe) систем управления для надежности и безопасности
  4. Понимание булевой алгебры: от логических основ к цифровым схемам
  5. Булева арифметика: сложение, умножение и дополнение в цифровой логике
  6. Ключевые тождества булевой алгебры: исчерпывающий обзор
  7. Основные правила упрощения булевых выражений для проектирования логических схем
  8. Выбор инструмента для упрощения логики: карты Карно, булева алгебра и САПР
  9. Понимание булевых отношений с помощью диаграмм Венна
  10. Максимизация срока службы системы пожаротушения