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

s7 200 enkoder i licznik wydajności

bartas666 08 Lip 2009 23:12 1353 1
  • #1 08 Lip 2009 23:12
    bartas666
    Poziom 18  

    Witam serdecznie! Mam taki problem. W pewnej maszynie która posiada wał główny z zamontowanym na nim enkoderem 360 potrzebuje określić wydajność maszyny czyli liczbę obrotów wału na minutę. Wykorzystuję tutaj sygnał C enkodera czyli reset po obrocie 360. Mam częśc programu za to odpowiedzialna ale po pewnym czasie się wysypuje tzn po zwiększeniu prędkości wału. Dojdzie gdzies do 30 obrotów na min i pozniej wyswietla tylko 0. Myślę o wykorzystaniu w pewien sposób przerwania czasowego zamiast mojego pomysłu aktualnego. Acha wartość wyświetlam na panelu TP177micro oto czesc programu:

    LD SM0.4
    ED
    MOVW C0, VW592


    LD SM0.0
    MOVW VW592, VW588
    *I +2,VW588


    LD I1.0
    LD SM0.4
    EU
    CTU C0,255



    CZYLI :

    po sygnale z bitu sm0.4 na opadające zbocze zostaje przepisana wartość licznika C0 do komórek vw592. Wartość ta jest mnożona razy 2 w celu uzyskania określonej i realnej wydajnośći . Wydajność zliczana jest poprzez licznik C0 z wejscia reetu enkodera i1.0 i nastepnie resetowany jest przez narastające zbocze sygnału. Co jest nei tak ze powyzej jakiejsc wartości wskazania vw588 którą odczytuje wynosi 0 ? moze jakies podpowiedz ilub rozwiazania podobne?pozdrawiam

    0 1
  • #2 09 Lip 2009 07:30
    arwit
    Poziom 27  

    Witam!
    Poszukaj na forum był już taki temat. Oczywiście rozwiązań jest kilka> Ja korzystam z przerwania opartego o sygnał zerujący z enkodera i mierze za pomocą timera 1ms czas pomiędzy kolejnymi zerowaniami. Reszta to matematyka

    0