Programmierung pneumatischer Zylinder

milli13

Level-1
Beiträge
35
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Leute,
ich schreibe momentan meine Masterarbeit und komme zum ersten Mal mit einer Programmierungsaufgabe in Kontakt. Ich lese mich momentan ein, habe aber das Gefühl, dass Programmieren eher Learning by Doing ist.
Im Grunde geht es darum, einen pneumatischen Zylinder richtig anzusteuern. Der Zylinder ist doppeltwirkend und ist mit einem 5/2 Wegeventil gekoppelt. An den Auslässen des 5/2 Wegeventils sind zudem noch Proportionalventile, die über einen Nennstrom angesteuert werden können.
Meine Aufgabe ist es das Auf und Abfahren des Zylinders inkl Geschw. einstellen zu können. Dabei sollen z.B. auch schnelles Ausfahren und langsames Einfahren möglich sein.
Ich beschäftige mich hauptsächlich mit dem FUP, bin mir aber gar nicht sicher, ob damit alles erreicht werden kann?
Falls jemand Lust und Zeit hat mir da per Email vielleicht ein paar Basics zu erklären wäre ich sehr dankbar.

Schöne Grüße
 
In FUP ist das alles definitiv möglich zu realisieren, ich spreche nun zwar hauptsächlich aus Erfahrung mit S7 Steuerungen. Einfacher wirds aber gerade bei Berechnungen mit SCL bzw ST zu arbeiten.

Du kannst deine Fragen auch einfach hier reinstellen, hier gibt es dann viel mehr Expertise, die dir antworten kann. Es gilt auch, keine Frage ist blöd.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Was meinst du mit Basics? Was ist denn bei dir schon an Kenntnissen vorhanden?
Hast du schon einen Plan WAS (Ablauf deiner Ansteuerung) du programmieren willst und brauchst Hilfe beim WIE? Oder geht es schon damit los wie die Ventile überhaupt verschalten und ansteuern muss?

Welche Steuerung nutzt du?
Die Aufgabe ist vollständig in FUP umsetzbar.
 
Was meinst du mit Basics? Was ist denn bei dir schon an Kenntnissen vorhanden?
Hast du schon einen Plan WAS (Ablauf deiner Ansteuerung) du programmieren willst und brauchst Hilfe beim WIE? Oder geht es schon damit los wie die Ventile überhaupt verschalten und ansteuern muss?

Welche Steuerung nutzt du?
Die Aufgabe ist vollständig in FUP umsetzbar.

Also wie gesagt, im Programmieren an sich habe ich keinerlei Erfahrung. Ich versuche momentan ein Einführungsbuch durchzuarbeiten. Ich habe mir die Schaltung ganz grob mal bei Visio aufgezeichnet. Falls die was bringt kann ich gerne ein Bild hochladen. Fehlen tut da aber noch ein Teil, welches die E-Werkstatt der Uni mir anfertigt. Über dieses zusätzliche Modul soll es dann möglich sein den Nennstrom für die Proportionalwege einzustellen.
In dem Buch scheint die Ansteuerung des 5-2 Wegeventils gar nicht so schwer zu sein. Sobald die Endlage erkannt wurde schaltet das Ventil um. Ich möchte aber ja verschiedene Profile anfahren. Bei 1Hz will ich zB symmetrisch (0,5s raus, 0,5s rein) aber auch asymmetrisch (0,7s raus 0,3s rein) fahren. Da verstehe ich momentan noch gar nicht wie ich das programmieren kann. Alleine das die Zeiten gemessen werden stellt für mich ein Problem dar.
Die Uni nutzt eine Wago SPS mit dem Programm e!Cockpit. Mein Betreuer meinte aber, solange ich aufgrund von Corona nicht zur Uni kann, dass ich mir auch Codesys angucken könnte, da dies gratis ist.

Viele Dank erstmal für die Hilfe euch allen
 
SchaltplanZylinder.jpg
Im Grunde siehts so aus. Was genau in dem 'Block' passiert der den Nennstrom regelt weiß ich leider auch noch nicht ganz genau.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Es bringt wenig sich dem Programm zuzuwenden, solange die elektrischen Rahmenbedingungen nicht eindeutig geklärt sind. Wie sieht der Schaltplan aus und welche elektrischen Ein- und Ausgangssignale stehen zur Verfügung. Sobald dies geklärt ist, sollte die Umsetzung nur eine Fingerübung sein.
 
