Drehzahlerfassung mit Drehgeber und Ini

Pockebrd

Level-1
Beiträge
327
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
würde gern eine Drehzal z.B. Motor mit ner SPS / S7 erfassen. Mit Drehgeber oder Näherungsschalter.

Lösung 1:
Hätte ein gebrauchten Drehgeber zur verfügung.
Allerdings weiß ich nicht was hiner den Anschlüsse verbirgt.
Impulse 1000
Frequenz 50Khz

K1/K1 K2/K2 KO/KO + U5V 0V

Bräuchte Hilfe zum Anschluß, und
wie kann ich das denn am einfachsten programmieren, kann mir jemand weiterhelfen ?

Die andere Lösung würde ich gern mit einem Näherungsschalter erfassen, z.B an der Motorenwelle und pro Umdrehung ein Impuls.
Was gibt es denn hier für möglichkeiten Lösungswege das zu programmieren ?

Gruß
 
Ich würde mal sagen, das Dein Drehwertgeber 1000 Impulse pro Umdrehung liefert und eine max. Impulsfrequenz von 50kHz kann.
Das war die gute Nachricht. So wie Du schreibst hast Du die Anschlüsse "K1/K1 K2/K2 KO/KO + U5V 0V", was auf einen TTL-Geber deutet. Dieser arbeitet mit 5V-Pegeln. Für einen Direktanschluß bräuchtest Du einen HTL-Geber. Außerdem kommt es nun auf die Drehfrequenz an, Du brauchst schon eine sogenannte Zählerbaugruppe für eine schnelle Impulserfassung!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ok, dann fällt der Versuch mit dem Drehgeber wegen der Versorgungsspannung erstmal flach. Wenn ich nun einen HTL mit 24V hätte, wie wär dann deine Antwort gewesen ?

Hast auch eine Lösung für den Aufbau mit Näherungsschalter an der Welle ?

Gruß markus
 
Hallo,

überlege mal, wie lange deine Zykluszeit ist und wie lange ein Impuls des Ini wäre.

Die Impulse müssen m. M. mind. 2x Zykluszeit lang sein

Als "sauber" würde ich auch diese Lösung nicht sehen


MfG
 
Hi,
ja bei hoher Drehzahl ziemlich kurz.
Hab bis jetzt auch noch keine Direkte Anwendung. Kommt aber event. noch, da möchte ich etwas vorbereitet sein.

Das eine wär eine Motorenwelle mit ca. 1500 U/min, Drehgeber
Das andere ist eine Welle mit ca. 80/ min, Näherungsschalt


Gruß
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Demnach hättest Du etwa 1,3 U/s. Mit einem Ini an der Lastseite könntest Du ohne besondere Baugruppen arbeiten. Das schafft eine SPS locker, und eine Standard-Eingangskarte auch. Wenn Du mit dem "groben" Abtastraster zufrieden bist, würde ich Dir zu dieser Variante raten. Ggf. könntest Du noch einen weiteren INI um 180° versetzt anbringen um das Raster zu verfeinern.
 
Hallo,
ja mit dem würde ich mich zufrieden geben. Und wie könnte ich das im Programmm machen ? Zeit messen und rechnen ?
Da fehlt mir noch der richtige Gedanke.
 
Zur Auswertung könnte der SFC64 hilfreich sein. Vorteil: Die Wert inkrementiert von der Zykluszeit unabhängig.

(Mit der SFC 64 "TIME_TCK" (time tick) lesen Sie die Systemzeit der CPU. Die Systemzeit ist ein "Zeitzähler", der von 0 bis max. 2147483647 ms zählt. Bei einem Überlauf der Systemzeit wird wieder ab 0 gezählt. Das Zeitraster und die Genauigkeit der Systemzeit betragen 1 ms. Die Systemzeit wird nur von den Betriebszuständen der CPU beeinflußt.)

