www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PI Regler für PWM Ventilsteuer


Autor: Stefan G. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich habe folgendes Problem:
Ich betreibe ein normales Schaltventil mit PWM, und möchte einen 
Gasfluss regeln. Hinter dem Ventil ist ein Durchflussmesser geschaltet, 
dessen Ausgangsspannung ich mit dem AD Wandler meines ATmega323 
umwandle. Das ganze ist eine ziemlich wacklige Angelegenheit, da der 
Fluß bedingt durch das ständige Auf- und Zugehen des Ventils ziemlich 
unruhig ist, und der AD Wandler nicht gerade reproduzierbare Ergebnisse 
erzielt (vielleicht hat jemand da noch eine Idee was ich machen könnte, 
bisher mittle ich den Ausgangswert meines Flussmessers nur).
Nun möchte ich den Fluß regeln. Das heißt, ich gebe beispielsweise über 
den Terminal (CodeVision) eine Ausgangssollspannung meines Flussmessers 
vor, die dann zuverläassig über Variation der Pulsbreite am Ventil 
angesteuert werden soll.
Wie gehe ich da ran, wenn ich einen PI Regler per Software entwerfen 
soll? Oder ist es ratsam auch etwas auf Hardwarebasis zu basteln?
Wie ihr merkt, bin ich ziemlich neu auf diesem Gebiet.
Über jeden Tipp bin ich dankbar.
Gruß,
Stefan

Autor: edi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,

bedeutet SCHALTVENTIL...entweder auf oder zu ?
wenn es so ist dann bist du meiner meinung nach auf dem falschen weg.

das ventil,das du brauchst muss kontinuierlich zwischen
auf bis zu einstellbar sein...wie willst du sonst einen stabilen 
durchfluss erhalten.

du musst ja nur den sollwert mit dem istwert des durchflussmessers 
vergleichen und daraufhin mehr oder weniger
aufmachen...

hast du eine (lach)gasmaske ?
dann viel spass
ed

Autor: Stark Erhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Stefan,

nimm einfach ein Ventil, welches mit einer Analogsteuerspannung von 0 
(zu) - 10V (auf) zu steuern ist.
Das Teil nennt sich "Stetiger Regelventilantrieb"

Autor: Stefan G. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ edi: Ja, Schaltventil heißt entweder auf oder zu. Die Idee war ja 
gerade, sich die etwa fünf mal so hohen Kosten eines Proportinalventils 
einzusparen, und mit einer geschickten Ansteuerung eine "normales" 
Ventil zu benutzen. Ich habe das auch schon ausprobiert, und es 
funktioniert garnicht so schlecht über Variation der Pulsbreite. Und was 
meinst du mit der (Lach)Gasmaske???

@ Stark Erhard: Du meinst also auch ein Proportionalventil welches 
kontinuierlich zwischen dem Auf und Zu Zustand einstellbar ist? Dafür 
benötige ich dann aber genauso eine Regelung, Das Ventil soll ja 
abhängig von dem vom Durchflussmesser gemessenen Fluss geregelt werden. 
Ich möchte ja  einen Sollfluß vorgeben, der dann durch den von mir 
implementierten Regler auch hergestellt werden soll....

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man kann theoretisch ein Ventil ständig ein- und ausschalten und damit 
den mittleren Durchfluß regeln.

Allerdings wird dadurch das Ventil mechanisch extrem beansprucht.
Das ist ungefähr so, als ob Du mit einem Relais eine Lampe dimmen 
willst. Obendrein dürfte ein ohrenbetäubendes Klappern zu hören sein.

Bei einem Schaltventil wird auch die Anzahl der maximalen Schaltspiele 
und die maximale Schaltgeschwindigkeit angegeben.

Dann kannst Du leicht selber ausrechen, nach wieviel Stunden es den 
Geist aufgibt.

Du wirst also wohl nicht umhinkommen, für Deine Anwendung ein 
Proportionalventil zu benutzen.


Peter

Autor: edi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,

das mit der gasmaske habe ich nur hinzugefuegt,weil ich mir vorstellen 
kann, dass sie bei einer derartigen (mis)handlung des ventils nuetzlich 
werden koennte.Wie Peter D. schon sagte
haelt die mechanik das nicht aus.....

(lach)gasmaske....weil ich nicht weiss mit welchem gas du spielst.

Ich weiss dass in Detschland immer mehr gespart wird(werden muss?).... 
aber geht da nicht der Ruf deutscher Qualitaet in der Welt floeten. Hier 
im ausland haben die deutschen autos
noch einen guten ruf.....wie lange noch?

PROPORTIONALVENTIL !

ed

PS: ueber PI hat noch keiner gesprochen

