Страница 430 из 455 ПерваяПервая ... 330380420428429430431432440 ... ПоследняяПоследняя
Показано с 4,291 по 4,300 из 4549

Тема: разные вопросы новичка

  1. #4291
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    13,070

    По умолчанию

    Возможно что-то не так делаете. Можно и читать, что записано. Были примеры ПЗУ от Сергей308, использовал для сохранения аварий в журнале, и соответственно мог прочитать по кругу, какие аварии были, то есть записаны давно.

  2. #4292
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    4,129

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Возможно что-то не так делаете. Можно и читать, что записано. Были примеры ПЗУ от Сергей308, использовал для сохранения аварий в журнале, и соответственно мог прочитать по кругу, какие аварии были, то есть записаны давно.
    В таймерах нельзя с помощью READ from FB текущее значение читать, только уставку
    Это (блоки W и R) он имел ввиду
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Мой канал на РУТУБЕ
    https://rutube.ru/channel/23641433/
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  3. #4293

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Возможно что-то не так делаете. Можно и читать, что записано. Были примеры ПЗУ от Сергей308, использовал для сохранения аварий в журнале, и соответственно мог прочитать по кругу, какие аварии были, то есть записаны давно.
    То что записано, это ежу понятно, мне надо что сейчас в нем в данный момент времени!
    Ну например: Есть ФБ TON (таймер задержки включения) и как бы мне нужно видеть сколько времени осталось до этого самого включения, а он этого не показывает, он показывает то что я в него записал, я это и так знаю!
    Когда я в симуляторе в отладке программы я вижу как там меняется значение, когда в Он-Лайн отладке уже ничего не видно, но это ладно, вот эти бы значения считывать и выводить на дисплей или далее в программу если есть такая необходимость...
    Ну была сначала мысль, что этот блок считывания настраивается, типа какие данные считывать, уставку или динамику, но этого тоже нет!

  4. #4294
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    13,070

    По умолчанию

    тю, ну ведь делали люди таймеры на ST и даже на FBD с выводом пройденного времени. Штатные не поддерживают такого. Овен не предусматривал

  5. #4295

    По умолчанию

    Надо использовать самописные таймеры и получить ET (отсчёт таймера). Тут первые 2 ссылки на TON и TOF, есть с паузой и без.
    В примерах программ есть ещё много всего, есть и таймер TP.
    https://owen.ru/forum/showthread.php...=9&p=429061#81
    Последний раз редактировалось kondor3000; 29.08.2025 в 13:06.

  6. #4296

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Надо использовать самописные таймеры и получить ET (отсчёт таймера). Тут первые 2 ссылки на TON и TOF, есть с паузой и без.
    В примерах программ есть ещё много всего, есть и таймер TP.
    https://owen.ru/forum/showthread.php...=9&p=429061#81
    О да, это то что нужно, спасибо! Теперь ни надо ничего самому городить

  7. #4297

    По умолчанию

    И все же городить пришлось, там нет ФБ TP (Импульс включения заданной длительности), там по ссылкам нет такого на ST, а я пока на ST не силен, поэтому он у меня получился аляповатым, т.е. по факту считает в 2 раза медленнее, хотя я почти уверен, если считать не миллисекундах а в секундах, то будет норм, в общем вот:
    2025-08-29_144838.png
    Ну и собсно сама программа, если кому такое барахло нужно:
    https://owen.ru/forum/attachment.php...1&d=1756469102

    Если кто напишет на ST, что нить похожее будет полезно...

  8. #4298
    Пользователь
    Регистрация
    09.12.2013
    Адрес
    Ставрополь
    Сообщений
    1,940

    По умолчанию

    Цитата Сообщение от Traveller Посмотреть сообщение
    Если кто напишет на ST, что нить похожее будет полезно...
    Не претендую на оптимальность
    Код:
    function_block fbTP
        
        var_input
            IN : bool;
            PT : udint;
            RST : bool;
        end_var
        
        var_output 
            Q : bool;
            ET : udint;
        end_var
        
        var 
            st, tm : udint;
            fl : bool;
        end_var
        
        tm := time_to_udint(get_time());
        if RST then
             Q := false;
        elsif IN and not fl then
            Q := true;
            st := tm;
        end_if
        if Q then 
            ET := tm - st;
            if ET >= PT then Q := false; end_if
        else 
            ET := PT;
        end_if;
        
        fl := Q or IN;
        
    end_function_block

  9. #4299

    По умолчанию

    Вариант 2:
    Owen.jpg
    Код:
    function_block TP
        
        var_input
            I : bool;       // Входной импульс
            T : udint;      // Время в мс
        end_var
        
        var_output 
            Q : bool;       // Выход
            ET : udint;     // Текущее значение таймера с обратным отсчетом
        end_var
        
        var
            ts, d : udint;  // Фиксация системного времени и дельты
            rt : SYS.RTRIG; // Тригер фронта 
        end_var
    
        rt(I := I and not Q);       // Фиксируем начало нового импульса
        if rt.Q then
            ts := time_to_udint(get_time()); ET := T; Q := true;  // Фиксируем продолжительность и начало импульса
        end_if
        if ET > 0 then
            d := time_to_udint(get_time()) - ts; ts := ts + d;    // Прошло времени в мc
            if ET > d then
                ET := ET - d;           // Уменьшаем ET на это время
            else
                ET := 0; Q := false;    // Иначе фиксируем завершение импульса
            end_if
        end_if    
    
    end_function_block

  10. #4300

    По умолчанию

    Цитата Сообщение от Traveller Посмотреть сообщение
    И все же городить пришлось, там нет ФБ TP (Импульс включения заданной длительности), там по ссылкам нет такого на ST, а я пока на ST не силен, поэтому он у меня получился аляповатым, т.е. по факту считает в 2 раза медленнее, хотя я почти уверен, если считать не миллисекундах а в секундах, то будет норм, в общем вот
    Ну и собсно сама программа, если кому такое барахло нужно:
    Если кто напишет на ST, что нить похожее будет полезно...
    Ниже код TP с паузой, умножение на 1000 на входе РТ -задача в секундах (можно убрать),
    разделить на 1000 на выходе ЕТ, не будет миллисекунд (можно добавить).
    Скрытый текст:
    Код:
    function_block TP_P //имя функционального блока
        var_input //объявление входных переменных
           In : bool; // вход таймера
           Pauz : bool; // пауза таймера
           PT : udint; //входная переменная для задачи времени
        end_var
        var_output //объявление выходных переменных
           Q : bool; // выход таймера
           ET: udint;   // время таймера
        end_var
        var
           x: BOOL;
          tx,t0: UDINT;
        end_var
    
       PT:=PT*1000; //  задача в секундах
       tx:= time_to_udint(GET_TIME());
       IF Pauz THEN T0:= tx - ET; END_IF
       IF IN AND NOT x THEN t0:= tx; x:= TRUE; Q:= true; 
        elsif NOT IN AND  x and ET=PT THEN ET:= PT; x:=false; Q:=false;  END_IF
       IF x AND  Q THEN IF PT > (tx - T0) THEN ET:= tx - t0; 
          ELSE  ET:= PT;  END_IF Q:= ET < PT AND x; END_IF 
              
    end_function_block
    Вложения Вложения
    Последний раз редактировалось kondor3000; 21.11.2025 в 22:21.

Страница 430 из 455 ПерваяПервая ... 330380420428429430431432440 ... ПоследняяПоследняя

Похожие темы

  1. ПЛК 110 - Вопросы новичка?
    от di-s в разделе ПЛК1хх
    Ответов: 21
    Последнее сообщение: 15.04.2025, 16:38
  2. Вопросы новичка!!!
    от sau в разделе ПЛК1хх
    Ответов: 42
    Последнее сообщение: 02.05.2022, 19:57
  3. Вопросы новичка по MasterScada
    от MrNobody в разделе Master SCADA 3
    Ответов: 4
    Последнее сообщение: 04.09.2014, 14:39
  4. Вопросы полного новичка
    от Korion в разделе ПЛК1хх
    Ответов: 11
    Последнее сообщение: 09.02.2010, 10:08
  5. Вопросы новичка по ПЛК
    от Ollegator в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 07.07.2009, 09:29

Ваши права

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