Schnelle Messung

Nordischerjung

Level-2
Beiträge
826
Reaktionspunkte
111
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin,

ich benötige mal eure Ideen.
Folgendes ist vorhanden mit einer 314C-2DP:

Ein Extruder fördert eine Strang, direkt am Auslass der Düse ist ein Messer, das auf einer Scheibe montiert ist und von einem Servo angetrieben wird.
Der Extruder soll so bei 12m/min fördern, dabei sollen Stücke von 28mm geschnitten werden. So weit geht es auch, nur die Masse wird irgendwann etwas fester oder auch mal weicher je nach Umgebungstemperatur. Dadurch kommt es zu Geschwindigkeitsschwankungen am Auslass der Düse und die Stücke werden unterschiedlich. Wie könnte ich nun den Strang in der Länge vermessen, damit ich den Extruder nachregeln kann? Mir würde zB jedes 20. Stück vermessen reichen, da nicht alle Stücke untershiedlich sind, sondern erst nach einer Zeit werden die Stücke unterschiedlich zu den ersten usw.
Ich muss die Messung direkt nach der Düse machen, da die Stücke sich auf dem Band etwas verdrehen können und schon würde die tatsächliche Länge nicht mehr stimmen.
Eine Idee wäre, eine in einem festen Abstand angebaute Lichtschranke - Messer gibt Signal, dass es vor der Düese ist - Zeit wird gestartet bis Stück an Lichtschranke angekommen ist. Dann weiß ich die Zeit und kann mir die Länge ausrechnen. Nur bei 12m/min und Stücke von 28mm wäre die Zeit 140ms. Bei 30mm wären es 150ms. Wie bekommt man diese Zeitmessung genau hin? Geht es überhaupt mit meiner CPU? Oder hättet ihr ne andere Idee? Die Stücke sollten schon so +/- max 2mm liegen. Hoffe ihr versteht mein Problem :D
 
Zuletzt bearbeitet:
Der Extruder soll so bei 12m/min fördern, dabei sollen Stücke von 28mm geschnitten werden. So weit geht es auch, nur die Masse wird irgendwann etwas fester oder auch mal weicher je nach Umgebungstemperatur. Dadurch kommt es zu Geschwindigkeitsschwankungen am Auslass der Düse und die Stücke werden unterschiedlich. Wie könnte ich nun den Strang in der Länge vermessen, damit ich den Extruder nachregeln kann? Mir würde zB jedes 20. Stück vermessen reichen, da nicht alle Stücke untershiedlich sind, sondern erst nach einer Zeit werden die Stücke unterschiedlich zu den ersten usw.

Ich denke so bekAlgorythmen ommst das nicht hin.
Bei Extrudern muss doch nach Temperatur und Gegendruck, sprich dem Strom des Antriebs des Extruders geregelt werden.
Die Länge ist doch nur das Ergebnis.
Ich habe das mal gemacht, doch mit eigenen Hardwarereglern, da die Algorithmen sehr schwer in Formeln für die PLC zu verpacken sind.
Viele Firmen und Entwickler arbeiten an der ultimativen Lösung für solch ein Problem.

Viel Erfolg


bike
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das Problem ist, das ist ein recht kleiner und einfacher Extruder. Wird mit einem G110 angetrieben (0,75kw). Also ohne Druck, Strom Messung usw.
Aus dem Extruder kommt eh nur Nougat :p oder Trüffelmasse. Deshalb wollte ich den Extruder einfach nur ein bischen schneller oder langsamer fahren, je nach verhalten des Stranges. ich will ja auch nicht jeden Schnitt messen, sondern nur so jeden 20- 30 oder so. Und dann schauen ob sich der Strang ändert. Ist das denn mit meiner Idee überhaupt machbar mit dieser CPU? Wenn ja wie? Mit OB35 oder so? Wie kann ich möglichst recht genau diese Zeit ermitteln. Vom Messer vor Düse, bis Stück kommt in Lichtschranke, so ca 140ms.
 
bist du den mit deinen 140ms pro 28mm sicher, ich glaube das wären 5,6ms.

12000mm/min = 200mm/sec
das entspricht 0,2mm / ms

28mm x 0,2mm / ms = 5,6 ms

dann ist das ganze recht sportlich, für deine Steuerung, wenn sie noch was
anderes zu tun hat.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
bist du den mit deinen 140ms pro 28mm sicher, ich glaube das wären 5,6ms.

12000mm/min = 200mm/sec
das entspricht 0,2mm / ms

28mm x 0,2mm / ms = 5,6 ms

dann ist das ganze recht sportlich, für deine Steuerung, wenn sie noch was
anderes zu tun hat.

??? Wenn ich 200mm in einer Sekunde habe, dann brauche ich doch für 28mm 0,14sek.

1000ms / 200mm * 28mm = 140ms oder ist es schon zu spät für mich?
 
Die Zeitmessung kannst Du mit dem entsprechenden Zeit-OB durchführen. Keine großen Programmteile in den Timer-Routinen, sondern nur Start- und Stop-Erkennung und hochzählen, dann sollte ein 2ms-Takt machbar sein. Die Auswertung und Korrektur des Extruders dann im zyklischen Programm.
Beachten:
- am Anfang des Timer-OB die PEBs mit dem Start- und Stop-Signal einlesen.
- die E/A-Baugruppen der Start- und Stop-Signale sollten schnell genug sein.

Gruß
Erich
 
Ich würde da eine Eingangskarte mit Prozessalarm nehmen (z.B. 321-7BH00-0AB0).
Mit dem Kontakt dann den Prozessalarm auslösen Zeitstempel aufzeichen, abfallende Flanke wieder Prozessalarm und wieder Zeitstempel. Genauer kriegt man das wohl nicht hin. Wenn du willst kannst du diesen Vorgang alle 2ms wiederholen. Die Berechnung würde ich dann auch gleich im Prozessalarm durchführen bei fallender Flanke.

