Elektroda.pl
Elektroda.pl
X
SterControl
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Liczniki CTU w Microwin S7 200 CPU 214 i panel TD200

zybelek 20 Maj 2007 23:08 2966 4
  • #1 20 Maj 2007 23:08
    zybelek
    Poziom 12  

    Witam!
    Mam mały problem. Sprawa dotyczy licznika CTU zliczającego w górę w S7-200

    Pytanie jest następujące, muszę dokonać liczenia cykli pracy maszyny którą zaprojektowałem i wykonałem na sterowniku S7 200 z panelem TD 200.
    Licznik po odliczeniu około 1 miliona cykli powinien zatrzymać pracę maszyny i wyświetlić na panelu TD 200 Monit dotyczący przegladu. Problem polega na tym iż w licznikach CTU mogę ustawić max 32tyś zliczeń. ( dla maszyny to jest około 2 tygodni pracy po 8 godz.;( ) Może ktoś podpowie jak zrealizować odliczanie takich dużych wielkości? bo bez sęsu jest chyba robienie kaskady liczników CTU z zastosowaniem przepełnień.......????

    Kolejna sprawa to nie wiem jak wyświetlić na panelu TD200 aktualny stan licznika CTU Do jakiego bitu pamięci się odwołać w DATA BLOCK
    Próbowałem odwoływać się tak jak w Timerach TON lub TONR ( bo mam na nich zrobioną obsługę nastaw czasów z panela TD200 )ale z licznikami CTU tak się nie da......


    Proszę o sugestie i pomoc.
    Pozdrawiam Robert

    0 4
  • SterControl
  • #2 21 Maj 2007 07:22
    arwit
    Poziom 27  

    Co prawda kolego nie napisał którego konkretnie procesora używa, ale ja by zrezygnował w ogóle z licznika i zliczał cykle pracy na zasadzie dodawania (liczby real) np.:
    Network 1 //
    LD I0.0 // Informacja o wykonanym cyklu
    EU //Zbocze narastajace
    +R 1.0, MD0 // Dodanie jedynki do licznika zawartego w MD0
    Network 2
    LD SM0.0
    AR= MD0, 1000000.0 // Sprawdzenie czy zawartość licznika osiągnęła milion
    = Q0.0 // Wykonanie czegoś zwianego z osiągnięciem warunku

    W tym momencie rozwiąże się także twój drugi problem.

    0
  • SterControl
  • #3 21 Maj 2007 22:59
    zybelek
    Poziom 12  

    Witam!
    Przeprowadziłem implementację tak jak napisałeś lecz jest mały problem
    Jeśli chodzi o model S7 200 to mam CPU 214.

    Jak widać na zrzucie ekranu w Integer Match nie mam komponętu dodawani 2 liczb rzeczywistych. Więc w STL przepisałem kod ręcznie i oto co otrzymałem ...... ( widać na foto w trakcie uruchomionego Program Status) Dziwne długie liczby i literki.... Niestety nie działa to co zaproponowałeś....
    Dziwi mnie to ze przeprowadziłem wczesnie symulację na symulatorze s7 i tam działao i zliczało impulsy. Niestety po wgraniu do sterownika i uruchomieniu jest jakiś cyrk....

    Jest jeszcze jedna sprawa.... gdyby ten układ działał to jak wyzerować zliczoną wartość po przekroczeniu wartości zadanej ?
    Pozdrawiam Robert

    0
  • Pomocny post
    #4 22 Maj 2007 07:17
    arwit
    Poziom 27  

    Witam!
    Przepraszam, że zapytam czy kolega miał wcześniej do czynienia ze sterownikami lub czymś podobnym. Czy ja napisałem ze należy korzystać z Integer Match. Przecież liczby w formacie REAL to liczby zmiennoprzecinkowe (Floating Point Match). Pozatym pamiętaj ze real zajmuje 4 kolejne bajty, do których nie możesz nic wpisywać. Kolejna sprawa to zerowanie:

    LD SM0.1 // zerowanie licznika przy pierwszym starcie maszyny
    MOVR 0.0, MD0

    W przypadku innej przyczyn zerowania należy podmienić warunek LD SM0.1
    Ostatnia sprawa. Jeśli chcesz, aby w przyszłości ktoś ci pomógł to wyzeruj punktacje za obrazek, bo to w końcu twój interes.

    0
  • #5 25 Maj 2007 00:15
    zybelek
    Poziom 12  

    Witam!
    Tak masz rację kolego, sterownikami zajmuję się od 3 miesięcy. Poczytałem troszę o dodawaniu liczb rzeczywistych i rozwiązałem problem tak jak mówiłeś z dodawaniem liczb rzeczywistych z tym że nie ładowałem zmiennej do MD0 tylko do AC1 i zaczeło ładnie śmigać w sterowniku.
    Jeśli chodzi o wyświetlenie dodatkowo tej wartości z AC1 na panel TD200 zastosowałem konwenter TRUNC i wysłałem wartośc na panel.
    Wszystko działa tak jak powinno z tym że nie wiem czy jest to poprawnie zrobione ...... Nie sprawdziłem tylko czy wartości w tych akumulatorach są zapamiętane przy braku prądu czy też liczniki się wyzerują............. To sprawdzę jutro.

    Teraz mam inny problem w innej maszynie z resetem sterownika z monitem na panelu ,, CPU not respondent + '' ale o tym napisałem w innym poście...
    Pozdrawiam

    0