Forum: Mikrocontroller und Digitale Elektronik Bau eines vollbrückengegentaktwandler welcher Mikrocontroller


von Hh H. (fff)


Lesenswert?

Hallo,

ich möchte eine vollbrückengegentaktwandler bauen diesen will ich mit 
einen Mikrocontroller ansteuern, weil ich will eine verstellbare totzeit 
und Frequenz haben. Die Frequenz soll ca. Bei 25- 50 kHz liegen. Reicht 
da ein arduino UNO oder ein ESP 8266 wenn ja kann ich die über die 
arduino Umgebung programmieren oder sind die dann zu langsam?

Mit freundlichen Grüßen

: Bearbeitet durch User
von Uu.U (Gast)


Lesenswert?

Ja,Ja.

von Stefan F. (Gast)


Lesenswert?

Vorsicht, der ESP8266 hat keine Hardware PWM. Mit Software kannst du 
kein präzises Timing erzeugen, weil dein Programm in unregelmäßigen 
Abständen bis zu mehrere hundert Millisekunden unterbrochen wird.

von Hh H. (fff)


Lesenswert?

Wie kann ich bei Hardware pwm eine totzeit einstellen? Ich möchte es 
nach Möglichkeit verstellbar haben. Ich kenne bei arduino nur die 
Möglichkeit die Ausgänge über Dauer Schleife aus und einzuschalten und 
das normale pwm was aber ohne totzeit ist. Oder kann ich zwei pwm 
irgendwie versetzt laufen lassen und habe so meine totzeit?

von Stefan F. (Gast)


Lesenswert?

Hh H. schrieb:
> Wie kann ich bei Hardware pwm eine totzeit einstellen?

Das kommt ganz auf den Mikrocontroller an, und ob er das überhaupt kann.

Im Referenzhandbuch der STM32F3 Serie steht das zum Beispiel im Kapitel 
20.3.15 Complementary outputs and dead-time insertion.

Arduino ist für solche Dinge nicht wirklich vorgesehen. Zwar kannst du 
diese Mikrocontroller mit Arduino programmieren, musst dich aber dennoch 
mit den Registern auseinander setzen.

von Maxe (Gast)


Lesenswert?

Der STM32F103 hat zwei Timer die 3phasig komplementaere Ausgaenge und 
Totzeit in Hardware koennen. Also fuer gleich zwei Motoren nutzbar. Nur 
falls das auch noch ne Anforderung ist...

von Falk B. (falk)


Lesenswert?

Hh H. schrieb:
> Hallo,
>
> ich möchte eine vollbrückengegentaktwandler bauen diesen will ich mit
> einen Mikrocontroller ansteuern, weil ich will eine verstellbare totzeit
> und Frequenz haben. Die Frequenz soll ca. Bei 25- 50 kHz liegen.

Warum so niedrig? Das baut man heute kaum noch.

> Reicht
> da ein arduino UNO oder ein ESP 8266 wenn ja kann ich die über die
> arduino Umgebung programmieren oder sind die dann zu langsam?

Vergiss die. Wenn gleich hier jemand ein anscheinend ganz gutes Projekt 
für einen Umrichter für einen Motor gemacht hat, ist ein AVR nicht das 
Mittel der Wahl. Ich kann den PICCOLO empfehlen. Damit haben wir in 
der 4ma schon einige Projekte gemacht.

von Kevin M. (arduinolover)


Lesenswert?

STM32G4 mit HR Timer. Der ist genau für solche Anwendungen entwickelt 
worden.

von Ben B. (Firma: Funkenflug Industries) (stromkraft)


Lesenswert?

Da kann ich Dir einen guten alten PWM-Mikrocontroller empfehlen...

TL494

von Gabriel M. (gabse)


Lesenswert?

Die ATTINY 25/45/85 Serie hat einen Spezialtimer mit 2 komplementären 
compare Ausgängen + Dedizierter Death time generation. Leider haben die 
aber nur 5GPIOs (Plus Reset), weshalb man damit nicht wirklich viel 
anfangen kann. Auch kann der Timer nur in eine Richtung Zählen und somit 
kein Phasen korrektes PWM.

von MaWin (Gast)


Lesenswert?

Hh H. schrieb:
> Reicht da ein arduino UNO oder ein ESP 8266

Nein.

Der ESP kann das gar nicht, beim Arduino ist der A/D-Wandler zu langsam.

Wer wirklich den Schwachsinn macht und einfache Analogtechnik 
"Widerstand" durch einen uC ersetzt, der nimmt für diese Aufgaben einen 
DSP.

Dann ist nicht nur die Hardware da um schnelle PWM mit Totzeiten 
auszugeben, sondern auch die Rechenleistung um den PID Algorithmus zur 
Berechnung der Regelung.

Alle anderen Leute nutzen einfache fertige PWM ICs, bei deiner Frequenz 
reicht schon der SG3525 oder TL494.

von Harald W. (wilhelms)


Lesenswert?

Falk B. schrieb:

>> Die Frequenz soll ca. Bei 25- 50 kHz liegen.
>
> Warum so niedrig? Das baut man heute kaum noch.

Weil der µC für höhere Frequenzen nicht schnell genug ist? :-)

von Christian S. (roehrenvorheizer)


Lesenswert?

Schau mal, ob der hier alles kann:

http://ww1.microchip.com/downloads/en/devicedoc/atmel-2588-8-bit-avr-microcontrollers-tinyavr-attiny261-attiny461-attiny861_datasheet.pdf

"12.6    Dead Time Generator
The Dead Time Generator is provided for the Timer/Counter1 PWM output 
pairs to allow drivingexternal power control switches safely. The Dead 
Time Generator is a separate block that canbe used to insert dead times 
(non-overlapping times) for the Timer/Counter1 complementaryoutput pairs 
OC1x and OC1x when the PWM mode is enabled and the COM1x1:0 bits are set 
to“01”. See Figure 12-7 below"

mfg

: Bearbeitet durch User
von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Hh H. schrieb:
> ich möchte eine vollbrückengegentaktwandler bauen
Wofür? Und mit welcher Leistung? Wie sieht denn der Rest deiner Hardware 
dazu aus?

> diesen will ich mit einen Mikrocontroller ansteuern,
> weil ich will eine verstellbare totzeit und Frequenz haben.
Das ist ein eigenartiger logischer Kurzschluss.
Denn dieser Satz müsste lauten:
Diesen will ich mit einen Mikrocontroller ansteuern, der die Möglichkeit 
hat, eine variable Frequenz mit einstellbarer Totzeit zu erzeugen.

Und dann kannst du in den Datenblättern nachschauen, ob die von dir 
ausgewählten µC diese Möglichkeit bieten. Oder willst du dich in einem 
so frühen Designstadium schon auf Andere verlassen müssen?

> Reicht da ein arduino UNO oder ein ESP 8266 wenn ja kann ich die über
> die arduino Umgebung programmieren oder sind die dann zu langsam?
Wenn du generell eher schlecht programmierst, dann sind die auch zu 
langsam, wenn du sie nicht über die Arduino-Toolchain programmierst.

> Ich kenne bei arduino nur die Möglichkeit die Ausgänge über Dauer
> Schleife aus und einzuschalten und das normale pwm was aber ohne totzeit
> ist.
Offenbar musst du dich zur Lösung dieser Aufgabe noch wesentlich tiefer 
in bestimmte Bereiche einarbeiten. Du kannst "bei Arduino" sämtliche 
Möglichkeiten des µCs verwenden, auf dem das Programm läuft. Nur kann es 
sein, dass die vorgefertigten Funktionen das nicht können und du da 
selber etwas machen musst.

MaWin schrieb:
> Alle anderen Leute nutzen einfache fertige PWM ICs
Alle anderen Leute schauen erst mal nach, wie und womit alle anderen 
Leute das machen. Und wenn sie dann verstanden haben, warum die das so 
gemacht haben, dann können sie solch einfach Fragen wie "ist dieser 
bestimmte µC geeignet?" von allein beantworten.

BTW: ich würde für diese Aufgabe natürlich ein kleines FPGA nehmen... 
;-)
http://www.lothar-miller.de/s9y/archives/58-Totzeit-fuer-H-Bruecke.html
Davor eine DDFS und eine PWM und fertig ist der Sinuswandler
http://www.lothar-miller.de/s9y/archives/57-Sinusausgabe-mit-PWM.html

: Bearbeitet durch Moderator
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.