Страница 5 из 5 ПерваяПервая ... 345
Показано с 41 по 48 из 48

Тема: Пауза таймера?

  1. #41

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Lordorakus Вам кто-то мешает взять код на ST и создать FBD блок и использовать его в CFC ?
    Чутка поспешил комментарий написать, не проанализировав код выше
    Уже сделал данный таймер по примеру, спасибо petera

  2. #42

    По умолчанию

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

  3. #43

    По умолчанию

    Цитата Сообщение от werqas Посмотреть сообщение
    Здравствуйте, не могли бы вы помочь переделать данный код для tp таймера. Возможно ли это?
    Вы бы лучше написали, что вам надо. Как должно работать, может и переделывать ничего не надо.

  4. #44

    По умолчанию

    Нужен блок, который начинает работу при подачи 1 на вход, начинает отсчет времени и подает все это время 1 на выход. После истечения заданного времени на выход подается 0 . Но нужно реализовать паузу. То есть когда подается 1 на вход "пауза" время останавливается и запоминается, на выход - 0. Когда снимем 1 с паузы, время должно продолжиться

  5. #45
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    3,825

    По умолчанию

    Цитата Сообщение от werqas Посмотреть сообщение
    Нужен блок, который начинает работу при подачи 1 на вход, начинает отсчет времени и подает все это время 1 на выход. После истечения заданного времени на выход подается 0 . Но нужно реализовать паузу. То есть когда подается 1 на вход "пауза" время останавливается и запоминается, на выход - 0. Когда снимем 1 с паузы, время должно продолжиться
    Все это можно сделать, используя мой таймер https://owen.ru/forum/showthread.php...l=1#post318409

    Захват-01.png

    Скрытый текст:
    Последний раз редактировалось petera; 25.11.2021 в 13:40.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  6. #46

    По умолчанию

    Цитата Сообщение от werqas Посмотреть сообщение
    Нужен блок, который начинает работу при подачи 1 на вход, начинает отсчет времени и подает все это время 1 на выход. После истечения заданного времени на выход подается 0 . Но нужно реализовать паузу. То есть когда подается 1 на вход "пауза" время останавливается и запоминается, на выход - 0. Когда снимем 1 с паузы, время должно продолжиться
    petera если не против, просто немного изменил ваш код
    Код:
    FUNCTION_BLOCK TP_
    VAR_INPUT
    	IN: BOOL;
    	Pause: BOOL;
    	PT: TIME;
    END_VAR
    VAR_OUTPUT
    	Q: BOOL;
    	ET: TIME;
    END_VAR
    VAR
    	clk: BOOL;
    	StartTime: TIME;
    	tx: TIME;
    END_VAR
    ______________________________________________________
    tx:= TIME();
    IF Pause THEN
    	StartTime:= tx - ET;
    END_IF
    IF IN AND NOT clk AND NOT Pause THEN
    	StartTime:= tx;
    	clk:= TRUE;
           ET:=T#0ms;
    ELSIF NOT IN AND   ET=PT  THEN
    	clk:= FALSE;
    END_IF
    IF clk AND ET<PT  THEN
         ET:= MIN(PT, tx - StartTime);
       Q:=ET<PT AND IN  AND NOT Pause;
    END_IF
    Последний раз редактировалось kondor3000; 25.11.2021 в 23:36.

  7. #47

    По умолчанию

    Чё-то примеры не скачиваются. Видимо, удалили уже, тема старая. Жаль...

  8. #48

    По умолчанию

    Цитата Сообщение от ks-app Посмотреть сообщение
    Чё-то примеры не скачиваются. Видимо, удалили уже, тема старая. Жаль...
    Зачем скачивать примеры, если выше выложены коды ФБ (функц. блока) таймера, скопируйте и пользуйтесь)1 Таймеры.jpg
    Последний раз редактировалось kondor3000; 23.10.2022 в 10:49.

Страница 5 из 5 ПерваяПервая ... 345

Ваши права

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