logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[Rozwiązano] Zatrzymanie i wznowienie timera w sterowniku PLC Siemens w FactoryIO, STEP7 V5.7

Gracjanautomatyk 13 Paź 2023 02:13 531 5
  • #1 20768576
    Gracjanautomatyk
    Poziom 6  
    Posty: 18

    Witam wszystkich,

    Na wstępie chcę zaznaczyć, że jestem na początkowym etapie jeśli chodzi o programowanie sterowników PLC, więc proszę o wyrozumiałość od bardziej doświadczonych osób :)

    Póki co bawię się w FactoryIO i na symulatorze, natknąłem się na problem z timerem, chciałbym żeby timer po resecie zatrzymywał się i po ponownym załączeniu nie zaczynał od początkowej wartości, domyślam się, że timerem takiego efektu nie uzyskam, może coś z generatorem pomyśleć?, wczoraj mimo prób nie mogłem uzyskać oczekiwanego efektu. Wrzucę zdjęcie timera z mojego programu i jeśli ktoś może mnie nakierować na rozwiązanie, to będę bardzo wdzięczny.

    Dodam jeszcze, że do programowania używam simatica managera (STEP7 V5.7).

    Zatrzymanie i wznowienie timera w sterowniku PLC Siemens w FactoryIO, STEP7 V5.7
  • Pomocny post
    #3 20768970
    Markos80

    Specjalista Automatyk
    Posty: 1855
    Pomógł: 473
    Ocena: 212
    Gracjanautomatyk napisał:
    chciałbym żeby timer po resecie zatrzymywał się i po ponownym załączeniu nie zaczynał od początkowej wartości,
    Jak sama nazwa wskazuje Reset ustawia on nowa, więc w tej formie na pewno nie zadziała.
    Wydaje mi się, że używanie "starych", wbudowanych timer'ów mija się z celem w dzisiejszych czasach. Chyba, że chcesz się szkolić do sterowników typu S5 albo ogólnie poznać?
    Obecnie lepiej korzystać z bloków systemowych. Dla S7-300 można je dorzucić z biblioteki:
    Zrzut ekranu z programu SIMATIC Manager pokazujący bibliotekę standardową z blokami funkcji.

    Opisz może w skrócie co byś chciał osiągnąć, w Step7 można użyć FC80 z biblioteki kompatybilności, w TIA jest jako TONR_X:
    Zrzut ekranu z oprogramowania SIMATIC Manager z otwartą biblioteką standardową dla bloków S7.
    Konto firmowe:
    PUMPA
    Widok 7, Łuczyce, 32-010 | Tel.: 502XXXXXX (Pokaż) | Strona WWW: www.pumpa.pl
  • #4 20769174
    Gracjanautomatyk
    Poziom 6  
    Posty: 18
    Hej,

    Ogólnie wymyśliłem sobie w ramach edukacji stworzenie prostego programu napełniający zbiornik wody na timerach (tak, aby zapoznać się z zasadą działania timerów), zasada działania ogólnie jest dość prosta, po załączeniu przycisku "napełnianie" otwiera się zawór napełniający zbiornik przez określony czas (w moim wypadku jest to 40sek), z przerzuceniem na licznik cyfrowy timera poszło mi dość sprawnie, ale nie podoba mi się w moim programie to, że jak np. w trakcie napełniania nacisnę grzyb awaryjny, to timer resetuje swój cykl i zaczyna zliczać od nowa, co jak wiadomo będzie skutkowało przelaniem zbiornika, a w tym programie chciałbym tego uniknąć.


    Zbiornik z wodą w trakcie napełniania z panelem sterowania na pierwszym planie.

    Elektroniczny panel kontrolny obok zbiornika z wodą w hali.
  • Pomocny post
    #5 20769197
    Markos80

    Specjalista Automatyk
    Posty: 1855
    Pomógł: 473
    Ocena: 212
    W takim razie spróbuj użyć FC80 TONR albo samemu zrobić licznik, bo wspomniane FC tak działa. W każdym cyklu sterownika zwiększa licznik o czas ostatniego wywołania podany na wejście DALTA_T. Można tam podać np.: czas trwania OB1 ze zmiennej OB1_PREV_CYCLE, która jest zmienną tymczasową w tym bloku organizacyjnym.
    Zeruje się po podaniu sygnału na wejście RESET.
    Dobry opis jest we wbudowanej pomocy. Naciśnij F1 na tym bloku.
    Konto firmowe:
    PUMPA
    Widok 7, Łuczyce, 32-010 | Tel.: 502XXXXXX (Pokaż) | Strona WWW: www.pumpa.pl
  • #6 21088555
    Gracjanautomatyk
    Poziom 6  
    Posty: 18
    użyłem FC80 TONR.
REKLAMA