Forum: Analoge Elektronik und Schaltungstechnik Mosfet-Endstufe zur BLDC Regelung


von mosfeter (Gast)


Lesenswert?

Hallo Zusammen,

aus interesse beschaeftige ich mich gerade mit der Regelung von 
BLDC-Motoren. Mir macht die Elektronik aber leider mehr sorgen, als die 
Regelungstechnik.

Als Controller werde ich meinen ATMEGA8 benutzen und für die 
Mosfet-Endstufe habe ich mir folgendes überlegt:

- Mosfet: 6 N-Channel irf1404
- Treiber: ir2130 drei phasen brücken treiber

Problem ist hier die Dimensionierung von diversen Bauteilen.

Fragen Richtung Mosfet:
1.) Gate-Widerstand 47 Ohm OK?
2.) Keine Freilaufdiode OK? Da sie laut Datenblatt schon eine inne hat.

Fragen Richtung Treiber:
3.) Kondensatorkapzitaet zwischen Vb und Vs ist vermutlich von der 
Frequenz der Ansteuerung/PWM abhaengig. Richtig? Ich werde aber aus der 
Beschaltung nicht wirklich schlau, sodass ich nicht weiß, wie es es 
ausrechnen bzw. Dimensionieren sollte.
4.) Dann sind da bei Typical Connection auf der linken Seite noch ne 
Menge anderer Widerstaende und Transistoren. Da bin ich auch total 
überfragt.

Ich möchte zu Beginn ganz einfach mit einer Blockkommutierung eine alte 
Festplatte zum drehen bringen, anschließend Sinuskommutierung und 
Feld-orientierte Regelung ebenfalls als Ziel mit einschliesen. Ein 
richtiger BLDC soll dann natürlich herhalten.

Habt ihr vielleicht auch noch andere Tipps und Hinweise?
Vielen Dank.

von mosfeter (Gast)


Lesenswert?

Noch eine kurze Zusatzinfo: Die Motoren sollen nur an meinem kleinen 
Netzteil mit 12 V und max. 3 A betrieben werden. Also nichts gewaltiges.

von TestX .. (xaos)


Lesenswert?

mosfeter schrieb:
> 1.) Gate-Widerstand 47 Ohm OK?

viel zu hoch..rechne den strom mal aus... 4.7ohm oder weniger wären ok..

> 2.) Keine Freilaufdiode OK? Da sie laut Datenblatt schon eine inne hat.
bei kleinen lasten geht das..

> 3.) Kondensatorkapzitaet zwischen Vb und Vs ist vermutlich von der
> Frequenz der Ansteuerung/PWM abhaengig. Richtig? Ich werde aber aus der
> Beschaltung nicht wirklich schlau, sodass ich nicht weiß, wie es es
> ausrechnen bzw. Dimensionieren sollte.
Gibt 2 AppNotes von IRF zum Thema Bootstrap Kondensator berechnung..

> 4.) Dann sind da bei Typical Connection auf der linken Seite noch ne
> Menge anderer Widerstaende und Transistoren. Da bin ich auch total
> überfragt.
3 getrennte hallbrückentreiber sind billiger :)

> Ich möchte zu Beginn ganz einfach mit einer Blockkommutierung eine alte
> Festplatte zum drehen bringen, anschließend Sinuskommutierung und
> Feld-orientierte Regelung ebenfalls als Ziel mit einschliesen. Ein
> richtiger BLDC soll dann natürlich herhalten.
für eine FVC brauchst du die rotorposition sowie rechenpower.. fang da 
gleich mit nem CortexM0 bzw M3 an... ein Atmega ist da ein witz..

von mosfeter (Gast)


Lesenswert?

Andi D. schrieb:
> viel zu hoch..rechne den strom mal aus... 4.7ohm oder weniger wären ok..
In Ordnung. Woher weiß ich denn, wieviel Strom zu wenig oder zu hoch 
ist. Im Datenblatt konnte ich leider keine Angabe zum erforderlichen 
Gatestrom finden.

