Forum: Mikrocontroller und Digitale Elektronik galvanisch getrennte DC-DC Schaltung


von Mehmet K. (mkmk)


Angehängte Dateien:

Lesenswert?

Eine Lösung, die aus der Notwendigkeit enstand, aus einer vorhandenen 
Stromversorgung eine zweite, galvanisch getrennte Spannung erzeugen zu 
müssen. Sicherlich nicht "das Gelbe vom Ei"; aber für mich mehr als nur 
ausreichen. Und vielleicht auch für den einen oder anderen.

Ich muss eingestehen, dass ich das Ganze zuerst mit Berechnungen anging. 
Die Resultate waren aber schlichtweg frustierend. Daraufhin schlug ich 
den Weg "versuchen geht über studieren" ein und nach ein paar 
Blindgaengern war ich mit dem Resultat zufrieden. Der Wirkungsgrad 
betraegt so um die 93%.
Der Trafo besteht aus einem E16-Kern (Material ist N27). Kein Lutfspalt.
Die Primaer-Seite: 2 Lagen 0,35mm
Die Sek.-Seite: Je nach Bedarf. Bei mir waren es ebenfalls 2 Lagen mit 
0,35mm. Aber Achtung: im Gegensinn wickeln
Bei  25mA Belastung 100mVpp Rippel
Bei 100mA Belastung 200mVpp Rippel
Also eine nachtraegliche Spannungsregulierung ist ein Muss

Alle Komponenten sind unkritisch und muessen den eigenen Anforderung 
entsprechend angepasst werden. Nur die Gleichrichter Diode muss ein 
Schotky sein und der OptoCoupler sollte nicht eine hohe 
Stromverstaerkung haben (CTR 50 - 100%).
1
#include "includes.h"
2
//************************************
3
// timer.c
4
//************************************
5
6
#define PWM_MIN 75L
7
#define PWM_MAX 290L
8
9
//************************************************************************/
10
//*  TIMER 1 Overflow   wird alle 20uSec aufgerufen
11
//************************************************************************/
12
ISR (TIMER1_OVF_vect)
13
{ 
14
  WORD dat;
15
  
16
  // sobald mehr als 5V anliegen, liegt ein L-Signal am Eingang PC0.
17
  // Ansonsten ein H-Signal.
18
  // D.h. bei einem H-Signal muss OCR1A erhoeht werden
19
20
  dat = OCR1A;
21
  if (BIT_IS_SET(PINC, 0))
22
  { if (dat < PWM_MAX)
23
      dat++;
24
  }
25
  else
26
  { if (dat > PWM_MIN)
27
      dat--;
28
  }
29
30
  OCR1A = dat;
31
}
32
 
33
//************************************************************************/
34
//*  Compare A Interrupt  
35
//************************************************************************/
36
ISR (TIMER1_COMPA_vect)
37
{ 
38
39
  // compare occured TCNT1=OCR1A
40
}
41
42
43
//************************************************************************/
44
// Init Timer 1A Mode 14
45
// ICR1 : (MAX) Der Counter zaehlt bis zu dieser Marke hoch und resetet dann auf 0
46
//        
47
// OCR1A: (TOP) Sobald dieser Wert beim Hochzahelen erreicht wurde
48
//        wird der Ausgang geflippt.
49
// D.h. mit ICR1 wird die Frequenz eingestellt, mit OCR1A die Periode
50
// 
51
//************************************************************************/
52
void Init_Timer_1A( void )
53
{ 
54
  // PWD Mode 14: 
55
  TCCR1B = 0x00;   //stop
56
  TCNT1  = 0x0000; 
57
  ICR1   = 401L;  // 400 = 50kHz
58
  OCR1A  = PWM_MIN;
59
  TCCR1A = (1 << COM1A1) | (1 << WGM11);
60
  TCCR1B = (1 << CS10) |  (1 << WGM12) | (1 << WGM13);   //start Timer  
61
}

Und nicht vergessen: irgendwo in Eurem Program nebst den 
Port-Einstellungen auch
1
TIMSK1 = 0x03;
eintippen.

MfG aus Istanbul

von Matthias (Gast)


Lesenswert?


von nop(); (Gast)


Lesenswert?

Vielen Dank Mehmet,
anstelle eines AVRTiny kann man auch einen Schaltregler nehmen. Einen 
Linearregler nach einem Schaltregler zu nehmen ist meist weniger gut als 
erwartet, da die PSRR bei den Schaltreglerfrequenzen viel weniger gut 
als bei DC ist. Man kann den Rippel durch weichere Flanken besser 
reduzueren. Wenn es nur um eine ungeregelte Hilfsspeisung geht, kann man 
auch den LTC3439, oder was guenstigeres von IR nehmen. Das nennt sich 
dann selfclocked FET Driver.

