К списку уроков

Урок 03

Логические значения TRUE и FALSE

Что означают TRUE и FALSE в PLC-программах и как они связаны с реальными сигналами.

1. Что разбираем

В PLC-программах часто используются логические значения:

TRUE
FALSE

Они обозначают два возможных состояния сигнала.

ЗначениеУпрощённый смысл
TRUEсигнал активен
FALSEсигнал неактивен

Также можно встретить другие обозначения:

Логическое значениеЧисловое обозначениеПростой смысл
TRUE1включено
FALSE0выключено

Например:

Start_Button = TRUE

означает:

кнопка Start активна

А запись:

Motor_Run = FALSE

означает:

команда запуска двигателя неактивна

2. Почему это важно для PLC

PLC работает с сигналами. Многие из этих сигналов имеют только два состояния.

Примеры:

СигналВозможные состояния
Кнопка нажатада / нет
Датчик видит детальда / нет
Дверь закрытада / нет
Авария активнада / нет
Двигатель включёнда / нет
Клапан открытда / нет
  • Такие сигналы удобно описывать через TRUE и FALSE.
  • Например:
Door_Closed = TRUE

означает:

дверь закрыта

А:

Door_Closed = FALSE

означает:

дверь не закрыта

3. TRUE/FALSE в реальной системе

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

Например, дискретный вход PLC может быть:

есть напряжение на входе  → TRUE
нет напряжения на входе   → FALSE

Но для начального понимания достаточно помнить:

TRUE  = сигнал активен
FALSE = сигнал неактивен

В симуляторе PLC Portal физического напряжения нет. Вместо этого пользователь вручную переключает входы между TRUE и FALSE.

4. Пример с кнопкой

Есть вход:

Start_Button

Если кнопка не нажата:

Start_Button = FALSE

Если кнопка нажата:

Start_Button = TRUE

Простая FBD-схема:

[Start_Button] ───────────────> [Lamp_On]

Логика работы:

Start_ButtonLamp_On
FALSEFALSE
TRUETRUE

То есть лампа включается, когда кнопка активна.

5. Пример с датчиком

Есть датчик наличия детали:

Part_Sensor

Если детали нет:

Part_Sensor = FALSE

Если деталь есть:

Part_Sensor = TRUE

Такой сигнал можно использовать в программе:

Если Part_Sensor = TRUE, остановить конвейер.

Или:

Если Part_Sensor = TRUE, запустить следующий механизм.

Само значение TRUE не говорит, что именно нужно делать. Оно только показывает состояние сигнала. Решение принимает программа.

6. TRUE/FALSE для выходов

Логические значения используются не только для входов, но и для выходов.

Например:

Motor_Run = TRUE

означает:

выход команды запуска двигателя активен

А:

Motor_Run = FALSE

означает:

команда запуска двигателя выключена

Пример:

Motor_RunСостояние
FALSEдвигатель не должен работать
TRUEдвигатель должен работать

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

7. Активный и неактивный сигнал

Когда говорят, что сигнал активен, обычно имеют в виду:

сигнал находится в состоянии TRUE

Когда говорят, что сигнал неактивен:

сигнал находится в состоянии FALSE

Примеры:

СигналTRUE означает
Start_Buttonкнопка Start нажата
Door_Closedдверь закрыта
Part_Sensorдеталь обнаружена
Motor_Runкоманда двигателя включена
Alarmавария активна
  • Но важно смотреть на имя сигнала.
  • Например:
Door_Closed = TRUE

означает «дверь закрыта».

А:

Door_Open = TRUE

означает уже другое — «дверь открыта».

Оба сигнала могут описывать одну и ту же дверь, но смысл у них противоположный. Поэтому имена сигналов должны быть понятными.

8. Активный высокий и активный низкий сигнал

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

На начальном этапе можно упростить:

TRUE  = условие выполнено
FALSE = условие не выполнено

Но в промышленной автоматике нужно помнить: не всегда физическое наличие напряжения означает «всё хорошо».

Пример с аварийной цепью:

Emergency_OK = TRUE

означает:

аварийная цепь исправна, работа разрешена

А:

Emergency_OK = FALSE

означает:

аварийная цепь разомкнута, работа запрещена

