Hallo,
ich habe die angehängte Schaltung nachgebaut (die ich vorher leicht
abgeändert habe, statt Spannungsregler 7815 -> 7818 und statt Op ua741
-> LM301).
Die PWM erzeuge ich mit dem 8Bit-Timer2 (Timer1 ist leider belegt) auf
einem AVR NET IO-Board von Pollin (16MHz getakteter AVR644). Der Teiler
ist hierbei 1024, die Frequenz somit 15,625kHz:
Ich habe mal eine Kennlinie erstellt und dabei folgendes gemessen:
1
OCR2A Uin [V] Uout [V]
2
0 4,97 2,08
3
20 4,56 2,08
4
70 3,59 2,08
5
120 2,62 2,1
6
140 2,23 2,18
7
180 1,46 2,78
8
220 0,69 5,59
9
230 0,5 7,17
10
240 0,3 9,55
11
245 0,2 11,28
12
250 0,11 13,4
13
251 0,09 13,89
14
252 0,07 14,74
15
253 0,05 15,53
16
254 0,03 16,54
17
255 0,01 17,2
Der Verlauf ist logarithmisch (siehe auch angehängtes Diagram), der für
mich interessante Bereich ist der ab 9,55V Uout. Leider habe ich hier
nur 15 Schritte. Wie kann ich hier mehr Schritte erhalten? Evtl. die
Schaltung abändern? Oder SoftPWM?
Gruß
Joe_D
@ Joe_D (Gast)
> AnschaltungHeizung.png> 4 KB, 25 Downloads>Der Verlauf ist logarithmisch (siehe auch angehängtes Diagram),
Liegt an deiner schlechten Schaltungsdimensionierung. Bei korrekter
Dimensionierung ist das nämlich alles schön linear.
>mich interessante Bereich ist der ab 9,55V Uout.
Rede mal deutsch und beschreibe dein Vorhaben GENAU!
Siehe Netiquette> Leider habe ich hier>nur 15 Schritte. Wie kann ich hier mehr Schritte erhalten? Evtl. die>Schaltung abändern? Oder SoftPWM?
Erstmal die Schaltung gescheit dimensionieren.
Lies mal was über Optokoppler und PWM.
Den Optokoppler kann man direkt per AVR ansteuern, ein Vorwiderstand
reicht.
Am Ausgang braucht man entweder einen Treiber oder einen hochohmigen
Tiefpass. R3 muss eher 100K++ sein, besser 1M. Und als OPV bruacht du
was anderes, LM358 ist ein brauchbarer Kandidat.
MFg
Falk
@Falk
> Liegt an deiner schlechten Schaltungsdimensionierung
Ich habe nichts "dimensioniert", denn wie schon geschrieben habe ich
"die angehängte Schaltung nachgebaut".
> Rede mal deutsch und beschreibe dein Vorhaben GENAU!
Das Vorhaben ist folgendes: An meiner Vaillant-Therme kann man die
Vorlauftemperatur mittels einer Spannung von 10V-17V vorgeben, die
Therme selbst liefert eine Gleichspannung von ca. 22V. Ich möchte nun
die besagte Spannung von 10V-17V galvanisch getrennt vorgeben und habe
dazu den oberen Schaltplan im Netz gefunden und leicht abgeändert
nachgebaut.
> Lies mal was über Optokoppler und PWM.
PWM funktioniert ja ohne Probleme, wie man im Diagram sieht schön
linearer Anstieg der Spannung von 0V bis 5V.
Beim Optokoppler werde ich wohl auf die Nicht-Invertierte Schaltungsart
wechseln.
> Den Optokoppler kann man direkt per AVR ansteuern, ein Vorwiderstand> reicht.
Ok, bei meinem 6N139 wäre das laut Datenblatt (If=1.6mA,Vf=1.4V) ein
2,2KOhm Widerstand.
> Am Ausgang braucht man entweder einen Treiber oder einen hochohmigen> Tiefpass.
Am Ausgang vom Optokoppler?
Ein Tiefpass ist doch ein RC-Glied. Welche Grenzfrequenz sollte dafür
gewählt werden?
> R3 muss eher 100K++ sein, besser 1M. Und als OPV brauchst du> was anderes, LM358 ist ein brauchbarer Kandidat.
Mit OPVs kenne ich mich kaum aus, ausser das die im Plan verwendete
Schaltungsart ein Spannungsfolger ist.
Der LM358 ist ein DualOp. Weshalb eignet sich dieser besser als ein
LM301? Ich hätte auch noch einen LM318P.
Gruß
Joe_D
Hallo,
das Grundproblem an der Schaltung ist daß der Optokoppler (100kHz) zu
langsam für deine PWM 16KHz * 8Bit = 4Mhz ist. Außerdem wird C1 viel
schneller entladen als geladen.
Ich vermute mal daß in der ursprünglichen Schaltung R3+R4 getauscht
waren.
Dies hätte den Vorteil daß der Kondensator symmetrischer betrieben wird
und der Optokoppler auf Grund des höheren Stroms etwas schneller wird,
da er nicht ganz in die Sättigung gerät.
Den LM301 würde ich mit der Versorgung an die +24V hängen falls du die
+17V am Ausgang sicher erreichen willst. (Laut Datenblatt beträgt der
Spannungsabfall zwischen Versorgung und Ausgang bis zu 3V bei 10k-Ohm
Last).
Ein LM358 bietet in der vorhandenen Schaltung keinen Vorteil. Du
brauchst einen "Input Common Mode Range" bis an die positive Versorgung.
Generell fehlen in der Schaltung die Abblock-Kondensatoren.
(Möglicherweise schwingt die Schaltung ja sogar). Ich würde an IC2
jeweils 100nF an Ein und Ausgang spendieren und für IC1 nochmal so 10uF
über der Versorgung. Zusätzlich für IC2 so 100-220uF falls die Leitung
zur Therme >= 10 cm ist.
@ Joe_D (Gast)
>Vorlauftemperatur mittels einer Spannung von 10V-17V vorgeben, die>Therme selbst liefert eine Gleichspannung von ca. 22V. Ich möchte nun>die besagte Spannung von 10V-17V galvanisch getrennt vorgeben und habe>Ok, bei meinem 6N139 wäre das laut Datenblatt (If=1.6mA,Vf=1.4V) ein>2,2KOhm Widerstand.
Ist OK.
>> Am Ausgang braucht man entweder einen Treiber oder einen hochohmigen>> Tiefpass.>Am Ausgang vom Optokoppler?
Ja.
>Ein Tiefpass ist doch ein RC-Glied. Welche Grenzfrequenz sollte dafür>gewählt werden?http://www.mikrocontroller.net/articles/Pulsweitenmodulation#DA-Wandlung_mit_PWM
Die 100K und 4,7µF ergeben mit der PWM-Frequenz ca 3% Ripple, das passt
schon. Ggf. halt auf 1M gehen, dann sind das 0,3% und damit an der
Auflösungsgrenze der 8-Bit PWM.
>Der LM358 ist ein DualOp. Weshalb eignet sich dieser besser als ein>LM301? Ich hätte auch noch einen LM318P.
Da du ja nur eine Spannung zwischen 10..17V ausgeben willst, kannst du
den LM301 verwenden.
Den solltest du aber direkt an die 22V anschliessen. Und den
Spannungsregler nur für den Optokoppler verwenden.
MFG
Falk
@ Anja (Gast)
>das Grundproblem an der Schaltung ist daß der Optokoppler (100kHz) zu>langsam für deine PWM 16KHz * 8Bit = 4Mhz ist.
Nöö, die 15,6 kHz sind schon der PWM-Takt. Macht bei 8 Bit 61 Hz.
>Ich vermute mal daß in der ursprünglichen Schaltung R3+R4 getauscht>waren.
Kann sein.
MfG
Falk
P S Hab mich ein wenig verrechnet. Mit 100K+4,7µF sind es nur 0,8%
Ripple, das passt schon.
@Anja
> das Grundproblem an der Schaltung ist daß der Optokoppler (100kHz) zu> langsam für deine PWM 16KHz * 8Bit = 4Mhz ist.
Ich könnte auch einen 6N137 verwenden, oder mal testweise per
Software-PWM die Frequenz auf 125Hz absenken.
> Ich vermute mal daß in der ursprünglichen Schaltung R3+R4 getauscht> waren.
Nein, siehe Anhang. R4 ist schon ok so, nur R3 nicht. Ich werde evtl.
mal die Schaltung aus dem Beitrag PWM verwenden (zwei Tiefpässe vor OP).
Gruß
Joe_D
@Falk
> P S Hab mich ein wenig verrechnet. Mit 100K+4,7µF sind es nur 0,8%> Ripple, das passt schon.
Mhhh, also mit 1K+4,7µF komme ich bei 5V und 0,064ms T_PWM auf 17mV
Ripple - und mit 100K auf 0,17mV.
> Den [LM301] solltest du aber direkt an die 22V anschliessen.
Im Datenblatt steht unter Supply Voltage aber max. +-18V.
Was ich nun nicht ganz verstehe, woher kommt die Nichtlinearität?
Gruß
Joe_D
@ Joe_D (Gast)
>> P S Hab mich ein wenig verrechnet. Mit 100K+4,7µF sind es nur 0,8%>> Ripple, das passt schon.>Mhhh, also mit 1K+4,7µF komme ich bei 5V und 0,064ms T_PWM auf 17mV>Ripple - und mit 100K auf 0,17mV.
16 MHz Takt / 1024 = 15,625 kHz PWM Takt
15,625 kHz / 256 = 61 Hz PWM Frequenz = 16,3 ms Periodendauer
Vcc ist hier 18V, kann man aber wieder durch selbige dividieren um auf
die Prozente zu kommen.
Macht nach der Formel im Artikel 0,87%.
>> Den [LM301] solltest du aber direkt an die 22V anschliessen.>Im Datenblatt steht unter Supply Voltage aber max. +-18V.
Naja, die Differenz zwischen den Versorgungsspanungen darf max. 36V
betragen. Du hast ~22V. Dem OPV ist es egal ob der +/-18V oder 0 und 36V
sieht.
>Was ich nun nicht ganz verstehe, woher kommt die Nichtlinearität?
Dein Tiefpass ist zu niederohmig! Der belastet den Optokoppler bzw. den
Pull-Up Widerstand viel zu stark.
MFG
Falk
Anbei mein geänderter Schaltplan und die dazugehörige Kennlinie:
1
OCR2A Uin [V] Uout [V]
2
0 5,00 2,10
3
40 4,15 2,35
4
50 3,96 2,73
5
70 3,57 3,92
6
100 3,00 5,92
7
120 2,61 7,27
8
160 1,84 10,04
9
175 1,55 11,08
10
190 1,26 12,19
11
220 0,68 14,32
12
240 0,30 15,74
13
255 0,01 16,85
Sieht jetzt schon ganz gut aus, nur das invertierte Verhalten stört mich
noch. Bei meinem Optokoppler bin ich mir nicht sicher, ob ich R4 einfach
zwischen Pin5 und GND setzen kann.
Gruß
Joe_D
P.S: @Gerd, an der Therme ist schon ein Poti - habe aber keine Lust
ständig in den Keller zu laufen...
Joe_D schrieb:
> Sieht jetzt schon ganz gut aus, nur das invertierte Verhalten stört mich> noch.
Wieso? Die Spannung an der Therme korrespondiert doch mit dem
OCR2A-Wert.
> Bei meinem Optokoppler bin ich mir nicht sicher, ob ich R4 einfach> zwischen Pin5 und GND setzen kann.
Da wird er auf jeden Fall langsamer. Ich würde eher die Eingangspins
tauschen (Prozessor Port an den anderen Eingangspin und den bisherigen
Eingangspin an das andere Versorgungspotential).
Tipp: Du könntest noch einen Pull-up 100k zwischen IC1 Pin 3 und +18V
legen um den Aussteuerbereich auf ca 9-17V zu begrenzen.
@Anja
> Wieso? Die Spannung an der Therme korrespondiert doch mit dem> OCR2A-Wert.
Das schon. Nur wenn nun aber im AVR wegen einem Programmierfehler die
PWM nicht anläuft oder aus irgendeinem Grund der Pin X1-2 auf 0V geht
(z.B. Kabelbruch), dann liegen an der Therme 16,85V an und die Heizung
läuft dann auf Volllast ;(
Deshalb hätte ich gern ein nicht-invertierendes Verhalten zwischen Uin
und Uout. Evtl. muss ich aber auch einen andern Optokoppler verwenden
(4N33?,CNY17/3?).
Gruß
Joe_D
Pin8 des OK direkt an die Versorgung anzuschließen ist keine gute Idee.
Da schließt man direkt die Versorgung kurz. Würde Pin8 mit Pin6
verbinden.
Gruß
Mandrake
Ich habe jetzt mal den 4N33 mit meiner PWM getestet (ohne Last an einer
17V Gleichspannungsquelle), da sah die Kennlinie ganz ok aus.
Deshalb habe ich mir gedacht ich könnte auch auf den 7818 verzichten,
der 4N33 hält ja die 22V aus.
Den 100k Pullup zwischen IC3 und +22V werde ich evtl. auch noch
dazunehmen.
Gruß
Joe_D
Joe_D schrieb:
> Deshalb habe ich mir gedacht ich könnte auch auf den 7818 verzichten,> der 4N33 hält ja die 22V aus.
Wie genau sind die 22V denn? sind die auch stabilisiert oder schwanken
die mit der 230V-Versorgungsspannung
-> Vorlauftemperatur je nach Tagesform Deines EVUs.
Gruß Anja
Die 22V sind IMHO recht glatt. Ich habe leider kein Oszi ;( - Anbei mal
meine letzte Lösung.
Nach dem Aufbau von "AnschaltungHeizungNEU" bekam ich zwar eine Spannung
von z.B. 12V heraus, die Heizung (bzw. Umwälzpumpe) sprang zwar an aber
der Brenner nicht. Dann habe ich bei meinem Multimeter mal auf
Wechselstrom gestellt und gemessen: 8V (!)
Erste Versuche mit einem Kondensator am Ausgang (X2-3/X2-1) führten zwar
zu einem Anspringen des Brenners - aber die Spannung war
"festgenagelt"...
Als nächstes habe ich einen Tiefpass vor den 4N33 gesetzt, dann ging
gar nichts mehr ;) Aber jetzt wusste ich wenigstens, dass der
Wechselstromanteil nach dem Optokoppler weg musste...
Um besser Testen zu können habe ich den 7818 wieder eingebaut, da ich
nur eine mit 470µF geglättete 28V Gleichspannungsquelle besitze.
Im Endeffekt habe ich einfach mal die Schaltung von
http://www.mikrocontroller.net/articles/Pulsweitenmodulation#DA-Wandlung_mit_PWM
(und zwar die untere mit OP) nachgebaut. Hat aber nichts geholfen, der
Wechselstromanteil war noch genauso hoch.
Abblockkondensatoren an IC1 haben auch nichts gebracht, deshalb habe ich
diese wieder weggelassen.
Erst das Hinzufügen von C1 mit 10µF hat den Durchbruch gebracht. Der
Wechselstromanteil an X2-3 ist verschwunden, bzw. ich kann diesen nicht
mehr messen. Den Test an der Therme mache ich morgen.
Ob das nun auch alles ohne C2,C3 und R4 (evtl. R3?) funktionieren würde
probiere ich jetzt nicht mehr aus.
Vielen Dank nochmals an Anja und Falk für die Denkanstöße!
Gruß
Joe_D
Joe_D schrieb:
> Um besser Testen zu können habe ich den 7818 wieder eingebaut, da ich> nur eine mit 470µF geglättete 28V Gleichspannungsquelle besitze.
Frage: ist der Masseanschluß vom 7818 wirklich am negativen Eingang =
Ausgang des OP´s angeschlossen. (Kein Wunder daß da was schwingt).