von Mehmet K. (mkmk)


Lesenswert?

"Sowas gibts doch fertig, und ist sicherlich auch kleiner"

:) in der Türkei gibt es kein Reichelt oder ein Conrad. :)
Und desweiteren: bei 200 Stk. macht es was aus, ob ich 5.10 Euro 
ausgebe, oder wie in meinem Fall 0.80 Euro.

MfG

von Mehmet K. (mkmk)


Lesenswert?

Ach so, jetzt verstehe ich Matthias und nop. Ihr meint, die Schaltung 
dient einzig und allein dazu eine Spannung zu erzeugen.
Sorry, mein Fehler. Der Pdf-Anhaengsel ist nur ein kleiner Teil einer 
umfangreichen Schaltung.

von Matthias (Gast)


Lesenswert?

Ah, ja ok.
Aber ich kann mir nur schwer vorstellen, dass der Trafobausatz E16+N27 
(sowas kost hier in D paar Euros) und der Transistor und der Opto und 
der Kupferlackdraht und... (wesentlich) billiger sind als ein solcher 
DC/DC-Wandler.
Zumal dein Trafo ja auch noch (selbst?) gewickelt werden muss..

von nop(); (Gast)


Lesenswert?

Das ist natuerlich wahr. Dann bestellst du auch direkt in den Staaten ? 
Als IR Treiber meinte ich den IRS2153D, resp den IRS21531D, IR2153, ab 
10V. Ab 0.52Euro @1. Bei weniger Spannung geht auch ein 5V treiber. Als 
Trafo verwendet man stromkompensierte Drosseln. Die haben 1:1 
Windungszahlverhaeltnis.

von Mehmet K. (mkmk)


Lesenswert?

Der Trafo hat mich USD 0.30 gekostet. Inklusive Fassung.
Deine Bedenken betreffen "Selbstwickeln" gebe ich dir recht. Dafür muss 
ich mir noch was einfallen lassen.

von nop(); (Gast)


Lesenswert?

Trafo wickelt man nicht, die kauft man gewickelt. Nur nach 
stromkompensierten Drosseln schauen. zB von Epcos.

von Matthias (Gast)


Lesenswert?

Eben. Ich stimme da nop() zu. Diese Kerntypen sind ja eher was für 
"Leistungs"übertrager und so.

Ich denke auch, dass du einen fertigen Trafo nehmen solltest. Und die 
Idee mit den Stromkompensierten Drosseln ist gar nicht mal so schlecht. 
Die funktionieren sicherlich auch in deiner Schaltung, falls du dabei 
bleibst.
Aber über einen Fertigen Wandler würde ich an deiner Stelle zumindest 
mal nachdenkn..

von Mehmet K. (mkmk)


Lesenswert?

Eure Einstellung zur Sache mag sicher die richtigere als die meine sein. 
Vor 15 Jahren, als ich in die Türkei zurückkehrte, hatte ich dieselbe 
Einstellung zur Sache wie Ihr.
Mein erstes Projekt war deshalb ein Fiasko. Denn ich entwickelte es 
ensprechend meinen Vorstellungen im Kopf, mit dem Distrelec und dem 
Farnell Katalog als Bezugsquelle.
Als ich dann in bei den türkischen Reichelt's und Conrad's 
vorbeischaute, musste ich feststellen, dass ich ausser dem Z80 nichts 
finden konnte.
Seitdem schaue ich zuerst, was es auf dem Mark gibt, kaufe es in der 
ensprechen Stückzahl ein und erst dann entwickle ich das endgültige 
Design. Seitdem habe ich auch keine Reinfaelle mehr erlebt.

PS: Seit es bei Euch CSD-Elektronics mit seinen humanen Versandkosten 
gibt, geht es mir bedeutend besser.

von nop(); (Gast)


Lesenswert?

Fertige Wandler sind viel teuerer als die paar Teile, wenn man fuer eine 
Serie auf die Kosten schauen muss.

von nop(); (Gast)


Lesenswert?

Mehmet,
Du machst das schon richtig. Bei uns sind die Distributoren leider nicht 
brauchbar. Distrelec hat Mondpreise und ist viel zu teuer. Farnell ist 
nochmals teurer. Ich bestelle daher in D bei Schukat und bei digikey in 
den USA. Die Versandkosten sind zwar hoeher, aber bei genuegend hohen 
Stueckzahlen (500E, 1000$) ist es guenstiger.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.