> 3 getrennte hallbrückentreiber sind billiger :)
Ja, der IR2111 scheint mir auch angenehmer zu sein.

> für eine FVC brauchst du die rotorposition
Die Position werde ich dann über ein Systemmodell abschätzen.

> rechenpower.. fang da gleich mit nem CortexM0 bzw M3 an... ein Atmega
> ist da ein witz..
Echt? Ich dachte für die paar Formeln würde nen ATMEGA8 (mit 3.2 MHz) 
vollkommen reichen...

Ich bin froh, wenn die Festplatte sich erstmals ganz einfach mit 
Blockkommutierung dreht. FOC und ein richtiger Motor sollen dann erst 
später kommen, wobei natürlich die Hardware schon so weit bzw. flexibel 
sein sollte, um das dann auch mal packen zu können.

von Dennis H. (t1w2i3s4t5e6r)


Lesenswert?

Warum den atmega8 nehmen, wenn es doch deutlich interessantere von atmel 
gibt. Stichwort attiny 261, da ist viel schon in Hardware drin, was für 
die ansteuerung eines bldc benötigt wird, gibt auch einige app-notes zu 
den unterschiedlichen arten der ansteuerung.

Mfg Dennis

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Oder wenigstens eine Mega48/88/168/328. Der hat 3 Timer, die alle 
komplementäre OC Ausgänge haben. Das passt genau auf deine Motore.

Schau dir bitte mal Application Note AVR444 an, in dem Ansteuerung von 
Sensorless BLDC mit ATMega besprochen wird.
Space Vector Modulation (Sinusansteuerung) wird in AVR447 behandelt, 
dort allerdings für Motore mit Sensoren.

mosfeter schrieb:
> Echt? Ich dachte für die paar Formeln würde nen ATMEGA8 (mit 3.2 MHz)
> vollkommen reichen...

3,2 Mhz sind wirklich knapp. Selbst wenn du nicht mit Formeln hantierst, 
sondern mit Tabellen, solltest du der Kiste mindestens die 8Mhz des 
internen Oszillators spendieren. Und Leute, vergesst doch endlich den 
Mega8, der ist wirklich veraltet. Die o.a. Megas verfügen neben den 
Timern auch über Pinchange Interrupts und andere nette Sachen.

von mosfeter (Gast)


Lesenswert?

Der ATTINY261 gefällt mir sehr gut. Werde ihn dann nehmen. Danke für die 
Tipps erstmals, jetzt muss ich noch ein bisschen lesen und wenn ich dann 
nicht zu faul bin, werde ich die Schaltung zusammenklicken und posten.

von Dennis H. (t1w2i3s4t5e6r)


Lesenswert?

Beachte bei dem Attiny aber, dass der ISP an den Kontakten für eine 
Halbbrücke ist. Ich habe einige Mosfets geschrottet, bevor ich kapiert 
habe, warum ab und zu nach dem programmieren auf einmal alles 
abgeschmiert ist und ich einen schönen fetten kurzen auf der Platine 
hatte. Da hatten eben offensichtlich mal der obere und untere Mosfet 
gleichzeitig durchgeschalten, während des programmierens. Aber ist ganz 
einfach zu lösen, da die Mosfets ja einen Pulldown/Pullup kriegen 
sollten trennst du einfach eine Verbindung zu einem der Mosfets, wenn du 
programmieren willst, mit nem Jumper oder so. Einer reicht ja zu. Das 
nur mal als Hinweis, weil es mir einige Mosfet-Euros gekostet hat :-).


MfG Dennis

von mosfeter (Gast)


Lesenswert?

Danke für den Hinweis. Ich werd' drauf achtgeben.

von mosfeter (Gast)


Lesenswert?

