Forum: Mikrocontroller und Digitale Elektronik Wie komme ich von einer H-Brücke auf SPI


von Matthias P. (matthias_p993)


Lesenswert?

Hallo Leute,
ich möchte aus zwei Infineon BTN8962TA eine H-Brücke bauen und das ganze 
über SPI steuern.

Gibt es zufällig eine Art Motortreiber-Controller, der auf der einen 
Seite per SPI ansprechbar ist und meinem Raspberry Pi 4 vielleicht 
gleich den Motorstrom durch die Brücken auf den SPI liefert?

Aktuell könnte ich GPIOs einfach auf INH und IN der Halbbrücken legen 
und sie dann schon ansteuern. Der Reaspberry würde alles wie PWM etc. 
machen. Allerdings müsste ich dann für die Isense-Ausgänge der 
Halbbrücken noch einen ADC an den Raspberry Pi anbinden. Das würde ich 
mir gerne sparen.

Gibt es irgendeinen Motortreiber, der die Halbbrücken ansteuert, die 
Ströme gleich digitalisiert und auf dem SPI schreibt?

Danke und LG,
Matse

von c-hater (Gast)


Lesenswert?

Matthias P. schrieb:

> ich möchte aus zwei Infineon BTN8962TA eine H-Brücke bauen und das ganze
> über SPI steuern.

Also, ich weiß nicht, wie du jetzt gerade auf konkret diese Chips 
kommst, aber ich möchte dich darauf hinweisen, dass Infineon noch sehr 
viel mehr Kram anbietet.

> Gibt es zufällig eine Art Motortreiber-Controller

Ja, z.B. sowas haben die in ziemlich vielen Varianten.

> der auf der einen
> Seite per SPI ansprechbar ist

Meist UART. Ob es auch welche mit SPI gibt, müsste ich auch erst 
recherchieren. Deswegen überlasse ich aber gerne dir selber.

von Thorsten O. (Firma: mechapro GmbH) (ostermann) Benutzerseite


Lesenswert?

Ich musste deine Frage zweimal lesen, um halbwegs zu verstehen, was du 
willst. In der Regel ist der µC der Master und der Motorcontroller der 
Slave. Der Motorcontroller "schreibt" als nichts irgendwohin, so lange 
er nicht danach gefragt wird. Und ja, es gibt diverse Motorcontroller 
mit SPI-Interface. Nicht nur von Infineon, auch von TI, Allgero, 
Trinamic, ST,...

Mit freundlichen Grüßen
Thorsten Ostermann

von Matthias P. (matthias_p993)


Lesenswert?

Hallo Ihr beiden,
danke für die Antworten.

Also ich habe das Problem dass ich eine Gleichstrommaschine mit richtig 
Leistung regeln will. Wir haben die Maschine vermessen, im Stillstand 
nimmt sie sich bei 18V 65A. Und das ist für die ganzen integrierten 
Treiber zu viel.

Der BTN8962TA hat genügend Leistungsreserven hierfür und schon 
µC-geeignete Eingänge. Er ist auch gegen Über-/Unterstrom/-spannung/ und 
Überhitzung abgesichert und schaltet die Last ab. Soweit alles super.

Nur:
Er gibt den Motorstrom duch das Halb-H in Form einen Sense-Stromes 
Isense über einen Pin aus. Diesen müsste ich über einen Widerstand erst 
mit einem AD-Wandler messen um mit meinem Raspberry die ganze 
Notabschalter zu realisieren. Die Mechanik, die an dem Motor hängt, die 
hat Anschläge, es ist eine Getriebekonstruktion. Das bedeutet, dass an 
diesem Anschlag der Motorstrom tatsächlich auf das Niveau ansteigt. 
Damit muss ich dann im Raspberry händisch entscheiden, ob ein 
Endanschlag oder ein Problem vorliegt und die Energie abschalten. Der 
Motor ist EMV-entstört, da Automotive. Die Entstörung überlebt den 
Motorstillstand aber wenige Sekunden bevor sie abraucht. Ich muss also 
nach einer Sekunde stromgemessenen Endanschlag abschalten.