Поэтому для начинающего пользователя лучше называть сигнал не просто:

Emergency

а более точно:

Emergency_OK

или:

Emergency_Active

Так проще понять, что означает TRUE.

9. Как TRUE/FALSE используются в FBD

В FBD каждый вход блока получает логическое значение.

Например, блок AND:

[Input_1] ─────┐
               ├── [AND] ──> [Output_1]
[Input_2] ─────┘

У каждого входа может быть состояние TRUE или FALSE.

  • Блок обрабатывает эти значения и формирует результат.
  • Для AND правило такое:
Output_1 = TRUE только если Input_1 = TRUE и Input_2 = TRUE

Таблица:

Input_1Input_2Output_1
FALSEFALSEFALSE
TRUEFALSEFALSE
FALSETRUEFALSE
TRUETRUETRUE

В следующих уроках логические операции будут разобраны отдельно.

10. Пример: разрешение запуска двигателя

Допустим, есть два входа:

Start_Button
Safety_OK

И один выход:

Motor_Run

Задача:

Двигатель должен включаться только если нажата кнопка Start и есть разрешение Safety_OK.

В виде условия:

Motor_Run = Start_Button AND Safety_OK

Таблица работы:

Start_ButtonSafety_OKMotor_Run
FALSEFALSEFALSE
TRUEFALSEFALSE
FALSETRUEFALSE
TRUETRUETRUE

Выход Motor_Run становится TRUE только тогда, когда оба условия истинны.

11. Почему важно правильно понимать имена сигналов

Одно и то же физическое состояние можно назвать по-разному.

  • Например, есть защитная дверь.
  • Вариант 1:
Door_Closed

Тогда:

Door_ClosedСмысл
TRUEдверь закрыта
FALSEдверь не закрыта

Вариант 2:

Door_Open

Тогда:

Door_OpenСмысл
TRUEдверь открыта
FALSEдверь не открыта
  • Оба варианта допустимы, но в программе они будут читаться по-разному.
  • Для учебных программ лучше использовать имена, которые описывают разрешающее состояние:
Door_Closed
Emergency_OK
Safety_OK
Pressure_OK
Drive_Ready

Так начинающему пользователю проще читать логику.

12. Практика в симуляторе

Откройте простой пример в редакторе PLC Portal.

Задача примера:

Output_1 повторяет состояние Input_1.

Схема:

[Input_1] ───────────────> [Output_1]

Что нужно сделать:

  • Запустите симуляцию.
  • Установите Input_1 = FALSE.
  • Проверьте, что Output_1 = FALSE.
  • Установите Input_1 = TRUE.
  • Проверьте, что Output_1 = TRUE.
  • Верните Input_1 = FALSE.
  • Проверьте, что Output_1 снова стал FALSE.

Цель упражнения — увидеть, как логическое состояние входа влияет на логическое состояние выхода.

13. Дополнительное упражнение

Добавьте блок NOT между входом и выходом:

[Input_1] ──> [NOT] ──> [Output_1]

Проверьте поведение:

Input_1Output_1
FALSETRUE
TRUEFALSE

Цель упражнения — понять, что блоки в FBD могут изменять значение сигнала.

14. Что важно понять

TRUE и FALSE — это базовые логические значения, на которых строится работа FBD-программ.

Главная идея:

TRUE  = условие активно или выполнено
FALSE = условие неактивно или не выполнено

Но точный смысл зависит от имени сигнала.

Например:

Door_Closed = TRUE

и:

Alarm = TRUE

оба имеют значение TRUE, но смысл у них разный.

Первый сигнал говорит о нормальном условии. Второй сигнал говорит об аварии.

15. Краткий итог

В PLC и FBD логические сигналы имеют два состояния:

TRUE
FALSE

Они также могут обозначаться как:

1
0

Входы показывают состояние кнопок, датчиков и разрешений.

  • Выходы показывают команды, которые PLC выдаёт на оборудование.
  • Чтобы правильно читать FBD-схему, нужно понимать:
что означает TRUE для каждого сигнала;
что означает FALSE для каждого сигнала;
проходит ли сигнал через блоки AND, OR, NOT и другие элементы;
есть ли в схеме инверсия.

Практический блок

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