Forum: Analoge Elektronik und Schaltungstechnik BLDC Treiber-IC


von Michael S. (rbs_phoenix)


Lesenswert?

Hallo zusammen. Ich habe mal eine Frage.
Ich wollte mal wissen, ob es ein IC gibt, an den ich 3 Halbbrücken 
anschließen kann und diese einen (3-4 LiPo-Cell, 10A) BLDC-Motor 
steuern.

Was ich mir so gedacht hatte, pro Phase 3 Anschlüsse (Highside MOSFET, 
Lowside MOSFET, Sense-Eingang beim Floating) und dann 
Geschwindigkeitsvorgabe via PWM/Spannung oder I²C/SPI-Schnittstelle.

2 ICs hab ich gefunden, wovon ich aber noch nicht 100%ig überzeugt bin.

1. Microchip's MTD6501
(http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en558296 ):

Dieser Controller bekommt die Geschwindigkeit über PWM und er ist schön 
klein (8pins). Doch er hat schon integrierte MOSFETs, die "nur" bis zu 
800mA liefern können. Meine Idee war, evtl eine Beschaltung dahinter zu 
machen (ich will ja sowieso externe MOSFETs haben), die quasi die 
Ausgangs-Mosfets ersetzen. Gedacht hatte ich eine Schaltung: Highside 
P-Channel-MOSFET und NPN-Transistor, Lowside N-Channel-MOSFET, davor 
jeweils eine Diode Richtung Gate/Basis und an die Kathode von der Diode 
ein PullUp bzw Pulldown, damit im Floating-Zustand beide MOSFETs 
gesperrt sind. Dann muss der Punkt zwischen den MOSFETs aber für das 
BEMF an das IC geführt werden und da seh ich nichts außer Probleme (z.B. 
bei einer Diode gibt es einen Spannungsabfall von der ohnehin schon nur 
induzierte Spannung). Oder liege ich hier falsch?


2. Toshiba's TB6575FNG
(http://www.toshiba-components.com/productpages/linear/TB6575FNG.html ):

Das sieht schon eher nach dem aus, was ich gern hätte, doch weiß ich 
nicht, ob ich das wirklich richtig sehe.
Im Datenblatt gibt es eine Beispielbeschaltung (Seite 13). Dort sieht 
die Rückführung so "komisch" aus, zumindest habe ich das so noch nie 
gesehen. Ich kenne es so (von µC-basierten Controllern), das die 3 
Leitungen über 3 Spannungsteiler an einen Multiplexer und dann zu einem 
Komparator gführt werden und zusätzlich über weitere 3 Widerstände aus 
den 3 geteilten Phasen der Mittelpunkt erzeugt wird und dieser an den 
anderen Anschluss vom Komparator geht.
Das im Datenblatt sieht irgendwie zu simpel aus ;) Ist ja, wenn ich das 
richtig sehe, nur ein addierer. Würde dieses IC für meine Anwendung 
passen? Oder hat jemand noch einen anderen Tip? Ich hab bei Microchip, 
TI, Analog, Maxim, LT und Mouser geguckt und die beiden ICs waren die 
Ausbeute.


Da fällt mir noch etwas ein: Ich wollte SMD-MOSFETs nehmen, die im DPAK 
(TO-252) package kommen. Die Kühlung erfolgt dort ja über die Platine 
und der Metallfläche hinten/unten am Gehäuse. Bringt es was von oben, 
also an die Fläche, wo die Bezeichnung drauf ist, mit Wärmeleitpaste 
einen Kühlkörper draufzusetzen? Oder ist der Thermalwiderstand dort so 
hoch, dass es ansich garnichts bringt? In Datenblättern steht ja immer 
der Widerstand zum Case und Case/Gehäuse ist ja eigentlich nicht nur der 
Metallteil.


Vielen dank schonmal für die hoffentlich kommenden Kommentare

PS: Ich würde absichtlich gerne eine nicht-µC-Lösung vorziehen, daher 
braucht das hier nicht mehr erwähnt werden.

: Verschoben durch Admin
von ich (Gast)


Lesenswert?

würde mich auch mal interessieren! sehen ja soweit ganz nett aus die 
ics!

von Michael S. (rbs_phoenix)


Lesenswert?

Digikey brachte den noch ans Licht:

Allegro's A4960
(http://www.allegromicro.com/Products/Motor-Driver-And-Interface-ICs/Brushless-DC-Motor-Drivers/A4960.aspx 
) :
Hat sogar ne Bootstrap-Schaltung drin um Highside-N-Channel MOSFETs zu 
treiben.

Aber ich fasse das große und überraschende Schweigen so auf, dass es 
dort nicht viel Auswahl gibt und es evtl auch oft via µC gemacht wird.

Allerdings wäre die Frage zum Kühlen noch offen.

von Achim M. (minifloat)


Lesenswert?

Gestern auf der Embedded World gesehen, ein µC mit eingebauten 
Levelshiftern für die oberen Halbbrücken-Schaltelemente, Gatetreibern 
und programmierbaren OP-Amps für die Strommessung: 
http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=S12ZVM
mfg mf

von Michael S. (rbs_phoenix)


Lesenswert?

Nett. Doch ich wollte eigentlich auf einen µC verzichten bzw allgemein 
programmierbare Bauteile

von Achim M. (minifloat)


Lesenswert?

Michael Skropski schrieb:
> oder I²C/SPI-Schnittstelle.

Michael Skropski schrieb:
> ich wollte eigentlich auf einen µC verzichten

Und wie soll das zusammenpassen?

von Michael S. (rbs_phoenix)


Lesenswert?

Achso. Also es gibt einen µC an dem u.A. Drehencoder und Display dran 
sind. Und ich will nun einen BLDC ansteuern. Dazu wollte ich ein 
diskretes Bauteil haben, :
a) damit ich nicht ein Programm entwickeln/bestehendes groß erweitern 
muss
b) damit ich kein extra Programmiergerät brauche (falls kein Microchip 
µC)
c) da ich dachte, dass darauf ausgelegte ICs schon allerhand an 
Funktionen mitbringen, die Softwaretechnisch relativ aufwendig sind.

Also das "auf µC verzichten" bezieht sich auf den BLDC-Controller, nicht 
auf das komplette System.

von Ersi (cell85)


Lesenswert?

Hi,

hast du den von TI schon gesehen?

von Michael S. (rbs_phoenix)


Lesenswert?

Meinst du den DRV8301/2 ?? Hm, den hab ich bisher noch nicht gesehen, 
wobei ich eigentlich bei denen auf der Seite gesucht habe. Wohl nicht 
gut genug.
Ist aber schon relativ groß. Zumindest Größer als Toshiba's TB6575FNG.

von Sebastian M. (sebastian_m)


Lesenswert?

ich hab den allegro A4960 schonmal verbaut, er tut soweit genau das, was 
du suchst. er bekommt eine pwm und lässt dementsprechend den motor 
drehen. du musst ihm allerdings via spi ansprechen und enablen.

von Matthias L. (limbachnet)


Lesenswert?

Nun wär' noch interessant, wo man die Steinchen denn herbekommen kann - 
Conrad, Reichelt und Segor sind in diesem Fall schon mal keine ergiebige 
Quelle...

von Michael S. (rbs_phoenix)


Lesenswert?

Digikey und Mouser hat die, bzw ein Teil von denen.

Ich will aber bei Digikey nicht ein IC für 3-5$ Bestellen und dann noch 
einen Haufen Versandkosten bezahlen. Ich hab mir ein Sample vom 
Toshiba-IC bestellt und probiere, was man da so schönes mit machen kann. 
Der Allegro würde mich auch sehr interessieren, doch naja. Reichelts 
Versandkosten sind schon das Höchste meiner Gefühle.


Sebastian M. schrieb:
> ich hab den allegro A4960 schonmal verbaut, er tut soweit genau das, was
> du suchst. er bekommt eine pwm und lässt dementsprechend den motor
> drehen. du musst ihm allerdings via spi ansprechen und enablen.

Würde gerne mal ausprobieren. Du hast nicht zufällig noch einen über, 
den du mir Verkaufen kannst/willst? ;)

von Sebastian M. (sebastian_m)


Lesenswert?

Michael Skropski schrieb:
> Würde gerne mal ausprobieren. Du hast nicht zufällig noch einen über,
> den du mir Verkaufen kannst/willst? ;)

in der tat, hier kullern noch 2 rum. ich hatte die bei digikey bestellt, 
wenn man alles andere was man so noch braucht mit dazu nimmt kommt man 
auch über die 65eu versandkosten, wenn nicht einfach auf ne 
mitbestellmöglichkeit hier im forum warten.
schick mir mal ne pn

von Ersi (cell85)


Lesenswert?

Ich würde eine Sammelbestellung starten was den Chip angeht.
Würde der sich denn für die Ansteuerung eines Quattrocopter BLDC's 
eigenen?

Viele Grüße

von Sebastian M. (sebastian_m)


Lesenswert?

Sven S. schrieb:
> Würde der sich denn für die Ansteuerung eines Quattrocopter BLDC's
> eigenen?

jap, würde er sich.

von Ersi (cell85)


Lesenswert?

Ich bestell mal ein paar zum evaluieren.

hat jemand mal einen link von farnell oder mouser ? ich finds nicht :(

von haemme (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich habe den A4960 letzte Woche auf einer Lochrasterschaltung aufgebaut 
und an einen µC angeschlossen.
Als Motor verwende ich einen 12V BLDC mit einer Nennleistung von 
240Watt.

Über die SPI initalisiere ich den A4960 zu beginn meines kleinen 
Testprogramms mit den Default-Werten.

Dann setze ich alle 15sec das Run-Bit im Run-Register und lege eine PWM 
mit 40kHz und einem Dutycycle von 50% an den PWM-Pin des Chips.
15sec Später stoppe ich die PWM (reicht eigentlich um den Motor zu 
stoppen) und setze zusätzlich noch das Run-Bit auf 0, um das 
Fault-Register am Oszilloskop auszulesen.

Der Motor startet jedoch nicht immer. Dann "zuckt" er nur kurz.
Wenn der Motor nicht startet, ist im Faultregister das letzte Bit 
gesetzt, was bedeutet "VDS fault detect on Phase C low-side.

Wenn ich den Shunt-Widerstand erhöhe, started der Motor fast immer, 
jedoch wird dadurch die Drehzahl verringert.

Das Drehmoment lässt auch zu wünschen übrig:
Wenn ich den Motor beim Starten mit 2 Fingern festhalte, "zuckt" er kurz 
und bricht dann ab.

Hat jemand eine Idee?

Die Schaltung, die ich verwende befindet sich im Anhang - ist der erste 
Entwurf...

Ich habe übrigens ein header-file für den A4960 geschrieben, falls 
jemand Interrese hat:
http://pastebin.com/Ac8RbhAD

von Ersi (cell85)


Lesenswert?

ich find nicht mal den link beim distributor zum kaufen :(

von haemme (Gast)


Lesenswert?

Den Chip hab ich übrigens bei uns in der Firma über RS bestellt.
http://at.rs-online.com/web/p/motor-treiber-ics/7532030/

Damit ich den SMD-chip auf die Lochrasterplatine verbinden kann:
http://at.rs-online.com/web/p/adapterplatinen-smd-zu-durchsteck/7288759/

von haemme (Gast)


Lesenswert?

Mir ist gerade aufgefallen, dass ich in meiner schaltung gar keine 
freilaufdioden eingebaut hab... kann es sein, dass es an dem liegt?

von Ersi (cell85)


Lesenswert?

ja

von haemme (Gast)


Lesenswert?

Könntest du das bitte etwas genauer erkären?
LG

von MaWin (Gast)


Lesenswert?

> Ich wollte mal wissen, ob es ein IC gibt, an den ich 3 Halbbrücken
> anschließen kann und diese einen (3-4 LiPo-Cell, 10A) BLDC-Motor
> steuern.

Das Problem ist, daß es unterschiedliche BLDC Motoren gibt.

Soclhe mit Sensoren (meist Hallsensoren)
und solche ohne.
Und bei denen ohne Sensoren gibt es Motoren die ohne Last anlaufen
(Propeller im Modellflugzeug, CD im Laufwerk rotieren)
und solche die unter Last anlaufen sollen (Antriebsmotor) oder gar eine 
Kraft gegenhalten sollen (damit dfer Rollstuhl nicht den Berg 
runterollt).

Diese 3 Arten stehen hier in der Reihenfolge der Schwierigkeit der 
Ansteuerung, und ein IC der einen Motortyp kann, kann nicht den anderen.

Also aufpassen bei der Auswahl.

> Der Motor startet jedoch nicht immer. Dann "zuckt" er nur kurz.

Womit man das Problem des Anlaufens unter Last sieht.

> stp28nm50

Wieder so ein Scheiss-Teil zu dem es kein Datenblatt gibt,
erst wenn man ein N anhängt.
Die eingebauten Dioden sind mit 350ns nicht so besonders
schnell, externe bringen 35ns.
Es ist halt die Frage, wie schnell deine externe Spannung
durch Leitungsinduktivitäten steigt wenn der MOSFET abschaltet.

von haemme (Gast)


Lesenswert?

also dass der motor unter last nicht anläuft kann nicht sein: der ist 
nämlich für eine ölpumpe... (60bar)
keine ahnung wiviel drehmoment das dann wirklich am motor benötigt, aber 
wahrscheinlich mehr als ich mit 2 fingern halten kann :-)

ok... was für eine diode nehme ich am besten?

von Pachelbel (Gast)


Lesenswert?

Es gäbe z.B. den ML4428. Wird zwar wohl nicht mehr hergestellt, aber 
hätte ausreichend davon (SMD). Hatte den vor Jahren mal auf Platine 
gebracht, aber irgendwas stimmte bei der Schaltung noch nicht so ganz 
(nur einer von vielleicht 5 Motoren lief problemlos an).
Bei richtigem Design vermutlich ein guter IC, und wohl nahe an dem, was 
gesucht wird.

von Georg A. (georga)


Lesenswert?

> Dann "zuckt" er nur kurz. Wenn der Motor nicht startet, ist im
> Faultregister das letzte Bit gesetzt, was bedeutet "VDS fault detect on
> Phase C low-side.

Der Chip macht wohl ein paar Sanitychecks ob die Mosfets Ok sind (kein 
Schluss und Schaltfunktion). Im wesentlichen ist das Durchschalten der 
Mosfets und Strom- und Spannungsmessung. Das sind Pulse im us-Bereich, 
damit im Ernstfall nix kaputtgeht. Es kann sein, dass das Layout da 
etwas ungünstig ist und zB. durch zuviel Induktivität bzw. Kopplung die 
Messung versaut. Dann meint der Chip zB. dass C-Low nicht leitet, weil 
der Spannungspegel (noch) zu hoch ist.

von haemme (Gast)


Lesenswert?

Im Datenblatt steht nichts von Santitychecks. Außerdem wird der Motor 
für die Rampe zuerst in eine bestimmte Position gemacht. Die Dauer, wie 
lange diese Positionierung dauert lässt sich über die Register 
einstellen. Ich habe eine relativ lange Zeit von 200ms eingestellt und 
genau so lange werden zwei Phasen aktiv, was bedeutet, dass irgendetwas 
am beginn der Rampe nicht funktioniert.

Laut Datenblatt (so wie ich es verstehe) ist diesen Bit gesetzt, wenn 
der der VDS-Monitor auf der LOW-Side einen kurzschluss auf Masse 
erkennt.

Wenn es wirklich an der Freilaufdiode liegt - was für einen Typ soll ich 
verwenden?

von ... (Gast)


Lesenswert?

haemme schrieb:
> Mir ist gerade aufgefallen, dass ich in meiner schaltung gar keine
>
> freilaufdioden eingebaut hab... kann es sein, dass es an dem liegt?

Öhm, sind die nicht schon in den MosFets vorhanden?
http://www.st.com/st-web-ui/static/active/en/resource/technical/document/datasheet/CD00271786.pdf

von KaiO (Gast)


Lesenswert?

Der Kollege hier 
(http://www.xkopter.de/de-de/entwicklung/canblc/canblcprojectblog.aspx) 
verwendet einen Infineon Brückentreiber IC (TLE7183).

von KaiO (Gast)


Lesenswert?

Ahh vergesst es. Sehe gerade der TO suchst ja was vollintegriertes ohne 
MC.

von haemme (Gast)


Lesenswert?

MaWin schrieb:
> Die eingebauten Dioden sind mit 350ns nicht so besonders
> schnell, externe bringen 35ns.

von haemme (Gast)


Lesenswert?

Hallo zusammen,

ich habe die Schaltung jetzt ein wenig geändert, wobei mein Problem 
(dass der Motor nur gezuckt hat) nicht am der Schaltung selber lag:

Wenn ich den Motor gestartet habe ist die Logikversorgung kurz 
eingebrochen und das Resultat war ein POR.

Abhilfe hat ein zusätzlicher 1µF Stütz-KerKo und viele Masseverbindungen 
(ich habe die Schaltung auf Lochraster aufgebaut...)

Jetzt dreht sich der Motor und ich kann mit dem Dutycycle der PWM die 
Geschwindigkeit einstellen.

von Ersi (cell85)


Angehängte Dateien:

Lesenswert?

Aus basis des A4960 hab ich mal einen Quattrocopter Regler in Planung 
gestellt.

Was haltet ihr davon?
Haemme könntest du vielleicht sagen wie du die schaltung drum herum 
gemacht hast?

von Anselm 6. (anselm68)


Lesenswert?

Dieser MTD6501 ist bei Digikey gelistet.
Bestellt da jemand demnächst mal ein paar? Ich würd mich mit dran hängen 
;)
Als SO-8 bitte :)
Damit könnt ich auf die Idee kommen meinen brushed Quad umzubauen, wenn 
ich einen klein genugen brushless finde.

Gruß Anselm

von sebby (Gast)


Lesenswert?

Ich hatte mir eine platte gemacht, einen lpc1768 drauf und 4 a4960, 
leider mit design Fehler. Aber prinzipiell ging es

von haemme (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Sven S.,

im Anhang mein Schaltplan...

von Marcel H. (heier1213)


Lesenswert?

Hallo alle zusammen

Meine frage wäre was macht der a4960 oder auch nicht wenn mann ihn ohne 
ein mal an SPI Konfiguriert (Standard?) zu  haben wenn man am pwm 
Eingang ein Signal anlegt.

von Sebastian M. (sebastian_m)


Lesenswert?

Marcel Heier schrieb:
> Meine frage wäre was macht der a4960 oder auch nicht wenn mann ihn ohne
> ein mal an SPI Konfiguriert (Standard?) zu  haben wenn man am pwm
> Eingang ein Signal anlegt.

nix. es muss über SPI ein bit zum starten gesetzt werden.

von Marcel H. (heier1213)


Lesenswert?

Ok danke für die schnelle Antwort kann jemand mal denn Kompletten Ablauf 
von Spannung anlegen bis das der Motor dreht?
MFG Marcel

von Ersi (cell85)


Lesenswert?

Hi  haemme , kannst du mal ein Foto von dem Board/Aufbau machen oder 
noch besser ein Video wie sich was dreht?

Viele Grüße

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.