Ist es jetzt schon echt zu spät oder kann es wirklich sein das ich mit 
dem ir2111 nicht die Möglichkeit habe, beide mosfets unbeschaltet zu 
lassen. Ich hab nur ein Input und kann mit ihm laut Datenblatt jenach 
High oder Low den hs oder ls fet durchschalten. Ich muss bei meiner 
Kommutierung aber eine Phase immer unbestromt lassen. Habe ich etwas 
übersehen?

von TestX .. (xaos)


Lesenswert?

mosfeter schrieb:
> Ist es jetzt schon echt zu spät oder kann es wirklich sein das ich mit
> dem ir2111 nicht die Möglichkeit habe, beide mosfets unbeschaltet zu
> lassen. Ich hab nur ein Input und kann mit ihm laut Datenblatt jenach
> High oder Low den hs oder ls fet durchschalten. Ich muss bei meiner
> Kommutierung aber eine Phase immer unbestromt lassen. Habe ich etwas
> übersehen?

ne hast du nicht, der kann nur high/low .. für eine FOC ausreichend aber 
nicht für vollblocksteuerung. schau dir zB mal den IRS2004 an

von Gelöscht (kami89)


Lesenswert?

Hallo,

falls du den Artikel noch nicht kennst, der könnte evtl. noch hilfreich 
sein (auch wenn leider noch einige Details fehlen): 
http://www.mikrocontroller.net/articles/Brushless-Controller_f%C3%BCr_Modellbaumotoren

von Dennis H. (t1w2i3s4t5e6r)


Lesenswert?

mosfeter schrieb:
> Ist es jetzt schon echt zu spät oder kann es wirklich sein das ich mit
> dem ir2111 nicht die Möglichkeit habe, beide mosfets unbeschaltet zu
> lassen. Ich hab nur ein Input und kann mit ihm laut Datenblatt jenach
> High oder Low den hs oder ls fet durchschalten. Ich muss bei meiner
> Kommutierung aber eine Phase immer unbestromt lassen. Habe ich etwas
> übersehen?

Dieser ist nicht wirklich geeignet für dein Vorhaben. Wenn du nur einen 
Signalweg nutzen willst, also ähnlich wie beim IR2111, dann nimm den 
IR2104. Da hast du noch die Möglichkeit über einen zweiten PIN beide 
Mosfets Stromlos zu schalten. Wenn du aber den Attiny261 nutzen willst, 
wären IR2101 besser. Weil der Attiny ja auch für Highside und Lowside 
jeweils einen PIN nutzt. Mit denen habe ich auch schon einen BLDC Regler 
aufgebaut, funktionierte super. Und mit denen hast du auch den Vorteil, 
dass du mein schon angesprochenes Problem nicht hättest :

Dennis H. schrieb:
> Beachte bei dem Attiny aber, dass der ISP an den Kontakten für eine
> Halbbrücke ist.

da die beiden Eingänge des IR2101 gegeneinander veriegelt sind.

MFG Dennis

von mosfeter (Gast)


Lesenswert?

Den IR2104 hatte ich mir auch schon ausgesucht. Jetzt habe ich die Wahl. 
Beim 2104er muss ich mich nicht um die gegenseitige Verriegelung 
kümmern.

Beim 2101 schon und ja, ich die Schaltung mit dem ATTINY261 steht schon. 
Welche PINs auf dem ATTiny meinst du die nur im Gegentakt laufen können, 
also mein HIN und LIN perfekt treiben würden?

An den ISP Kontakten, also SPI Kontakten, ohhh da sehe ich es ja gerade 
:) OCX1 und !OCX1

Nun gut, wie entscheide ich mich nun? Das scheint ja dann mit dem IR2101 
schon bequemer zu sein, oder?

von Dennis H. (t1w2i3s4t5e6r)


Lesenswert?

mosfeter schrieb:
> Nun gut, wie entscheide ich mich nun? Das scheint ja dann mit dem IR2101
> schon bequemer zu sein, oder?

Das ist durchaus bequemer, weil du ganz einfach mit zwei 
Hardware-Registern eine Totzeit einstellen kannst. Also du hast es ganz 
einfach, einen aktiven Freilauf zu basteln.

Du benötigst beide Timer. Timer 1 könntest du mittel PLL mit bis zu 
64Mhz betreiben, habe ich persönlich aber nicht gemacht, weil meine 
Mosfets nicht so schnell schalten können (ich habe eine Variante mit N- 
und P-Mosfet gebaut). Ich nutze die PLL trotzdem, um auf einen 
Systemtakt von 16Mhz zu kommen. Beim Timer 1 stellst du den PWM6 Mode 
ein. Auf Seite 105 des Datenblattes ist eine Zeichnung, wie der Mode 
funktioniert, diese ist allerdings nicht ganz so eindeutig, ich hatte 
damit meine Probleme. Dazu später mehr. COM1A0 habe ich noch gesetzt, um 
der PWM auch einen Ausgangspin zuzuordnen. Dann noch PWM1A, um das 
Register festzulegen, welches das Tastverhältnis einstellt. 
Vorteilereinstellungen musst du dir einfach mal selbst überlegen. 
Interessant ist noch das Register DT1, mit dem du die Totzeit einstellen 
kannst. Das ist sozusagen ein 4-bit Timer. Das obere Nibble des 
Registers stellt den Timerwert für den Wechsel von Highside auf Lowside 
ein, das untere andersherum. Also wenn du einen PWM-Wert von 40 
einstellst, schließt der Highside-Mosfet nach dem Compare Match. Dieser 
braucht allerdings ein paar ns dafür. Jetzt kommt der 4-bit Timer ins 
Spiel. jetzt zählt dieser bis zu dem Wert, den du in DT1 geschrieben 
hast. Erreicht er den Wert, schaltet der Lowside Mosfet durch. Also 
echter aktiver Freilauf. Für die Totzeit gibts einen extra Vorteiler im 
Register TCCR1B. Um dem Timer zu sagen, welche Pins er schalten soll, 
gibt es das Register TCCR1E. In diesem Register musst du einfach immer 
den High- und Lowside-Pin setzen. Also z.B. OC10E0 und OC10E1. Laut der 
Zeichnung auf Seite 105 könnte man denken, dass dann aber Low- und 
Higside gleichzeitig durchgeschalten werden. Das ist aber nicht so, da 
über den Pins der Lowside noch ein Strich ist, welcher das ganze 
negiert, das habe ich lange nicht verstanden. Dazu setzt du dann noch im 
Port-Register den PB4 und fertig ist alles für die ersten 60Grad drehen 
des Motors. Die meiste Schreibarbeit ist es jetzt, eine Funktion zu 
schreiben, die jedesmal, wenn du sie aufrufst eben weiterschaltet, dass 
der Motor die nächsten 60Grad dreht. Zum Anfang kannst du diese Funktion 
einfach im Interrupt des Analog-Komparators ausführen, da sollte der 
Motor schon drehen, wenn auch noch nicht perfekt. Perfekt bekommst du es 
ganz einfach mit dem Timer 0. Aber das kannst du ja vielleicht auch 
selbst rausfinden, jetzt habe ich dir schon einiges erzählt.

Was ich vielleicht noch erwähnen sollte, im AVR-Simulator funktioniert 
das ganze nicht, dort kannst du alle möglichen Register des Timer1 
beschreiben, da passiert nix an den Ausgängen, musst du in Hardware 
probieren. Aber kann ja nix passieren, wenn du die IR2101 nutzt.


MfG Dennis

von mosfeter (Gast)


Lesenswert?

Ja, jetzt hast du doch schon ne Menge geschrieben :) aber da ich gerade 
kaum Zeit habe weiterzubasteln, habe ich bis zum nächsten Lötzinn dein 
Geschriebenes wieder vergessen ;)

von sebastian (Gast)


Lesenswert?

Moin Moin,
aus gegebenen Anlass würde ich das Thema nochmal aufgreifen bzw. mit 
einsteigen.

