Hallo,
mal eine allgemeine Frage.- Was meint ihr, wie ich am schnellsten eine
Variante aus einem Regelkreis mit Drucksensor und Pumpe realisieren
kann.
Welchen µC - würded ihr für eine solche Aufgabe empfehlen?
Falls ich mich in die C - Programmierung einarbeiten müsste und ich noch
keinerlei Erfahrung mit solchen Vorhaben gesammelt habe, würde es mich
interessieren, wieviel Zeit ihr veranschlagen würded!?
Vielen Dank für die Antworten
Klaus wrote:
> Hallo,>> mal eine allgemeine Frage.- Was meint ihr, wie ich am schnellsten eine> Variante aus einem Regelkreis mit Drucksensor und Pumpe realisieren> kann.> Welchen µC - würded ihr für eine solche Aufgabe empfehlen?> Falls ich mich in die C - Programmierung einarbeiten müsste und ich noch> keinerlei Erfahrung mit solchen Vorhaben gesammelt habe, würde es mich> interessieren, wieviel Zeit ihr veranschlagen würded!?>> Vielen Dank für die Antworten
Soll die Pumpe einen konstanten Druck aufbauen ?
Wie wird denn die Pumpe angesteuert ?
Was für einen Drucksensor hast du denn ?
Fragen über fragen....
Ja, die Pumpe soll einen konstanten Druck in einer bestimmten Zeit
aufbauen. Die Führungsgröße wird eine Digitale Vorgabe sein (Sowohl
Druck als auch die Zeit, in der der Druck aufgebaut werden soll).
Angesteuert wird die Pumpe, denke ich PWM, wenn ich mit einem µC
arbeiten möchte. D.H. einen FET werde ich vorraussichtlich als Schalter
benutzen. Drucksensoren bin ich unschlüssig.
Da der Druck um die 20kPa Maximalwert haben wird dachte ich an eine
Lösung von Honeywell oder Disynet. Oder was empfiehlt man für
Drucksensoren bei solch geringen Drücke!?
> Was meint ihr, wie ich am schnellsten eine> Variante aus einem Regelkreis mit Drucksensor> und Pumpe realisieren kann.
Indem du ein Ingenieurbuero anrufst das damit Erfahrung hat. :-)
> Welchen µC - würded ihr für eine solche Aufgabe empfehlen?
Es ist aller Wahrscheinlichkeit nach vollkommen egal. Sollte es das
nicht sein weil deine Regelstrecke oder deine Aufgaben unbewoehnliche
Loesungen erfordern (z.B bezueglich Geschwindigkeit, Genauigkeit,
Antwort auf Stoergroessen) so hast du vergessen sie uns zu nennen.
> Falls ich mich in die C - Programmierung einarbeiten müsste und ich> noch keinerlei Erfahrung mit solchen Vorhaben gesammelt habe,> würde es mich interessieren, wieviel Zeit ihr veranschlagen würded!?
Das haengt von deinem Vorwissen und der Qualitaet deiner Lehrer ab. Ich
wuerde mal sagen etwa 6Monate bist du C kannst und 6-12Monate bist du
Ahnung von Regeltechnik hast.
Olaf
>Indem du ein Ingenieurbuero anrufst das damit Erfahrung hat. :-)
Kann jeder ;-)
>Es ist aller Wahrscheinlichkeit nach vollkommen egal. Sollte es das
nicht sein weil deine Regelstrecke oder deine Aufgaben unbewoehnliche
Loesungen erfordern (z.B bezueglich Geschwindigkeit, Genauigkeit,
Antwort auf Stoergroessen) so hast du vergessen sie uns zu nennen.
Billig und einfach zu programmieren.
>Das haengt von deinem Vorwissen und der Qualitaet deiner Lehrer ab. Ich
wuerde mal sagen etwa 6Monate bist du C kannst und 6-12Monate bist du
Ahnung von Regeltechnik hast.
Also C habe ich schon einmal programmiert. Jedoch noch keinen
Mikrokontroller.
Die theoretische Regelungstechnik dürfte bei diesem Vorhaben kein
Problem darstellen.
Ich möchte nochmal erwähnen, dass es ein relativ genaues System werden
sollte, ohne großartigen Störeinflüssen, wie Temperaturschwankungen etc.
Da ich jedoch von Drucksensorik kaum bzw. keine Ahnung habe, würde es
mich freuen Vorschläge für Sensoren zu bekommen.
Also, gehen wir auch noch davon aus, dass ich in C Grundkenntnisse habe
und nun damit einen µC programmieren möchte.
Als Führungsgröße wird die Aufblasrate festgelegt und den Druck, z.B.
innerhalb eines Ballons an einem zweiten Anschluss Messe. Diese Werte
werde ich innerhalb des Kontrollers dann verarbeiten müssen.
Dazu werde ich, denke ich nicht ein Jahr bzw.
>(etwa 6Monate bist du C kannst und 6-12Monate bist du
Ahnung von Regeltechnik hast)
brauchen!?
> Billig und einfach zu programmieren.
Das duerfte fuer fast jeden Microcontroller gelten.
> Also C habe ich schon einmal programmiert. Jedoch noch keinen> Mikrokontroller.
Das ist eigentlich kein grosser Unterschied. Es gibt bloss kein printf
und keine Fliesskommazahlen und die mathe libary ist auch etwas
spartanischer. :-)
Im ernst, du bist etwas eingeschraenkt was den Speicher angeht und wenn
du unbedingt Fliesskommazahlen brauchst, was nicht der Fall ist, sollte
es nicht unbedingt der kleinste Controller sein.
Ich wuerde darauf achten einen Controller zu nehmen fuer den du
preiswert einen guten Debugger bekommst. Das wird dir dein Leben als
Einsteiger deutlich erleichtern.
Man wird dir hier wahrscheinlich einen AVR empfehlen weil jeder ihn
benutzt und dann einfacher vom Nachbarn abschreiben kann.
Ich wuerde dir eher einen R8C empfehlen weil der direkt mit 16Bit Zahlen
umgehen kann, das ist fuer die Regelung einfacher, und es einen schoenen
Debugger gibt.
Aber wie schon gesagt loesbar ist das natuerlich auch mit AVR, MCS51,
ST6 usw...
> Die theoretische Regelungstechnik dürfte bei diesem Vorhaben kein> Problem darstellen.
Das ist schoen. Da wird naemlich die Hauptaufgabe liegen. Wenn du ja
schon C kannst musst du auf einem Controller ja nur Dinge vergessen die
er nicht kann und etwas Speichereffzienter programmieren.
Um da mal ein Beispiel zu geben, auf einem 8Bit Controller (wie AVR)
der vielleicht gerade mal 1kb Ram hat, empfiehlt es sich bei jeder
Variable nachzudenken ob die noch in 1Byte passt und dann einen
entsprechenden Datentyp zu nehmen. Auf dem PC hast du vermutlich immer
int geschrieben und da keinen weiteren Gedanken dran verschwendet.
Olaf
> Da ich jedoch von Drucksensorik kaum bzw. keine Ahnung habe, würde> es mich freuen Vorschläge für Sensoren zu bekommen.
Drucksensoren gibt es an jeder Ecke da sowas in der Industrie recht
haeufig gemessen wird.
> Als Führungsgröße wird die Aufblasrate festgelegt und den Druck, z.B.> innerhalb eines Ballons an einem zweiten Anschluss Messe. Diese Werte
Deute ich das richtig das du ein gasfoermiges Medium pumpen willst?
Du muss erstmal grob unterteilen, will ich Gas oder Fluessigkeit messen,
und dann als naechstes welches Gas. Das kann ja Luft sein, oder durchaus
etwas agressives.
Schau z.B mal hier:
http://www.sensortechnics.com/
Aber wie gesagt, es gibt vermutlich dutzende von Herstellern.
Olaf
ich kann mich natürlich irren, aber wenn du nur für einen konstanten,
genauen Druck sorgen willst, ist ein
PI-Regler(http://de.wikipedia.org/wiki/PI-Regler#PI-Regler) dein freund.
Der arbeitet nicht übermäßig fix (dafür PID, aber das brauchst du nich),
dafür lässt er keine Differenz von Ist- und Soll-Größe übrig, ist
relativ einfach zu bedienen, und wenn ich mich nicht täusche auch net
allzu teuer.
Da das gute Stück dann auch lieber analog arbeitet, wird dein Sensor
schon preiswerter.
Programmieren musst auch nicht.
Möchte aber an dieser Stelle anraten, es dir genau anzuschauen. Mein
Wissen gründet sich leider nicht auf viel Erfahrung.
Da es sich in erster Linie um Verzögerungsglieder erster Ordnung handelt
(Ballon und Motor), hätte ich mich auch auf PI-Regler eingelassen. Diese
sind hinreichend, für mein Problem. Jedoch ist tatsächlich die Frage, ob
digital oder analog. Natürlich ist es eben schön mit einem µC digitale
Filter zu programmieren, desweieteren können über die PWM schöne Modis
(d.h. wie ich den Ballon Aufblase, meine ich zumindest mal zu
behaupten.) ausgeführt werden.
Das ist jetzt wirklich noch die Frage, ob überhaupt µC, oder gleich
vollständig analog.
Ich merke gerade, dass ich etwas genauer lesen hätte sollen.
Aus dem etwas genaueren lesen ergaben sich ein paar weitere Fragen (wenn
sie durch noch genaueres Lesen beantwortet werden können, bitte
Platzverweis an mich... mein Geisteszustand ist heute nicht mehr der
beste).
Du willst einen Ballon aufblasen. Das willst du mit einer Pumpe machen,
die Luft in den Ballon pumpt. Im Ballon sollen später 20kPa herrschen
(1/5 des Atmosphärendrucks (!) wenn mich meine Physikkentnisse nicht
trügen).
Das ganze soll dann so ablaufen: die Pumpe pumpt solang Luft in den
Ballon, bis da besagte 20kPa (oder eben ein anderer Wert) herrschen.
Dann hört sie auf. Die Luft entweicht, sie fängt wieder an usw... (oder
man nimmt den Ballon runter, was immer).
Bin ich da auf der richtigen Spur, oder ist das eine der von mir
patentierten Hirnflatulenzen?
Wenn dem denn nicht so ist (also wenn das von mir geschriebene stimmt)
könnte die Regelung etwas nerviger werden, einfach aus der Tatsache
herraus das Ballons sehr nervige Gebilde sind.
> könnte die Regelung etwas nerviger werden, einfach aus der Tatsache> herraus das Ballons sehr nervige Gebilde sind.
Ganz klar! Ein Ballon ist eine Regelstrecke mit Dirac-
Ausgleich! :-]
Olaf
Also schon richtig verstanden. Wir gehen hier um den >Hirnflatulenzen
noch ein wenig auf die Sprünge zu helfen von einem relative Druck aus.
Also, es handelt sich nicht um einen handelsüblichen Luftballon, sonder
wenn man es so will um ein in sich nicht stabiles Luftreservoir.
Der Druck wird aufgebaut, wie gesagt in einer bestimmten Zeit und soll
dann gehalten werden, d.h. eventuell auch nachgepumpt werden.
Relativer Druck... danke :) ich wusste das mir irgendwo was fehlte...
Mit dem neu gewonnenen Wissen bin ich aber immernoch der Meinung, das
das ganze mit einem PI-Regler am besten geht. Die Pumpe könnte womöglich
kostenintensiv werden, wenn du nicht noch irgendwo geschickt ein Ventil
einbauen kannst (und die haben, so sie denn elektrisch gesteuert sind,
auch wieder einen ordentlichen Preis).
Mal gespannt was da draus wird.
Btw, ist es zu neugierig zu fragen, für was man sowas braucht? Wärs das,
würd ichs nämlich lassen...
MfG
Daniel
> Also, es handelt sich nicht um einen handelsüblichen Luftballon, sonder> wenn man es so will um ein in sich nicht stabiles Luftreservoir.
Ich hoffe mal das die Aehnlichkeit zum Luftballon nicht zu gross ist.
Wenn ich naemlich fruehkindliche Erfahrung korrekt erinnere so blaesst
sich ein Luftballon erst leicht auf, dann schwer wenn er anfaengt sich
zu denen, um dann wieder etwas leichter zu werden.
Die Funktion Druck--->Volumen hat dann naemlich zwei Stellen wo derselbe
Druck ein unterschiedliches Volumen darstellt. Sowas macht einen Regler
bestimmt interessant. :-)
Im uebrigens wuerde ich den Regler selbstverstaendlich digital aufbauen
und wohl erstmal mit einem PID-Regler anfangen. Wenn du glaubst keinen
D-Anteil zu brauchen kannst du den ja dort auf Null setzen. Schliesslich
ist der D-Anteil ja nur eine Zeile in deinem Programm.
Einer der Gruende warum ich das so machen wuerde: Vermutlich wird die
Eingangsspannung deiner Luftpumpe und ihre Faehigkeit einen bestimmten
Druck aufzubauen nicht linear sein. Dann koenntest du soetwas relativ
elegant in der Software linearisieren und hoffen so einfacher an stabile
Regelparameter zu kommen.
Der Zweite Grund besteht darin das man in Software ja nicht unbedingt
auf einen reinen PID-Regler angewiesen ist. Man kann seinen Algorythmus
ja schnell an gewisse Probleme anpassen ohne gleich etwas ganz anderes
machen zu muessen. Ein Beispiel fuer so ein Problem waere z.B das oben
angefuehrte Verhalten des Luftballons.
Olaf