TGViewer
Codesys 3.5 Обучение программированию. Codesys 3.5 Обучение программированию. @codesys4 · 267 subscribers
Post #147 191
R_TRIG и F_TRIG должны помнить состояние входа на предыдущем вызове.

Поэтому экземпляр функционального блока нужно вызывать циклически.

Например:

fbRise(CLK := xSignal);


на каждом выполнении задачи.

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

━━━━━━━━━━━━━━━━━━

⚠️ Ещё одна частая ошибка

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

Плохо:

fbTrig(CLK := xStart);
...
fbTrig(CLK := xReset);


У блока есть внутреннее состояние.

Для разных сигналов лучше создавать разные экземпляры:

fbStart : R_TRIG;
fbReset : R_TRIG;


и вызывать их отдельно:

fbStart(CLK := xStart);
fbReset(CLK := xReset);


Так программа будет понятнее и предсказуемее.

━━━━━━━━━━━━━━━━━━

💡 Главное различие

Обычный:

IF xSignal THEN


отвечает на вопрос:

«Сигнал сейчас TRUE?»

R_TRIG отвечает:

«Сигнал только что изменился с FALSE на TRUE?»

А F_TRIG:

«Сигнал только что изменился с TRUE на FALSE?»

━━━━━━━━━━━━━━━━━━

📌 Запомните

⬆️ R_TRIG

FALSE → TRUE


Передний фронт — сигнал появился.

⬇️ F_TRIG

TRUE → FALSE


Задний фронт — сигнал исчез.

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

━━━━━━━━━━━━━━━━━━

❓ Проверим себя

Сигнал изменяется так:

FALSE
FALSE
TRUE
TRUE
FALSE
FALSE
TRUE


Сколько раз за это время сработает R_TRIG, а сколько — F_TRIG?

💬 Напишите ответ в комментариях, не подглядывая в документацию 👇

#CODESYS #ПЛК #АСУТП #StructuredText #ST #R_TRIG #F_TRIG #ПрограммированиеПЛК
More from @codesys4
  1. Oct 5, 2026При следующем выполнении этого CASE значение eState будет прочитано снова, и тогда будет в…
  2. Oct 5, 2026🔀 CASE в CODESYS: как строить понятные пошаговые алгоритмы По мере роста программы ПЛК ча…
  3. Oct 5, 2026🔀 CASE в CODESYS: когда алгоритм начинает тонуть в IF Небольшой проект легко написать на…
  4. Oct 4, 2026📘 Новая книга по CODESYS 3.5 Подготовил практическую книгу по программированию ПЛК в CODE…
  5. Oct 4, 2026✅ РАЗБОР ЗАДАЧИ: R_TRIG и F_TRIG Исходный сигнал: Цикл: 1 2 3 4 5 6 7 Signal: FALSE FALSE…
  6. Oct 4, 2026🧠 РАЗБОР КОДА: R_TRIG и F_TRIG Посмотрите на изменение сигнала по циклам ПЛК: Цикл: 1 2 3…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →