Hi, ich bin auf der suche nach einem IC, welches ein PWM-Signal inkl. Totzeit invertiert. Kennt da jemand ein entsprechendes IC oder ähnliches? danke
ja einen Inverter, diese muss aber unbedingt ein Totzeit haben. Wäre natürlich schön, wenn man die sogar noch einstellen kann.
ich rate einfach mal drauflos und glaube, dass du sogar zwei Totzeiten brauchst ...
Jeder Inverter hat eine Totzeit ;-) -> Gatterlaufzeit In welcher Größenordung soll denn die Totzeit sein? 10ns, 10µs, 10ms, 10s,..?
Die neueren AVRs können das. Ist zwar etwas mehr als ein Inverter, aber dafür kannst Du Dir Dein komplettes PWM selbst designen, inklusive Pulsweite, -frequenz, -auflösung.
Was hast du denn genau vor? Zeichne doch mal einen Signalverlauf vom PWM und invertierten PWM
Das jeder Inverter eine Totzeit durch die Gatterlaufzeit hat, ist klar. Ist abr nicht das gewünschte. Wünschenswerte wäre eine Einstellbare Totzeit über eine RC-Kombination oder ähnliches. Das ganze wird ein Umrichter. Die Taktfrequenz soll sich im Bereich von 10kHz bewegen. Die Totzeit sollte sich an der Einschalt- bzw. Ausschaltzeit der IGBT's richten und wohlmöglich etwas darüber liegen. Im Datenblatt der IGBT's sind folgende werte angegeben: Ton = 0,32us (min), 1,2us (max) Toff = 0,41us (min), 1,0us (max) Also sollte sich die Totzeit im bereich von ca. 1,2us befinden. Ein uC sollte es erstmal nicht sein. Dachte, es gibt da irgendwie fertige IC#s für, die sowas können.
Na dann kann ich mich nur Travel Rec anschließen und das mit einem µC lösen. Wenn du einen Umrichter baust, dann hast doch eh einen Controller drauf, warum nicht einfach noch die Software erweitern und einen weiteren PWM Ausgang bedienen?
Ja, an sich wäre es auch die schönste Lösung, nur leider haben wir nur 3 PWM-Signale und ist deswegen leider nicht möglich. Deswegen bin ich ja auch auf der suche, nach einer einfachen hardwaretechnischen lösung
Über ein Schieberegister und einen Inverter könnte das in den Griff zu bekommen sein.
ja hört sich gar nicht schlecht an. denke mal, du meinst damit, dass man das Signal ins Schiebregister pakt und den Takt extern einstellt und somit die zeit bekommt, die man haben will oder ?
Die Tiny261 -461 -861 unterstützen eine High-Speed-PLL und 3 hochauflösende PWM-Kanäle inklusive Totzeitgenerator. Kosten 2.50EUR.
ja genau. Also den PWM in´s schieberegister (z.B 8 Bit) und das letzte Bit auf nen Inverter geben. Das SR versorgst du mit ca. 8 MHz. Damit beträgt die "Unschärfe" deiner Laufzeit 125 ns. Den Takt kannst einstellbar machen und somit die Laufzeit anpassen. Aber immer nur mit einem Jitter von 125 MHz. Wenn dir das zu ungenau ist, dann musst eben das Register breiter machen und den Takt erhöhen.
>oder ein RC Glied vor eim Schmitt Trigger. Kostet 0,20€
Genau, das wäre dann pefekt, um sich die Pulse bei kleinem DutyCycle
noch schön rauszufiltern!
--> Ergo: Blödsinn!
Also erstmal vielen danke für den schnellen Antworten. Ich habe von euch ja jetzt drei mögliche Ansätze. Werde mir mal genauer überlegen, was die sinnvollste ist. Falls jemand aber noch was einfällt, bin für alles offen.
Schrotty schrieb: >>oder ein RC Glied vor eim Schmitt Trigger. Kostet 0,20€ > > Genau, das wäre dann pefekt, um sich die Pulse bei kleinem DutyCycle > noch schön rauszufiltern! > > --> Ergo: Blödsinn! Seh ich gerade auch so. Damit schalte ich ja einen schönen Tiefpass davor und was der macht, naja, kann sich denke ich mal jeder selber erklären
Muss die Totzeit eigentlich im Betrieb "nachstellbar" sein, oder wird die nur einmalig eingestellt?
also Anfangs sollte die schon erstmal nachstellbar sein, um tests zu machen, aber später wird diese wohl fest sein.
>Seh ich gerade auch so.
Da waren´s nur noch zwei Ansätze ;)
Was mir mit der µC-Lösung von Travel Rec bisschen Kopfzerbrechen
bereitet, ist die Frage, ob es so einfach ist, diesen so schnell und
präzise auf deinen PWM aufzusynchronisieren, dass er sich verhält, wie
der von dir gesuchte Inverter. Ich tippe mal auf NEIN.
Eventuell könntest du auch das Schieberegister und Inverter in ein kleines CPLD packen. Dann kannst zu Versuchszwecken jeden beliebigen Registerausgang des SR nach aussen führen und sparst dir somit einen einstellbaren Oszillator.
Das ganze Problem mit der Schieberegisterlösung ist halt nur, dass dein Signal selber (also der PWM) in seinen Pulsbreiten um die Abtastfrequenz jittern wird
ja schon klar, aber da sollte es schon reichen, wenn man das invertierte Signal auf einen OP gibt und somit den Jitter fast wieder wegbekommt. Vermute ich zumindestens
OP macht Jitter raus? Versteh nicht ganz, was du meinst. Beispiel: Ein Eingangspuls von 10µs breite wird nach dem Schieberegister zu einem Ausgangspuls von 10µs +- 1/Schieberegistertakt Breite. Also je nach dem ein bisschen breiter oder schmäler. Und wie machst du das mit einem OP wieder raus?
Ok, hatte das mit dem Jitter falsch verstanden. So gehts dann natürlich nicht.
Dachte ich mir :-) Du musst dir halt im Klaren drüber sein, ob du bei deiner Schaltung mit einem Jitter auskommst oder nicht. Wenn dir der Jitter zu groß ist, dann musst eben das Register breiter und den Takt höher machen. Mit welcher Frequenz läuft denn dein PWM und welche DutyCycles wirst du einstellen (also Minimal und Maximal)
das PWM wird mit 10kHz laufen. An welche grenzen wir da gehen werden, steht noch nicht ganz fest. Wird sich bei einigen versuchen zeigen, wei weit wir gehen können. 5% Best-case evtl:-)
Was ist am RC-Glied auszusetzen? Muss natürlich so dimensioniert werden dass die Pulse nicht vollständig verschwinden. Ich hab mal eine Skiz Das ist eine ganz simple Einschaltverzögerung... Ich habe mal eine Skizze beigefügt
10 KHz => 100µs Periodendauer Bei DutyCycle von 5% macht das eine minimale Impulslänge von 5µs Diese kann bei einem SR-Takt von 8 MHz am Ausgang des SR zwischen 4,875 und 5,125µs variieren. Jetzt liegt´s an dir, zu entscheiden, ob das für dich ausreichend genau ist.
@ich: Sehr schön! Mit der Diode machst das ganze Ding auch noch total assymetrisch. Ein High wird verzögert und ein Low nicht! Genau die Funktion, die wir hier haben wollen. :-)
>Sehr schön! Mit der Diode machst das ganze Ding auch noch total >assymetrisch. Ein High wird verzögert und ein Low nicht! Genau die >Funktion, die wir hier haben wollen. :-) High-Side und Low Sode bekommen das natürlich beide. Einer davon ist am Eingang invertiert. Soll ich dir ein kompletten Schaltplan malen oder was?
Jetzt wird´s spannend :-)
>Soll ich dir ein kompletten Schaltplan malen oder was?
Sehr gerne.
Wenn ich dich richtig verstehe, dann verzögerst du mit einer Schaltung
die High-Flanken und mit einer quasi identischen die Low-Flanken. Sowas
kann man machen.. aber wie geht es dann weiter mit den Signalen?
Schrotty schrieb: > 10 KHz => 100µs Periodendauer > > Bei DutyCycle von 5% macht das eine minimale Impulslänge von 5µs > Diese kann bei einem SR-Takt von 8 MHz am Ausgang des SR zwischen 4,875 > und 5,125µs variieren. > > Jetzt liegt´s an dir, zu entscheiden, ob das für dich ausreichend genau > ist. mmh, ist schon ganz ordentlich, die 2,5% abweichung. Aber gut, momentan sehe ich diese Lösung als eine einfache gute Lösung. Bei 8Bit und 8MHz eine Totzeit von 1us ist schon ganz ok, wie ich finde. evtl auf 12Bit erhöhen und ich bin auf der sicheren Seite. Werde mir da heute abend mal ein paar weitere Gedanken drüber machen und mal einen Signalplan erstellen und schauen, ob sich wirklich das gewünschte Ergebnis damit erzielen lässt.
Die 2,5% Abweichung hast du ja nur im geringsten DutyCycle (oder im maximalen) Da die Abweichung ja konstant ist, relativiert sicht das Ganze bei DCs um die 50%
>aber wie geht es dann weiter mit den Signalen?
Das musst du Jontef fragen. Das ist nur ein Inverter mit Verzögerung.
wie gefordert.
nein, die Frage ging an dich. Denn nach deinem Vorschlag baust du die Schaltung zweimal auf. Einmal für die High und einmal für die Low-Flanke. Ergo hast du ZWEI Ausgangssignale aus EINEM Eingangssignal (PWM) gewonnen. Daher meine Frage, was du mit den BEIDEN Signalen anstellst, um wieder EIN Signal zu bekommen, das einen zeitverzögerten PWM darstellt..
Da erwähnt wurde dass 3 PWM Signale vorhanden sind, und ich mir die Frage gestellt habe warum man ein PWM invertieren sollte, ist mir nur eine brauchbare Antwort eingefallen. 3-Phasen Wechselrichter, o.ä. Und so ein Teil hat in der Regel 6 IGBT/MOSFETS... natürlich reine Spekulation. Falls eine andere Anwendung gewünscht wird, bitte ich, das klar zu stellen.
Oh mann oh mann. Häng einfach einen Treiber davor, bei dem man eine Totzeit programmieren kann und fertig (Siehe IRF zum Beispiel). Übrigens, müssen Die Flanken "auseinander" gezogen werden für eine Totzeit und nicht einfach nur verzögert (!!). Siehe den Ausschnitt aus dem IR2104 Datenblatt. HO - High Out LO - Low Out
ja mit dem 3phasen Wechselrichter liegst du richtig. wurde auch oben schonmal erwähnt
@ich. Dennoch hast noch nicht erklärt, wie du aus deinen beiden Signalen wieder das PWM Signal regenerierst. Mich würde es interessieren. @Simon: Gibt es Switche mit programmierbarem Delay? Kenn ich gar nicht und bin auf den ersten Blick bei IRF nicht fündig geworden. Kannst da mal ne Type nennen?
>Dennoch hast noch nicht erklärt, wie du aus deinen beiden Signalen >wieder das PWM Signal regenerierst. Mich würde es interessieren. Was gibts da zu "regenerieren"? das sind direkt die Ansteuersignale der Leistungsschalter (mit entsprechender Beschaltung für den High Side Switch)
na du hast doch vorhin gesagt, dass du für die High und die Low-Flanke getrennt so eine Schaltung vorsehen würdest. (nachdem ich sagte, dass das Ding ja asymmetrisch ist) Und wenn du die Schaltung zweimal aufbaust, dann hast du ja zwei Signale pro PWM (einen mit verzögerter High-Flanke und einen mit verzägerter Low-Flanke) Und eigentlich brauchst ja nur ein PWM-Signal, bei dem beide Flanken verzögert sind. Verstehst?
also, um hier nochmal was klar zustellen. Also meiner Meinung brauche ich die Signale so, wie sie im Anhang dargestellt sind. Leider habe ich nur das PWM-Signal, welches dann halt invertiert werden muss mit Totzeit.
erstmal die Treiber von IRF: https://ec.irf.com/v6/en/US/adirect/ir?cmd=eneNavigation&N=0+4294837793+4294837532 Du hast ein PWM Signal. Ist es high, leitet der High Side Switch, ist es low, leitet der Low Side switch. wir invertieren den PWM, und steuern mit diesem invertierten den Low Side switch an. (damit der auch bei High geschaltet wird) Jetzt verpassen wir beiden PWMs eine einfache Einschaltverzögerung und der Käse ist gegessen. Verstehst?
Ganz genau, so hab ich es auch verstanden. Aber so eine Signalform bekommt man mit ein paar RC-Gliedern und einem ST nicht aus dem Ursprungssignal.
@ich: Danke für das Datenblatt. Wenn man es in der Gesamtantordung sieht, dann hast du recht. Allerdings wäre ein reines Verzögern eines Signals (wie es anfangs gefordert wurde), ohne dieses Signal in der Form zu verändern, also nur eine Phasenverschiebung zu erzeugen, mittels eines RC-Gliedes und ST nicht möglich. Und darauf wollte ich hinaus.
Da hast du Recht. Die RC Glieder mit den ST sind lediglich dazu da, damit eine gewisse Zeit vergeht vom Ausschalten des einen IGBT zum Anschalten des anderen IGBT und damit ein einfacher, aber effektiver Schutz vor Kurzschluss. ich denke mehr war nicht gefordert. Wir haben glaub ich etwas aneinander vorbei geredet :-)
Schrotty schrieb: > Was mir mit der µC-Lösung von Travel Rec bisschen Kopfzerbrechen > bereitet, ist die Frage, ob es so einfach ist, diesen so schnell und > präzise auf deinen PWM aufzusynchronisieren, dass er sich verhält, wie > der von dir gesuchte Inverter. Ich tippe mal auf NEIN. Ha, vertippt! Ist nämlich Hardware und in die Timer-Output-Compare-Einheiten miteingegossen. Der neue PWM-Zyklus startet immer erst dann, wenn die zuvor programmierte Totzeit abgelaufen ist. Wie gesagt, Tiny261A, Tiny461A oder Tiny861A. Hier ist das Datenblatt: http://www.atmel.com/dyn/resources/prod_documents/doc8197.pdf
@ich: Ja jetzt sind wir wieder auf einer "Wellenlänge" :-) Klassich aneinenader vorbeigeredet! @TravelRec: Vertippt? Ich weiss nicht, denn Jontef suchte einen Baustein, der ihm einen PWM verzögert und invertiert. Und du schlugst dazu einen Tiny vor. Also PWM rein in den Tiny und invertiert und phasenverschoben wieder raus aus dem Tiny. Und DAS denke ich, schafft man mit einem Tiny nicht sinnvoll. Denn dazu müsstest du den eingehenden PWM samplen o.ä. und auf einem Port wieder ausgeben. Klar, man kann natürlich seine ganzen PWMs im Tiny von Grund auf erzeugen, aber danach war hier ja nicht gefragt.
Hi Da reicht ein Widerstand ein Kondensator und ein Schmittrigger-Nand mit 2 Eingängen. MfG Spess
Hi Nö. Für die Totzeit. Überlege mal, was herauskommt, wenn du beide Signale um den gleichen Wert phasenverschiebst. MfG Spess
ja, da hast du recht, aber eine Anrdnung aus Tiefpass und ST macht nicht mit beiden Flanken eine Identische Phasenverschiebung (Stichwort:Hyterese des ST) Ausserdem musst du aufpassen, dass du dir bei sehr geringem DutyCycle nicht am Ende noch durch die Anordung dein Nutzsignal rausfilterst.
Hi >ja, da hast du recht, aber eine Anrdnung aus Tiefpass und ST macht nicht >mit beiden Flanken eine Identische Phasenverschiebung >(Stichwort:Hyterese des ST) Brauchst man auch nicht. Die Flanke muss nur so lange verzögert werden, bis der andere Zweig abgeschaltet hat. MfG Spess
Hier eine Skizze, die das Problem veranschaulicht. Nicht besonders schön, aber ich denke, man kann erkennen, um was es geht.
Schrotty schrieb: > Ich weiss nicht, denn Jontef suchte einen Baustein, der ihm > einen PWM verzögert und invertiert. > Und du schlugst dazu einen Tiny vor. > Also PWM rein in den Tiny und invertiert und phasenverschoben wieder > raus aus dem Tiny. Und DAS denke ich, schafft man mit einem Tiny nicht > sinnvoll. Ist nicht klar definiert worden. Der Tiny könnte das - was auch immer woher - PWM selber erzeugen. Wenn das PWM jetzt zum Beispiel von einem NE555 stammt, könnte man diesen halt komplett substituieren. Alles ein wenig Stochern im Nebel ohne weitere Info.
Ja Spess, aber die eingangs gestellte Frage lautete eben: "Ich brauch eine Schaltung, die mir ein PWM-Signal verzögert und invertiert" Und DAS bekommst eben mit nem TP und nem ST nicht hin!
Genau TravelRec, er beschrieb nicht die Applikation, sondern wollte nur eine Lösung für dieses eine Signal haben.
Hi Ich meinte das so-> Anhang. Wir bauen PWM-Verstärker für Schwingungsmesstechnik bis in mehrstelligen kW-Bereich. Bei denen funktioniert das einwandfrei. MfG Spess
Schrotty schrieb: > @Simon: > > Gibt es Switche mit programmierbarem Delay? Kenn ich gar nicht und bin > auf den ersten Blick bei IRF nicht fündig geworden. Kannst da mal ne > Type nennen? Ja gibt es. https://ec.irf.com/v6/en/US/adirect/ir?cmd=eneNavigation&No=0&N=0+4294837793&numRecs=131 Spalte "Programmable Dead Time". Das ist eine saubere Lösung und nicht so ein Gebastel, wozu dir hier mehrmals geraten wird.
Schrotty schrieb: > er beschrieb nicht die Applikation, sondern wollte nur > eine Lösung für dieses eine Signal haben. Kleinkariertheit bringt nicht immer weiter. Man kann auch mal über den Tellerrand gucken.
na auch hier hast du am Ausgang kein Signal, das einfach nur das Eingangssingal phasenverschoben darstellt. Es wird die Highflanke verzögert und die Lowflanke bleibt, wie beim Originalsignal. Ergo: Der High-Puls wird kürzer als im Original. natürlich funktioniert das im Zusammenhang mit dieser Applikation, das steht ausser Frage, aber dennoch ist auch mit dieser Schaltung keine reine Phasenverschiebung eines Signals möglich, nach der eingangs gefragt wurde. Die Invertierung am Ausgang hab ich mir mal gespart, da sie ja nichts zur Sache tut :-)
Das hat doch nichts mit Kleinkariertheit zu tun. Ich hab mich eben an seine Forderung auf "Signalebene" verbissen und er kam ja erst später mit der Applikation raus. Aber da stand das Thema mit dem Tiefpass dann schon im Raum. Also, es ist eigentlich alles zu genüge geklärt: eine Phasenverschiebung mit einem TP kriegt man nicht sauber hin, ABER in der Anwendung "Umrichter" ist dies auch nicht notwendig, da es ausreichend ist, durch eine reine "On-Verzögerung" alle gewünschten Funktionen zu erhalten und diese bekommt man mit einem TP selbstverständlich hin. Richtig so?
Hi >aber dennoch ist auch mit dieser Schaltung keine >reine Phasenverschiebung eines Signals möglich, nach der eingangs >gefragt wurde. Wieso? Das: >ich bin auf der suche nach einem IC, welches ein PWM-Signal inkl. >Totzeit invertiert. Kennt da jemand ein entsprechendes IC oder >ähnliches? war die eigentliche Frage. MfG Spess
Ui, okay, dann brauchen wir jetzt eine Begriffsdefinition für "Totzeit" Für mich ist eine Totzeit eine Zeit, um die eine Information beim Durchlauf durch eine System verzögert wird. Ist diese Durchlaufzeit für alle Art von Information identisch, dann kann man durchaus sagen, dass die Information in ihrer Phase gegenüber der Eingangsinformation verschoben wird. Oder seh ich das falsch? Also: Information = 1 und 0. Totzeit bei beiden identisch -> Phasenverschiebung. Aber ich denke mal, dem Fragesteller ist nun ausreichend geholfen und bevor es hier philosophisch wird, mach ich mir lieber ein Bierchen auf :-)
Bei einer FET/IGBT Ansteuerung ist die Totzeit eben keine bloße Phasenverschiebung. Ich habe doch oben das Übertragungsdiagramm vom IR2104 angehängt, aber das scheint niemand zu beachten?! Man muss vor dem Einschalten eines der Transistoren darauf achten, dass der andere schon gesperrt ist. Man muss also, wenn überhaupt, nur eine Flanke verzögern. Wenn man ein Signal phasenverschiebt von den beiden Transistoren, überschneiden sich die Ansteuerungen der beiden Transistoren und es kommt zur Cross Conduction.
>Wenn man ein Signal phasenverschiebt von den beiden Transistoren, >überschneiden sich die Ansteuerungen der beiden Transistoren und es >kommt zur Cross Conduction. RICHTIG! Das wissen alle hier und keiner zweifelt das an. ABER eingangs war eben die Applikation noch nicht klar und der Fragesteller wollte lediglich ein Signal mittels einer irgendwie gearteten Schaltung mit einer Totzeit versehen. Uffz..
Travel Rec. schrieb: > Schrotty schrieb: >> Was mir mit der µC-Lösung von Travel Rec bisschen Kopfzerbrechen >> bereitet, ist die Frage, ob es so einfach ist, diesen so schnell und >> präzise auf deinen PWM aufzusynchronisieren, dass er sich verhält, wie >> der von dir gesuchte Inverter. Ich tippe mal auf NEIN. > > Ha, vertippt! Ist nämlich Hardware und in die > Timer-Output-Compare-Einheiten miteingegossen. Der neue PWM-Zyklus > startet immer erst dann, wenn die zuvor programmierte Totzeit abgelaufen > ist. Wie gesagt, Tiny261A, Tiny461A oder Tiny861A. Hier ist das > Datenblatt: > http://www.atmel.com/dyn/resources/prod_documents/... Hi, ich frage mich momentan, wie du ein vorhandes PWM-Signal mit dem Tinyx61 einlesen würdest und dieses dann mit den Timer-Ouput-Compare-Einheiten des Tinyx61 inklusive Totzeit ausgeben willst?
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.