Neuigkeiten Das Projekt Technik RoboSpatium Unterstützung Stichwortverzeichnis Download Reaktionen Spiele Gadgets Kontakt <<< P-Kanal MOSFETs schalten Verstärker ICs >>> Demo-Platine einer frei programmierbaren, doppelten H-BrückeDas Video zur Platine
Die im Video gezeigte Platine wurde mir von PCBWay zur Verfügung gestellt. Eure eigene Platine könnt ihr auf deren Seiten in Auftrag geben: Über die PlatineEin Kapitel (inklusive Video) zur Bestückung der Platine gibt's auf meinem zweiten Projekt "How Open Is This Gadget?"![]() In meiner Serie zu "Physical Computing" dürfen Kapitel zu Motorsteuerungen nicht fehlen. Diese beginnen mit dem Schalten von Transistoren und führen dann natürlich schnell zu H-Brücken. Da bei diesen Schaltkreisen die Schaltzustände von mehr als nur einem Transistor zu beachten sind, um die Funktionsweise zu verstehen, habe ich eine Demo-Platine entworfen, welche mit Hilfe von LEDs das unsichtbare sichtbar macht. ![]() Auf der Platine befinden sich zwei H-Brücken, bestehend aus je vier MOSFETs. Neben jedem dieser Transistoren befindet sich je eine rote und eine grüne LED. Ist der betreffende Transistor eingeschaltet, so leuchtet die grüne LED, ist der Transistor ausgeschaltet, die rote. ![]() Für die insgesammt 8 Transistoren werden 8 Steuerpins des Mikrocontrollers benötigt. Die gelben LEDs zeigen die Schaltzustände der als Ausgang geschalteten GPIOs. Ist der betreffende Pin auf HIGH-Level, so leuchtet die verbundene LED. Alle LEDs können über Steckbrücken vom Stromkreis getrennt werden. Änderungen am Layout![]() Das Ansteuern z. B. eines Schrittmotors funktionierte nach Erhalt und Bestücken der Platine wie vorgesehen, da ich aber nicht nur zeigen wollte "was geht", sondern vor allem "wie es geht", war das Platinen-Layout nicht perfekt. Werfen wir also einen Blick auf die Änderungen, die ich nach meinen ersten Tests implementiert habe: An dem Widerstand, der als Stromsensor konzipiert ist, fällt im normalen Betrieb eine Spannung von deutlich weniger als 5V ab, was der ATMega328 Mikrocontroller problemlos einlesen kann. Ich möchte mit der Platine allerdings auch Fälle demonstrieren, die außerhalb der normalen Betriebszustände liegen und da kann mit unter die volle Versorgungsspannung von 12V und mehr abfallen. Da der Mikrocontroller bei Anliegen dieser Spannung zerstört würde, habe ich auf der Rückseite der Platine eine 4.3V Zenerdiode und zwei weitere Widerstände an jedem der beiden Stromsensoren angelötet. ![]() Die Leiterbahnen direkt vom Stromsensor zum Mikrocontroller habe ich auf der Oberseite der Platine durchtrennt. ![]() Zwei Kabel auf der Unterseite führen nun von den Z-Dioden zu den beiden Analog-Eingängen (grün). Eine weitere Änderung betrifft die Steuerpins der Transistoren: Da nicht alle Pins des Mikrocontrollers über Hardware-Puls-Weiten-Unterstützung verfügen, habe ich zwei dieser Ausgangs-Pins getauscht, was die Programmierung deutlich vereinfacht. Auch dafür musste ich die Leiterbahnen auf der Platine durchtrennen und die Pins auf der Unterseite mit zwei weiteren Kabeln neu verbinden (weiß). ![]() Dann habe ich im Internet günstige Mini-Voltmeter entdeckt und schnell kam die Idee auf, auch diese auf der Platine zu verbauen. ![]() Um deren Kabelführung zu verbergen, habe ich 3 Löcher in die Platine gebohrt. ![]() Jedes der Mini-Voltmeter wird per Akku unabhängig von der Platine mit elektrischer Energie versorgt. Ein Akku für alle Voltmeter funktioniert nicht, da ansonsten Kurzschlüsse in den Stromkreisen der Platine verursacht würden. Die Unterseite der Platine sieht nun nicht mehr so aufgeräumt und professionell aus wie die Oberseite - hier tritt der Bastler in mir wieder voll zum Vorschein! Programmierbar soll sie sein![]() "Physical Computing" bedeutet, dass die Hardware programmierbar ist. Diese Demo-Platine verwendet einen ATmega328P Mikrocontroller. Diesen habe ich meinem Arduino UNO entnommen und auf den Sockel der Platine gesteckt. Damit der Mikrocontroller weiterhin über das UNO-Board programmiert werden kann, ohne den Chip ständig zwischen UNO-Board und Platine wechseln zu müssen, habe ich die Pins 0, 1, Reset und Masse auf vier Pins herausgeführt. ![]() Sind diese mit dem UNO-Board verbunden, kann der Mikrocontroller programmiert und es können Daten über die USB Schnittstelle ausgetauscht werden. Konstruktionsdaten![]() Die aktuelle Versionsnummer der Demoplatine lautet V1.3 Die mit KiCAD erstellten Kunstruktionsdateien gibt's als Download-Paket (4.5MB). Verwendete Bauteile:4x Q1, Q3, Q5, Q7 P-Channel MOSFETs: IRF9540N4x Q2, Q4, Q6, Q8 N-Channel MOSFETs: IRF540N 2x IC1, IC2 4-Fach Op-amp: L324N 1x LM7805 5V linear regulator 1x C1: 0.1μF 1x C2: 33μF Elektrolykondensator 2x C3, C4: 15pF 7x C5 - C11: 0.1μF 65x R1 - R65: 1.5kΩ 7x R66 - R72: 510Ω 7x R73 - R79: 100Ω 1x Potentiometer: 100kΩ 9x Schottky Diode D1-D8, D41: SB5100 8x Zener diode D9 - D16: 12V 9x Zener diode: D42 - D50: 4.3V 8x LED 5mm D25 - 32: Rot 15x LED 5mm D17 - D24, D51 - D57: Grün 8x LED 5mm D33 - D40: Gelb 56x Jumper + 2 pin male pinheaders, 2.54mm 2x 3 Pin header, male 2.54mm 4x 4 Pin header, male 2.54mm 1x 5 Pin header, male 2.54mm 2x 14-Pin Sockel 1x 28-Pin Sockel 1x 16MHz Crystal 7x Tastschalter SW1 - 7 1x Arduino UNO (mit herausnehmbarem ATmega328) Bezugsquellen für BauteileDurch den Kauf von Bauteilen über die von mir angegebenen Affiliate-Partnerlinks in der Tabelle (oder in den Bannern auf meinen Seiten) unterstützt ihr meine Projekte - vielen Dank!Die Links anzuklicken bedeutet allerdings keinen Kaufzwang - völlig ungezwungenes Stöbern ist möglich ;-) Meine frei zugängliche Bildungsplattform ohne einzukaufen mit Hilfe einer Spende oder als Patreon zu unterstützen geht natürlich auch. Vielen Dank an alle, die mir bereits einen Obolus haben zukommen lassen! Wenn ihr weitere MOSFETs, die sich gut zur Verstärkung von 5V oder 3.3V GPIOs eignen oder günstige Leistungsdioden kennt, hinterlasst bitte einen Kommentar auf dieser Seite.
<<< P-Kanal MOSFETs schalten Verstärker ICs >>> Neuigkeiten Das Projekt Technik RoboSpatium Unterstützung Stichwortverzeichnis Archiv Download Reaktionen Spiele Verweise Gadgets Kontakt Impressum |
![]() ![]() ![]() ![]() ![]() |