Meine Frage ist, ob es einen AdHoc-Controller oben drauf gibt, dem ich 
quasi nur digital per Datentelegramm PWM und PWM-Frequenz vorgebe und 
die Drehrichtung bestimme und dann gleich in digitaler Form den 
Motorstrom zurückerhalte und nichts mehr digitalisieren muss...

Wenn einer von Euch einen Baustein kennt, nennt mir bitte einen Namen. 
Die Weißheit, dass es unter den Millionen Bausteinen einen geben kann, 
die nutzt mir gar nichts. Ich fand keinen passenden Baustein...

Danke und LG,
Matthias

von uC (Gast)


Lesenswert?

Schau dir von Infineon mal die TLE956x Baureihe an.
Da sind die Mosfet's zwar extern und kannst die Leistungsbrücken 
komplett über SPI steuern. Da sind zwar PWM Eingänge dran, müssen aber 
nicht genutzt werden.
Eine integrierte Schutzfunktion mithilfe von drain-source Monitoring ist 
auch drinnen

https://www.infineon.com/dgdl/Infineon-BLDC_Shield_TLE956x-UserManual-v01_00-EN.pdf?fileId=5546d46272e49d2a0173240cd6a32199

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Matthias P. schrieb:
> Der BTN8962TA

> Nur:
> Er gibt den Motorstrom duch das Halb-H in Form einen Sense-Stromes
> Isense über einen Pin aus.

Meine Erfahrung zeigt, dass dieser Sense-Strom nur als sehr grober 
Schätzwert taugt, d.h. für eine Notabschaltung o.ä. geeignet ist, aber 
nicht für die halbwegs präzise Messung des High-Side-Ausgangsstroms. Die 
Abhängigkeit von Temperatur und vor allem Versorgungsspannung sind bei 
dieser Halbbrücke doch recht hoch. Konservativ geschätzt bekommt man ca. 
30% Toleranz, wobei der auch der Nullpunkt nicht allzu genau ist und 
somit für die Messung gernger Ströme nichts taugt. Mit einem 1 mR-Shunt 
und AD8417 zur birektionalen Strommessung am Brückenausgang habe ich 
gute Erfahrungen gemacht.

von MaWin (Gast)


Lesenswert?

Die Notabschaltung von einem Raspberry abhängig zu machen finde ich sehr 
mutig...

von Peter D. (peda)


Lesenswert?

Mit SPI kann man die Trinamic Chips steuern, z.B. TMC429, TMC260.

von Frank K. (fchk)


Lesenswert?

Matthias P. schrieb:
> Notabschalter zu realisieren. Die Mechanik, die an dem Motor hängt, die
> hat Anschläge, es ist eine Getriebekonstruktion. Das bedeutet, dass an
> diesem Anschlag der Motorstrom tatsächlich auf das Niveau ansteigt.

Dein Konzept ist für die Tonne. Du willst funktionale Sicherheit, die 
ein Pi nicht liefern kann.

An die Anschläge gehören Endschalter, den den Motor hardwaremäßig ohne 
Zutun einer Prozessors abschalten. Nur so ist das ganze eigensicher. Die 
Abschaltung hat so zu erfolgen, dass der Motor in der Gegenrichtung 
anlaufen kann.

Wenn Du Isense als Sicherheitsabschaltung verwenden willst, dann nimmst 
Du einen DAC, der den Schwellwert vorgibt, und einen Komparator (z.B. 
TL391), der Isense mit dem Schwellwert vergleicht und im Fehlerfall 
sicher und deterministisch abschaltet.

fchk

von Flip B. (frickelfreak)


Lesenswert?

Kauf dir ein Odrive.

von W.S. (Gast)


Lesenswert?

MaWin schrieb:
> Die Notabschaltung von einem Raspberry abhängig zu machen finde ich sehr
> mutig...

Kann man noch steigern: per WLAN über's Internet und von dort aus zum 
Aktivator. Nennt man IoT.

W.S.

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.