Discussion:
Bereichsumschaltung H-Brücke
(zu alt für eine Antwort)
a***@gmx.net
2006-04-08 10:47:17 UTC
Permalink
Hallo,

in unserer Applikation wird eine Induktivität mit einer
spannungsgesteuerten Stromquelle (unipolar) angesteuert.
Die Schaltung ist nach Tietze-Schenk mit einem OP und einem MOSFET
aufgebaut.
Die Eingangsgröße (U) wird mit einem PWM-Ausgang des Mikrocontrollers
mit einer Auflösung von 10 Bit und einem darauffolgenden Tiefpaß
erzeugt.
Um einen großen Bereich der Ausgangsgröße (I) zu überstreichen,
schalten wir per Relais verschiedene Sense-Widerstände (zwischen
Source und GND) um.
Damit erreichen wir drei Bereiche 10..100 mA, 100..1000 mA, 1..10 A und
die Auflösung von 10 Bit bleibt erhalten.

Da wir nun bipolare Ausgangsströme erzeugen und die Wärmeentwicklung
reduzeiren möchten, wollen wir nun eine (digitale) H-Brücke
einsetzen.
Diese wird dann direkt vom PWM-Signal des MC angesteuert. Der TP-Filter
sitzt am Ausgang.
Der größere Platzbedarf des TP-Filters wird von der Reduktion des
erforderlichen Kühlkörpers kompensiert.

Das Problem ist nun die Bereichsumschaltung.
Wir können natürlich den Bereich des PWM-Werts im MC durch 10 oder
100 teilen, verlieren dann aber entsprechend an Auflösung.
Z.B. beim kleinsten Bereich haben wir statt 2048 nur mehr 20 Werte zur
Verfügung! Das ist zu ungenau.

Gibt es eine andere Möglichkeit, eine Bereichsumschaltung für eine
digitale H-Brücke zu realisieren?

Gruß,
Alois
Joerg
2006-04-08 11:33:27 UTC
Permalink
Hallo Alois,
Post by a***@gmx.net
Das Problem ist nun die Bereichsumschaltung.
Wir können natürlich den Bereich des PWM-Werts im MC durch 10 oder
100 teilen, verlieren dann aber entsprechend an Auflösung.
Z.B. beim kleinsten Bereich haben wir statt 2048 nur mehr 20 Werte zur
Verfügung! Das ist zu ungenau.
Ist denn die Taktfrequenz des uC so klein, dass der Timer nicht schnell
genug laeuft? Dann gaebe es natuerlich auch noch die Moeglichkeit, einen
externen PWM Timer vorzusehen. Dieser koennte mit so hohem Takt laufen,
dass die Genauigkeit auch im untersten Bereich noch genuegt.

Ich kenne Eure Anwendung nicht. Leuft das ganze in Gegenkopplung, wobei
der Wert am Shunt gemessen wird und der uC dann korrigiert? Dafuer gaebe
es noch etliche andere Varianten.

Gruesse, Joerg

http://www.analogconsultants.com
a***@gmx.net
2006-04-08 14:06:29 UTC
Permalink
Post by Joerg
Ist denn die Taktfrequenz des uC so klein, dass der Timer nicht schnell
genug laeuft? Dann gaebe es natuerlich auch noch die Moeglichkeit, einen
externen PWM Timer vorzusehen. Dieser koennte mit so hohem Takt laufen,
dass die Genauigkeit auch im untersten Bereich noch genuegt.
Der uC ist ein Atmel AVR, dessen Zähler/Timer sich auf PWM
konfigurieren läßt. Man kann bis zu 10 Bit einstellen. D.h. das
Tastverhältnis des Rechtecksignals kann 1024 Werte annehmen.

Damit wäre alles schon digital und kann mir den PWM-Modulator sparen.
Post by Joerg
Ich kenne Eure Anwendung nicht. Leuft das ganze in Gegenkopplung, wobei
der Wert am Shunt gemessen wird und der uC dann korrigiert? Dafuer gaebe
es noch etliche andere Varianten.
Genau:
Bei der H-Brücke müßte ich über einen Sense-Widerstand gegen Masse
und TP das Signal digitalisieren und die Regelung in den uC verlagern.

Applikation bisher:
PWM-Ausgabe über uC -> TP-Filter -> spannungsgesteuerte Stromquelle
mit OP, MOSFET und lokaler Rückkopplung vom Sense-Widerstand
Durch Umschalten des Sense-Widerstands habe ich eine sehr einfache
Bereichsumschaltung.

Iout = Uin / Rsense

Ist schön einfach gewesen aber Kunde will jetzt bipolaren
Ausgangsstrom ...

Gruß,
Alois
Rafael Deliano
2006-04-08 14:14:20 UTC
Permalink
eine Induktivität ... angesteuert.
aber Kunde will jetzt bipolaren Ausgangsstrom ...
Soweit man nicht sanft durch Null fahren will:
noch ein Relais ( 2x 2um ) das den Ausgang verpolt
wäre ein lowtech-Lösung.
( Hitech-Lösungen bei low volume Anwendungen
erhöhen das Selbstwertgefühl aber senken den
Kassenstand ).

MfG JRD
a***@gmx.net
2006-04-08 14:24:22 UTC
Permalink
Post by Rafael Deliano
noch ein Relais ( 2x 2um ) das den Ausgang verpolt
Relais zu langsam, da periodisches Signal mit Bandbreite 250 Hz.

Gruß,
Alois
Rafael Deliano
2006-04-08 14:56:00 UTC
Permalink
Post by a***@gmx.net
periodisches Signal mit Bandbreite 250 Hz.
Wenn das Signal einen Nulldurchgang hat ( I=0mA )
kann man Umschalten.
Muß man nicht mit Relais machen.
Man kann oben einen P-Kanal Fet als Schalter
machen und unten den N-Fet als lineare Stromquelle
weiterverwenden.
Gleiche Schaltung dann noch mal komplementär
aufbauen ( N-Fet = Schalter , P-Fet = Linearregler ).

Die "digital" Ansteuerung der Induktivität erzeugt
einen Ripple der abhängig von der Anwendung unangenehmer
sein kann als die Verlustleistung des Linearreglers.

MfG JRD
a***@gmx.net
2006-04-08 16:30:01 UTC
Permalink
Das wäre eine sehr einfache Variante!

Verstehe die Zusammenschaltung noch nicht ganz. Ist das so gemeint:

Eine Brücke in H-From
Links oben PFET Schalter
Links unten NFET Stromquelle
Rechts oben NFET Schalter
Rechts unten PFET Stromquelle
Verbraucher "hängt quer" in der Brücke
Strom fließt immer über Kreuz

Könnte dann eignetlich 4 NFET verwenden. Bezugspunkt für
Eingangssignal ist _beide_ male gleich GND.
Bei Nulldurchgang Umschaltung der Schalt-FET und gleichzeitig
Umschaltung Signal an linker bzw. rechter Stromquelle.
uC kann neg. Halbwelle auf pos. spiegeln.

Gruß,
Alois
Rafael Deliano
2006-04-08 17:47:32 UTC
Permalink
Post by a***@gmx.net
Könnte dann eignetlich 4 NFET verwenden.
Wenn man die beiden P-Fets durch high-side Schaltungen wegen der 10
Ampere ersetzen will ja.

Man könnte auch versuchen sie nicht nur als Schalter zu benutzen,
sondern per OP so zu beschalten, daß die Verlustleistung nicht
nur von den unteren Fets verheizt werden muß, sondern am
oberen und unteren Fet jeweils gleich viel Spannung abfällt.
Muß man allerdings aufpassen, daß sich beide Regler nicht
zu Schwingungen aufschaukeln.

Die unteren beiden N-Fets der Stromquellen kann man leicht
abwürgen ( d.h. von linear auf digial-off schalten ), wenn man vors Gate
Widerstand macht und direkt am Gate
open-collector Transistor der es auf 0V zieht.
Der Transistor muß dann die 20mA schlucken die der OP der Stromquelle
liefert.

MfG JRD
Joerg
2006-04-08 20:24:03 UTC
Permalink
Hallo Alois,
Post by a***@gmx.net
Eine Brücke in H-From
Links oben PFET Schalter
Links unten NFET Stromquelle
Rechts oben NFET Schalter
Rechts unten PFET Stromquelle
Verbraucher "hängt quer" in der Brücke
Strom fließt immer über Kreuz
Könnte dann eignetlich 4 NFET verwenden. Bezugspunkt für
Eingangssignal ist _beide_ male gleich GND.
Bei Nulldurchgang Umschaltung der Schalt-FET und gleichzeitig
Umschaltung Signal an linker bzw. rechter Stromquelle.
uC kann neg. Halbwelle auf pos. spiegeln.
Am besten waere ein Schaltplan. Aber im Prinzip habe ich das so auch
immer gemacht. Der Stromesswiderstand blieb dabei an Masse und weil er
damit "ausserhalb des Kreuzes" lag, wurde in beiden Halbwellen immer
positiv gemessen. Damit ergab sich dort kein zusaetzliches Geraffel.

Gruesse, Joerg

http://www.analogconsultants.com
Joerg
2006-04-08 20:39:34 UTC
Permalink
Hallo Alois,
Post by a***@gmx.net
Der uC ist ein Atmel AVR, dessen Zähler/Timer sich auf PWM
konfigurieren läßt. Man kann bis zu 10 Bit einstellen. D.h. das
Tastverhältnis des Rechtecksignals kann 1024 Werte annehmen.
Damit wäre alles schon digital und kann mir den PWM-Modulator sparen.
10bit ist etwas schlapp, ich hatte eher an 16bit gedacht. Doch
vielleicht haben die Dinger einen Pre-Scaler, mit dem man die Taktrate
am Eingang dieses Zaehlers fuer jeden der drei Bereiche in einen
vorteilhaften Rahmen setzen koennte.
Post by a***@gmx.net
Bei der H-Brücke müßte ich über einen Sense-Widerstand gegen Masse
und TP das Signal digitalisieren und die Regelung in den uC verlagern.
Aber schoen mit der Stabilitaet und den Polen aufpassen. Besonders IIR
Filter koennen uebel zuschlagen oder sogar instabil werden, wenn sich
Stoerungen ins Signal geschlichen haben.

