S7: Wie macht man aus einer Drehzahl nen Impuls?

E-Techniker

Level-1
Beiträge
7
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich muss an einem Achswickler einen Drehimpuls auskoppeln als Wicklungszähler. Mir steht der Drehzahlistwert als Integer innerhalb der S7 zur Verfügung.

Hat jemand einen Tipp wie ich diesen Drehzahlistwert in einen Drehimpuls wandeln kann? D.h. ich brauche ein Bit das mir bei jeder Umdrehung der Haspel eine Flanke gibt.

Danke für eure Hilfe!

E-Techniker
 
Geänderte Version, da das Quatsch war.

Code:
//Aufuruf mit festem Zeitraster in Zeit-OB
L  akt_Drehzahl   
L  Zeit
/I
T  int_aktuellen_Wert   //Anzahl Umdrehungen seit letztem Aufruf
 
L int_aktuellen_Wert  //aktuellen Wert mit altem Wert vergleichen
L 0
>I
= bool_Imp_Umdrehung  //wird für einen Zyklus WAHR, wenn neuer Wert <> alter Wert

Das Zeitraster hängt von der Geschwindigkeit des Einlesen, den Drehzahlen (min. und max.) ab
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
@PeterEF

L int_aktuellen_Wert //aktuellen Wert mit altem Wert vergleichen
L int_alten_Wert
<>I
= bool_Imp_Umdrehung //wird für einen Zyklus WAHR, wenn neuer Wert <> alter Wert

L int_aktuellen_Wert //Merken für nächsten Zyklus
T int_alten_Wert

?? verstehe ich nicht ??
Was ist, wenn die Drehzahl konstant ist?
 
Also man kann es über die Zeit machen. Also die Drehzahl ist ja quasi eine Frequenz z.B. 1/s = 1Hz man muss dann eben eine Frequenz mit einem Hz erzeugen. Ich denke das man mit der Zykluszeit einer S7 aber schnell an eine grenze kommt.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also maximal kann der Antrieb 1250 Umdrehungen/Minute. Alternativ könnt ich es noch im Stromrichter (Masterdrive 6SE70) realisieren.
Das es sich über Zeit zurück rechnen läßt ist mir bewußt, nur wie ich dann auf ne Flanke komme ist mir nicht klar. *grübel*

Wäre toll, wenn ich hier ne Lösung finden würde!
 
@E-Techniker

Hier mal ein älterer Beitrag, der einige Elemente enthält, die du benötigen würdest. Dort hatten wir die Zeit zwischen zwei impulsen gemessen und dann eine davon abhängige (4-fach) Impulsffolge ausgegeben. Da du die Drehzal hast, kannst die die Zeit für eine Umdrehung ausrechnen und müßtest dann davon abhängig jede dieser Zeiteinheiten einen Impuls ausgeben. Besser und genauer wäre sicher ein Ini oder der Nullimpuls des Gebers.

http://www.sps-forum.de/showthread.php?t=11800
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@E-Techniker

Hier mal ein älterer Beitrag, der einige Elemente enthält, die du benötigen würdest. Dort hatten wir die Zeit zwischen zwei impulsen gemessen und dann eine davon abhängige (4-fach) Impulsffolge ausgegeben. Da du die Drehzal hast, kannst die die Zeit für eine Umdrehung ausrechnen und müßtest dann davon abhängig jede dieser Zeiteinheiten einen Impuls ausgeben. Besser und genauer wäre sicher ein Ini oder der Nullimpuls des Gebers.

http://www.sps-forum.de/showthread.php?t=11800

Das Problem ist, dass ich für eine Umdrehung nur 48 ms Zeit habe.
Und die Steuerung nicht gerade wenig zu tun hat.
Vielleicht ist es wirklich besser einen INI zu setzen oder den Nullimpuls vom Geber auszukoppeln. :confused:
 
War

auch nach Deiner Frage mein erster Gedanke...

Ini ist proportional zu den Windungen, Die Drehzahl mit ner Zeit zu verrechnen wäre mit zu kribbelig...

Habe ich das richtig verstanden, das du die rpm's als analogwert hast? Oder ist das ein winkelproportionaler Drehgeber?

Gruß, TomyG
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Besser und genauer wäre sicher ein Ini oder der Nullimpuls des Gebers.
Meine Meinung!

Ini, der entweder in einem 20ms-OB35 abgefragt wird oder auf eine Alarm-Eingangskarte geht (6ES7 321-7BH01-0AB0) oder direkt die Zählfunktion einer 314C-CPU nutzen (wenn eingesetzt).

mfg
Maxl
 
Zurück
Oben