Forum: Digitale Signalverarbeitung / DSP / Machine Learning Kleine Regelaufgabe


von copter (Gast)


Lesenswert?

Hallo,

ich bin Maschinenbaustudent und arbeite im Hiwijob und auch privat mit 
Mikrocontrollern und Programmierung in C.

In der Uni gab es natürlich auch die Klausuren Mess- und 
Regelungstechnik, die ich auch bestanden habe - aber davon habe ich für 
ein geplantes Projekt leider überhaupt keinen Nutzen. Die 
Regelungsaufgabe ist vermutlich relativ einfach, aber mit meinen 
Vorlesungsmitteln aus der Regelungstechnik wüsste ich überhaupt nicht, 
wie man da ran geht.

Es geht um einen Hydraulikzylinder, der per Servoventil vor- und 
zurückbewegt werden kann. Eine Spannung > 0 V und < 10 V verursacht eine 
Ausfahrbewegung und eine Spannung < 0V und größer > -10 V lässt den 
Zylinder einfahren. Je größer der Betrag der Spannung, desto größer die 
Verfahrgeschwindigkeit.

Ich möchte jetzt eine Geschwindigkeit in mm/s vorgeben (also die 
Ausgangsspannung von -10 bis 10 V regeln). Den Weg bekomme ich als 
analoges Spannungssignal, die Ist-Geschwindigkeit kann ich also immer 
berechnen.
Mit was für Algorithmen würde man hier arbeiten? Macht es hier Sinn, das 
Ganze irgendwie auf Basis von Übertragungsgliedern wie PID, D, I, PT2 
etc. zu betrachten?

Grüße,
copter

von BirgerT (Gast)


Lesenswert?

Suche im Web mal nach "PID without a PhD" von Tim Wescott.

Das PDF sollte man ausdrucken, weil die Grafik zum Text fast immer zwei 
Seiten weiter hinten kommt.

Ich schätze mal, Du brauchst eine Positionsregelnung, die alle 
100..200ms einen neuen Sollwert (Weg) bekommt.

Viel Erfolg

von Martin (Gast)


Lesenswert?

Hat der Zylinder einen Positionssensor?

Bei einem Servocentil gibt man Kolbenöffnung vor. Diese ist nicht 
proportional zum Ölfluß. Daher kann man nicht von einem linearen 
Zusammenhang von Kolbensollwert und Zylindergeschwindigkeit ausgehen.
Ausserdem vermindert bei gegebener Kolbenöffnung der Fluß, sobald im 
Zylinder eine Gegenkraft auftritt.

Das alles lässt sich nur durch übergeordnete Regelkreise kompensieren:
1. Zylinderposition oder
2. Druckkompensation des Flusses durch messen der Druckdifferenz Ps und 
Pa

von Martin (Gast)


Lesenswert?

Es muss natürlich heissen: Ausserdem vermindert sich bei gegebener 
Kolbenöffnung der Fluß, sobald im Zylinder eine Gegenkraft auftritt.

von Stm M. (stmfresser)


Lesenswert?

Wenn du eine halbwegsordentliche Übertragunsfunktion hättest, wäre es 
einfach.

Meiner Meinung nach ist die Übertragungsfunktion so etwa

Die Verstärkungsfaktoren kann man bestimmen, indem man unterschiedliche 
Sprungantworten misst.

Ich glaube du brauchst einen PI Regler. Reglerverstärkungen kann man 
durch ausprobieren einstellen. Achtung die sind beide positiv.

von Zylinder (Gast)


Lesenswert?

Ja, PID funktioniert so gut wie immer, aber: So richtig schnell wird die 
Regelung damit nicht.

http://www.hs-koblenz.de/fileadmin/media/fb_ingenieurwesen/MT/Laboratorien/Regelungstechnik_Labor/Versuch_4.pdf

von Amateur (Gast)


Lesenswert?

Deine Angabe:

>Eine Spannung > 0 V und < 10 V verursacht eine
>Ausfahrbewegung und eine Spannung < 0V und größer > -10 V lässt den
>Zylinder einfahren. Je größer der Betrag der Spannung, desto größer die
>Verfahrgeschwindigkeit.

Irritiert mich ein wenig.

Bei einem Servo, gibt die Eingangsspannung üblicherweise die 
Zielposition und nicht die Fahrrichtung an.

Da dieser offensichtlich eine eigene Regelung hat, ist "von außen" nicht 
sichtbar, was mit den Eingangsgrößen passiert.

Vielleicht hilft Dir die Manipulation der Anstiegszeit 
(Änderungsgeschwindigkeit bei der Vorgabespannung) um das gewünschte 
Ergebnis zu erreichen.

Ob die Angabe: Benutze doch einen PDI-Regler etwas hilft, hängt wohl in 
erster Linie vom Verhalten der oben erwähnten inneren Regelung ab.
Da wahrscheinlich kein Anschluss für die aktuelle Position vorhanden ist 
- die brauchst Du für jegliche Art der Regelung - wirst Du dir darüber - 
und über die Montage/Position - auch noch Gedanken machen müssen.

von Amateur (Gast)


Lesenswert?

Übrigens:

>Ja, PID funktioniert so gut wie immer, aber: So richtig schnell wird die
>Regelung damit nicht.

Bei mechanischen Vorgängen - und bei einem hydraulischen System handelt 
es sich um ein Solches - ist in den meisten Fällen der Regler viel zu 
schnell und muss oft auf ein "passendes" Maß begrenzt werden.

von Joe G. (feinmechaniker) Benutzerseite


Lesenswert?

copter schrieb:
> Je größer der Betrag der Spannung, desto größer die
> Verfahrgeschwindigkeit.