Bin 31 Jahre alt und staatlich geprüfter Techniker Informationstechnik 
und studiere zur Zeit E-Technik im 5 Semester.

Mein Schwager ist auf den Trichter gekommen sich ein RC-Car zu zulegen 
und möchte es gerne mit ein wenig mehr Dampf befeuern und fragte mich ob 
ich das hin bekomme. Habe natürlich sofort Bllut geleckt und Ihm gesagt 
ich lese mich mal ein und baue eine Testumgebung.

So weit so gut, IR2130 schien mir als geeignet da er ziemlich robust 
scheint, ATMEGA8 flog noch in der Ecken rum reichelt erledigte den Rest.


BEMF habe ich von euch als MOSFET dienen die IRF3710.

Breadboard ausgegraben und angefangen auf zu bauen.

Spannungsstabilisiesung einmal 5V für den Atmega 8 und dann einmal 15V 
für den Treiber. Gatewiderstand für die FETS erst mal weggelassen und 
fleißig alles zusammengesteckt.

Jetzt zur Frage: HIN und LIN vom Treiber sind ja Low aktiv, wenn ich 
jetzt sie High Site durchsteuern möchte, muss ich dann die Low Site auf 
high setzten und dann die High Site einfach mit dem PWM Signal bedienen 
?

Des weiteren habe ich in dem Thread wo auch die BEMF erklärt wurde 
gelesen, dass es ausreicht einen PWM Kanal für alle HIN's am Treiber zu 
nutzen. Entspricht das der Wahrheit? kann man wirklich den einen Pin von 
wo die PWM kommt auf alle HIN's legen ?


Ich glaube das wäre es erst mal. Ist das erste mal das ich was bei euch 
schreibe, bin bis jetzt immer nur leser gewesen :-)

Wen der Bedarf besteht sende ich gerne den Schaltplan und Bilder vom 
Aufbau.

In diesem Sinne einen schönen Abend.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

sebastian schrieb:
> Gatewiderstand für die FETS erst mal weggelassen und
> fleißig alles zusammengesteckt.

Sei bitte so fleissig und füge Gatewiderstände hinzu. Es ist ja nicht 
so, das wir die einbauen, um den Herstellern Umsätze zu verschaffen, 
sondern um eine Strombegrenzung für die Treiberbausteine herzustellen. 
Das Gate eines MOSFet muss aufgeladen werden und zieht bei schnellen 
Anstiegszeiten eben auch mal gehörig Strom.

sebastian schrieb:
> kann man wirklich den einen Pin von
> wo die PWM kommt auf alle HIN's legen ?

Wenn man sich auf Blockkommutierung beschränkt, kann man das machen. 
Allerdings sparst du dir nicht die Treiberbausteine für alle drei 
Highsides sondern wirklich nur 2 Pins am Prozessor, verbaust dir aber 
dauerhaft die Möglichkeit auf FOC/SVM/Sinusmodulation.

sebastian schrieb:
> ATMEGA8 flog noch in der Ecken rum

Und wieder das alte Schlachtschiff. Wenigstens ist er pinkompatibel zum 
Mega48/88/168/328, so dass da ein Upgradepfad existiert. Die o.a. 
neueren Megas machen nämlich 3-Phasenansteuerung mit ihren 3 Timern zum 
Kinderspiel.

von sebastian (Gast)


Lesenswert?

Das mit dem Widerstand ist natürlich sinnvoll, denke da so an 10 Ohm, 
sollte ja reichen.
Da ich aber nur noch drei Stück habe muss ich wohl wieder zu Reichelt 
und bei der Gelegenheit spendiere ich dem Testaufbau einen Mega 328.

Das mit dem PWM gemurkse kann ich mir dann ja auch sparen, da ja 6 
Kanäle verfügbar sind.

War den die Annahme die ich betüglich des Treibers getroffen habe 
richtig ?

