Back to examples

Program notes

Контроль датчиков положения

XOR выявляет рассогласование двух датчиков и включает диагностический выход.

Most lesson articles are currently available in Russian. English versions are being added gradually.

1. Что делает программа

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

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

Position_A XOR Position_B -> Sensor_Mismatch

2. Сигналы примера

СигналТипНазначение
Position_Aвходпервый датчик положения
Position_Bвходвторой датчик положения
XORблоксравнивает два булевых сигнала на различие
Sensor_Mismatchвыходдиагностический сигнал рассогласования

3. Основная логика

XOR возвращает TRUE, когда входы разные.

Sensor_Mismatch = Position_A XOR Position_B

Если оба датчика FALSE или оба TRUE, выход диагностики остаётся FALSE. Если один датчик TRUE, а второй FALSE, появляется рассогласование.

4. Таблица работы

Position_APosition_BSensor_Mismatch
FALSEFALSEFALSE
TRUEFALSETRUE
FALSETRUETRUE
TRUETRUEFALSE

5. Как проверять в симуляции

  • оставьте оба входа FALSE - ошибки нет;
  • включите только Position_A - Sensor_Mismatch станет TRUE;
  • включите оба входа - ошибка исчезнет;
  • выключите Position_A и оставьте Position_B TRUE - ошибка снова появится.

6. На что обратить внимание

XOR удобен для поиска различия, но он не объясняет причину. В реальной диагностике рядом часто добавляют отдельные сообщения: какой датчик активен, какой не активен, сколько времени длится рассогласование.

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

Check in editor

Open the ready-made FBD diagram, toggle inputs, and compare the simulation behavior with the program notes. The JSON is also available as a direct download.