mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik Transistorbeschaltung bei höheren Frequenzen


Autor: Paul Wilhelm (mosfetkiller)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ein ATmega32 generiert an einem Pin 1µs lange Pulse (mit mehreren µs 
Pause dazwischen). Dieser ist über 10k an die Basis eines BC550C in 
Emitterschaltung (20k nach VCC=5V) angeschlossen.

Leider offenbart sich auf dem Oszi, dass die Pulslänge nicht wie 
erwartet 1µs, sondern fast das dreifache davon beträgt.
Der AVR-Pin liefert ein einwandfreies Signal, habe ich gemessen (genau 
1µs lang).

Nun meine Frage als "Analogtechnik-Anfänger" an euch: Wie kann ich die 
Beschaltung des Transistors ändern, um die Schaltzeit zu optimieren?

Ich gebe ja zu, dass die 10k Vorwiderstand nur ein Pauschalwert sind. 
Habe mehrere Werte im Bereich 1-100k ausprobiert, aber optimal war es in 
keinem Fall.

Gruß,
Paul

Autor: Helmut Lenzen (helmi1)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Paul Wilhelm schrieb:
> Dieser ist über 10k an die Basis eines BC550C in
> Emitterschaltung (20k nach VCC=5V) angeschlossen.

Die 20 Kohm sind zu hochohmig für 1 uS Impulse. Auch ist die 
Basisansteuerung nicht Optimal. Du must um den Transistor nicht in die 
Sättigung zu bringen eine Schottkydiode zwischen Basis und Kollektor 
schalten.  Kathode an Kollektor. Dann kannst du den Basiswiderstand noch 
mit einem kleinen C von ca. 100pF überbrücken. Damit sollte es besser 
klappen.

