Hallo,
ich habe mir für ein Quadrocopter-Projekt vier der Brushless-Controller
von Ulrich Radig gebaut (einen Selbstgeätzt, drei Platinen bestellt).
Drei von ihnen funktionieren jetzt auch einwandfrei, das Signal an den
einzelnen Motorphasen sieht aus wie hier [[Brushless-Controller für
Modellbaumotoren]] unter "Bildmaterial" gezeigt.
Nur bei einem (nicht der selbstgeätzte ;-) ) bereitet die mittlere (im
Schaltplan "V" genannte Phase Probleme: Das Signal sieht aus wie ein
einfaches an- und ausgeschaltetes PWM-Signal, also ohne die "Schrägen"
im Oszillogramm.
Ich konnte es soweit eingrenzen, dass das PWM-Signal, was aus dem AVR
kommt, bei dieser Phase deutlich länger auf "high" ist, sowohl auf der
High-Side, also auch auf der Low-Side, diese Phase also nie im Freilauf
ist, sondern die Low-Side das Signal irgendwann runterzieht. Merkt man
auch, wenn man die Geschwindigkeit höher einstellt: Der Low-Side MOSFET
wird ziemlich warm!
Ich weiß jetzt leider nicht, woran das liegen könnte, bzw. ob ich den
Fehler in der Back-EMF Schaltung suchen sollte, oder im AVR (=kapput ?),
da die Modulation des schnelleren PWM-Signals, das die Geschwindigkeit
regelt, ja von dem BEMF Signal gesteuert wird. Bin jetzt leider auch
kein extremer Experte in Sachen BLDC, sodass ich nicht sagen kann, ob
die BEMF-Signale in Ordnung sind, oder nicht.
Kann mir hier vielleicht jemand helfen?
Hier noch mal ein Bild von den Signalen. Kanal 1 (oben, blau) ist eine
funktionierende Phase auf diesem Motortreiber, Kanal 2 (unten, gelb) ist
die "V"-Phase, würde man weiter reinzoomen, sieht man, dass der gelbe
"Balken" auch wieder ein PWM-Signal ist.
uC kaputt ist eher unwahrscheinlich, die PWM geht ja. Zumindest ist er
nicht ganz kaputt - einige Eingänge wäre natürlich möglich. Ich würd
auch erst mal im Back-EMF Bereich suchen. Kenne die Software jetzt nicht
- kann diese PWM Form in irgendeinem Zustand von der Software so erzeugt
werden (Zwangskommutierung?) Dann könnte man von dort aus Rückschlüsse
ziehen.
Ich glaube beim Starten des Motors kann es sehr kurze PWM-Impulse auf
der Leitung geben. Die sehen dann aber nicht so aus, wie das. Und das
Programm läuft so auch auf den anderen drei, und die gehen ja. Leider
habe ich gestern noch meinen ISP geschrottet, sodass ich die Teile jetzt
nicht programmieren kann, aber das ist ein anderes Thema...
Ich hänge nochmal zwei Bilder an vom BEMF Signal, wie es in den
Controller eingespeist wird und aus dem virtuellen Sternpunkt
herauskommt.
Bernhard Spitzer schrieb:> Sind bei beiden Oszilogrammen die Motorphasen richtig angeschlossen?
Entschuldige, hatte ich beim Absenden des Posts noch nicht gesehen...
Meinst du mit richtig angeschlossen, dass sie richtig angelötet sind an
die Drains der MOSFETS? Das sind sie. Habe ich auch schon mehrfach an-
und abgelötet beim Testen.
Und eigentlich habe ich die Platine schon mehrfach gecheckt, auf
Kurzschlüsse, falsche Bauteilwerte, kalte Lötstellen, ... nichts
gefunden!
Ich messe grade, dass am Eingang "B_EMF_U" (für alle die nicht mit der
Schaltung vertraut sind, BEMF Eingang für Phase "U", hängt an einem ADC
Pin), im Gegensatz zu den anderen "direkten Eingängen" aus dem virt.
Sternpunkt kein Fast-Sinus anliegt, sondern ein ziemlich glattes
Rechteck! Ich werde diese Leitung mal auf Kurzschlüsse testen oder dann
überprüfen, ob dieses Signal aus dem Controller an dem Pin rauskommt,
oder reingeht.
EDIT: Fehlalarm. Am falschen Pin gemessen...
Danke für die Versuche mir zu helfen, konnte das Problem jetzt lösen.
Ein Widerstand im virt. Sternpunkt war in der Mitte gebrochen, weswegen
auch ein merkwürdiges Summensignal eingespeist wurde (siehe
Beitrag "Re: Ulrich Radig BLMC - fehlerhafte Ausgabesignale", rechtes Bild), das
dann die Phase falsch geschaltet hat.