Autor: Stefan G. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
danke erstmal für die Hinweise.
Über die ganzen mechanischen Probleme bin ich mir im Klaren, ich habe 
das auch schon abgewogen. Ich will ja die beiden Ventiltypen auch nur 
mal vergleichen, um herauszufinden, ob das überhaupt vernünftig regelbar 
ist (mit einem Normalventil). Nach Rücksprache mit dem Ventilhersteller 
habe ich erfahren, daß tatsächlich auch "normale" Schaltventile so 
angesteuert werden. Daß die Lebensdauer begrenzt ist, ist klar. Es 
werden 100 Mio Schaltspiele garantiert. Bei einer von mir angedachten 
Frequenz von 7 Hz ergeben sich ca. 4000 Stunden. Das reicht für meine 
Anwendung, da das Ventil nie im Dauerbetrieb läuft, sondern nur für 
einzelne kürzere Messungen. Auch Proportionalventile werden übrigens oft 
mittels PWM angesteuert.
Zu meinem eigentlichen Problem hat bisher leider noch niemand etwas 
gesagt: Wie baue ich (allgemein) einen PI Regler per Software? 
Stellgröße soll dabei die Pulsbreite sein, gemessen wird die 
Ausgangsspannung des Flussmessers. Als Sollwert wird eine Sollspannung 
für den Flussmesser vorgegeben.
Ein Link wo so ein Regler mal ausführlich beschrieben ist, würde mir 
auch schon weiterhelfen.
Gruß,
Stefan

Autor: Siegfried (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn die PWM-Frequenz hoch genug ist, dürfte die Ventilmechanik keinen 
Stress mehr haben. Der Öffnungsbereich wird sich in einem kleinen 
Fenster der Ansteuerspannung bewegen und vom Druck vor bzw. hinter dem 
Ventil abhängen.

Diese Normalventile sind wohl mit einer Feder "vorgespannt", damit das 
Ventil im stromlosen Zustand dicht macht.

Z.B.
60% Nennspannung => noch gerade zu,
65% Nennspannung => etwas geöffnet,
70% Nennspannung => ganz auf,
(oder so ähnlich).

Siegfried

Autor: Gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Stefan ,

Wie hoch sind die mech. Kräfte zum Betätigen des Ventils.

Falls die Kraft ausreicht kannst du es doch an ein Modellbau
Servo hängen .

Code zum Regel eines Modellbauservos wurde hier schon
öfters beschrieben.

Zum PI-Regler:
Probier das Ganze erstmal nur mit einem P-Regler !!!

Als erstes musst du einen "Sollwert" vorgeben.
Z.B. über ein Poti dessen Wert du einliest od. falls nicht
einstellbar über eine Konstante definieren.
Als zweites den Istwert so wie beschrieben über den Durchflussmesser 
einlesen.
Als drittes einen Wert von einem Poti einlesen
mit dem die Verstärkung der Regelung einstellbar ist.

Berechnung des P-Anteiles:
Delta = Sollwert - Istwert
P_anteil = Delta * P_faktor

Diesen P-Anteil bringst du nun in Relation mit der
Impulslänge die das Servo braucht.
Bist du erstmal hier angelangt ist es nicht mehr viel
Aufwand in die Software noch den I-Anteil
oder auch noch einen D-Anteil für einen richtigen
PID-Regler einzustricken.
Hab einen PID-Regler vor kurzem in Bascom für die Regelung
von Servomotoren mit Rückmeldung über Encoder
realisiert. Geht super.

Gruss Gerhard

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Stefan,

bezüglich PI-Regler schau mal in die Bücher (Regelungstechnik2 von 
Lunze) liegt in der TU-Bücherei Erdgeschoss hinten links :-)

Gruß ein ehemaliger TUler aus Harburg

Autor: Stefan G. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Gerhard:
Danke erstmal für die Antwort, ich bin gerade dabei mir das mal 
hinzubasteln.
Eins ist mir jedoch noch nicht ganz klar. Was für eine Rolle spielt der 
P_Faktor? Wie stelle ich den ein? Ist er variabel?
Mir ist eigentlich klar, wie der Aufbau eines solchen Reglers aussieht, 
aber was meinst du mit "P_Anteil in Relation mit der Impulslänge 
bringen"?
Gruß,
Stefan

Autor: Gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Stefan

P Anteil ist der proportionale Anteil.
Je mehr der Ist-Wert vom Soll-Wert abweicht
umso mehr muss dagegengeregelt werden.

Mit P_Faktor meinte ich nichts anderes als dass du die
Regelabweichung eben mit einem Wert (von mir P_Faktor
genannt) multiplizierst um den Regler in Stärke einzustellen.
Den Wert für den P_Faktor würde ich über ein Poti einlesen.

zB:   Delta = 10 P_Faktor = 2 -------------> P_Anteil = 20
oder: Delta = 10 P_Faktor = 0.3 -----------> P_Anteil = 3

Somit kannst du von aussen einstellen wie stark dein
Servo auf Regelabweichungen reagiert.

@ aber was meinst du mit "P_Anteil in Relation mit der Impulslänge 
bringen"?
Ein Modellbauservo braucht für die Mittelstellung Impulslängen
von 1.5 ms , für Vollausschlag links 1ms , für Vollausschlag
rechts 2ms. Zwischen den Impulsen braucht man Pausenzeiten von
ca. 15ms.
Also ist eine Berechnung anzustellen mit der du vom P_Anteil
auf diese Impulslängen kommst.

Gruss Gerhard

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.