Wie steuere ich einen Schrittmotor mit einem Raspberry Pi?

H-Bridge - (Elektronik, Hobby, Elektrotechnik)

3 Antworten

Im Zweifel einfach Optokoppler verwenden.

Der Eingang ist eine einfache (infrarot) LED und die kann genau wie eine normale LED wie man sie aus den Beispielen am Raspberry kennt ansteuern. Der Ausgang ist ein Transistor der stärker ist als ein GPIO und völlig potentialfrei benutzt werden kann.

Bei den meisten Optokopplern muss man die Polung beachten. Es gibt aber auch Typen wo zwei Transistoren antiparallel drin sind für Wechselstrom oder unbekannte Polarität. Man kann aber auch einen normalen Optokoppler nehmen und einen Gleichrichter an den Ausgang schalten.

Also für das Motorproblem einfach die FETs per Optokoppler aus den 12V ansteuern.

Woher ich das weiß:Berufserfahrung

Bin jetzt nicht so bewandert, aber gibt es nicht extra zu diesem Zwecke das Relais? Gibt Relaisplatinen mit verschiedenen Arbeitsspannungen aber 5V Steuerspannung, wie der PI sie ausgibt.

Wenn du ein normales Relais 100x pro Sekunde ein- und ausgeschaltet bekommst, ist das schon extrem schnell.

Für einen Schrittmotor benötigt man i.d.R. eine noch höhere Geschwindigkeit als nur 100x pro Sekunde.

0
@martin7812

Kommt darauf an was du mit dem Schrittmotor anstellst.

Wenn du nur eine Ausrichtung, zb. nach der Sonne im Sinn hast, reicht ein normales Relais. Dafür gibts auch Platinen die an den Pi oder den Arduino gesteckt werden können.

Wenn du einen Schrittmotor als Antriebseinheit im Sinn hast..mh müsste man sich mal die Steuerungsendstufen von solchen Einheiten anschauen.... da reicht mein Elektronikwissen nicht aus.

0

du legst den Ausgang vom Raspbi an die Gates und Source deiner Fets und legst zwischen 12 V und deinem Verbraucher Drain und Source. Wo ist da jetzt das Problem ?

Das Problem ist der IRF 9530:

Bei einer Spannung von 0V würde der IRF 530 sperren (IRF 9530 würde durchschalten), so dass zwischen beiden MOSFETs +12V anliegt.

Bei einer Eingangsspannung von 5V würde am IRF 9530 eine Gate-Spannung von -7V anliegen, während der IRF 530 +5V anliegen hätte.

Wenn ich mir beide Datenblätter ansehe und die Diagramme richtig interprätiere, würde das bedeuten, dass zwischen beiden Transistoren immer noch um die +12V anliegen (da der IRF 9530 immer noch voll durchschaltet), während aber 3A durch den IRF 530 fließen.

Durch das Umschalten der Eingangsspannung von 0V auf 5V werden also 36A am IRF 530 verheizt, während sich die Ausgangsspannung (nämlich die an der Spule) überhaupt nicht ändert.

1
@martin7812

Heißt das also, schon in der Schaltung der H-Bridge (also innerhalb des blauen Kastens) habe ich etwas falsch gemacht? Oder lässt sich dieses Problem auch durch eine andere Ansteuerung lösen?

0
@stimmthaltnicht

Falls ich es richtig verstanden habe, sollte die H-Brücke noch korrekt funktionieren.

Du müsstest die Schaltung allerdings nicht mit 0V und 5V für Low- und High ansteuern, sondern mit 0V und 12V.

In der Praxis verwendet man übrigens keine CMOS-Schaltung (so wie du) für größere Ströme, sondern nur N-Kanal-MOSFETS und steuert die High-Side-MOSFETS über spezielle Treiber-ICs an.

0
@martin7812

Nachtrag:

Ich würde vielleicht folgendes versuchen:

Den blauen Kasten so lassen, wie er ist.

Die 12V als +12V und 0V ggü. Ground ausführen (also rechter Kontakt auf Ground, linker Kontakt auf +12V) und nicht +/-6V o.Ä.

Die Gates jeweils mit einem Widerstand nach +12V verbinden.

Die Gates über einen NPN-Transistor nach Masse verbinden.

Durch das Ansteuern des NPN-Transistors kann man jetzt eine Spannungsänderung an den Gates von +12V nach 0V erreichen.

Die Schaltung vorher mit einem Simulationsprogramm (z.B. LTSpice) testen, bevor sie gleich beim ersten Einschalten abraucht!

1
@martin7812

Vielen Dank!

Das hört sich nach einem vernünftigen Vorschlag an. Sobald ich Zeit dazu finde, werd ich mal versuchen das durchzusimulieren, bei Erfolg nachzubauen und dann hier davon berichten. :)

0

Die 5 V (bzw. je nach Pin auch 3.3 V ) des Raspberry Pi sind in Relation zum Ground zu sehen. Die 12V Quelle hingegen hat kein Ground, sondern einen Pluspol und einen Minuspol. Um die MOSFETs richtig anzusteuern wird also eine Spannung zwischen Gate und Source benötigt, die in Relation zum Minuspol der 12V Quelle 5V (bzw. 3.3 V) beträgt, also nicht in Relation zum Ground.

Vielleicht habe ich das aber auch nicht ganz richtig verstanden. Ich habe noch keine große Erfahrung mit Elektronik und taste mich gerade erst langsam an das Thema heran.

Vielen Dank schoneinmal für die Antwort :)

0
@stimmthaltnicht

Das ist schon korrekt - du musst halt ein isoliertes Netzteil haben.

Die Spannungsangaben aus meinem Kommentar gehen von +12V/0V gegenüber Ground aus.

Falls die 12V z.B. +/-6V in Relation zum Ground sind, stimmen die Angaben zwar nicht mehr, aber das Problem bleibt erhalten:

Der Spannungsunterschied zwischen den Zuständen "N-Kanal-MOSFET sperrt" und "P-Kanal-MOSFET sperrt" ist deutlich größer als die 5V bzw. 3.3V des RPI.

0