st ein MCP4725 DAC mit OPA551 Op-Amp eine gute Lösung für präzise 0-10V Ventilsteuerung?

#7754284
Lesenswert?

Hallo zusammen,

ich arbeite an einem Projekt, bei dem ich ein 0-10V Ventil (stufenlos von 0% bis 100% geöffnet) über einen Arduino möglichst präzise steuern möchte. Mein Ziel ist es, eine sehr feine und stabile Regelung zu erreichen, um z.B. den Wasserfluss und die Temperatur genau einzustellen.

Meine bisherige Lösung sieht wie folgt aus:

1
MCP4725 DAC (12-Bit) für die Erzeugung eines präzisen 0-5V analogen Signals.
2
OPA551 Op-Amp, um das 0-5V Signal des DAC auf 0-10V zu verstärken.
3
Ein rauscharmes Netzteil und präzise Widerstände (0,1% Toleranz) zur Verstärkung.
4
Optional ein Tiefpassfilter, um eventuelles Rauschen oder Welligkeiten im Signal zu glätten.

Meine Fragen:

1
Ist diese Schaltung eine gute Lösung, um eine maximale Präzision zu erreichen?
2
Gibt es bessere Alternativen zur Verstärkung von 0-5V auf 0-10V für dieses Ventil?
3
Sollte ich an irgendeiner Stelle zusätzliche Filter oder Stabilisatoren hinzufügen, um die Genauigkeit zu verbessern?
4
Hat jemand praktische Erfahrungen mit dem MCP4725 DAC und könnte Tipps geben, wie ich das Beste aus der Schaltung herausholen kann?

Vielen Dank für eure Hilfe!

Beitrag #7754289 wurde von einem Moderator gelöscht.
#7754290
Lesenswert?

Tricker schrieb:

Mein Ziel ist es, eine sehr feine und stabile Regelung zu erreichen, um z.B. den Wasserfluss und die Temperatur genau einzustellen.

Da Du eh regeln willst, und zwar nicht die Ventilöffnung oder den Wasserfluß, sondern die Temperatur, muß der DAC und der OPV sich sowieso mit in der Regelschleife befinden. D.h., deren Ungenauigkeiten werden automatisch mit ausgeregelt. D.h., der Kram muß nicht genau sein. Hier kommt es eher nur auf gewisse Randbedingungen an, z.B. Aussteuerbarkeit bei gegebener Betriebsspannung z.B. Nicht jeder läßt sich am Ein- und Ausgang bis auf 0V runterdrücken, wenn keine neg. Betriebsspannung vorhanden ist. Aber wird sowas nicht sowieso eher mit PWM gemacht, statt analog?

Tricker schrieb:

Ist diese Schaltung eine gute Lösung, um eine maximale Präzision zu erreichen?

Was heist "maximale Präzision"? Dein 12bit-DAC macht ja auch keine max. Präzision, sondern kann nur auf max. 1/4096stel genau sein.

1
Gibt es bessere Alternativen zur Verstärkung von 0-5V auf 0-10V für

dieses Ventil?

Tja, wir wissen ja noch nichtmal, ob das nur ein Ansteuersignal ist mit wenigen µA, oder ob da etliche mA oder gar A geliefert werden müssen.

1
Sollte ich an irgendeiner Stelle zusätzliche Filter oder

Stabilisatoren hinzufügen, um die Genauigkeit zu verbessern?

Nö, wenn das eine Regelung werden soll, dann sorgt die Regelung eben schon für die nötige Stabilität. Und irgendwelches Rauschen im µV/mV-Bereich stört so ein Ventil ja sicherlich nicht.

#7754293
Lesenswert?

Welche Eingangsimpedanz hat das anzusteuerne Ventil? Sind lange Kabel zwischen der Steuerung und dem Ventil? Sind störende Gerätschaften (Motoren, Schaltnetzteile, ...) in der Nähe?

Falls du einen Tiefpass verwenden willst dann würde ich den direkt nach dem DAC einbauen. (ggf. Spannungsfolger zwischen DAC Ausgang und Tiefpass oder gleich ein aktiver Tiefpass mit OPV)

Persönliche Seite #7754328
Lesenswert?