Im Gegensatz zu einem Weckalarm ist der Prozessalarm nicht Zeitabhängig sondern Ereignisabhängig und darum natürlich wesentlich genauer.

mfG René
 
Zuletzt bearbeitet:
Ich würde da eine Eingangskarte mit Prozessalarm nehmen (z.B. 321-7BH00-0AB0).
Mit dem Kontakt dann den Prozessalarm auslösen Zeitstempel aufzeichen, abfallende Flanke wieder Prozessalarm und wieder Zeitstempel. Genauer kriegt man das wohl nicht hin.

Würde ich auch so machen.
Achte aber bei der Auswahl deiner Lichtschranke darauf, dass diese auch schnell genug ist.
Ausserdem schadet es nicht, wenn du die Lichtschranke mit geschirmter Leitung anfährst.

Gruß
Dieter
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich würde da eine Eingangskarte mit Prozessalarm nehmen (z.B. 321-7BH00-0AB0).
Mit dem Kontakt dann den Prozessalarm auslösen Zeitstempel aufzeichen, abfallende Flanke wieder Prozessalarm und wieder Zeitstempel. Genauer kriegt man das wohl nicht hin. Wenn du willst kannst du diesen Vorgang alle 2ms wiederholen. Die Berechnung würde ich dann auch gleich im Prozessalarm durchführen bei fallender Flanke.

Im Gegensatz zu einem Weckalarm ist der Prozessalarm nicht Zeitabhängig sondern Ereignisabhängig und darum natürlich wesentlich genauer.

mfG René

Hat die "C" Variante nicht Eingänge für Prozessalarm?
 
Hallo Nordischer,
ist eine interessante Aufgabe.
Ich würde ggf. so daran gehen :
Wenn ich es richtig verstanden habe hast du einen Inkrementalgeber an dem Förderband und eine Lichtschranke, die den Spalt zwischen 2 Riegeln erkennen kann. Du könntest nun ein OB35-Programm erstellen mit einem schnellen Zyklus (z.B. die schon genannten 2 ms) und darin die Vermessung jedes Riegels machen. Werden die Riegel tendenziell keiner dann muss du langsamer werden, werden sie größer dann schneller. Du mußt dir also die erfassten Längenwerte merken und schauen, ob sie insgesamt "weglaufen". Das ist im Grunde ein spezieller Regel-Baustein.
Die Frage, die sich mir hier natürlich auch stellt, sit ob die vorhandene CPU das leisten kann - aus dem Gefühl heraus würde ich hier "Nein" sagen.

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Die Frage, die sich mir hier natürlich auch stellt, sit ob die vorhandene CPU das leisten kann - aus dem Gefühl heraus würde ich hier "Nein" sagen.

Gruß
Larry

Man könnte die genaue zeitliche Messung der Impulse der Lichtschranke auch auf eine dezentral (Profibus DP) angebundene digitale Eingangsscheibe auslagern, die den Zeitpunkt mehrere Lichtschrankenimpulse auf 1µs (0,001ms) genau speichern kann und die Ergebnisse dann dem Regelbaustein auf der SPS zuführen. Hierzu würden sich die VIPA SLIO ETS- oder Zähler-Baugruppen oder die SIEMENS ET200s Zählerbaugruppen eignen.
 
Hallo Nordischer,
ist eine interessante Aufgabe.
Ich würde ggf. so daran gehen :
Wenn ich es richtig verstanden habe hast du einen Inkrementalgeber an dem Förderband und eine Lichtschranke, die den Spalt zwischen 2 Riegeln erkennen kann. Du könntest nun ein OB35-Programm erstellen mit einem schnellen Zyklus (z.B. die schon genannten 2 ms) und darin die Vermessung jedes Riegels machen. Werden die Riegel tendenziell keiner dann muss du langsamer werden, werden sie größer dann schneller. Du mußt dir also die erfassten Längenwerte merken und schauen, ob sie insgesamt "weglaufen". Das ist im Grunde ein spezieller Regel-Baustein.
Die Frage, die sich mir hier natürlich auch stellt, sit ob die vorhandene CPU das leisten kann - aus dem Gefühl heraus würde ich hier "Nein" sagen.

Gruß
Larry
Hallo larry,

hast du leider nicht richtig verstanden, da ich kein Geber am Band habe. Das Band hat damit erstmal eh nichts zu tun, da die Stücke auf diesen nur abgelegt werden und es schneller läuft als der Extruder, um eine Lücke zu bekommen. Der Schnitt ist genau an der Düse, also vor dem Band.

Das mit dem Prozessalarm ist ne gute Idee, die werde ich mal weiter verfogen.Gab es nicht auch ein Baustein um die Diverens zweier Zeiten auszurechnen?
 
Das mit dem Prozessalarm ist ne gute Idee, die werde ich mal weiter verfogen.Gab es nicht auch ein Baustein um die Diverens zweier Zeiten auszurechnen?

Rechne das lieber selber ohne andere Bausteine, auf das nötigste reduzieren. Es reicht wohl bei deiner Rechnung Byte 5+6+7 der OB40 Aufrufszeit zu verrechnen. Nicht mit unnötigen Operationen Zeit vergeuden. Bedenke der Prozessalarm unterbricht dein Programm, wenn der 10 mal in einem Zyklus aufgerufen wird und jedesmal einige Millisek. braucht um abgearbeitet zu werden kann das üble Auswirkungen auf deine Zykluszeit haben.

mfG René
 
Zurück
Oben