Beim Wegeventil habe ich jetzt nicht genau drauf geachtet, wie es bei Visio eingetragen ist. Ich weiß aber wie es richtig funktioniert. Sollte nur als eine Art Übersicht dienen.
Also was ich steuern möchte ist ja folgendes:
-Kolben: Der Kolben besitzt 2 Endlagensensoren die die Lage des Kolbens erkennen sollen und das 5/2-Wegenventil umschalten, außerdem würde ich gerne die Zeit zwischen den Endlagen (sowohl für den Hinweg als auch für den Rückweg) 'ablesen' können
-5/2 Wegeventil. Das Wegeventil hat im Grunde nur die Aufgabe auf die Endlagen zu reagieren. Ich habe da an einen SR-Block gedacht. Endlage erreicht: Ventil springt auf '1'. Zweite Endlage erreicht: Ventil springt auf '0'. Die Zeiten sind hier ja noch total irrelevant
-Proportionalventile: Hier wird die Zeit interessant, da die Proportionalventile durch die Verringerung des Volstrom die Kolbengeschwindigket beeinflussen können. Die E-Werkstatt baut mir eine Schaltung mit der es möglich ist den Nennstrom zu regeln. Ich brauche dann ja für diese Schaltungen schon mal zwei 'Drehregler', um den Strom irgendwie einstellen zu können, richtig? Ich könnte dann per Hand die Zeiten für den Kolbenweg per Hand einstellen. Schöner wäre natürlich wenn die Proportionalventile eine Zeit vorgegeben bekommen würden und sich dann selber dorthin regeln. Ist dies auch möglich?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich habe die Zeichnung nochmal etwas verbessert- hoffe ich :D.
Ich habe auch versucht dran zu schreiben was ich regeln möchte. Bei den zwei 'Wegen' bin ich mir noch unsicher. Der 2te Weg wäre vermutlich schwieriger zu programmieren, aber am Ende wäre das Ergebnis deutlich schöner.Leider habe ich ab diesem Punkt gar keine Ahnung wie ich weiter vorgehen soll,muss,kann...SchaltplanNeu.jpg
 
Es gibt auch fertige Proportional-Durchflußregelventile, zum Beispiel das da:

https://www.festo.com/cat/en-gb_gb/data/doc_DE/PDF/DE/VPCF_DE.PDF

Diese werden über ein Analogsignal 4..20 mA angesteuert.
Man könnte also die Bewegungszeiten je Richtung messen, evtl. noch den Meßwert per Mittelwertbildung etwas beruhigen, und dann je Richtung einen Regler benutzen der durch Veränderung des Durchfluss die Bewegungszeit an den Sollwert annähert.
 
Es gibt auch fertige Proportional-Durchflußregelventile, zum Beispiel das da:

https://www.festo.com/cat/en-gb_gb/data/doc_DE/PDF/DE/VPCF_DE.PDF

Diese werden über ein Analogsignal 4..20 mA angesteuert.
Man könnte also die Bewegungszeiten je Richtung messen, evtl. noch den Meßwert per Mittelwertbildung etwas beruhigen, und dann je Richtung einen Regler benutzen der durch Veränderung des Durchfluss die Bewegungszeit an den Sollwert annähert.

Die habe ich mir auch schon angeschaut. Leider ist das Budget der Uni nicht unbegrenzt, so dass diese Proportionalventile nicht mehr möglich waren. Die Komponenten stehen also eigentlich fest.
Falls jemand dennoch Lust und Zeit hat mir bei der Programmierung ein paar Tipps zu geben wäre ich echt dankbar.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
evtl. eine kleine Schrittkette basteln:

Grundposition: Zylinder ist in LS1
Wenn nicht, fahre zu Grundposition
Wegeventil auf LS1->LS2 mit Stromregelung auf Maximum und beginne Zeitmessung
Stoppe Zeitmessung wenn LS2 erreicht, Stromregelung aus, Wegeventil zu, kleine Wartezeit oder manueller Taster fürs weiterschalten
Wegeventil auf LS2->LS1 mit Stromregelung auf Maximum und beginne Zeitmessung 2
Stoppe Zeitmessung wenn LS1 erreicht, Stromregelung aus, Wegeventil zu
==> Beide Zeiten sind ermittelt

ggf. weitere Fahrten mit verschiedenen Stellgrößen machen, um die Kurve zu bestimmen. Ist bestimmt nicht linear?!


Die maximale Geschwindigkeit ist ermittelt. Nun kann umgerechnet werden, wie viel Strom welcher Zeit entspricht. Und diesen Strom kann man im Betrieb regeln.

