Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 18 из 18

Тема: Не запускается таймер второй раз

  1. #11

    По умолчанию

    кажется становится чуток понятнее из Вашего поста если мы хотим записать в порт входа истину, то мы пишем TimerStend.in:=true, а если хотим выполнить таймер, то пишем TimerStend(In:=true, PT:=T#0S) я правильно понял? и сам проект
    Вложения Вложения

  2. #12
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,248

    По умолчанию

    когда в РТ пишите ноль секунд, Вы таким образом нарушаете работу таймера, для обычного ТР это сброс, а для TON и TOF это немедленная передача входа на выход. По поводу просто точки и скобок всё верно, только в скобках таймер выполняется
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  3. #13

    По умолчанию

    IF NOT Start_Button AND tonhot.Q=FALSE THEN

    timerHot:=TRUE;
    tofHot.IN:=TRUE;
    END_IF;

    tonhot(in:=timerHot, pt:=T#10S);

    IF tonHot.Q=TRUE THEN
    timerHot:=FALSE;
    END_IF

    tofhot(in:=tonhot.Q, pt:=T#5S);

    IF tofHot.Q=FALSE THEN
    timerHot:=TRUE;

    END_IF
    исправил. работает, но на сколько корректно оформил не знаю

  4. #14

    По умолчанию

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

  5. #15
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,248

    По умолчанию

    ну там все печально. какие то не законченные условия, не охватывающие весь диапазон значений, дубляж переменных для управления таймером, какой то изврат с включением выключением таймеров
    Лучше напишите что требуется для управления Вашими тенами и вентилятором, опишите какие сигналы действительно должны управлять, а какие включать уже реальные устройства
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  6. #16

    По умолчанию

    Вроде запустил, убрал все лишнее. по ТЗ переменные Temp_Ch1 - это термопара с нее берутся значения температуры и если они меньше заданной температуры (Temp_Ch1z - заданная температура (35градусов для отладки)) на 20%(28 градусов для отладки) то просто включаются два (переменные выхода q5,q6) пускателя которые управляют нагревателями и они остаются включенными до тех пор пока температура не превысит 28 градусов. Как только температура превысила 28 градусов в дело вступает примитивный ПИД регулятор который включая и выключая пускатели нагревателей подтягивает температуру к заданной и вся эта температура должна поддерживаться на протяжения времени цикла как только время цикла закончилось то и все выключилось на протяжении всего цикла вентилятор q9 включен
    Вложения Вложения

  7. #17
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,248

    По умолчанию

    Код:
    IF Hot_Run=TRUE AND Hold_Run=FALSE AND Start_Button=TRUE AND VarBOOL2=TRUE THEN //Условие для работы камеры нагрева
    	q9:=TRUE;			// включаем вентилятор камеры нагрева
    	//timerHot:=FALSE;	// Выключаем таймер нагрева
    
    END_IF;	
    //Условие на включение ПИД, включится когда температура на термопаре будет больше заданной температуры за минусом 20% и меньше или равна заданной  
    	timerHot:=FALSE;
    	IF  Temp_Ch1>(Temp_Ch1z-(Temp_Ch1z*0.2)) AND Temp_Ch1<=Temp_Ch1z  THEN
    		timerHot:=TRUE;	 //Переменная для запуска таймеров будет менятся в зависимости от того какой таймер сработал
    	ELSIF  Temp_Ch1<=(Temp_Ch1z-(Temp_Ch1z*0.2)) AND pid=FALSE THEN
    			q5:=TRUE;
    			q6:=TRUE;	
    	ELSE
    			q5:=FALSE;
    			q6:=FALSE;	
    	END_IF;		
    //
    	IF tonhot.q THEN
    		q5:=NOT q5;
    		q6:=NOT q6;
    	END_IF;
    	tonHot(in:=NOT tonHot.Q AND timerHot, pt:=T#2S);
    так попробуйте
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  8. #18

    По умолчанию

    Действительно все работает проверил на железе. оптимизировали так оптимизировали даже нечего сказать просто восхищен. Спасибо

Страница 2 из 2 ПерваяПервая 12

Похожие темы

  1. Ответов: 0
    Последнее сообщение: 23.07.2015, 11:43
  2. Ответов: 5
    Последнее сообщение: 19.09.2014, 10:10
  3. трм151, включить второй вычислитель...
    от Инженер-Эл в разделе Эксплуатация
    Ответов: 1
    Последнее сообщение: 14.09.2010, 05:58
  4. трм 133 - второй цап - как его использовать?
    от Const в разделе Подбор Оборудования
    Ответов: 2
    Последнее сообщение: 03.09.2010, 15:29
  5. Второй вход ТРМ-151-06
    от RWG в разделе Эксплуатация
    Ответов: 3
    Последнее сообщение: 27.02.2008, 17:25

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •