Просмотр полной версии : не работают триггеры R_trig & F_trig
Юрий Поляков
10.12.2010, 09:51
Здравствуйте.
Сделал программу с использованием триггеров.
Высветилась проблема - они НИКОГДА не переключаются.
Сделал простую тестовую программу, на которую подаю сигнал логического 0 и 1, который поступает на вход двух триггеров - F_TRIG и R_TRIG. Выход не меняется никогда. Как в режиме эмуляции, так и в контроллере.
Собственно о системе:
ОВЕН ПЛК-100 R-L,
CoDeSys 2.3.8.1 (Build 5 Jun 2007);
Библиотека Standard 20.2.06 11:31:06
Помогите пожалуйста.
Николаев Андрей
10.12.2010, 10:37
Многих это вводит в заблуждение... ну и документацию никто не читает...
R_TRIG и F_TRIG в понимании наших инженеров - одновибратор... То есть при возникновении импульса данные блоки отслеживают фронт, и соответственно НА ОДИН ЦИКЛ ПЛК устанавливают свой выход в true...
В документации это описано.
Малышев Олег
10.12.2010, 12:10
после F_ и R_ триггеров ставьте Sr триггер
Юрий Поляков
10.12.2010, 12:37
А в какой библиотеке есть Sr триггеры?
Александр Приходько
10.12.2010, 13:06
SR
Входит в standard.lib.
Переключатель с доминантой включения:
Q1 = SR (SET1, RESET) означает:
Q1 = (NOT RESET AND Q1) OR SET1
Входные переменные SET1 и RESET - как и выходная переменная Q1 типа BOOL.
Пример ST:
SRInst(SET1:= VarBOOL1 , RESET:=VarBOOL2 );
VarBOOL3 := SRInst.Q1 ;
Данная информация взята из справки!
Юрий Поляков
10.12.2010, 13:53
спасибо всем!
с этими двустабильными элементами стало как-то полегче жить. а то хотел собирать триггер из элементов.
lara197a
10.12.2010, 19:58
как бы человек просто разбирается и хочет посмотреть.
как сделать чтоб при следующем импульсе выключался?
Николаев Андрей
11.10.2011, 07:25
Кто при следующем импульсе выключался?
Наверное тут как обычно путаница.
С Советской точки зрения F_Trig и R_Trig - это не триггер, а "одновибратор" .
RS триггер есть отдельно.
Darksomeone
15.05.2016, 19:33
Такая-же ситуация, просто перестал работать и все. RS не помогает
Такая-же ситуация, просто перестал работать и все. RS не помогает
на форуме можно выкладывать скрины экрана, сами не "рабочие" проекты, так будет легче определить что там у Вас перестало работать
Чтобы при одном импульсе включался, а при следующем выключался надо использовать либо toggle либо FF-DRE (выход через инверсию завести на D и сигнал подавать на CLK) из библиотеки oscat.
R и F триггеры для ловли входного сигнала по определенному фронту.
Newcomer
16.05.2016, 10:38
R и F триггеры для ловли входного сигнала по определенному фронту.
А что есть разные виды фронтов. Фронт он один единственный.
Newcomer ну как бы передний фронт (от 0 к 1) и задний фронт (от 1 до 0).
R и F триггеры для ловли соответствующего фронта сигнала.
Newcomer
16.05.2016, 10:53
Newcomer ну как бы передний фронт (от 0 к 1) и задний фронт (от 1 до 0).
R и F триггеры для ловли соответствующего фронта сигнала.
Есть фронт сигнала, есть срез сигнала. Задний фронт - это бред.
Newcomer ну раз вы говорите бред, то наверное так и есть и отслеживание перехода сигнала из 1 в 0 вообще не стоит заморачиваться. Аминь....
Есть фронт сигнала, есть срез сигнала. Задний фронт - это бред.
О чем речь - Вы поняли. Дальше - обсуждение терминологии. В этом монастыре многим понятен термин "задний фронт", даже тем кто использует по жизни другие термины.
melky употребив термин дал пояснения (1-0). Для разумного - достаточно.
Если понты не позволяют принять это - можете изучать устав в другом монастыре.
Newcomer
16.05.2016, 12:31
Для тех кто не понял, уточняю. Передний фронт - это масло масляное. Задний фронт - это несуразица.
Newcomer Википедия и справка CoDeSys говорят иначе.
Да и народные названия для фронта и спада "передний фронт" и "задний фронт" живут со времен еще 155-й серии микросхем а то и раньше...
Если речь о придирках, то выше уже написал, Аминь...
krollcbas
16.05.2016, 12:57
Поддерживаю "задний и передний фронты", это понятно. Главное легко можно разъяснить Заказчику и он "Заказчик" это понимает.
Когда на курсах в Сименсе учили, то там обиходное - "Ловушка переднего фронта", "Ловушка заднего фронта".
Слух режет еще сильнее.
Newcomer
16.05.2016, 13:28
Поддерживаю "задний и передний фронты", это понятно.
Если живешь по понятиям, то конечно. ;)
Читаем #19. Самое первое предложение.
Или говорим про какую среду ?
PS
-Алле, зая, ты где едешь ? По шоссе N ? Ты смотри аккуратнее, по радио сказали - там один м-к по встречке несется !!
-Алле, милай, да какой один ! Тут их сотни
Newcomer абсолютно прав. Господа, вдумчиво прочтите пост #18. То что пишет Newcomer - это грамотное выражение, а то, что melky - простонародное (безграмотное). То же самое написано в википедии: https://ru.wikipedia.org/wiki/%D0%A4%D1%80%D0%BE%D0%BD%D1%82_%D1%81%D0%B8%D0%B3% D0%BD%D0%B0%D0%BB%D0%B0
Далее каждый волен выбирать сам.
Newcomer абсолютно прав. Господа, вдумчиво прочтите пост #18. То что пишет Newcomer - это грамотное выражение, а то, что melky - простонародное (безграмотное). То же самое написано в википедии: https://ru.wikipedia.org/wiki/%D0%A4%D1%80%D0%BE%D0%BD%D1%82_%D1%81%D0%B8%D0%B3% D0%BD%D0%B0%D0%BB%D0%B0
Далее каждый волен выбирать сам.
а нам не шашечки, а ехать. Тут все поняли о том что речь о переходах между состояниями, дискуссия о терминологии проблему не продвигает к логическому завершению
Darksomeone
18.05.2016, 09:13
Ребят, не суть важно, у меня беда, сначала работало, потом перестало.
F_Trig перестал срабатывать. От программы необходимо следующее: активирую клапан по переменной, единичка должна всегда сетиться, когда условие не соблюдается - получается ноль, и переменная должна сброситься но без перезаписи, это для того что-бы я мог активировать клапан (присвоить переменной 1) из другого блока программы. Что может быть такое? скриншот во вложении. Проект по ссылке https://cloud.mail.ru/public/GXZd/ahRsfe5V6
24503
Нифига не понял, что вы хотите сделать. R и F триггеры не устанавливают переменных, они на выходе дают всего лишь ИМПУЛЬС при переходе от 0 к 1 или от 1 к 0 соответственно.
Darksomeone
18.05.2016, 10:53
Заработало! может кому пригодиться: началось оказывается с того что случайно запустил (или установил) проект в codesys под профилем sp6. Далее работал как и раньше под профилем sp7, и заметил вышеописанный баг. Удалил из установки/удаления программ sodesys 3.5 sp6 и все заработало!
спасибо за внимание!
Powered by vBulletin® Version 4.2.3 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot