Drehzahlberechnung

schnewitchen

Level-1
Beiträge
7
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen.
Ich habe eine S7-1200 und ein Color-Touchpanel, welches ich mit dem TIA v11 Basic programmiere.
Ich habe folgendes Problem.
Eine Schüssel soll in Dahlanderschaltung mit 2 verschiedenen Geschwindigkeiten laufen.
Die Schüssel hat einen Durchmesser von ca 1m und läuft im ersten Gang mit ca. 10U/min und im zweiten Gang mit ca. 20U/min.
Nun kommts ...
An der Unterseite der Schüssel befindet sich ein induktiver Näherungssensor und 9 Metallbügel sind an der Schüssel angeordnet
8 Bügel jeweils um 45° versetzt (d.h. 8 Impulse = 1 Udr.)
und der 9te Bügel sitzt zwischen 2 der 8 Bügel und soll dazu dienen, dass die Schüssel immer auf einer bestimmten Position stehen bleibt.

Sprich: die Schüssel läuft und wird gestoppt, dann soll sie von Bügel 9 eine Zeit x weiterlaufen und dann stehenbleiben ( Zeit x halt je nach Geschwindigkeit verschieden )
Wie kann ich das am besten realisieren, dass die Steuerung die 8 Bügel zur Drehzahlberechnung erkennt und den 9ten dann bei STOP verwendet.

zz fällt mir nur ein, alles auf 1 Bügel umzubauen. wäre am einfachsten, 1 Impuls = 1 Udr und bei Stop x sek. nachlaufen.
Nur bei der geringen Drehzahl ist das dann alles ziemlich ungenau ...

Hoffe auf nützliche Denkanstösse :)

mfg
 
Wie wäre es, den 9.Bügel auf einen seperaten DE zu ziehen ?
Also 1 DE für 8 Impulse für die Drehzahl und der 2.DE für den Stop.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Die Idee hatte ich auch schon ...
Die Hardware ist nur leider schon bestehend, und eine Abänderung der Bügel ist mit der kompletten Demontage der Schüssel verbunden. Und da das Zeugs nicht mir gehört, muss ich das demjenigen dann erst mal verklickern .... Deswegen wollt ich zuerst mal sehen, ob es in der Software zu realisieren wäre. Wenn nicht, dann kommt eh nur ein Umbau in Frage.

Mein Ansatz wäre so in etwa: Die Drehzahl der Schüssel berechnen, dann die Zeit zwischen zwei Bügelimpulsen berechnen. Diese Zeit ist dann zb 500ms. Diese Zeit dann vergleichen:
wenn t<500ms = Bügel 9
Nur ist das Problem, dass der 9te Bügel bei der Drehzahlberechnung schon dazwischenfunkt

oder Ansatz 2: Schüssel 2. Gang --> 20U/min entspricht 20*8 Impulse, also 160 Imp/min 60 sek / 160 Imp = 375 ms Imulsdauer
dann weiß ich: Wenn die Impulsdauer unter 300ms ist, steht die Schüssel bei Bügel 9 und läuft dann x sek. nach.
Stoppen und in Position bringen könnte ich die Schüssel so, aber die Drehzahl berechnen ??
 
kannst du nicht einen neuen Sensor anbringen (lassen) der nur einmal je umdrehung 1 wird, und so deine "referenzposition" anfahren kannst ?
 
Hallo,
muß die Drehzahlanzeige wirklich so schnell sein?
Warum nicht alle 9 Bügel in die Drehzahlerfassung einbeziehen und dann mitteln?

Oder einfach "Stufe 1" und "Stufe 2" anzeigen (Umrichter gibt´s ja wohl keinen, der hier was ändern könnte, oder?

MfG
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Es läßt sich sicherlich auch Softwarmäßig lösen. Kommt rauf an welchen Aufwand man treiben will.
Man könnte z.B. von 3 Impulsen die Impulslänge speichern und jeweils weiter schieben bei neuem impuls.
Dann den Höchsten Wert Auswählen als aktuelle Impulszeit zur Berechnung der Drehzahl. Damit würde man
die beiden kurzen Impulse vor und hinter dem 9. Bügel ausblenden. Einschalten kann man die Berechnung
allerdings erst nach 4 Flanken (3 Impulslängen), weil ja sonst noch keine aktuellen Werte vorhanden sind.

Den 9. Bügel könnte man auf diese Weise sicher auch identifizieren. Wenn er angesteuert wird ist ja die
Impulslänge etwa die Hälfte des vorherigen Impulsabstandes.
Ich gehe davon aus, daß die Schüssel nicht extrem beschleunigt bzw. abgebremst wird, sonst funktioniert
es evtl. nicht. Zumindest nicht während der Beschleunigung bzw. des Bremsvorganges.

Vielleicht hilfts ja als Anregung ?

gruß fmbux
 
Ich nehme an, Du weisst welcher Gang drinnen ist, Du stoppst den Motor, also startest Du ihn vermutlich auch.
dann erscheint das eigentlich nicht sehr kompliziert:

Zeit zwischen zwei Impulsen beim 1. Gang: 750ms
Zeit zwischen zwei Impulsen beim 2. Gang: 375ms

Nach Motorstart:
Im 1. Gang verlängerter Impuls, kommt innerhalb 600ms ein weiterer Impuls ist das der "9er".
Im 2. Gang verlängerter Impuls, kommt innerhalb 300ms ein weiterer Impuls ist das der "9er".

Von hier weg bei jedem Impuls +1 zählen, dann weisst Du sogar wo Du gerade bist, bei 9 (=Abschaltpunkt) wieder auf 0 setzen (0-1-2-3-4-5-6-7-8-0-1 .... usw)

Anmerkung: solltest Du die Geschwindigkeit (den Gang) nicht wissen muss man diesen nach dem Start ermitteln:
Verlängerten Impuls bilden mit 500ms, wenn 3x hintereinander ein Impuls in der 500ms- Zeit wiederkommt, bist Du im 2. Gang, ansonsten im 1. Gang.

Hoffe das passt so!

Gruß
Karl
 
Man muss einen Punkt finden an dem sich der. 9 Bügel am besten erkennen lässt. Ab dann läuft der Zähler in der SPS synchron zu den Bügeln, und man kann die Zeitmessung/Bügelerkennung sogar wieder abschalten. Genau genommen müsste die Erkennung nur ein einziges mal nach dem Einschalten der Maschine gemacht werden.

Am einfachsten ist das natürlich wenn der Motor hochgelaufen ist, nur falls aus welchem Grunde auch immer die Maschine gestoppt wird bevor der Motor komplett hochgelaufen ist würde die Schüssel dann falsch positioniert.
Je nach Hochlaufgeschwindigkeit würde ich versuchen das schon früh in der Hochlaufphase zu erkennen. Z.B. wenn die vorige Zeit zwischen zwei Pulsen wesentlich kürzer ist als die aktuell gemessene, dann war der vorige Bügel der 9. Wenn man die maximale Beschleunigung der Schüssel kennt, lässt sich damit sicher was anfangen.
 
Zurück
Oben