Fall Du noch nicht viele PID Regler in digital gemacht hast, gibt es
hier etwas Lesestoff eines Bekannten aus einer anderen NG:
http://www.embedded.com/2000/0010/0010feat3.htm
Post by a***@gmx.net
PWM-Ausgabe über uC -> TP-Filter -> spannungsgesteuerte Stromquelle
mit OP, MOSFET und lokaler Rückkopplung vom Sense-Widerstand
Durch Umschalten des Sense-Widerstands habe ich eine sehr einfache
Bereichsumschaltung.
Iout = Uin / Rsense
Das erfrodert aber eben eine sehr feine PWM und damit einen langen
Timer. Mit 10bit Timer und drei Bereichen ist da nicht viel gebacken.

Frage: Hat so ein AVR noch einen zweiten Timer? Da gibt es einen Trick,
mit dem man die grobe Taststellung mit dem normalen Timer macht und dann
einen zweiten als Feineinstellung hintendran haengt. Sozusagen ein
digital einstellbares One-Shot an den groben PWM Puls drangehaengt.
Kostet ein wenig Assembler, aber koennte Hardware sparen. Wenn der AVR
sonst nicht allzuviel zu tun hat, koennte man diesen zweiten Timer
wahrscheinlich innerhalb einer Interrupt Routine ganz in Assembler
erledigen, ohne interne oder externe Hardware.

Sonst ginge vielleicht der externe Timer. Wenn die ganze Chose
ordentlich Traegheitsmoment hat, kann eine Loesung mit I2C, SPI oder
sonstwelcher Seriell-Programmierung ausreichen. Das spart Port Pins.
Post by a***@gmx.net
Ist schön einfach gewesen aber Kunde will jetzt bipolaren
Ausgangsstrom ...
Hach, kommt mit das nicht bekannt vor? Eines Morgens lag da ein Fax im
Buero "Now we would like to migrate to an AC unit". Also einen dicken
Pott Kaffee gekocht und die Aermel hochgekrempelt.

Gruese, Joerg

http://www.analogconsultants.com
a***@gmx.net
2006-04-10 14:40:49 UTC
Permalink
10 Bit, na ja ...

Die PWM ist eben ein Hardware-Modul des AVR.
Vorteil: Kein zus�tzliche Rechenleistung (IRQ). �nderung des
Tastverh�ltnisses erfolgt durch Beschreiben zweier (8 Bit-) Register,
fertig.

PID-Regler w�ren als Library vorhanden, nimmt aber schon etwas
Rechenleistung in Anspruch. Da ist ein DSP vorteilhafter.

Insofern ist mir eine analoge Regelung lieber. Die kann auch nicht
abst�rzen :-)

Gru�,
Alois

Rafael Deliano
2006-04-08 12:44:01 UTC
Permalink
eine (digitale) H-Brücke einsetzen.
Wenn es weiterhin eine Stromquelle sein soll braucht
man den Sense-Widerstand immer noch, muß ihn digitalisieren
und dann entsprechend den PWM steuern. Diese Regelschleife hat
bisher der OP gemacht.
Vermutlich wäre es am einfachsten den OP weiter machen zu
lassen, aber er sollte nicht linear den Schalttransistor
ansteuern, sondern da sollte PWM dazwischen rein. Vermutlich
sind Schaltregler-ICs geeignet umfunktionierbar.

MfG JRD
Joerg
2006-04-08 12:56:19 UTC
Permalink
Hallo Rafael,
Post by Rafael Deliano
Vermutlich wäre es am einfachsten den OP weiter machen zu
lassen, aber er sollte nicht linear den Schalttransistor
ansteuern, sondern da sollte PWM dazwischen rein. Vermutlich
sind Schaltregler-ICs geeignet umfunktionierbar.
Ganz edel waere das mit einem LM331 mit anschliessendem One-Shot. Geht
allerdings auch erheblich billiger.

Gruesse, Joerg

http://www.analogconsultants.com
Siegfried Schmidt
2006-04-08 13:32:45 UTC
Permalink
Hallo ,
Post by a***@gmx.net
Das Problem ist nun die Bereichsumschaltung.
Wir können natürlich den Bereich des PWM-Werts im MC durch 10 oder
100 teilen, verlieren dann aber entsprechend an Auflösung.
Z.B. beim kleinsten Bereich haben wir statt 2048 nur mehr 20 Werte zur
Verfügung! Das ist zu ungenau.
Bevor das Sorgen macht, muß erst mal gewährleistet sein, daß die Brücke
diese Genauigkeit auch umsetzt. Ein Auflösung von 1ppm bei extrem kurzen
Impulsen macht nicht jede Brücke mit.
Post by a***@gmx.net
Gibt es eine andere Möglichkeit, eine Bereichsumschaltung für eine
digitale H-Brücke zu realisieren?
Solange der TP mitmacht, kann in der PWM die Pausenzeit vervielfacht
werden, womit die digitale Auflösung steigt.



Siegfried
--
http://www.schmidt.ath.cx
Loading...