Autor: HildeK (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Insgesamt ist die Beschaltung zu hochohmig, Faktor 10!
Dann darf für schnelles Schalten der Transistor nicht in die Sättigung 
geraten: Schottky-Diode zwischen B und C.
Ggf noch ein kleines C (100pF + x) über den Basisvorwiderstand, damit 
wird die Basis schneller ausgeräumt.
Basisvorwiderstand ev. als Spannungsteiler ausführen, dann wird der 
Quellwiderstand auch kleiner bei erträglicher Belastung des ATMega.

Autor: HildeK (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Helmut, ich habe nicht von dir abgeschrieben! :-)

Autor: Helmut Lenzen (helmi1)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
HildeK , das glaube ich dir. Wir beide haben schon oft fast gleichzeitig 
die gleich Antwort gegeben.

Autor: Paul Wilhelm (mosfetkiller)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

danke für eure schnellen Antworten!

Ich habe eure Tipps beherzigt, die Diode hat die Impulsdauer jetzt auf 
2µs verkürzt. Leider komm ich nicht weiter runter. :-/
Der C parallel zu Rb erzeugt mir wie erwartet nur einen hässlichen Spike 
von bis zu -4V.

Auch mit anderen Kleinsignaltransis der BC-Reihe will es nicht besser 
werden.
Jetzt muss ich das ganze mal mit einem Logic Level-MOSFET 
probieren..dieser ist für mein Vorhaben maßlos überdimensioniert, aber 
es hilft ja nichts.

Gruß,
Paul

Autor: Paul Wilhelm (mosfetkiller)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man verzeihe mir den Doppelpost - aber mit dem Logic Level FET geht es 
schon garnicht, da bräuchte ich noch einen Treiberbaustein.

Es kann ja nicht so schwer sein, mit 500kHz eine kleine Last nach GND zu 
schalten...oder?

Was für alternativen habe ich?

Hätte noch einen CMOS-Analogschalter im sehr klobigen Gehäuse. Der 
dürfte das doch sicherlich schaffen, oder nicht?

Gruß,
Paul

EDIT: Oben vergessen zu sagen, den Rb habe ich auf 1k verkürzt.

Autor: Helmut Lenzen (helmi1)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Paul Wilhelm schrieb:
> Der C parallel zu Rb erzeugt mir wie erwartet nur einen hässlichen Spike
> von bis zu -4V.

Wo erzeugt er den Spike. Auf dem Ausgang etwa ?
Wie gross ist jetzt dein Kollektorwiderstand ?

Autor: Paul Wilhelm (mosfetkiller)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jap, auf dem Ausgang.
Kollektorwiderstand ist 20k, wie im ersten Beitrag geschrieben..

Gruß,
Paul

Autor: HildeK (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Wenn der negative Puls stört, mach den C deutlich kleiner oder lasse ihn 
ganz weg. Mit niederohmiger Beschaltung und Diode ist vermutlich soviel 
zu erreichen.

Die Schottkydiode sollte schon eine schnelle, kapazitätsarme sein (z.B. 
BAT54). Auch der Transistor kann was ausmachen, i.A. aber eignen sich 
die BC-Typen noch ganz gut.
Ich damit früher mal irgendwas von 5...10 MHz von 1.8V Level auf 3.3V 
gebracht.
Aber wesentlich sind auch die niederohmige Beschaltung. 2k statt 20k am 
C und der Serienwiderstand an der Basis 1k sowie einen BE-Widerstand von 
500 Ohm ... 1k. Damit gehen garantiert 1MHz ohne Probleme.

Schau dir mal die Simulation an.
Der Serienwiderstand zur Diode verbessert den LOW-Pegel am Ausgang.

Autor: Marko B. (glagnar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Brauchst Du die Spannungsverstaerkung der Emitterschaltung? Anscheinend 
nicht, denn Du hast den Transistor ja an 5V haengen. Daher solltest Du 
die Kollektorschaltung verwenden, damit wird der Transistor nicht 
uebersteuert, die Ausgangsimpedanz ist minimal und es sind viel hoehere 
Bandbreiten moeglich.

Beispiel im Anhang: Anstiegszeit ca. 3ns

Autor: Marko B. (glagnar)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hat irgendwie nicht geklappt mit dem Anhang ...

Autor: Helmut Lenzen (helmi1)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Paul Wilhelm schrieb:
> Kollektorwiderstand ist 20k, wie im ersten Beitrag geschrieben..

Wie HildeK und ich dir schon gesagt haben ist der Widerstand viel zu 
hochohmig um die parasitären Kapazitäten umladen zu können.

Die Kapazität die sich bei 1MHz und 20 K ergibt darf maximal 8pF gross 
sein.
Und die ist schnell erreicht.

Mach dem mal kleiner so um die 2k.

Autor: Eddy Current (chrisi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Langsam frage ich mich, was der Author eigentlich bezweckt. Die Idee mit 
dem MOSFET war ja nicht schlecht. Er hätte halt einen BSS138 testen 
sollen, die Mutter unter den 
Low-Cost-SMD-Kleinsignal-Logic-Level-N-Kanal-MOSFETs. Oder einen 
Single-Gate-Inverter. Aber wozu das Ganze?

Autor: Paul Wilhelm (mosfetkiller)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für eure Hilfe! Mit 220R nach GND (ganz schön wenig, ich weiß) 
sieht das schon marginal anders aus; ich habe jetzt nach dem Puls einen 
negativen Spike (die fallende Flanke ist sehr steil), danach die langsam 
(auch so ca. 1µs) steigende Flanke des Signals.

Ich habe eine BAV21 verwendet, schnellere habe ich leider momentan 
nicht.

Kollektorwiderstand verringern bzw. Kollektorschaltung geht leider 
nicht; der Kollektorwiderstand ist eigentlich ein (zum Schaltzeitpunkt 
ausgeschaltetes) 4-bit R2R-Netzwerk mit R=10k.

Dieses Netzwerk hat einen Virtual Ground von 1,5V. Mit dem Transistor 
möchte ich diese Spannung nach GND ziehen.

Das ganze soll eine BAS-Signalgenerierung werden. Den Trick mit dem 
Virtual Ground mache ich, weil ich keine schnellen Video-Opamps zur Hand 
habe, aber einen Offset von 1,5V (0,3*5V = Austastpegel) brauche. Das 
funktioniert auch soweit, nur das Umschalten von 1,5V auf 0V 
funktioniert noch nicht so toll.
(Für alle, die sich wundern: Das 5V-Signal wird natürlich am Ende für 
den TV noch auf 1V runterskaliert.)

So wie es gerade aussieht, muss ich wohl doch schwereres Geschütz 
auffahren (Stichwort kleiner MOSFET-Treiber im SOIC-8, der den Mist 
einfach nach GND zieht); das ungenaue Timing und die todeslahme 
steigende Flanke sind gerade vollkommen unbrauchbar..

EDIT: @Eddy Current: Das ist ein weiteres Problem, dass ich in meiner 
Stadt nicht an Bauteile rankomme und nur für dieses Projekt nichts 
bestellen will. Das ganze muss aus dem Zeug aufgebaut werden, was hier 
gerade rumfliegt. Daher ja auch die ganze geschichte mit dem Virtual 
Ground, s.O..

Autor: Helmut Lenzen (helmi1)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Paul Wilhelm schrieb:
> Kollektorwiderstand verringern bzw. Kollektorschaltung geht leider
> nicht; der Kollektorwiderstand ist eigentlich ein (zum Schaltzeitpunkt
> ausgeschaltetes) 4-bit R2R-Netzwerk mit R=10k.

Was du vorhast geht mit 20K Kollektorwiderstand nicht. Egal ob du da 
jetzt einen Mosfet oder sonstwas einbaust. Die 20K koennen die 
parasitaeren Kapazitaeten ganz einfach nicht in 1uS umladen. Rechne doch 
ganz einfach mal nach.

Angnommen du hast rund 5 .. 10pF paraitaere Kapazitaeten in deiner 
Schaltung.
das ergibt dann mit 20K eine obere Grenzfrequenz von:

fg = 1/(2*pi*R*C) = 795KHz .. 1.59MHz

Du siehst dein R von 20K kann den gar nicht in so kurzer Zeit umladen. 
Und du wirst auch keine Bauteile finden die das dann trotzdem koennen.

Wie schon mehrfach dir gesagt wurde du must diese Widerstaende kleiner 
machen oder das ganze vergessen. Video DAC mit 20 K funktioniert nicht. 
Wer sowas macht hat an dieser Stelle wesentlich kleinere Werte drin.

Autor: Amperemeter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wozu überhaupt der Aufwand mit dem Transistor? Du hast schon einen 
schnellen Ausgang am Mikrocontroller. Warum den mit einem schimmligen 
Bipolartransistor in Emitterschaltung noch extra lahm machen?

Autor: Paul Wilhelm (mosfetkiller)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke Helmut für das Rechenbeispiel. Ich glaube dir/euch. ;-)
Das R2R-Netzwerk habe ich so hochohmig gemacht, da der Opamp, der den 
Virtual Ground erzeugt, nicht so leistungsstark ist.
Der Ausgang des Netzwerkes kommt natürlich nicht direkt an den TV, da 
kommt noch ein Nachbrenner hinter.

@Amperemeter: Ich versprach mir davon ein besseres Schaltverhalten. 
Nachdem nun klar ist, dass das nicht so leicht/mit meinem Aufbau 
unmöglich ist, werde ich jetzt auch den CMOS-Ausgang des µCs verwenden, 
ja. Da stimmt wenigstens das Timing, auch wenn aus oben genannten 
Gründen die steigende Flanke nicht so schön ist.

Ich habe wieder mal was gelernt und danke euch dafür. Nächstes mal mache 
ich es besser! :-)
Ich bin dennoch zuversichtlich, dass mein Aufbau trotz der kleinen Macke 
funktionieren wird.

Gruß und noch einen schönen Tag,
Paul

Autor: Helmut Lenzen (helmi1)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du ein R2R Netzwerk treiben willst brauchst doch ohnehin einen 
Gegentaktausgang. Nur Ein / Hochohmig funktioniert da nicht. Du must 
zwischen +5V und GND schalten.

Autor: ulrich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
die R2R Schaltung lieber direkt an den Portpins betreiben, und dann 
etwas niederohmiger, z.B. 2 K und 4 K. Den Pegel und die Gleichspannung 
kann man dann passiv durch Widerstände nach GND oder VCC anpassen.

Autor: Paul Wilhelm (mosfetkiller)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ulrich schrieb:
> die R2R Schaltung lieber direkt an den Portpins betreiben, und dann
> etwas niederohmiger, z.B. 2 K und 4 K. Den Pegel und die Gleichspannung
> kann man dann passiv durch Widerstände nach GND oder VCC anpassen.

Hallo, das R2R-Netzwerk hängt direkt an den Ausgängen eines 74HC541. 
Dieser und das Netzwerk sind auf 1,5V angehoben.

Wie kann ich denn passiv ohne OpAmp die gesamte Ausgangsspannung des 
R2R-Netzwerkes (wahlweise!) um 1,5V anheben?

Gruß,
Paul

Autor: Helmut Lenzen (helmi1)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn es nicht 100% exakt sein muss mittels 2er Dioden in reihe.

Autor: Paul Wilhelm (mosfetkiller)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Den Fußpunkt des Netzwerkes über zwei Dioden nach GND oder wie?
Und diese dann mit einem Transistor überbrückbar machen?

Gruß,
Paul

Autor: Peter Roth (gelb)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Paul Wilhelm schrieb:

> Ich habe eine BAV21 verwendet, schnellere habe ich leider momentan
> nicht.

Das ist keine Schottky-Diode. Damit geht es nicht. Besorge dir BAT43, 
BAT54 o.ä.

Grüße, Peter

Autor: Helmut Lenzen (helmi1)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bevor ich jetzt hier endlos rumrate mach einmal eine Zeichnung von dem 
was du hast .

Autor: Jens G. (jensig)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da bei einer Emitterschaltung immer die interne Miller-Kapazität 
mitwirkt, würde ich es vielleicht mal mit einer Basisschaltung 
versuchen. Basis auf rund 0,7-1V hochohmig klemmen, abgeblockt mit C 
gegen Masse, und ansonsten den µC-Ausgang auf den Emitter. Solange die 
Gesamtschaltung nur mit max 5V arbeitet, stört es nicht, wenn die B-E 
Strecke dabei negative Spanungen sieht (je nach µC-Pegel).
Allerdings haste dabei keine Invertierung wie bei der Emitterschaltung, 
ist aber mit der entsprechenden µC-Programmierung kein Problem.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.