PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : 0-10V Ausgang mit Arduino UNO



MHeymann
08.06.2013, 15:49
Hallo Zusammen,

ich habe folgendes Problem. Ich möchte an meinem Arduino UNO einen 0-10v Ausgang für ein Magnetventil realisieren. Dazu möchte ich die im u.a Anhang aufgeführte Schaltung verwende.

Erläuterung:

Am Pin D9 gebe ich 0-5V (PWM) aus.
Das PWM Signal wird im folgenden Filter (RC Glied R=10KOhm C=100nF) geglättet. --> Funktioniert problemlos.
Das geglättete Eingangssignal geht anschließend in den nicht-invertierenden Eingang des Operationsverstärkers (MC 1558N).
Spannungsversorgung des OP 15V.
Am Ausgang greife ich zum einen die Ausgangsspannung ab, zum anderen ist dort ein Spannungsteiler (R1=R2=10KOhm) angeschlossen.
Den Spannungsteiler führe ich zurück in den invertierenden Eingang des OP.


Somit: OP-Verstärker, nicht-invertierend; Verstärkungsfaktor laut Formel Verstärkung = u Ausgang / u Eingang = (1+ R1/R2), mit R1=R2 folgt eine Verstärkung von 2.

Soweit so gut. Jetzt mein Problem:

Für alles was am Eingang des OP größer als 2V ist funktioniert das wunderbar. BS: Eingangsspannung 2,5V Ausgangsspannung 5V.
Aber alles was kleiner 2V ist habe ich am Ausgang des OP ca. 4V. BS; Eingangsspannung 1,5V Ausgangsspannung 4V. Sogar U Ein 0V --> U Aus 4V.

Stehe jetzt echt auf dem Schlauch und finde einfach den Fehler nicht.

Wäre super, wenn mir jemand weiterhelfen könnte.

Gruß Marko

Schachmann
08.06.2013, 16:08
Hallo,

wenn Dein Kondensator wirklich ein Elko ist, dann ist er falsch herum angeschlossen. Im Schaltplan sind +15V und GND verbunden, das ist ein dicker Kurzschluss. Kann es sein, dass Dein Kondensator 100µF hat, statt 100 nF? Mit 100 nF sollte nämlich der Filter auch keine schöne glatte Spannung liefern...

Lt. Datenblatt enthält Dein OpAmp einfach zwei 741. Das ist dann kein Rail-to-Rail-Opamp. Wenn Du auf kleinere Spannungen kommen willst, muss er mit einer positiven und einer negativen Spannung versorgt werden. Also: mit einer symetrischen Spannungsversorgung (+/-12V müssten reichen) und einem Elko (ich würde sagen 47 µF) der richtig herum angeschlossen ist, sollte das funktionieren.

Aber bedenke: der OpAmp kann kein Magnetventil treiben, da muss mindestens noch ein Transistor dazwischen.

Schönes Wochenende,
viele Grüße,
Ralf

MHeymann
08.06.2013, 17:01
Hallo Ralf,

Danke für deine schnelle Antwort. Der verbaute Kondensator ist kein Elko. Ich habe das im Schaltplan berichtigt. Das mit den 100nF ist richtig. Der Filter arbeitet auch sehr gut. Das hab ich mit einem Oszi überprüft. Das PWM Signal vom Arduino arbeitet ach nicht mit der Standard Frequenz von 490Hz sondern über ne TIMER Funktion mit 31250 Hz. Also das passt alles Soweit.

Magnetventile ist etwas voreilig gewesen. Ich möchte damit ein Proportionaldruckregelventil mit einem 0-10V Eingang betreiben.

Wie versorge ich den OP den mit einer symmetrischen Spannung? Ich habe nur die +15V Versorgung.
Sollte ich eventuell einen anderen OP benutzen? Wenn ja welchen nehme ich denn?

Gruß
Marko

BMS
08.06.2013, 18:08
Hallo,
ein Rail-to-Rail-Operationsverstärker ist nicht unbedingt nötig. Auch eine symmetrische Spannungsquelle kann man sich hier sparen.
Möglich wäre der Einsatz eines billigen LM358, der kann am Ausgang bis 0,02V nach unten aussteuern (bei 10kOhm Last) und ist pinkompatibel. Alles andere wäre wirklich "mit Kanonen auf Spatzen" ;)
Grüße, Bernhard

MHeymann
08.06.2013, 19:31
Hallo Bernhard,

danke für deine Antwort. Ich werde den LM358 mal ausprobieren.

Gruß
Marko

Schachmann
09.06.2013, 19:43
Hallo,

ich komme leider erst jetzt dazu zu antworten. Also ich wollte nicht sagen, das der TO einen Rail-to-Rail-OpAmp benutzen soll, ich wollte lediglich darauf hinweisen, das der 741 kein Rail-to-Rail-OpAmp ist.

Der LM358 scheint für diese Anwendung ein Super-Tipp zu sein. Zufällig habe ich noch ein Kästchen voll davon hier rumliegen und das gerade mal auf dem Breadboard probiert. Ich bin bis auf 11 mV runtergekommen. Das ist zwar nicht ganz der Voltage-Swing der auf dem Datenblatt vorne versprochen wird (Large Output-Voltage-Swing 0 V to Vcc - 1,5 V), für die besprochene Anwendung aber sicher mehr als gut genug. Mit LT Spice IV simuliert, geht es übrigens nur runter bis rd. 40 mV (Spice-Modell dafür gibt es auf meiner Website).

Schönes Restwochenende,
Gruß,
Ralf

BMS
09.06.2013, 21:34
Das ist zwar nicht ganz der Voltage-Swing der auf dem Datenblatt vorne versprochen wird (Large Output-Voltage-Swing 0 V to Vcc - 1,5 V), für die besprochene Anwendung aber sicher mehr als gut genug.
Garantiert werden laut Datenblatt max. 20mV bei 10kOhm Last (typisch: 5mV) , also sind 11mV schon recht ordentlich.
Auf der ersten Seite des Datenblattes stehen meist nur die groben Richtwerte.
Grüße, Bernhard

ichbinsisyphos
09.06.2013, 23:23
Nimm erstmal einen anderen OPAMP, der 741 ist was für Nostalgiker ;)

Ich versteh zwar nicht, wieso der bei 1.5V Eingang schon Probleme machen sollte, aber ich würd den OP trotzdem vorher als Fehlerquelle ausschliessen.

Eines würd mich noch interessieren: du bekommst dieses Verhalten bei unbelasteten Ausgängen? Wenn nicht, dann wär noch interessant, welchen Strom du entnimmst.

MHeymann
10.06.2013, 09:43
Ja dieses verhalten zeigt sich wenn der Ausgang unbelastet ist. Ändert sich aber auch nicht, wenn ich eine Last anhänge.

Das Ventil, welches ich nutze hat auf der 0-10v Steuerleitung einen Widerstand von 29K --> somit ist der Strom recht gering.

MHeymann
11.06.2013, 16:00
So. Hab jetzt den LM358 getestet. Und siehe da es funktioniert :D. Hab am Ausgang 12mV.

Vielen Dank an alle die mir hier geholfen haben.

Gruß

Marko