Deutsch - Applikationen > easy in der Industrie

Umdrehungszähler

(1/3) > >>

engelschall:
Hi Leute,
ich bin neu hier und möchte mich mit einer kleinen Aufgabe gleich vorstellen. Ich programmiere (probiere) hin und wieder für einen Verwandten an einfachen Steuerungsaufgaben rum. Es ging mal um einen Garagentorantrieb, eine Ventilatordrehzahl und ähnliches.

Bei der nächsten Aufgabe soll ein Gerät soll bei einer bestimmten Umdrehungszahl (die man vorher über den Display eingegeben hat) abgeschaltet werden. Ich habe schon einiges an meinem MFD Titan rumprobiert aber nun bin ich ratlos.
Über einen Induktionssensor (an I1 am MFD) und eine Schaltnocke an der Welle der Anlage sollen die Umdrehungen gezählt werden. Das funktioniert bei niedrigen Drehzahlen (z.B. 30 U/min) auch tadellos aber bei höheren Drehzahlen( > ca. 100 U/min) zählt der Zähler (C01) nur Mist.
Ich habe dann mehrere Schaltnocken an die Welle gemacht um das Verhältnis Pause-Impuls zu verändern und anschließend über einen Arithmetikbaustein entsprechend geteilt um wieder auf das wahre Ergebnis zu kommen. Das Ergebnis war schon besser aber der Zähler hat trotzdem zu wenig Umdrehungen gezählt (wahr 400, gezählt 340 z.B.)
Die wahre Drehzahl hatte ich anhand eines LASER Umdrehungsmessgerätes einmal bestimmt und immer versucht auf dieses Ergebnis zu kommen.

Frage ist: wie muss man die Mechanik auslegen bzw. wie muss ich den Zähler in der SPS richtig einbauen damit ein vernünftiges Ergebnis rauskommt?
Wäre super wenn mir da jemand helfen könnte.

TomiL:
Hallo Engelschall,


das ist eigentlich das gleiche : http://easy-forum.net/index.php?topic=6835.msg29729#msg29729

das Programmteil regelt bei mir einen Dieselgenerator mit 1500 U/min +-  10 U/min


Gruß

TomiL

engelschall:
Vielen Dank für den Tipp TomiL,
ich denke das ist doch etwas anderes. Ich will ja nicht die Umdrehungen / Minute regeln, sondern nur die Umdrehungen zählen.
Sprich ich will wissen wie oft sich die Achse des Motors gedreht hat.
Die Aufgabe ist bei-sagen wir mal 300 Umdrehungen- den Motor anzuhalten, egal ob er jetzt mit 30 Umdrehungen/Minute läuft oder bei 100 Umdrehungen/Minute. Er braucht halt einmal 10min und einmal 3min aber die Achse soll nach 1000 Umdrehungen definitiv wieder gebremst werden.
Ich kann bzgl. deines Programmteils da nicht wirklich erkennen wie ich auf meine Umdrehungen kommen kann. Die Zykluszeit kann ich nicht vorgeben da ich die anfangs nicht weis (Umdrehungszahl wird immer unterschiedlich sein). Oder erkenne ich das nicht?

Lutz:
Du hast den CPU-Typ nicht angegeben.

C-Zähler sind zykluszeitabhängig. Damit Du zählen kannst, muss mindestens in einem Zyklus eine Null und im nächsten eine Eins stehen. Deine Grenzfrequenz entspricht also 1/doppelte Zykluszeit (nur mit sehr viel gutem Willen, praktisch brauchst Du wohl erheblich mehr).

Du müsstest vermutlich einen schnellen Zähler einsetzen, der zyklusunabhängig arbeitet. Leider will der schnelle Zähler CH der 800er auch noch ein Puls-/Pausenverhältnis 1:1 . Je nach Welle ist das mechanisch nicht so einfach.

TomiL:
Hallo Engelschall,

das Programmteil ist der Drehzahlzähler inclusive Anzeige auf MFD realzeit.

Der Ausgang/Gespeicherter Wert im DB kannst du zum schalten in einem CP/ A oder sonstigem verwenden.

Die Zykluszeit ergibt einen definierten Rahmen des Gesamtprogramms in dem alle Zyklen abgearbeitet werden.

Gruß

TomiL

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln