Servus,
arbeite momentan an einem Projekt für mein Maschinenbau Studium. Ich
müsste für einen Versuchsaufbau, ein 5V PWM Signal von einem Arduino in
ein 0-10V Normsignal umwandeln. Wir nutzen dieses Signal für den Eingang
eines Motorreglers.
Habe mich mal ein wenig durch die Foren gelesen und 2 Bauteile
herausgesucht.
Einmal wäre da das SparkFun I2C DAC Breakout - MCP4725
(https://www.sparkfun.com/products/12918) Board, um ein analoges
Ausgangssignal zu erzeugen. Danach würde ich dieses dann in einen
SparkFun OpAmp Breakout - LMV358(https://www.sparkfun.com/products/9816)
Board geben um mit einem Verstärkungsfaktor von 2 das Signal von 0-5V
auf 0-10V zu heben.
Würde das so funktionieren ?
Teddy schrieb:> Ein RC Tiefpass dürfte reichen.
Nur dann, wenn man den Umrichter schlau konfiguriert...
Oder schlimmstenfalls den Tiefpass und dahinter noch den OP mit v=2
Mr.Rioes schrieb:> LMV358(https://www.sparkfun.com/products/9816)> Board geben um mit einem Verstärkungsfaktor von 2 das Signal von 0-5V> auf 0-10V zu heben.> Würde das so funktionieren ?
Der LMV358 ist zwar billig (Ich glaube, der blligste OPV überhaupt),
hier aber ungeeignet.
Wenn schon verstärkt werden muß, dann doch gleich den Tiefpaß mit
einbinden. Im Tietze-Schenk findet sich ein Beispiel:
"Aktives Tiefpaßfilter 2.Ordnung mit Einfachmitkopplung".
Die Grenzfrequenz wird mit zwei gleichen Widerständen und zwei gleichen
Kondensatoren eingestellt, der Filtertyp mit der Verstärkung.
Der verwendete OPV sollte hier unkritisch sein.
m.n. schrieb:> Wenn schon verstärkt werden muß, dann doch gleich den Tiefpaß mit> einbinden. Im Tietze-Schenk findet sich ein Beispiel:> "Aktives Tiefpaßfilter 2.Ordnung mit Einfachmitkopplung".> Die Grenzfrequenz wird mit zwei gleichen Widerständen und zwei gleichen> Kondensatoren eingestellt, der Filtertyp mit der Verstärkung.> Der verwendete OPV sollte hier unkritisch sein.
Naja, mehr als 6V sollte er schon vertragen.
Wieviel Bit Auflösung und welche Genauigkeit brauchst Du?
Und: Kennst Du den Unterschied?
Wie schnell muss das ganze sein, d.h. wie viele Abtastwerte pro Sekunde
musst Du ausgeben?
Welchen Strom muss der Ausgang liefern können?
(a) im eingeschwungenen Zustand (Gleichstromfall)
(b) im dynamischen Betrieb (Sprungantwort, d.h. von 0V auf 10V) Wie
schnell ist die Spannung am Eingang des Motorreglers von 0V auf 10V
gestiegen? Vergleiche das mit der Abtastrate aus der Antwort vorher.
Diese Angaben musst Du ermitteln, und der Weg dahin gehört in die
schriftliche Ausarbeitung. Die Suche nach geeigneten Bauteilen ist erst
der zweite Schritt.
fchk
@ Frank K.
der Motor macht maximal 120 U/min und ich würde gerne auf eine halbe
umdrehung genau einstellen. Also wäre eine Auflösung von 8bit schon
ausreichend. Die Genauigkeit wäre gut wenn sie +/- eine halbe Umdrehung
ist.
Die Abtastrate reicht aus wenn sie im bereich 0,5s liegt.
Der maximale Strom dürfte sehr gering sein, im Bereich 10-20 mA, da es
ja nur ein Steuersignal ist.
Die richtige Ansteuerung erfolgt später über ein Beckhoff SPS System,
dass uns das 0-10v Signal zur Verfügung stellt. Aber da diese momentan
fest in der Maschine verbaut ist, brauchen wir wirklich nur eine
rudimentäre Lösung für die 0-10V.
Mr.Rioes schrieb:> der Motor macht maximal 120 U/min und ich würde gerne auf eine halbe> umdrehung genau einstellen. Also wäre eine Auflösung von 8bit schon> ausreichend. Die Genauigkeit wäre gut wenn sie +/- eine halbe Umdrehung> ist.
Du kennst den Unterschied zwischen Auflösung und Genauigkeit?
Harald W. schrieb:> Du kennst den Unterschied zwischen Auflösung und Genauigkeit?
wie oben geschrieben die Auflösung ist wie genau das Signal unterteilt
ist, und die Genauigkeit wäre wie weit mein Signal vom Realwert
abweicht. Oder liege ich da falsch.
Hier eine einfache Schaltung die ich schon mal in einem anderen Thread
erwähnt hatte. Der 22k Ohm Widerstand kann durch einen 10k Ohm
Widerstand ersetzt werden, dann hast Du eine Verstärkung von 2 (zwei).
Wenn am Eingang eine Spannung von 5V anliegt, sind es am Ausgang 10V.
Die Schaltung kommt mit einer einfachen Versorgungsspannung aus und ist
gleichspannungsgekoppelt.
Die Versorgungsspannung kann auch direkt aus 24V Hutschienenmodulen
gewonnen werden.
Frank K. schrieb:> Wieviel Bit Auflösung und welche Genauigkeit brauchst Du?> Und: Kennst Du den Unterschied?Harald W. schrieb:> Du kennst den Unterschied zwischen Auflösung und Genauigkeit?
Die Frage ist noch nicht von Jedem gestellt worden. Ich war noch nicht
dran und hole das jetzt nach:
Kennt ihr den Unterschied zwischen Auflösung und Genauigkeit?
Nein? Aber gleich!
https://www.mikrocontroller.net/articles/Aufl%C3%B6sung_und_Genauigkeit
SCNR
Ralf schrieb:> Hier eine einfache Schaltung die ich schon mal in einem anderen Thread> erwähnt hatte.
Da es ein PWM Signal ist, muss noch ein Kondensator parallel zum 22k.
Und parallel zum 10u Elko noch einen 100n spendieren. Dann sollte das
für´s Erste passen.
Mr.Rioes schrieb:> wie oben geschrieben die Auflösung ist wie genau das Signal unterteilt> ist, und die Genauigkeit wäre wie weit mein Signal vom Realwert> abweicht. Oder liege ich da falsch.
Du meinst aber, das Du mit 8Bit eine Genauigkeit von <1/2%
erreichen kannst. Wenn man besser 1% Genauigkeit braucht,
muss man schon etwas Sorgfalt bei der Auswahl der Teile
und dem Aufbau der Schaltung walten lassen.
Ralf schrieb:> Hier eine einfache Schaltung die ich schon mal in einem anderen Thread> erwähnt hatte. Der 22k Ohm Widerstand kann durch einen 10k Ohm> Widerstand ersetzt werden, dann hast Du eine Verstärkung von 2 (zwei).> Wenn am Eingang eine Spannung von 5V anliegt, sind es am Ausgang 10V.> Die Schaltung kommt mit einer einfachen Versorgungsspannung aus und ist> gleichspannungsgekoppelt.>> Die Versorgungsspannung kann auch direkt aus 24V Hutschienenmodulen> gewonnen werden.Schorsch X. schrieb:> Da es ein PWM Signal ist, muss noch ein Kondensator parallel zum 22k.> Und parallel zum 10u Elko noch einen 100n spendieren. Dann sollte das> für´s Erste passen.
Wunderbar werde es mal so probieren.
Schorsch X. schrieb:> Da es ein PWM Signal ist, muss noch ein Kondensator parallel zum 22k.> Und parallel zum 10u Elko noch einen 100n spendieren. Dann sollte das> für´s Erste passen.
In welcher Größenordnung sollte denn der Kondensator parallel zum 22k
Widerstand sein ?
Mir ist noch nicht ganz klar ob der TO nur das PWM-Signal auf 10V
anheben möchte, oder ob er aus dem PWM-Signal, je nach Pulsweite, ein
reines Gleichspannungssignal von 0-10V erzeugen will? Dann müsste in der
Tat, wie von Teddy vorgeschlagen, noch ein Tiefpass nachgeschaltet
werden.
Ralf schrieb:> Mir ist noch nicht ganz klar ob der TO nur das PWM-Signal auf 10V> anheben möchte, oder ob er aus dem PWM-Signal, je nach Pulsweite, ein> reines Gleichspannungssignal von 0-10V erzeugen will? Dann müsste in der> Tat, wie von Teddy vorgeschlagen, noch ein Tiefpass nachgeschaltet> werden.
Er will ein 0-10V Normsignal, und das ist eine Analogspannung, kein PWM
Gemurkse.
Ich habs gerade ausprobiert. Ein Kondensator 1µF bis 100µF parallel zum
22k Ohm Widerstand funktioniert nicht (bei 1kHz PWM). Aber ein 10k Ohm
Widerstand in Reihe zum Eingang und ein 100µF Kondensator parallel zum
47k Ohm Widerstand, funktioniert ausgezeichnet.
Die Größe des Kondensators hängt natürlich von der PWM-Frequenz des TOs
ab. Ein zu großer Kondensator produziert eine Regelverzögerung, die sich
evtl. negativ auf den gesamten Motorregelkreis auswirken könnte!
m.n. schrieb:> Bevor hier noch wild Kondensatoren durch die Gegend fliegen:
Wenn der TE diesen DA-Wandler benutzt:
https://www.sparkfun.com/products/12918
braucht er doch überhaupt kein RC-Filter,
sondern nur einen Verstärker. Besser wäre
es natürlich, gleich einen DA-Wandler mit
10V-Ausgang zu nehmen. Dann wäre eine Ge-
nauigkeit von besser 1/2% auch kein Problem.
Ist zwar nicht direkt die Frage an sich, aber was spricht gegen den
Analogausgang des Arduinos, mit einem OpAmp mit verstärkung?
Im Arduino wäre das einfach, man nimmt einfach den Wert der 8bit PWM (wo
auch immer der her kommt) und schreibt ihn stattdessen in das DAC
Register. Fertig. Bei der 16bit PWM einfach nur das erste Byte nehmen.
Gerald M. schrieb:> aber was spricht gegen den> Analogausgang des Arduinos, mit einem OpAmp mit verstärkung?
Richtig. Und schon kann die oben genannte Schaltung ohne Vorschalten
eines Tiefpasses direkt eingesetzt werden.
Gerald M. schrieb:> Ist zwar nicht direkt die Frage an sich, aber was spricht gegen den> Analogausgang des Arduinos, mit einem OpAmp mit verstärkung?
Jetzt machst du mich neugierig. Reden wir hier von einem Arduino Due?
Oder welcher Arduino hat sonst einen (echten) Analogausgang?
Hast recht, habe nie wirklich mit Arduino gearbeitet, wusste aber dass
es den "analogwrite" Befehl gibt.
Da ich vor einer Weile auf STM umgestiegen bin, war mir so auch nicht
mehr bewusst dass AVRs zwar ADCs, aber keine DAC haben.
Also doch, aktiver Tiefpass oder ein DAC shield...
Ich habe mal einen 0815 Freuqenzumrichter mit einem Arduino angesteuert.
Die Spannung habe ich über eine geglättete PWM erzeugt. Hat hervorragend
funktioniert. Da hier fast nichts von Nöten ist.. einfach mal
ausprobieren?
Gruss
A.B
Gerald M. schrieb:> Hast recht, habe nie wirklich mit Arduino gearbeitet, wusste aber dass> es den "analogwrite" Befehl gibt.
Den gibt es zwar, allerdings wird damit nur eine handelsübliche PWM
erzeugt - nix DAC. Für Anfänger ist das zur Unterscheidung zu
DigitalWrite eventuell hilfreich, Kenner verwirrt das jedoch schnell.
A. B. schrieb:> Für Anfänger ist das zur Unterscheidung zu> DigitalWrite eventuell hilfreich, Kenner verwirrt das jedoch schnell.
AnalogWrite() geht auch bei Arduino auf einen echten DAC, so der µCüber
einen solchen verfügt (-> Arduino Due).
Bei Arduino heißen die Erweiterungsplatine auch "Shields" und die
Programme "Sketches". Da haben sich die Kenner inzwischen auch mit
abfinden müssen.
A. B. schrieb:> Die Spannung habe ich über eine geglättete PWM erzeugt
Ja genau, und zuerst die PWM auf 10V anheben, das ist viel einfacher und
braucht kein OP- Geraffel. Dann RC-Glied!
Gruss Chregu
Wolfgang schrieb:> AnalogWrite() geht auch bei Arduino auf einen echten DAC, so der µCüber> einen solchen verfügt (-> Arduino Due).
Nur wird dieser Due niemals 5 VDC ausgeben können.
Christian M. schrieb:> Ja genau, und zuerst die PWM auf 10V anheben, das ist viel einfacher und> braucht kein OP- Geraffel. Dann RC-Glied!
Das ist aber unterste Bastelschublade, wobei die Ausgangsspannung von
der Eingangsimpedanz des analogen Einganges abhängt.
Wolfgang schrieb:> Ob man nun 3.3V oder 5V auf 10V anhebt, ist doch wohl egal.
Im Betreff stehen 5 V. Folglich kann es kein Arduino Due sein und es
gibt keinen DAC auf dem Chip.
Wenn die Fragestellung völlig ignoriert werden darf, könnte ich auch
einen AD667 anbieten: 12 Bit, interne Referenz und direkter, gepufferter
10 V Ausgang.
m.n. schrieb:> Im Betreff stehen 5 V. Folglich kann es kein Arduino Due sein und es> gibt keinen DAC auf dem Chip.
Er will aber anscheinend dieses DA-Wandler-Board benutzen:
https://www.sparkfun.com/products/12918
Mr.Rioes schrieb:> Servus,> arbeite momentan an einem Projekt für mein Maschinenbau Studium. Ich> müsste für einen Versuchsaufbau, ein 5V PWM Signal von einem Arduino in> ein 0-10V Normsignal umwandeln.
So habe ICH die Aufgabe verstanden.