Dann bestimme zunächst genau diesen Zusammenhang mathematisch. Also nach 
welcher Funktion hängt die Geschwindigkeit von der Spannung ab? 
Parametereinflüsse wie Druck und Gegenkraft wurden ja schon erwähnt.

von Bernd (Gast)


Lesenswert?

>Bei einem Servo, gibt die Eingangsspannung üblicherweise die
>Zielposition und nicht die Fahrrichtung an.

Hm das stimmt aber so nicht. Die Spannung (bzw. meistens eher der Strom) 
gibt vor wie weit der Kolben in jeder Richtung öffnet. D.h. je größer 
die Spannung am Servo umso weiter öffnet es. Lässt man diese Spannung 
anstehen, dann steigt der hydraulische Druck im Zylinder bis auf 
maximalen Systemdruck an.

von Klaus Günter (Gast)


Lesenswert?

Entwurf auf endliche Einstellzeit...

von npn (Gast)


Lesenswert?

Klaus Günter schrieb:
> Entwurf auf endliche Einstellzeit...

Ähm, räusper...
Was denn sonst? Unendliche Einstellzeit? ;-)
Das würde bedeuten: Vorgabewert liegt an, wird aber erst in unendlicher 
Zeit erreicht (also niemals).

von Zylinder (Gast)


Lesenswert?

>>Ja, PID funktioniert so gut wie immer, aber: So richtig schnell wird die
>>Regelung damit nicht.

>Bei mechanischen Vorgängen - und bei einem hydraulischen System handelt
>es sich um ein Solches - ist in den meisten Fällen der Regler viel zu
>schnell und muss oft auf ein "passendes" Maß begrenzt werden.

Nun das kann ich nicht so stehen lassen.
Die Totzeit des Reglers sollte so gering wie möglich gehalten werden. 
Dass heist nicht, dass ein Rerler überreagieren muss.


Bernhard schrieb:
>>Bei einem Servo, gibt die Eingangsspannung üblicherweise die
>>Zielposition und nicht die Fahrrichtung an.
>Hm das stimmt aber so nicht. Die Spannung (bzw. meistens eher der Strom)
>gibt vor wie weit der Kolben in jeder Richtung öffnet.
Das stimmt so nur für eine Servo-Achse.
copter schrieb aber von einem Servo-Ventil, welches sich auf einer 
Zylinderachse befindet. Für dieses gelten normalerweise die von ihm 
beschriebenen Sollwerte für die Ventil-Kolbenposition: "Eine Spannung > 
0 V und < 10 V verursacht eine Ausfahrbewegung und eine Spannung < 0V 
und größer > -10 V lässt den Zylinder einfahren.". Der Zylinder wirkt 
dann gewisserweise wie ein Integrator über die Zeit.

von Klaus Günter (Gast)


Lesenswert?

npn schrieb:
> Klaus Günter schrieb:
>> Entwurf auf endliche Einstellzeit...
>
> Ähm, räusper...
> Was denn sonst? Unendliche Einstellzeit? ;-)
> Das würde bedeuten: Vorgabewert liegt an, wird aber erst in unendlicher
> Zeit erreicht (also niemals).

Ja Räusper... Von Dead Beat scheinst du noch nie gehört zu haben...

von Bernd (Gast)


Lesenswert?

>>Bei einem Servo, gibt die Eingangsspannung üblicherweise die
>>Zielposition und nicht die Fahrrichtung an.
>Hm das stimmt aber so nicht. Die Spannung (bzw. meistens eher der Strom)
>gibt vor wie weit der Kolben in jeder Richtung öffnet.

>>>Das stimmt so nur für eine Servo-Achse.
>>>copter schrieb aber von einem Servo-Ventil, welches sich auf einer
>>>Zylinderachse befindet. Für dieses gelten normalerweise die von ihm
>>>beschriebenen Sollwerte für die Ventil-Kolbenposition: "Eine Spannung >
>>>0 V und < 10 V verursacht eine Ausfahrbewegung und eine Spannung < 0V
>>>und größer > -10 V lässt den Zylinder einfahren.". Der Zylinder wirkt
>>>dann gewisserweise wie ein Integrator über die Zeit.

Ich glaube wir reden hier aneinander vorbei. Vielleicht verstehe ich das 
auch einfach nicht. Die Spannung mit der das Servo angesteuert wird 
bestimmt die Kolbenposition des Servo Ventils. Und zwar je nach 
Polarität eben in die eine oder in die andere Richtung.
Die Position des Zylinders hat damit erst mal nicht zu tun. Die ergibt 
sich dann, genau so wie du es beschrieben hast. Die Position ist dann 
das Integral über die zugeführte Ölmenge. Hängt natürlich noch von 
anderen Dingen ab, wie z.B. Zylindergröße, Servodurchfluss, 
Druckdifferenz usw.

von Zylinder (Gast)


Lesenswert?

> Die Spannung mit der das Servo angesteuert wird
> bestimmt die Kolbenposition des Servo Ventils. Und zwar je nach
> Polarität eben in die eine oder in die andere Richtung.
> Die Position des Zylinders hat damit erst mal nicht zu tun. Die ergibt
> sich dann, genau so wie du es beschrieben hast. Die Position ist dann
> das Integral über die zugeführte Ölmenge. Hängt natürlich noch von
> anderen Dingen ab, wie z.B. Zylindergröße, Servodurchfluss,
> Druckdifferenz usw.
Genau so ist es.

... Druckdifferenz, welche vor allem von dem Druck, der durch die 
Krafteinwirkung auf die Zylinderachse entsteht, abhängt.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.