Muss LIN auf High und HIN quasi auf low damit man die high site öffnet 
??? Man würde ja in diesem fall nur das PWM Signal am HIN vom Treiber 
haben um ihn zu schalten, natürlich muss der LIN dann auch 
dementsprechend gesetzt werden.

Vielen lieben dank schon mal für die Anrwort  Matthias .

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

sebastian schrieb:
> Man würde ja in diesem fall nur das PWM Signal am HIN vom Treiber
> haben um ihn zu schalten, natürlich muss der LIN dann auch
> dementsprechend gesetzt werden.

Ja nee, auf keinen Fall darfst du ja in einer H-Brücke die Highside 
und die Lowside gleichzeitig durchsteuern. Es ist also immer eine der 
anderen beiden Lowsides durchgesteuert, damit der Strom auch durch den 
Motor fliesst. Das Schema dafür kannst du dir entweder mal aufzeichnen 
oder einer Animation entnehmen. Hier ist z.B. ein einfaches Zeitdiagramm 
für einen BLDC mit drin:
http://de.wikipedia.org/wiki/B%C3%BCrstenloser_Gleichstrommotor

von Sebastian J. (sebastian0815)


Lesenswert?

He He, das habe ich schon verstanden, hatte nur irgendwie einen kleinen 
Knoten durch die Low aktiven Eingänge.


Weil um z.B. die erste h-side durch zu steuern muss ja am Treiber der 
Eingang LIN1 auf high gesetzt werden und HIN1 auf low. Da ja aber auf 
HIN1 das PWM signal liegt muss ich ja quasi das Tastverhältnis umdrehen 
da sonst ja bei z.B. 80% high und 20% low Anteil im PWM Signal mein 
Ausgang am treiber, da er ja low aktiv ist nur den 20% Anteil 
durchschalten. Hoffe man versteht was ich meine. :-)

Um also ein Tastverhältnis von 80/20 am Ausgang zu erhalten muss ich ja 
ein Tastverhältnis von 20/80 rein geben.

Werde das die Tage mal im Labor mit einem FG am treiber testen und mich 
dann mal langsam an den code begeben.

Ist der Mega 328 den jetzt die bessere Wahl oder sollte es besser ein 
Mega 44 oder 88 werden. Wollte nämlich heute die letzten kleinteile bei 
Reichelt ordern, damit mir der Kurier die schön am Montag bringt und ich 
dann mal am Dienstag ins Labor komme und den Treiber quälen kann.

Vielen Dank aber nochmal für deine Zeit die du aufgebracht hast.

Mal sehen wie weit ich die Woche komme. Werde mich bei fragen die 
bestimmt noch auftauchen werden melden. Erfolge werden aber ebenfalls 
berichtet.

von Dennis H. (t1w2i3s4t5e6r)


Lesenswert?

Sebastian Juch schrieb:
> Ist der Mega 328 den jetzt die bessere Wahl oder sollte es besser ein
> Mega 44 oder 88 werden.

Nicht ganz einfach zu beantworten. Ich selbst habe bisher nur die 
Blockkommutierung umgesetzt, da reicht ein Mega88 locker. Wieviel Platz 
man für eine sinus-Ansteuerung benötigt weis ich nicht, das habe ich 
noch nie gemacht.


Dennis

von Gelöscht (kami89)


Lesenswert?

sebastian schrieb:
> Des weiteren habe ich in dem Thread wo auch die BEMF erklärt wurde
> gelesen, dass es ausreicht einen PWM Kanal für alle HIN's am Treiber zu
> nutzen. Entspricht das der Wahrheit? kann man wirklich den einen Pin von
> wo die PWM kommt auf alle HIN's legen ?

Ein einziger PWM Kanal reicht aus, wenn du ihn jeweils nur zu jenem 
Treiber "leitest", der das PWM gerade benötigt. Also immer 
abwechslungsweise alle drei Treiber hintereinander.

Dazu braucht man nur drei Widerstände, so wie in der Beispielschaltung 
in diesem Artikel: 
https://www.mikrocontroller.net/articles/Brushless-Controller_f%C3%BCr_Modellbaumotoren#Beispielschaltung

In dieser Schaltung ist der R20 einer dieser drei Widerstände, die 
anderen sind nicht gezeichnet da nur eine Halbbrücke abgebildet ist.

Der Trick besteht darin, den Ausgangs-Pin für HIN einfach auf Eingang zu 
definieren, dann ist der Pin hochohmig und das PWM-Signal wird über den 
Widerstand (R20) zum Treiber geleitet. Ist der Ausgang niederohmig, also 
auf Low oder High liegt auch dieses Signal am Treiber an, auch wenn das 
PWM weiterläuft.

Es gibt mehrere Möglichkeiten, wie man einen BLDC Controller aufbaut. Im 
verlinkten Artikel ist eine sehr einfache Variante erklärt, mit der man 
recht schnell zum Ziel kommt. Ein Merkmal der Schaltung im Artikel ist, 
dass die Treiber nicht HIN und LIN ala Eingänge haben, sondern IN und 
SHUTDOWN (bzw. ENABLE). Das hat verschiedene Vorteile, die unter 
"Treiber" erklärt sind: 
https://www.mikrocontroller.net/articles/Brushless-Controller_f%C3%BCr_Modellbaumotoren#Treiber
(z.B. ist der "aktive Freilauf" viel aufwändiger wenn man HIN/LIN statt 
IN/SD verwendet)

Nachteil an dieser Variante ist dieser hier:

Matthias Sch. schrieb:
> Wenn man sich auf Blockkommutierung beschränkt, kann man das machen.
> Allerdings sparst du dir nicht die Treiberbausteine für alle drei
> Highsides sondern wirklich nur 2 Pins am Prozessor, verbaust dir aber
> dauerhaft die Möglichkeit auf FOC/SVM/Sinusmodulation.

Jetzt musst du selber wissen, ob du später mit deinem Controller auch 
mal was anderes als nur Blockkommutierung machen möchtest...

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Dennis H. schrieb:
> Wieviel Platz
> man für eine sinus-Ansteuerung benötigt weis ich nicht, das habe ich
> noch nie gemacht.

Ich habe jetzt schon öfter die AVR447 implementiert, noch mit 
umfangreichen Konsolroutinen. Allerdings ist die 447 ein 
tabellenorientierter Ansatz, der keinerlei trigonometrische Funktionen 
benötigt und deswegen auf die 'math' Lib verzichten kann.
Für AVR447 reicht ein Mega48 knapp in der Grundvariante aus der Appnote. 
Mit einem Mega88 ist man da immer auf der sicheren Seite. Auch der 
3-Phasen-Umrichter aus dem Wettbewerb läuft minimal auf einem Mega88.
Ich habe den Mega328 aber jetzt oft schon als den preisgünstigsten 
gesehn, trotz des grossen Flash. Lohnt sich also, beim Händler alle im 
Preis zu vergleichen.

von Sebastian J. (sebastian0815)


Lesenswert?

Ein kleines Update.
Reichelt hat geliefert. Gate Widerstad wurde eingepflegt, 8 Mhz Quarz 
instaliert und der neue Mega 328 verdrahtet.

BEMF Schaltung wurde ebefalls auf 15V angepasst.

Zum testen der einzelnen Funktionen dient noch der Mega 8, PWM Erzeugung 
klappt Prima , LCD dient zum Anzeigen von Timer Werten und Poti in 
Verbindung mit dem ADC ändern die PWM. Versuche gerade den Empfänger aus 
zu lesen. Habe gelesen das man den gleichen Timer nutzen kann, welcher 
auch die PWM erzeugt.
Mal schauen ob das Interrupt gewusel was ich mir vorstelle auch klappt.

Schauen wir mal was die nächste Woche alles so bringt.

Schönes Wochenende.

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.