Drehzahl messen

anonym123

Level-1
Beiträge
10
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo, ich bräuchte dringend Hilfe bei einem Projekt
clear.png

Ich soll für ein Projekt, die Drehzahl einer Trommel mit einer Wago 750-880 messen und in Codesys, mit der visualisierten Tachoanzeige, anzeigen. Die max. Geschwindigkeit ist 50 Km/h und das Programm in Fub.
An der Trommel ist ein Magnet angebracht, der von der Mittelachse der Trommel 13 cm entfernt ist.
Zur Erfassung wurde ein Hall- Sensor, der eigentlich für schnelle Drehzahlerfassungen von Zahnrädern ausgelegt ist, angebracht. Dieser gibt ein 24V Impuls aus, wenn sich der Magnet vor dem Sensor befindet.
Ich wollte dieses boolesche Signal auf einer digitalen Eingangskarte (750-1415) legen und das boolesche Signal mit dem Baustein "Frequenz_messure" umwandeln, in eine Frequenz für den Tacho. Das funktioniert zwar, aber nur bis 25 Km/h! Ab 25 Km/h erhöht sich der gewandelte Frequenzwert nicht mehr. Mein verdacht war, dass die Impulse zu schnell für die 1415 Karte sind. Daher habe ich das ganze mal nachgerechnet:
V= 50Km/h; r=13 cm(von Mittelachse bis Magent); u=2*pi*r = 0,817m; V=u/T => T=u/V =59,203ms; f=1/T = 16,89Hz
Der Eingangsfilter der 750-1415 Karte hat 3ms Ansprechzeit nach Datenblatt und der Hall-Sensor eine Reaktionszeit von 15 Khz, also 66,67us. Soweit sollte doch alles Funktionieren oder?
Ich komme leider nicht auf den Fehler.:confused:
Schon mal vielen Dank für eure Hilfe!
 
Dreahzahl messen und in Codesys anzeigen

Hallo, ich bräuchte dringend Hilfe bei einem Projekt
clear.png

Ich soll für ein Projekt, die Drehzahl einer Trommel mit einer Wago 750-880 messen und in Codesys, mit der visualisierten Tachoanzeige, anzeigen. Die max. Geschwindigkeit ist 50 Km/h und das Programm in Fub.
An der Trommel ist ein Magnet angebracht, der von der Mittelachse der Trommel 13 cm entfernt ist.
Zur Erfassung wurde ein Hall- Sensor, der eigentlich für schnelle Drehzahlerfassungen von Zahnrädern ausgelegt ist, angebracht. Dieser gibt ein 24V Impuls aus, wenn sich der Magnet vor dem Sensor befindet.
Ich wollte dieses boolesche Signal auf einer digitalen Eingangskarte (750-1415) legen und das boolesche Signal mit dem Baustein "Frequenz_messure" umwandeln, in eine Frequenz für den Tacho. Das funktioniert zwar, aber nur bis 25 Km/h! Ab 25 Km/h erhöht sich der gewandelte Frequenzwert nicht mehr. Mein verdacht war, dass die Impulse zu schnell für die 1415 Karte sind. Daher habe ich das ganze mal nachgerechnet:
V= 50Km/h; r=13 cm(von Mittelachse bis Magent); u=2*pi*r = 0,817m; V=u/T => T=u/V =59,203ms; f=1/T = 16,89Hz
Der Eingangsfilter der 750-1415 Karte hat 3ms Ansprechzeit nach Datenblatt und der Hall-Sensor eine Reaktionszeit von 15 Khz, also 66,67us. Soweit sollte doch alles Funktionieren oder?
Ich komme leider nicht auf den Fehler. :confused:
Schon mal vielen Dank für eure Hilfe!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
V= 50Km/h; r=13 cm(von Mittelachse bis Magent); u=2*pi*r = 0,817m; V=u/T => T=u/V =59,203ms; f=1/T = 16,89Hz
Der Eingangsfilter der 750-1415 Karte hat 3ms Ansprechzeit nach Datenblatt und der Hall-Sensor eine Reaktionszeit von 15 Khz, also 66,67us. Soweit sollte doch alles Funktionieren oder?
Ich komme leider nicht auf den Fehler. :confused:
Ich hätte da einen Verdacht, rechnen wir ein wenig weiter...