Es gibt Bibliotheken mit Skalierungsbausteinen für Analog-Ein- und Ausgänge, Reglerbausteine. Evtl. muss man einiges ohne vorgefertigte Funktion berechnen. Da bietet sich m. E. eher ST an. Kann man aber meist auch irgendwie in FUP machen.

Einfach mal nach Beispielen suchen, loslegen und mit konkreten Fragen zurück kommen.
 
evtl. eine kleine Schrittkette basteln:

Grundposition: Zylinder ist in LS1
Wenn nicht, fahre zu Grundposition
Wegeventil auf LS1->LS2 mit Stromregelung auf Maximum und beginne Zeitmessung
Stoppe Zeitmessung wenn LS2 erreicht, Stromregelung aus, Wegeventil zu, kleine Wartezeit oder manueller Taster fürs weiterschalten
Wegeventil auf LS2->LS1 mit Stromregelung auf Maximum und beginne Zeitmessung 2
Stoppe Zeitmessung wenn LS1 erreicht, Stromregelung aus, Wegeventil zu
==> Beide Zeiten sind ermittelt

ggf. weitere Fahrten mit verschiedenen Stellgrößen machen, um die Kurve zu bestimmen. Ist bestimmt nicht linear?!


Die maximale Geschwindigkeit ist ermittelt. Nun kann umgerechnet werden, wie viel Strom welcher Zeit entspricht. Und diesen Strom kann man im Betrieb regeln.

Es gibt Bibliotheken mit Skalierungsbausteinen für Analog-Ein- und Ausgänge, Reglerbausteine. Evtl. muss man einiges ohne vorgefertigte Funktion berechnen. Da bietet sich m. E. eher ST an. Kann man aber meist auch irgendwie in FUP machen.

Einfach mal nach Beispielen suchen, loslegen und mit konkreten Fragen zurück kommen.

Das klingt ja schon mal nach einem sehr guten Ansatz :) Vielen Dank
 
So ich bin tatsächlich leider direkt auf ein vermutlich leicht lösbares Problem gestoßen. Ich würde das Hin- und Herfahren dieses Zylinders einfach über einen SR-Block lösen. Heißt wenn LS1 erreicht ist wird der Strom auf das Wegeventil gegeben, so lange bis LS2 erreicht ist.
Ich komme aber leider nicht dahinter, wie man gleichzeitig eine Zeit für die jeweiligen Wege misst. Ich brauche ja die Differenz zwischen : positive Flanke LS1 und positive Flanke LS2... Und das ganze dann auch noch in umgekehrt. Gibt es einfache Timer die sowas messen? In meinen schlauen Büchern finde ich nur diese Zeitgeber Funktionen.. Und da verstehe ich nicht, wie ich die Differenz am Ende bilden soll, bzw ob das mein Problem überhaupt löst.
 
Zuletzt bearbeitet:
Auch mal durchdenken ob nicht besser die Zuluft zum Zylinder geregelt wird.

Meinst du um die Geschwindigkeit zu regeln? Drosselrückschlagventile waren erst in den Zuleitungen eingebaut, das manuelle Einstellen über die kleinen Schrauben ist aber nicht erwünscht gewesen.
Also am Schaltplan darf ich leider nicht mehr viel rütteln.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Auch mal durchdenken ob nicht besser die Zuluft zum Zylinder geregelt wird.
Nö, weil sich der Druck auf der Arbeitsseite des Zylinders dann bei kleinen Geschwindigkeiten langsam aufbaut, kommt es zu 'Stick-Slip-Effekten', die zu ruckeligem Fahren führen. Drosselrückschlagventile gehören auch auf die Abluftseite.(So montiert, dass die Abluft gedrosselt wird und die Zuluft durch das Rückschlagventil geht)
Gruß
Erich
 
Zuletzt bearbeitet:
Also die Grundlagen habe ich mir jetzt größtenteils angeeignet. Zumindest hat es gereicht um als Test eine Ampelschaltung zu realisieren :D.
Wo ich jetzt wirklich noch Probleme habe ist mit der Zeitmessung zwischen den beiden Endlagen. Und wie man diese ggf. dann für weitere Schritte weiternutzen kann.
Falls da jemand einen Funktionsbaustein zu kennt wäre ich sehr dankbar. Ansonsten bedanke ich mich schon mal bei allen für die Hilfe.
 
Zurück
Oben