Zur Auswertung kannst Du Dir nun ein Schieberegister nehmen und die Laufzeiten zwischen den Impulsen messen. Die Summe aller Laufzeiten durch die Anzahl der Positionen und fertig ist Deine Drehzahlberechnung.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Ihr seid mit etwas voraus.
@softmaschine
Wie mess ich denn am beseten die Zeit ? Beispiele sind immergut JUnd die Differenz zu was bilden ?
@softmaschine
Wenn es schon FSB oder FSC gibt, wie kann ich denn am bestennach dem suchen was ich benötige,
bzw. besser wär du kannst mir einen nennen ? Glaub ich würdemich zu Tode suchen.
@tiegerente
Bis es mir etwas anzeigt dauert noch, bin noch am Anfang undhoffe softmaschine bringt mich dahin.
@Mcrev
Das übertrifft glaub meine Kenntnisse, aber werde mich maldamit befassen. Da tauchen dann bestimmt noch Fragen auf. Mit Schieberegisterhab ich noch keine Erfahrung. Bin noch Anfänger was das betrifft.
 
@Mcrev
Das übertrifft glaub meine Kenntnisse, aber werde mich maldamit befassen. Da tauchen dann bestimmt noch Fragen auf. Mit Schieberegisterhab ich noch keine Erfahrung. Bin noch Anfänger was das betrifft.

Wenn Du kein Schieberegister möchtest und die Auswertung etwas verzögert ausgegeben werden darf, dann kannst Du auch einfach Zeit und Impulse zählen, Deine Anzeigegröße berechnen und das Ganze von vorn starten!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
hmmmmm, dann müßte ich eine Zeit von einer Minute laufen lassen und während dessen die Impulse zählen. Dann gibt es je min ein aktuellen Wert. Da ist ne Minute lang.
Oder die Zeit von zwischen den Ini Impulsen messen und dann hochrechnen. Das wird schwierig.
Also wer hier noch mit Beispielen umsich werfen möchte, soll sich klein zwang antun.

Nachhher muß ich mir mal den FSC 64 anschauen.
 
Ich würde immer versuchen so viele Impulse wie möglich zu bekommen. Denn dann wird das Ergebniss genauer und du kannst die Drehzahl auch öfters aktualisieren.
Also eventuell zwei oder mehr Impulse pro Wellenumdrehung versuchen!

Hast du dir schon gedanken um die Richtungserkennung gemacht? Oder bauchst du soetwas nicht?
 
Man nehme einen Eingang und lege diesen auf eine Flankenauswertung (FP). Mit der daraus erzeugten Flanke addiert man eine Zählvariable (Typ INT oder DINT) mit +1 und schreibe diese wieder zurück in sich selbst (ADD). Parallel dazu lässt Du einfach eine Einschaltverzögerung (Timer) laufen, die bei erreichen die weitere Berechnung auslöst und anschließend Deine Zählvariable auf Null setzt und den Timer neu startet.

Die SIEMENS-HILFE kann Dir bei der Ausarbeitung und Befehlserklärung helfen. Versuch mal einen Baustein zu schreiben und poste diesen, wenn Du nicht weiterkommst. Wir helfen doch gern.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
so ich melde mich wieder zurück. Hab es folgendermasen gemacht.
Motor Start -> Einschaltverzögerung mit 1min, parallel dazu läuft ein Zähler der die Impulse zählt.
Nach ablauf der Zeit wir der Zählerwert in ein DB geschoben und die Einschaltverzögerung zurückesetzt und neu gestartet.
Hat etwas gedauert aber funktioniert.
Was mir nicht so gefällt ist das ich eine Minute für den aktuellen Wert warten muß. Könnte die Zeit auf 20 sec. nehmen und dann den Wert mal 3.
Oder hab ihr ein Vorschlag ?

Gruß
 
.

Wenn du z.B. zwei Betätigungen anbringst, dann kannst du schon alle 30sek aktualisieren.

Das hatten wir schon mal, das könnte die Genauigkeit erhöhen, solange die max. Impulsfrequenz und Signallänge in Zeitfenster der Eingangskarte liegt.

@Pockebrd
Grundsätzlich kannst Du aber bei einer einigermaßen konstanten Geschwindigkeit auch die Messzeit herabsetzen und dann auf ne Minute hochrechnen ohne eine größere Ungenauigkeit zu bekommen!
Wieviele Impulse zählst Du denn pro Minute?
Vielleicht wäre auch eine Mischung aus mehreren Sensoren und kürzerer Messzeit eine Möglichkeit.
Natürlich ist ein Drehwertgeber immernoch am genauesten, da dieser deutlich mehr Impulse herausgibt, doch dafür brauchst Du dann eine Zählerkarte, die hochfrequente Impulsfolgen messen und zählen kann!https://www.sps-forum.de/member.php?23112-Pockebrd
 
Zurück
Oben