16,89Hz -> ~ 17U/s -> ~0,059s/U -> 59ms/U

Der Sensor muss mindestens 3ms pro Umdrehung ein High-Signal liefern (damit man auf der sicheren Seite ist 6ms, 2fach-Abtastung).
Die CPU-Zykluszeit sollte ebenso die geforderte Abtastrate zulassen.

59ms = 1U (100%)
6ms = 0,102U

Damit der Sensor also für 6ms ein High-Signal liefern könnte, müsste die Länge des Magneten mindestens das 0,102-fache einer Umdrehung (Umfang) sein.
Ist dein Magnet lang genung?
 
Zuletzt bearbeitet:
Zum einen das was Ronin schreibt, zum anderen, wie ist die Zykluszeit der SPS eingestellt?

Für diese Aufgabe wäre eigentlich eine Zählerklemme genau die richtige Lösung.
 
Vielen Dank für die Schnellen Antworten:)
Der Magnet an der Trommel, hat in der Tat nur eine Länge von 5cm.
Nach der Rechnung von Ronin, bräuchte ich also bei 50 km/h eine min. Länge von 8,34cm.
Ich habe das Ganze nochmal für 30 km/h gerechnet und bin auf eine Länge von 5cm gekommen (sollte also ausreichend sein).
Allerdings steigt mein visualisierter Tacho schon ab 15 Km/h aus!
Ist mit 2facher Abtastung gemeint, daß ich 2 Magnete, jeden auf der Hälfte des Umfanges, anbringen sollte?
Und wie kann ich die Zykluszeit der SPS in Codesys Parametrieren? Ich dachte immer die ist von Werk aus vorgegeben?
Bin leider noch nicht so ganz erfahren was solche Dinge angeht :rolleyes:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Der Magnet an der Trommel, hat in der Tat nur eine Länge von 5cm.
5cm Magnetlänge wären bei 50km/h ca. 3,6ms, bei deinen 15km/h aber locker ausreichende 12ms bei denen der Hallgeber ein High liefern sollte.

Ist mit 2facher Abtastung gemeint, daß ich 2 Magnete, jeden auf der Hälfte des Umfanges, anbringen sollte?
Nein, zur Sicherheit sollte das High-Signal solange andauern dass die SPS dies 2x Abtasten kann.

Und wie kann ich die Zykluszeit der SPS in Codesys Parametrieren? Ich dachte immer die ist von Werk aus vorgegeben?
Wie man die Tasks (glaub ich heißen sie) parametriert kann in dir nicht sagen.
Allerdings sollte die Zykluszeit, in der die CPU den Messbaustein aufruft, auch nicht höher als 3ms sein.
Der CPU-Takt sollte, wie oben geschrieben, zumindest in der Lage sein die Pegeländerung am DI zweimal abzutasten.
Wie hoch ist die Zykluszeit in der du diesen Task aufrufst.

Vielleicht schadet es auch nicht wenn du deinen Auswerte-Code hier kurz postest.
 
Dein PLC_PRG ist freilaufend. Die Zykluszeit ist also abhängig von der Größe des Programms. Unter Task kannst du einen weitern Task definieren mit einer festen Zykluszeit. In diesem sollte dein Zähler laufen.
Holger
 
Forum.jpg
Ist das so gemeint?
Wie muss ich dann dir Priorität setzen? Es hat sich bei einem Probelauf leider nichts verändert.
Der visualisierte Tacho bleibt bei 15 km/h stehen... :confused: ich brauche aber mindestens meine 30..
 
Danke für die Antwort.
Ich habe einen Zähler als Test eingebaut.
ER hört ab einer gewissen Drehzahl einfach auf zu zählen.
 
Vielen Dank für eure Hilfe!;)
Das Problem wurde gelöst und das Thema kann geschlossen werden!
Tatsächlich wurde bei dem Antrieb ein zu hoher Sollwert eingeben, weswegen die Geschwindigkeit doppelt so schnell war.
 
Zurück
Oben