Letztlich möchtest du die Temperatur regeln. Zwischen Temperatur und Stellwert hängt dein DAC, dein Verstärker, der temperaturabhängige Spulenwiderstand, die Ventilkennlinie, der Wasserdruck, die Wassertemperaturen. Bei allem dazwischen ist der DAC dein kleinstes Problem. Daher wie schon vorgeschlagen einfach PER und alles in einen Regelkreis packen.

#7754345
Lesenswert?

Tricker schrieb:

OPA551 Op-Amp, um das 0-5V Signal des DAC auf 0-10V zu verstärken. Ein rauscharmes Netzteil und präzise Widerstände (0,1% Toleranz) zur Verstärkung. Optional ein Tiefpassfilter, um eventuelles Rauschen oder Welligkeiten im Signal zu glätten.

Ob das eine gute Idee ist, hängt vom Ventiltyp ab. Bei einem Kolbenventil wäre das mit Sicherheit kontraproduktiv.

#7754455
Lesenswert?

Für eine schnelle und stabile Regelung kommt es meiner Erfahrung nach weniger auf Rauschen & Genauigkeit beim Stellglied (also die Spannung zur Ventilsteuerung), sondern viel mehr auf die gute thermische Anbindung und geringe Totzeit des Sensors an. Also wie schnell siehst Du eine ansteigende Temperatur an Deinem Sensor wenn Du gerade das Ventil mit dem warmen Wasser aufgemacht hast.

#7754475
Lesenswert?

Joachim B. schrieb:

kurz und schmerzlos, du brauchst kein DAC mit all seinen Fehlern um ein Ventil zu steuern, PWM reicht aus.

Ich habe eine geregelte Last mit MCP4725 aufgebaut Im Gegensatz zu PWM kommt da eine statisch stabile Spannung heraus, ich muß nichts integrieren und / oder filtern. Du darfst es anders machen, ich halte ihn für eine gute Wahl.

Tricker schrieb:

Ist diese Schaltung eine gute Lösung, um eine maximale Präzision zu erreichen?

Eine gute Idee wäre, realistisch zu bauen. Dem Ventil ist Rauschen egal und 5%-Widerstände sind vermutlich genauer als das Ventil. Baue den Verstärker von 5 auf 10 Volt mit einem beliebig schlechten Operationsverstärker, das regelt der Arduino aus.

Interessanter wird der Regelalgorithmus, ohne große Überschwinger zu agieren.

Gerd E. schrieb:

Für eine schnelle und stabile Regelung kommt es meiner Erfahrung nach weniger auf Rauschen & Genauigkeit beim Stellglied (also die Spannung zur Ventilsteuerung), sondern viel mehr auf die gute thermische Anbindung und geringe Totzeit des Sensors an. Also wie schnell siehst Du eine ansteigende Temperatur an Deinem Sensor wenn Du gerade das Ventil mit dem warmen Wasser aufgemacht hast.

Gut ausgedrückt.

#7754552
Lesenswert?

Tricker schrieb:

Ein rauscharmes Netzteil und präzise Widerstände (0,1% Toleranz) zur Verstärkung.

Das ist Quatsch mit Soße. Das Hauptproblem wird das Ventil sein. Das ist sowas von ungenau und nichtlinear. Außerdem haben viele Ventile eine riesen Hysterese. In der Praxis werden daher Ventile oft gepulst. Quasi eine sehr langsame PWM, nennt man auch Stotterbetrieb.

Für eine Anwendung mit einem Dosierventil zum Gaseinlaß haben wir einen Algorithmus entwickelt, der das Ventil ganz langsam öffnet. Wird der Druck zu hoch, dann wird mit einem definierten Spannungseinbruch das Ventil wieder etwas geschlossen und langsam neu hochgefahren. Die Steuerung erfolgt also immer nur von einer Richtung aus.

Nenne mal den Link auf das konkrete Ventil, damit man sich dessen Daten anschauen kann.

#7754569
Lesenswert?

Das Hauptproblem wird das Ventil sein. Das ist sowas von ungenau und nichtlinear.

Hihi, das hab ich gerade auch gedacht. Solange das nicht irgendwelche krassen Spezialventile aus der Medizintechnik in der >1000Euro Klasse sind, braucht man sich keine weiteren Gedanken um die Feinheit der Ansteuerung zu machen.

Die Steuerung erfolgt also immer nur von einer Richtung aus.

Und das Ventil hat dadurch immer etwas Bewegung. Die Teile haengen sonst auch gerne etwas wenn man sie nur 0.1mm bewegen will.

Vanye

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren