Bezeichnung auf den Diagrammen von Funkkomponenten. Niederspannungs-H-Brücke mit Feldeffekttransistoren IRF7307 Funktionsweise einer Schrittmotor-H-Brücke

In diesem Artikel werfen wir einen genaueren Blick auf die Funktionsweise der H-Brücke, die zur Steuerung von Motoren verwendet wird. Gleichstrom mit niedriger Versorgungsspannung. Als Beispiel verwenden wir den integrierten Schaltkreis L298, der bei Robotik-Enthusiasten beliebt ist. Aber zuerst vom Einfachen zum Komplexen.

H-Brücke bei mechanischen Schaltern

Die Drehrichtung der Welle eines Gleichstrommotors hängt von der Polarität der Stromversorgung ab. Um diese Polarität zu ändern, ohne die Stromversorgung erneut anzuschließen, können wir 4 Schalter verwenden, wie in der folgenden Abbildung gezeigt.

Diese Art der Verbindung wird als „H-Brücke“ bezeichnet – aufgrund der Form der Schaltung, die dem Buchstaben „H“ ähnelt. Dieser Motorschaltplan hat eine sehr interessante Eigenschaften was wir in diesem Artikel beschreiben werden.

Wenn wir den oberen linken und unteren rechten Schalter schließen, wird der Motor rechts an Minus und links an Plus angeschlossen. Dadurch dreht es sich in eine Richtung (der aktuelle Pfad wird durch rote Linien und Pfeile angezeigt).

Wenn wir den Schalter oben rechts und unten links schließen, wird der Motor rechts an Plus und links an Minus angeschlossen. In diesem Fall dreht sich der Motor in die entgegengesetzte Richtung.

Diese Steuerschaltung hat einen wesentlichen Nachteil: Wenn beide Schalter links oder beide Schalter rechts gleichzeitig geschlossen werden, kommt es zu einem Kurzschluss der Stromversorgung, daher muss diese Situation vermieden werden.

Das Interessante an der folgenden Schaltung ist, dass wir, indem wir nur die beiden oberen oder unteren Schalter verwenden, die Stromversorgung vom Motor unterbrechen, was dazu führt, dass der Motor stoppt.

Natürlich ist eine H-Brücke, die vollständig aus Kettenschaltungen besteht, nicht sehr vielseitig. Wir haben dieses Beispiel nur gegeben, um das Funktionsprinzip der H-Brücke auf einfache und anschauliche Weise zu erläutern.

Wenn wir jedoch die mechanischen Schalter durch elektronische Schlüssel ersetzen, wird das Design interessanter, da in diesem Fall die elektronischen Schlüssel durch Logikschaltungen, beispielsweise einen Mikrocontroller, aktiviert werden können.

Transistorisierte H-Brücke

Um eine elektronische H-Brücke auf Transistoren zu erstellen, können Sie sowohl NPN- als auch PNP-Transistoren verwenden. Es können auch Feldeffekttransistoren verwendet werden. Wir werden uns die NPN-Transistorversion ansehen, da dies die Lösung ist, die im L298-Chip verwendet wird, den wir später sehen werden.

Ein Transistor ist eine elektronische Komponente, deren Funktionsweise komplex zu beschreiben sein kann, aber im Fall unserer H-Brücke ist ihre Funktionsweise leicht zu analysieren, da sie nur in zwei Zuständen arbeitet (Abschaltung und Sättigung).

Wir können uns einen Transistor einfach als einen elektronischen Schalter vorstellen, der geschlossen ist, wenn die Basis (b) 0 V hat, und geöffnet ist, wenn die Basis positiv ist.

Okay, wir haben die mechanischen Schalter durch Transistorschalter ersetzt. Jetzt brauchen wir ein Steuergerät, das unsere vier Transistoren steuert. Dazu verwenden wir logische Elemente vom Typ „AND“.

H-Brücken-Steuerlogik

Ein UND-Gatter besteht aus integrierten elektronischen Komponenten und wir können es uns, ohne zu wissen, was sich darin befindet, als eine Art „Black Box“ vorstellen, die zwei Eingänge und einen Ausgang hat. Die Wahrheitstabelle zeigt uns 4 mögliche Kombinationen von Eingangssignalen und ihrem entsprechenden Ausgangssignal.

Wir sehen, dass nur wenn beide Eingänge ein positives Signal (logische Eins) haben, am Ausgang eine logische Eins erscheint. In allen anderen Fällen ist der Ausgang logisch Null (0 V).

Zusätzlich zu diesem UND-Gatter benötigt unsere H-Brücke eine andere Art von UND-Gatter, bei dem wir an einem seiner Eingänge einen kleinen Kreis sehen können. Dies ist immer noch das gleiche logische Element „AND“, jedoch mit einem invertierenden (invertierten) Eingang. In diesem Fall wird die Wahrheitstabelle etwas anders sein.

Wenn wir diese beiden Arten von „AND“-Elementen mit zwei kombinieren elektronische Schalter Wie in der folgenden Abbildung dargestellt, kann der Zustand des Ausgangs „X“ drei Optionen haben: offen, positiv oder negativ. Dies hängt vom logischen Zustand der beiden Eingänge ab. Diese Art von Ausgang ist als „Three-State-Ausgang“ bekannt und wird häufig in der digitalen Elektronik verwendet.

Sehen wir uns nun an, wie unser Beispiel funktionieren wird. Wenn der ENA-Eingang (Aktivierung) 0 V beträgt, ist der X-Ausgang unabhängig vom Zustand des A-Eingangs offen, da die Ausgänge beider UND-Gatter 0 V betragen und daher auch die beiden Schalter offen sind.

Wenn wir Spannung an den ENA-Eingang anlegen, wird einer der beiden Schalter abhängig vom Signal am Eingang „A“ geschlossen: Ein hoher Pegel am Eingang „A“ verbindet den Ausgang „X“ mit Plus, ein niedriger Pegel am Eingang „ A verbindet den Ausgang „X“ mit der Minus-Stromversorgung.

So haben wir einen der beiden Zweige der „H“-Brücke gebaut. Betrachten wir nun den Betrieb einer Vollbrücke.

Betrieb einer kompletten H-Brücke

Durch Hinzufügen einer identischen Schaltung für den zweiten Zweig der H-Brücke erhalten wir Vollbrücke, an dem Sie den Motor bereits anschließen können.

Beachten Sie, dass der Freigabeeingang (ENA) mit beiden Zweigen der Brücke verbunden ist, während die anderen beiden Eingänge (In1 und In2) unabhängig sind. Aus Gründen der Übersichtlichkeit haben wir die Schutzwiderstände an den Basen der Transistoren nicht angegeben.

Wenn ENA 0 V beträgt, liegen alle Ausgänge des Logikgatters ebenfalls auf 0 V, und daher sind die Transistoren geschlossen und der Motor dreht sich nicht. Wenn am ENA-Eingang ein positives Signal anliegt und die Eingänge IN1 und IN2 0V sind, werden die Elemente „B“ und „D“ aktiviert. In diesem Zustand sind beide Motoreingänge geerdet und der Motor dreht sich auch nicht.

Wenn wir ein positives Signal an IN1 anlegen, während IN2 0 V beträgt, wird das Logikelement „A“ zusammen mit dem Element „D“ aktiviert und „B“ und „C“ werden deaktiviert. Dadurch erhält der Motor Plusstrom von dem an Element „A“ angeschlossenen Transistor und Minusstrom von dem an Element „D“ angeschlossenen Transistor. Der Motor beginnt sich in eine Richtung zu drehen.

Wenn wir die Signale an den Eingängen IN1 und IN2 invertieren (umdrehen), dann werden in diesem Fall die Logikelemente „C“ und „B“ aktiviert und „A“ und „D“ deaktiviert. Das Ergebnis ist, dass der Motor positive Energie von dem an „C“ angeschlossenen Transistor und negative Energie von dem an „B“ angeschlossenen Transistor erhält. Der Motor beginnt sich in die entgegengesetzte Richtung zu drehen.

Wenn an den Eingängen IN1 und IN2 ein positives Signal anliegt, sind die aktiven Elemente mit den entsprechenden Transistoren „A“ und „C“, während beide Motorausgänge mit dem Pluspol der Stromversorgung verbunden sind.

H-Brücke am Treiber L298

Schauen wir uns nun die Funktionsweise des L298-Chips an. Die Abbildung zeigt ein Blockdiagramm des L298-Treibers, der über zwei identische H-Brücken verfügt und die Steuerung von zwei Gleichstrommotoren (DC) ermöglicht.

Wie wir sehen können, ist der negative Teil der Brücken nicht direkt mit Masse verbunden, sondern liegt an Pin 1 für die Brücke links und an Pin 15 für die Brücke rechts an. Durch Hinzufügen eines sehr kleinen Widerstands (Shunt) zwischen diesen Pins und Masse (RSA und RSB) können wir den Stromverbrauch jeder verwendeten Brücke messen elektronische Schaltung, der den Spannungsabfall an den Punkten „SENS A“ und „SENS B“ messen kann.

Dies kann nützlich sein, um den Motorstrom zu regeln (mithilfe von PWM) oder einfach ein Schutzsystem zu aktivieren, falls der Motor ausfällt (in diesem Fall erhöht sich sein Stromverbrauch erheblich).

Schutzdiode für induktive Lasten

Jeder Motor enthält eine Drahtwicklung (Spule) und daher kommt es bei der Steuerung des Motors an seinen Anschlüssen zu einem Anstieg der Selbstinduktions-EMK, der die Brückentransistoren beschädigen kann.

Um dieses Problem zu lösen, können Sie schnelle Dioden vom Typ Shottky oder, wenn unsere Motoren nicht besonders leistungsstark sind, einfach normale Gleichrichterdioden wie 1N4007 verwenden. Es ist zu beachten, dass die Brückenausgänge während der Motorsteuerung ihre Polarität ändern, sodass vier Dioden anstelle einer verwendet werden müssen.

Im Artikel erfahren Sie, welche Funkkomponenten es gibt. Die Bezeichnungen im Diagramm nach GOST werden überprüft. Sie müssen mit den gebräuchlichsten beginnen – Widerständen und Kondensatoren.

Um eine Struktur zusammenzubauen, müssen Sie wissen, wie Funkkomponenten in der Realität aussehen und wie sie auf der Struktur bezeichnet werden elektrische Diagramme. Es gibt viele Funkkomponenten – Transistoren, Kondensatoren, Widerstände, Dioden usw.

Kondensatoren

Kondensatoren sind Teile, die ausnahmslos in jeder Bauform vorkommen. Normalerweise sind die einfachsten Kondensatoren zwei Metallplatten. Und Luft fungiert als dielektrische Komponente. Ich erinnere mich sofort an meinen Physikunterricht in der Schule, als wir uns mit dem Thema Kondensatoren befassten. Das Modell bestand aus zwei riesigen flachen runden Eisenstücken. Sie wurden einander näher gebracht, dann weiter weg. Und Messungen wurden in jeder Position durchgeführt. Es ist erwähnenswert, dass Glimmer anstelle von Luft sowie jedes andere Material verwendet werden kann, das nicht leitet elektrischer Strom. Die Bezeichnungen von Funkkomponenten in importierten Schaltplänen weichen von den in unserem Land übernommenen GOST-Standards ab.

Bitte beachten Sie, dass normale Kondensatoren keinen Gleichstrom führen. Andererseits passiert es sie ohne besondere Schwierigkeiten. Aufgrund dieser Eigenschaft wird ein Kondensator nur dort eingebaut, wo es erforderlich ist, den Wechselanteil vom Gleichstrom abzutrennen. Daher können wir eine Ersatzschaltung erstellen (unter Verwendung des Kirchhoff-Theorems):

  1. Beim Betrieb mit Wechselstrom wird der Kondensator durch ein Stück Leiter ohne Widerstand ersetzt.
  2. Beim Betrieb in einem Gleichstromkreis wird der Kondensator (nein, nicht durch Kapazität!) durch einen Widerstand ersetzt.

Das Hauptmerkmal eines Kondensators ist seine elektrische Kapazität. Die Einheit der Kapazität ist Farad. Es ist sehr groß. In der Praxis werden in der Regel solche verwendet, die in Mikrofarad, Nanofarad, Mikrofarad gemessen werden. In den Diagrammen ist der Kondensator in Form von zwei parallelen Leitungen dargestellt, von denen Abgriffe vorhanden sind.

Variable Kondensatoren

Es gibt auch einen Gerätetyp, bei dem sich die Kapazität ändert (in diesem Fall aufgrund der Tatsache, dass bewegliche Platten vorhanden sind). Die Kapazität hängt von der Größe der Platte (in der Formel ist S ihre Fläche) sowie vom Abstand zwischen den Elektroden ab. Bei einem variablen Kondensator mit Luftdielektrikum ist es beispielsweise aufgrund des Vorhandenseins eines beweglichen Teils möglich, die Fläche schnell zu ändern. Folglich wird sich auch die Kapazität ändern. Die Bezeichnung von Funkkomponenten auf ausländischen Diagrammen ist jedoch etwas anders. Auf ihnen ist beispielsweise ein Widerstand als gestrichelte Kurve dargestellt.

Permanentkondensatoren

Diese Elemente unterscheiden sich sowohl im Design als auch in den Materialien, aus denen sie hergestellt sind. Die gängigsten Arten von Dielektrika lassen sich unterscheiden:

  1. Luft.
  2. Glimmer.
  3. Keramik.

Dies gilt jedoch ausschließlich für unpolare Elemente. Es gibt auch Elektrolytkondensatoren (polar). Es sind diese Elemente, die sehr große Kapazitäten haben – von Zehntel Mikrofarad bis zu mehreren Tausend. Zusätzlich zur Kapazität haben solche Elemente einen weiteren Parameter – den maximalen Spannungswert, bei dem ihre Verwendung zulässig ist. Diese Parameter sind in den Schaltplänen und auf den Kondensatorgehäusen vermerkt.

auf den Diagrammen

Es ist zu beachten, dass bei der Verwendung von Trimmer- oder Drehkondensatoren zwei Werte angezeigt werden – die minimale und die maximale Kapazität. Tatsächlich kann man auf dem Gehäuse immer einen bestimmten Bereich finden, in dem sich die Kapazität ändert, wenn man die Achse des Geräts von einer Extremposition in eine andere dreht.

Nehmen wir an, wir haben einen variablen Kondensator mit einer Kapazität von 9-240 (Standardmessung in Picofarad). Dies bedeutet, dass bei minimaler Plattenüberlappung die Kapazität 9 pF beträgt. Und maximal - 240 pF. Um die technische Dokumentation richtig lesen zu können, lohnt es sich, die Bezeichnung der Funkkomponenten im Diagramm und deren Namen genauer zu betrachten.

Anschluss von Kondensatoren

Wir können sofort drei Arten (es gibt einfach so viele) Kombinationen von Elementen unterscheiden:

  1. Sequentiell- Die Gesamtkapazität der gesamten Kette lässt sich ganz einfach berechnen. In diesem Fall ist sie gleich dem Produkt aller Kapazitäten der Elemente dividiert durch ihre Summe.
  2. Parallel- In diesem Fall ist die Berechnung der Gesamtkapazität noch einfacher. Es ist notwendig, die Kapazitäten aller Kondensatoren in der Kette zu addieren.
  3. Gemischt- In diesem Fall ist das Diagramm in mehrere Teile unterteilt. Wir können sagen, dass es vereinfacht ist – ein Teil enthält nur parallel geschaltete Elemente, der zweite – nur in Reihe geschaltete Elemente.

Und das ist einfach so allgemeine InformationenÜber Kondensatoren kann man tatsächlich viel darüber reden und interessante Experimente als Beispiele anführen.

Widerstände: allgemeine Informationen

Auch diese Elemente sind in jeder Bauform zu finden – sei es in einem Funkempfänger oder in einer Steuerschaltung auf einem Mikrocontroller. Dabei handelt es sich um ein Porzellanrohr, auf dessen Außenseite ein dünner Film aus Metall (Kohlenstoff – insbesondere Ruß) aufgesprüht ist. Sie können jedoch auch Graphit auftragen – der Effekt wird ähnlich sein. Wenn Widerstände einen sehr geringen Widerstand und eine hohe Leistung haben, werden sie als leitfähige Schicht verwendet

Das Hauptmerkmal eines Widerstands ist der Widerstand. Wird in Stromkreisen verwendet, um den erforderlichen Stromwert in bestimmten Stromkreisen einzustellen. Im Physikunterricht wurde ein Vergleich mit einem mit Wasser gefüllten Fass durchgeführt: Wenn man den Durchmesser des Rohrs verändert, kann man die Geschwindigkeit des Strahls anpassen. Es ist zu beachten, dass der Widerstand von der Dicke der leitenden Schicht abhängt. Je dünner diese Schicht ist, desto höher ist der Widerstand. In diesem Fall hängen die Symbole der Funkkomponenten in den Diagrammen nicht von der Größe des Elements ab.

Festwiderstände

Bei solchen Elementen lassen sich die häufigsten Typen unterscheiden:

  1. Metallisierter, hitzebeständiger Lack – abgekürzt MLT.
  2. Feuchtigkeitsbeständiger Widerstand - VS.
  3. Carbonlackiert kleinformatig - ULM.

Widerstände haben zwei Hauptparameter – Leistung und Widerstand. Der letzte Parameter wird in Ohm gemessen. Da diese Maßeinheit jedoch extrem klein ist, findet man in der Praxis häufiger Elemente, deren Widerstand in Megaohm und Kiloohm gemessen wird. Die Leistung wird ausschließlich in Watt gemessen. Darüber hinaus hängen die Abmessungen des Elements von der Leistung ab. Je größer es ist, desto größer ist das Element. Und nun zu der Bezeichnung, die es für Funkkomponenten gibt. Auf den Diagrammen importierter und inländischer Geräte können alle Elemente unterschiedlich bezeichnet werden.

In Haushaltsstromkreisen ist ein Widerstand ein kleines Rechteck mit einem Seitenverhältnis von 1:3; seine Parameter sind entweder auf der Seite (bei vertikaler Anordnung des Elements) oder oben (bei horizontaler Anordnung) angegeben. Zuerst wird der lateinische Buchstabe R angegeben, dann die Seriennummer des Widerstands im Stromkreis.

Variabler Widerstand (Potentiometer)

Konstantwiderstände haben nur zwei Anschlüsse. Aber es gibt drei Variablen. Auf den Schaltplänen und auf dem Elementkörper ist der Widerstand zwischen den beiden äußersten Kontakten angegeben. Aber zwischen der Mitte und einem der Extreme ändert sich der Widerstand abhängig von der Position der Widerstandsachse. Wenn Sie außerdem zwei Ohmmeter anschließen, können Sie sehen, wie sich der Messwert des einen nach unten und des zweiten nach oben ändert. Sie müssen wissen, wie man elektronische Schaltpläne liest. Es ist auch hilfreich, die Bezeichnungen der Funkkomponenten zu kennen.

Der Gesamtwiderstand (zwischen den äußersten Anschlüssen) bleibt unverändert. Variable Widerstände werden zur Steuerung der Verstärkung verwendet (Sie verwenden sie, um die Lautstärke bei Radios und Fernsehern zu ändern). Darüber hinaus werden variable Widerstände in Autos aktiv eingesetzt. Dabei handelt es sich um Kraftstoffstandsensoren, Drehzahlregler für Elektromotoren und Helligkeitsregler für die Beleuchtung.

Anschluss von Widerständen

In diesem Fall ist das Bild völlig entgegengesetzt zu dem von Kondensatoren:

  1. Serielle Verbindung- der Widerstand aller Elemente im Stromkreis addiert sich.
  2. Parallelschaltung- Das Produkt der Widerstände wird durch die Summe dividiert.
  3. Gemischt- Die gesamte Schaltung wird in kleinere Ketten aufgeteilt und Schritt für Schritt berechnet.

Damit können Sie die Überprüfung der Widerstände abschließen und mit der Beschreibung der interessantesten Elemente beginnen – Halbleiterelemente (die Bezeichnungen der Funkkomponenten in den Diagrammen, GOST für UGO, werden unten erläutert).

Halbleiter

Dies ist der größte Teil aller Funkelemente, da zu den Halbleitern nicht nur Zenerdioden, Transistoren, Dioden, sondern auch Varicaps, Variconds, Thyristoren, Triacs, Mikroschaltungen usw. gehören. Ja, Mikroschaltungen sind ein Kristall, auf dem es eine große Vielfalt geben kann Radioelemente – Kondensatoren, Widerstände und pn-Übergänge.

Wie Sie wissen, gibt es Leiter (z. B. Metalle) und Dielektrika (Holz, Kunststoff, Stoffe). Die Bezeichnungen der Funkkomponenten im Diagramm können unterschiedlich sein (ein Dreieck ist höchstwahrscheinlich eine Diode oder eine Zenerdiode). Es ist jedoch anzumerken, dass ein Dreieck ohne zusätzliche Elemente in der Mikroprozessortechnologie eine logische Grundlage darstellt.

Diese Materialien sind unabhängig von ihrem Aggregatzustand entweder stromleitend oder nicht. Es gibt aber auch Halbleiter, deren Eigenschaften sich abhängig von bestimmten Bedingungen ändern. Dabei handelt es sich um Materialien wie Silizium und Germanium. Glas kann übrigens teilweise auch zu den Halbleitern gezählt werden – im Normalzustand leitet es keinen Strom, im erhitzten Zustand ist das Bild jedoch genau umgekehrt.

Dioden und Zenerdioden

Eine Halbleiterdiode hat nur zwei Elektroden: eine Kathode (negativ) und eine Anode (positiv). Doch was zeichnet diese Funkkomponente aus? Die Bezeichnungen können Sie dem Diagramm oben entnehmen. Sie schließen also das Netzteil mit dem Pluspol an die Anode und dem Minuspol an der Kathode an. In diesem Fall fließt elektrischer Strom von einer Elektrode zur anderen. Es ist erwähnenswert, dass das Element in diesem Fall einen äußerst geringen Widerstand aufweist. Jetzt können Sie ein Experiment durchführen und die Batterie umgekehrt anschließen. Dann erhöht sich der Widerstand gegen den Strom um ein Vielfaches und er hört auf zu fließen. Und wenn Sie es über eine Diode senden Wechselstrom, dann ist die Ausgabe konstant (allerdings mit kleinen Wellen). Bei Verwendung eines Brückenschaltkreises erhält man zwei Halbwellen (positiv).

Zenerdioden haben wie Dioden zwei Elektroden – eine Kathode und eine Anode. Bei direktem Anschluss funktioniert dieses Element genauso wie die oben besprochene Diode. Aber wenn man den Strom in die entgegengesetzte Richtung dreht, sieht man ein sehr interessantes Bild. Zunächst leitet die Zenerdiode keinen Strom durch sich selbst. Wenn die Spannung jedoch einen bestimmten Wert erreicht, kommt es zum Durchschlag und das Element leitet Strom. Dies ist die Stabilisierungsspannung. Eine sehr gute Eigenschaft, dank der es möglich ist, eine stabile Spannung in Stromkreisen zu erreichen und selbst kleinste Schwankungen vollständig zu beseitigen. Die Bezeichnung der Funkkomponenten in den Diagrammen erfolgt in Form eines Dreiecks, an dessen Spitze sich eine Linie senkrecht zur Höhe befindet.

Transistoren

Wenn Dioden und Zenerdioden manchmal nicht einmal in Designs zu finden sind, dann findet man Transistoren in jedem (außer Transistoren haben drei Elektroden:

  1. Basis (abgekürzt als „B“).
  2. Sammler (K).
  3. Emitter (E).

Transistoren können in verschiedenen Modi betrieben werden, am häufigsten werden sie jedoch im Verstärkungs- und Schaltmodus (wie ein Schalter) verwendet. Ein Vergleich kann mit einem Megaphon gemacht werden – sie schrien in die Basis, und eine verstärkte Stimme flog aus dem Kollektor. Und halten Sie den Emitter mit Ihrer Hand – das ist der Körper. Das Hauptmerkmal von Transistoren ist die Verstärkung (Verhältnis von Kollektor- und Basisstrom). Dieser Parameter ist neben vielen anderen für diese Funkkomponente grundlegend. Die Symbole auf dem Diagramm für einen Transistor sind eine vertikale Linie und zwei Linien, die schräg darauf zulaufen. Es gibt mehrere gängige Transistortypen:

  1. Polar.
  2. Bipolar.
  3. Feld.

Es gibt auch Transistorbaugruppen, die aus mehreren Verstärkungselementen bestehen. Dies sind die am häufigsten vorkommenden Funkkomponenten. Die Bezeichnungen im Diagramm wurden im Artikel besprochen.

Schauen wir uns einen Elektromotortreiber an, der auf Transistoren und der L298-Mikroschaltung basiert, und verstehen wir das Funktionsprinzip der H-Brücke. Wir lernen die Funktionen des Anschlusses von L298-Treibern an verschiedene Motoren und Netzteile kennen und führen einfache Experimente mit Schrittmotoren und Gleichstrommotoren durch. Anbindung an Raspberry Pi und einfache Programme zum Test der Treibersteuerung.

Was ist eine H-Brücke?

Beim Entwurf von Werkzeugmaschinen, Robotern und anderen automatisierten Geräten ist es erforderlich, einen Gleichstrommotor oder Schrittmotorspulen zu steuern. Um die Motorwicklung steuern und die Welle eindrehen zu können verschiedene Seiten, ist es notwendig, die Umschaltung mit Polaritätsumkehr durchzuführen. Zu diesem Zweck wird die sogenannte „H-Brücke“ verwendet.

Warum dieser Name? - weil die Schaltung zum Einschalten des Motors und der Schalter zum Schalten dem lateinischen Buchstaben H ähnelt. Die Funktionsprinzipien der H-Brücke sind in der folgenden Abbildung dargestellt.

Reis. 1. Funktionsweise der H-Brücke, das Prinzip des Umschaltens des Motors für die Drehung in verschiedene Richtungen.

Wie Sie sehen, können wir mit Hilfe von 4 Schaltern den Motor mit unterschiedlichen Polaritäten an die Stromquelle anschließen, wodurch sich seine Welle in verschiedene Richtungen dreht. Die Schalter können durch Relais oder durch leistungsstarke elektronische Schalter mit Transistoren ersetzt werden.

Es ist wichtig zu beachten, dass es NICHT möglich ist, zwei Schalter auf einer Seite der H-Brücke kurzzuschließen, da dies zu einem Kurzschluss führt. Beim Entwurf einer Brückenschaltung müssen Sie diese Regel in die Logik integrieren und damit den Schutz umsetzen.

Schaltung einer einfachen H-Brücke mit Siliziumtransistoren

Sie können einen einfachen Gleichstrommotortreiber (oder für die Wicklung eines Schrittmotors) aus herkömmlichen Siliziumtransistoren zusammenbauen.

Reis. 2. Schematische Darstellung ein einfacher Elektromotortreiber auf Basis von Siliziumtransistoren.

Mit einem solchen Treiber können Sie einen Gleichstrom-Elektromotor mit einer Versorgungsspannung von bis zu 25 V (für KT817A, KT816A) und bis zu 45 V (für KT817B-G, KT816B-G) mit einem Strom von nicht mehr als 3 A steuern. Bei großem Betriebs- und Laststrom des Motors müssen die Ausgangstransistoren KT817 und KT816 auf ausreichend großen Heizkörpern verbaut werden.

Der Einbau der Dioden VD1-VD2 ist erforderlich, um die Ausgangstransistoren vor Rückstrom zu schützen. An ihrer Stelle können Sie inländische KD105A oder andere mit einem höheren Strom einsetzen.

Durch den Zusammenbau zweier solcher Schaltkreise (2x6 Transistoren) können Sie auch einen Schrittmotor oder zwei Gleichstrommotoren steuern.

Um den Garten nicht mit 12 Transistoren zu füllen, können Sie spezielle Mikroschaltungen verwenden. Im Folgenden sehen wir uns ein Beispiel mit der L298-Mikroschaltung und einem darauf basierenden vorgefertigten Block an.

L298-Chip, Eigenschaften und Fähigkeiten

Der L298 IC ist ein leistungsstarker universeller Brückentreiber zur Steuerung von Gleichstrommotoren, Schrittmotoren, elektromagnetischen Relais und Elektromagneten (Solenoiden). Der Chip enthält zwei H-Brücken aus Hochleistungstransistoren sowie eine TTL-kompatible Logik.

Reis. 3. L298-Chip in Multiwatt15 PowerSO20-Gehäusen.

Wichtigste technische Merkmale:

  • Betriebsspannung - bis zu 46V;
  • Maximaler Gleichstrom - 4A (mit Strahler);
  • Niedrige Sättigungsspannung;
  • Überhitzungsschutz;
  • Logisch „0“ = Spannung bis 1,5V.

Wo kann ich den Treiber auf dem L298-Chip verwenden? - ein paar Ideen:

  • Schrittmotorsteuerung;
  • Steuerung von zwei Gleichstrommotoren;
  • Schalten leistungsstarker Relaisspulen;
  • Steuerung von Magnetspulen (Elektromagneten).

Wenn wir uns das Blockschaltbild des L298-Chips ansehen, sehen wir etwas Ähnliches wie die Schaltung in Abbildung 2, nur mit zusätzlichen Logikelementen.

Reis. 4. Der interne Schaltkreis des L298N-Chips ist eine leistungsstarke Doppel-H-Brücke.

Für jede H-Brücke haben wir 3 Eingänge: In1 – zur Spannungsversorgung in eine Richtung, In2 – in die entgegengesetzte Richtung und einen weiteren Eingang En zur Stromversorgung der Ausgangstransistoren der Brücke.

Auf diese Weise können wir die Richtung des Stromflusses einstellen und seine Versorgung steuern (ein oder aus, sowie PWM).

Treiberschaltung auf L298-Chip

Unten ist einfache Schaltung für Motortreiber auf L298N-Chip. Die Steuerung erfolgt über vier Drähte (statt sechs beim L298) dank der Verwendung zusätzlicher Inverter im CD4011-Chip.

Reis. 5. Schematische Darstellung eines Elektromotortreibers auf dem L298N-Chip.

Um die Logik beider Mikroschaltungen mit Strom zu versorgen, benötigen Sie eine stabilisierte Spannung von +5 V (P2); Sie können einen integrierten Stabilisator, zum Beispiel L7805, verwenden oder die Logik über die vorhandene +5 V-Stromleitung mit Strom versorgen. Zur Stromversorgung der Motoren dient eine separate Stromleitung P1.

Die Pins P4, P5 dienen zum Einstellen der Polarität jedes Kanals und die Pins P6, P7 ermöglichen die Stromversorgung der Kaskaden (Schalter) der internen H-Brücke für jeden Kanal.

Der CD4011-Chip kann durch den heimischen K176LA7 ersetzt werden. Schottky-Dioden können mit einer anderen Nennleistung von 35 V/4 A oder mehr geliefert werden. Wenn Sie nicht vorhaben, den Strom der Motorwicklungen zu begrenzen, können die niederohmigen Begrenzungswiderstände R9-R10 aus dem Stromkreis ausgeschlossen werden, indem Sie sie durch Brücken ersetzen.

Im Internet können Sie ein fertiges L298-Modul bestellen, das allerdings über 6 Eingänge zur Steuerung verfügt.

Reis. 6. Vorgefertigte Module für L298.

Für meinen Bedarf habe ich ein fertiges Modul des links abgebildeten Typs erworben. Es enthält den L298-Chip und einen kleinen Stabilisator zur Versorgung der Chiplogik mit +5 V.

Um diesen Schal zu verbinden, ist es wichtig, eine Funktion klar zu verstehen:

  • Wenn die Motoren mit einer Spannung von mehr als 12 V betrieben werden, muss die Brücke entfernt und 5 V separat an einen dafür vorgesehenen Anschluss zugeführt werden
  • Wenn die Motoren mit einer Spannung von 5–12 V betrieben werden, muss der Jumper installiert werden und es wird keine zusätzliche 5-V-Stromversorgung benötigt.

Wenn Sie beispielsweise 20 V an die Motoren anlegen und den Jumper installiert lassen, brennt der 5-V-Stabilisatorchip auf dem Modul durch. Es ist nicht klar, warum die Entwickler keinen integrierten Stabilisator mit einem größeren Eingangsspannungsbereich eingebaut haben.

Um beim Anschluss eines solchen Blocks an Arduino oder Raspberry Pi zwei Eingänge einzusparen, können Sie einen Teil der Schaltung zu CD4001 hinzufügen, wie in Abbildung 5.

L298 + Gleichstrommotoren + Raspberry Pi

Für dieses Experiment wurden zwei Gleichstrommotoren an das L298-Modul angeschlossen. Das gesamte Modul wird von einer 6-V-Batterie gespeist. Da diese Spannung weniger als 12 V beträgt (siehe Beschreibung oben), lassen wir den internen Stabilisator-Jumper installiert und eine zusätzliche +5 V-Stromversorgung ist für die Logik nicht erforderlich.

Die Jumper „ENA“ und „ENB“, die die Stromversorgung der Ausgangsbrücken ermöglichen, bleiben installiert. Um jeden der Motoren zu steuern, verwenden wir daher die verbleibenden vier Eingänge: IN1, IN2, IN3, IN4.

Nach dem Anschließen der Stromversorgung leuchtet die LED am Modul auf. Jetzt können wir nacheinander +5 V an jeden Eingang anlegen und sehen, wie sich unsere Motoren drehen.

Woher bekomme ich +5V? - in diesem Fall liegt diese Spannung am Stromanschluss, rechts in der Nähe von GND. Für den Test können Sie ein Stück Draht verwenden – einen Jumper.

Nun verbinden wir unser Modul mit dem Raspberry Pi und schreiben ein einfaches Testprogramm in Python. Um das Modul anzuschließen, habe ich die GPIO-Pins wie folgt verwendet:

Reis. 7. L298 + Raspberry Pi + Gleichstrommotoren.

Mein Mini-Computer wird über einen Abwärtsschaltstabilisator von einer zweiten 6-V-Batterie mit Strom versorgt. Fahren wir mit dem Schreiben eines Programms für unser Experiment fort; unser Ziel ist es, die Drehung der Welle jedes Motors über eine Tastatur zu steuern, die mit dem Raspberry Pi oder aus der Ferne über SSH, VNC verbunden ist.

Versuchen wir nun ein einfaches, in Python geschriebenes Programm, das Ihnen hilft, das Prinzip der Steuerung eines Gleichstrommotors zu verstehen.

Wir laden die Himbeere herunter, öffnen das Terminal oder stellen über SSH eine Remote-Verbindung her. Erstellen Sie eine neue Datei und öffnen Sie sie zur Bearbeitung mit dem folgenden Befehl:

Nano /home/pi/l298_dc_motors_test.py

Wir fügen den Python-Skriptcode in den unten angegebenen Editor ein:

#!/usr/bin/env python # -*- programming: utf-8 -*- import time import RPi.GPIO as GPIO # GPIO-Pins vorbereiten. GPIO.cleanup() GPIO.setmode(GPIO.BCM) GPIO.setup(4, GPIO.OUT) GPIO.output(4, GPIO.LOW) GPIO.setup(17, GPIO.OUT) GPIO.output(17, GPIO .LOW) # Schaltet die Drehung von Motor 1 in eine Richtung ein. GPIO.output(4, GPIO.HIGH) # 5 Sekunden warten. time.sleep(5) # Motor ausschalten 1. GPIO.output(4, GPIO.LOW) # 10 Sekunden warten. time.sleep(10) # Schaltet die Drehung von Motor 1 in die andere Richtung ein. GPIO.output(17, GPIO.HIGH) # 5 Sekunden warten. time.sleep(5) # Motor ausschalten 1. GPIO.output(17, GPIO.LOW)

Verlassen Sie den Editor und speichern Sie die Datei. Machen Sie das Skript ausführbar und führen Sie es aus:

Chmod +x /home/pi/l298_dc_motors_test.py /home/pi/l298_dc_motors_test.py

Nach dem Starten des Skripts beginnt einer der Motoren fünf Sekunden lang in eine Richtung zu rotieren, schaltet sich dann aus und beginnt nach 10 Sekunden fünf Sekunden lang in die andere Richtung zu rotieren.

Nachfolgend finden Sie ein komplexeres und funktionaleres Beispiel eines Programms, das mit dem Benutzer interagiert und die interaktive Steuerung von zwei Elektromotoren ermöglicht. Ähnlich wie beim ersten Skript kann das Programm in derselben Datei oder in einer separat erstellten neuen Datei gespeichert werden.

Es ist wichtig, dass in diesem Codebeispiel die Einrückung berücksichtigt wird. Darüber habe ich bereits geschrieben.

#!/usr/bin/env python # -*- programming: utf-8 -*- import os import sys import curses import time import RPi.GPIO as GPIO # Legen Sie die Anzahl der GPIO-Pins fest, mit denen wir arbeiten werden M1_RIGHT = 4 M1_LEFT = 17 M2_RIGHT = 27 M2_LEFT = 22 # Funktion zum Vorbereiten von GPIO-Pins def setup(*ports): GPIO.cleanup() # Modus zum Benennen von Pins nach Namen, nicht nach Nummer auf der Platine GPIO.setmode(GPIO.BCM) für Port in Ports: # Pin auf Pin + Low-Pegel „0“ setzen GPIO.setup(port, GPIO.OUT) GPIO.output(port, GPIO.LOW) # Funktion zum Setzen des Low-Pegels auf allen Pins (ausschalten) def stop_all (): GPIO .output(M1_LEFT, GPIO.LOW) GPIO.output(M1_RIGHT, GPIO.LOW) GPIO.output(M2_LEFT, GPIO.LOW) GPIO.output(M2_RIGHT, GPIO.LOW) # Funktion zur Steuerung der Drehung von motors def rotieren(motor= 1, mode="s"): # Alle Pins ausschalten stop_all() # Für Motor 1, wenn Motor == 1: wenn Modus == "r": # Den M1_RIGHT-Pin auf einen hohen Pegel setzen (4) GPIO.output(M1_RIGHT, GPIO.HIGH) elif mode == „l“: # Einen High-Pegel an Pin M1_LEFT setzen (17) GPIO.output(M1_LEFT, GPIO.HIGH) # Für Motor 2 elif motor == 2: if mode == "r": GPIO.output(M2_RIGHT, GPIO.HIGH) elif mode == "l": GPIO.output(M2_LEFT, GPIO.HIGH) # Initialisieren Sie die Pins GPIO setup(M1_RIGHT, M1_LEFT, M2_RIGHT , M2_LEFT) # Initialisieren Sie den Bildschirm (Curses-Modul) stdscr = curses.initscr() # Reagieren Sie auf Tastendrücke ohne Bestätigung mit ENTER curses.cbreak() # Erlauben Sie die Verwendung von Pfeiltasten auf der Tastatur stdscr.keypad(1) # Do Das Programm überschreitet beim Abfragen von Ereignissen keine Zeitüberschreitung stdscr.nodelay(1) # Zeigt die Standarddaten an stdscr.addstr(0, 10, "Hit "q" to quit") stdscr.addstr(2, 10, "A - M1 Left, D - M1 Rechts") stdscr.addstr(3, 10 , "< - M2 Left, >- M2 Rechts") stdscr.addstr(4, 10, "S - stop") stdscr.refresh() # Hauptschleife while True: # Holen Sie sich den Tastencode und überprüfen Sie ihn key = stdscr.getch() if key != - 1: # Wenn die Taste „Linkspfeil“ ist, drehen Sie Schieberegler 2 nach links, wenn Taste == curses.KEY_LEFT: # Zeigt die Zeile „M2“ an.<---" в позиции 6, 10 stdscr.addstr(6, 10, "M2 <---") rotate(2, "l") # Если клавиша "стрелка вправо" то вращаем движок 2 вправо elif key == curses.KEY_RIGHT: stdscr.addstr(6, 10, "M2 --->") rotate(2, "r") # Wenn der Schlüssel "a" ist, dann drehen Sie Schieberegler 1 nach links. elif key == ord("a"): stdscr.addstr(6, 10, "M1<---") rotate(1, "l") # Если клавиша "d" то вращаем движок 1 вправо elif key == ord("d"): stdscr.addstr(6, 10, "M1 --->") rotate(1, "r") # Wenn der Schlüssel "s" ist, dann alle Engines stoppen elif key == ord("s"): stdscr.addstr(6, 10, "STOP 12") stop_all() # Wenn die Taste „s“ ist, beenden Sie das Programm. elif key == ord(„q“): # Vorherige Terminaleinstellungen wiederherstellen stdscr.keypad(0) curses.echo() curses.endwin() # Löschen und beenden Sie os.system( "clear" ) sys.exit() # Text auf dem Bildschirm aktualisieren und eine kurze Verzögerung vornehmen stdscr.refresh() time.sleep(0.01)

Nachdem Sie das Skript gestartet haben, können Sie die Tastaturpfeile „links“ und „rechts“ sowie die Tasten mit den Buchstaben „A“ und „D“ drücken – die Motoren sollten sich abwechselnd und in verschiedene Richtungen drehen und das Programm wird angezeigt ihren aktuellen Betriebsmodus.

Reis. 8. Python-Programm zur Steuerung von Motoren mit dem L298-Treiber (Konsole-Terminal, KDE).

Nachfolgend finden Sie eine kurze Videodemonstration dieses Experiments:

Was ist ein Schrittmotor, welche Arten von Schrittmotoren gibt es?

Schrittmotor(für diejenigen, die es nicht wissen) - Dies ist ein Elektromotor, bei dem es keine Bürsten und Wicklungen auf dem Stator (Anker) gibt, sie sind auf dem Rotor vorhanden und so platziert, dass sie durch Verbindung miteinander verbunden sind die Stromquelle, wir reparieren den Rotor (wir machen einen Schritt). Wenn Sie abwechselnd Spannung an jede der Wicklungen mit der erforderlichen Polarität anlegen, können Sie den Motor in die gewünschte Richtung drehen (aufeinanderfolgende Schritte ausführen).

Schrittmotoren sind zuverlässig, verschleißfest und ermöglichen die Steuerung der Drehung in einem bestimmten Winkel. Sie werden in der Prozessautomatisierung, in der Produktion, in elektronischen Computergeräten (CD-DVD-Laufwerke, Drucker, Kopierer) usw. eingesetzt.

Solche Motoren gibt es in den folgenden Typen:

  • Bipolar- 2 Wicklungen, eine für jede Phase, zur Steuerung können Sie eine Schaltung mit 2 H-Brücken oder einer Halbbrücke mit bipolarer Stromversorgung verwenden;
  • Unipolar- 2 Wicklungen, jede mit einem Abgriff in der Mitte, es ist bequem, die Phasen durch Austauschen der Hälften jeder Wicklung zu wechseln, vereinfacht die Treiberschaltung (4 Tasten) und kann auch als bipolare Schaltung verwendet werden, ohne Abgriffe von den Wicklungen zu verwenden ;
  • Mit vier Wicklungen- Universell, durch entsprechende Wicklungsverschaltung kann er als bipolarer oder unipolarer Motor eingesetzt werden.

Reis. 9. Arten von Schrittmotoren: bipolar, unipolar, mit vier Wicklungen.

Der Typ des verwendeten Motors lässt sich in der Regel anhand der Anzahl der Klemmen an seinem Gehäuse ermitteln, und es kann auch nicht schaden, alle Klemmen mit einem Tester anzurufen, um festzustellen, ob Verbindungen zwischen den Wicklungen bestehen.

L298 + Schrittmotor + Raspberry Pi

Jetzt schließen wir den Schrittmotor an, in meinem Fall habe ich einen bipolaren Hochleistungs-Schrittmotor verwendet, der von einem alten Nadeldrucker stammt.

Um einen bipolaren Motor anzuschließen, benötigen Sie zwei Treiberausgänge an L298 (zwei H-Brücken). Für dieses Experiment muss das L298-Modul auf die gleiche Weise wie in der Version mit an den Raspberry Pi angeschlossen werden.

Zunächst können Sie ohne Himbeere experimentieren – legen Sie nacheinander eine 5-V-Spannung an die Eingänge des L298-Moduls an und beobachten Sie, wie die Motorwelle die Schritte ausführt.

Tatsächlich werden wir mit Hilfe einer Himbeere abwechselnd und mit einer gewissen Verzögerung Impulse an die Wicklungen des Motors anlegen und so dessen Welle dazu zwingen, sich in die gewünschte Richtung und mit der gewünschten Geschwindigkeit zu drehen.

Reis. 10. Anschließen eines bipolaren Schrittmotors an das L298-Modul zur Steuerung über Raspberry Pi.

Wenn bereits alles angeschlossen ist, experimentieren wir mit einem einfachen Testprogramm in Python, das Ihnen hilft, den Umgang mit Schrittmotoren mit L298 + Raspberry Pi zu verstehen.

Erstellen wir eine Datei für das Skript und öffnen sie zur Bearbeitung:

Nano /home/pi/l298_stepper_motor_test.py

Fügen Sie den folgenden Python-Skriptcode in den Editor ein :

#!/usr/bin/env python # -*- programming: utf-8 -*- import time import RPi.GPIO as GPIO # GPIO-Pins vorbereiten. GPIO.cleanup() GPIO.setmode(GPIO.BCM) GPIO.setup(4, GPIO.OUT) GPIO.output(4, GPIO.LOW) GPIO.setup(17, GPIO.OUT) GPIO.output(17, GPIO .LOW) GPIO.setup(27, GPIO.OUT) GPIO.output(27, GPIO.LOW) GPIO.setup(22, GPIO.OUT) GPIO.output(22, GPIO.LOW) # Zeitverzögerung zwischen Schritten, Sek . step_timeout = 0,0105 # Impulsdauer, Sek. Impulse_timeout = 0.008 # Schritt 1. GPIO.output(4, GPIO.HIGH) time.sleep(impulse_timeout) GPIO.output(4, GPIO.LOW) time.sleep(step_timeout) # Schritt 2. GPIO.output(17, GPIO .HIGH) time.sleep(impulse_timeout) GPIO.output(17, GPIO.LOW) time.sleep(step_timeout) # Schritt 3. GPIO.output(27, GPIO.HIGH) time.sleep(impulse_timeout) GPIO.output(27 , GPIO.LOW) time.sleep(step_timeout) # Schritt 4. GPIO.output(22, GPIO.HIGH) time.sleep(impulse_timeout) GPIO.output(22, GPIO.LOW) time.sleep(step_timeout) # Warten auf 10 Sekunden time.sleep(10) # 20 Mal, 4 Schritte pro Schleife. für i im Bereich(0,20): GPIO.output(4, GPIO.HIGH) time.sleep(impulse_timeout) GPIO.output(4, GPIO.LOW) time.sleep(step_timeout) GPIO.output(17, GPIO. HIGH) time.sleep(impulse_timeout) GPIO.output(17, GPIO.LOW) time.sleep(step_timeout) GPIO.output(27, GPIO.HIGH) time.sleep(impulse_timeout) GPIO.output(27, GPIO.LOW) time.sleep(step_timeout) GPIO.output(22, GPIO.HIGH) time.sleep(impulse_timeout) GPIO.output(22, GPIO.LOW) time.sleep(step_timeout)

Wir machen die Datei mit dem Skript ausführbar und führen sie zur Ausführung aus:

Chmod +x /home/pi/l298_stepper_motor_test.py /home/pi/l298_stepper_motor_test.py

Nach dem Start des Skripts muss der Schrittmotor 4 Schritte ausführen (Rotation in eine Richtung), dann beginnt er nach einer Wartezeit von 10 Sekunden erneut mit der Drehung und macht 20*4 Schritte.

Schauen wir uns nun ein Beispiel für ein interaktives Programm an, mit dem Sie die Drehrichtung und Geschwindigkeit (aufeinanderfolgende Schritte) eines Schrittmotors über eine Tastatur steuern können.

#!/usr/bin/env python # -*- programming: utf-8 -*- import os import sys import curses import time import RPi.GPIO as GPIO # Funktion zum Vorbereiten von GPIO-Pins def setup(*ports): GPIO. cleanup() # Modus zum Benennen von Pins nach Namen, nicht nach Nummer auf der Platine GPIO.setmode(GPIO.BCM) für Port in Ports: # Setzen des Pins auf Pin + Low-Level „0“ GPIO.setup(port, GPIO. OUT) GPIO.output(port, GPIO.LOW) # Funktion zum Senden eines Impulses an den Pin mit etwas Verzögerung (1 Schritt) defimpuls(port=0): GPIO.output(port, GPIO.HIGH) # Stellen Sie das Timeout ein Der Wert muss für einen Schritt ausreichen. time.sleep(0.008) GPIO.output(port, GPIO.LOW) time.sleep(timeout) # Installieren Sie die Pins, die wir benötigen. GPIO setup(4, 17, 27, 22) # Verzögerung zwischen den Schritten (Standard) timeout = 0.0105 # Drehrichtung (Standard) Direction = „r“ # Bildschirminitialisierung (Curses-Modul) stdscr = curses.initscr() # Auf Tastendrücke ohne Bestätigung mit ENTER reagieren curses.cbreak() # Verwendung von zulassen Pfeiltasten auf der Tastatur stdscr.keypad(1) # Blockieren Sie das Programm beim Abfragen von Ereignissen nicht für die Zeit. stdscr.nodelay(1) # Zeigen Sie die Standarddaten auf dem Bildschirm an stdscr.addstr(0, 10, "Drücken Sie "q", um quit") stdscr.addstr(2 , 10, "--->") stdscr.addstr(3, 10, "Timeout: " + str(timeout)) stdscr.refresh() # Hauptschleife while True: # Satz von Impulse zum Drehen der Motorwelle nach rechts, wenn Richtung = = "r": Impulse(4) Impulse(17) Impulse(27) Impulse(22) # Impulssatz zum Drehen der Motorwelle nach links elif Richtung == " l": Impulse(22) Impulse(27) Impulse(17) Impulse (4) # Lesen Sie den Tastencode und überprüfen Sie ihn. key = stdscr.getch() if key != -1: # Die Taste „links“ ändert die Richtung Drehung: LINKS, wenn Taste == curses.KEY_LEFT: # Text anzeigen "<---" в позиции экрана 2, 10 stdscr.addstr(2, 10, "<---") # Изменим значение переменной с направлением вращения direction = "l" # Клавиша "вправо" меняет направление вращения: ВПРАВО elif key == curses.KEY_RIGHT: stdscr.addstr(2, 10, "--->") Direction = "r" # Die Auf-Taste beschleunigt die Rotation. Elif-Taste == curses.KEY_UP: # Reduziert die Verzögerung zwischen den Schritten. timeout = timeout - 0.0005 # Die Ab-Taste verlangsamt die Rotation. Elif-Taste == curses.KEY_DOWN: # Verzögerung zwischen Schritten erhöhen timeout = timeout + 0,0005 # Die Taste „q“ beendet das Programm elif key == ord(“q“): stdscr.keypad(0) curses.echo() curses.endwin() os.system ("clear") sys.exit() # Stellen Sie sicher, dass die Verzögerungszeit bei Zeitüberschreitung nicht die Grenze 0 überschreitet<= 0: timeout = 0.0005 # Обновляем текст на экране stdscr.addstr(3, 10, "Timeout: " + str(timeout)) stdscr.refresh() time.sleep(0.01)

Drücken Sie nun die linke und rechte Pfeiltaste und sehen Sie, wie sich die Drehrichtung der Motorwelle ändert. Wenn Sie die Auf- und Ab-Tasten drücken, erhöht und verringert sich die Geschwindigkeit entsprechend.

Wenn sich der Motor nicht dreht, muss möglicherweise die Polarität beim Anschluss einer der Wicklungen an das Modul an L298 geändert werden.

Reis. 11. Bipolares Schrittmotor-Steuerungsprogramm, L298, Raspberry Pi.

Videodemonstration der Funktionsweise eines Schrittmotors:

Abschluss

Ich hoffe, Sie haben die Antwort auf die Frage „Was ist eine H-Brücke und wie funktioniert sie?“ erhalten. Aus den Experimenten sollte klar sein, wie man den Treiber auf dem L298-Chip verwendet und verschiedene Engines daran anschließt.

Es ist wichtig zu beachten, dass Sie im Internet vorgefertigte Bibliotheken und Skripte in Python finden, mit denen Sie Motoren bequem über die H-Brücke auf dem L298 mit einem Raspberry Pi steuern können.

Auf dem Markt für elektronische Komponenten ist eine klare Nische erkennbar, und zwar in Form eines Mangels an integrierten Bauteilen, die eine Last steuern könnten, die bei niedriger Versorgungsspannung (ca. 3 V) einen erheblichen Strom verbraucht (ca. 2 A). Dieses Projekt könnte die Lösung für dieses Problem sein. Als Stellelemente in der H-Brücke kommen IRF7307-Transistoren des Herstellers International Rectifier zum Einsatz.

Das SO-8-Gehäuse enthält zwei MOSFETs, einen mit einem P-Kanal und einen mit einem N-Kanal. Diese Transistoren eignen sich sehr gut für Niederspannungsanwendungen. Darüber hinaus sorgt der geringe Widerstand des offenen Kanals für einen geringen Spannungsabfall: Eine Last, die einen Strom von 1 A verbraucht, erzeugt bei einer Versorgungsspannung von 4,5 V einen Spannungsabfall von nicht mehr als 140 mV, also nur 3 % der Gesamtversorgungsspannung.

Darüber hinaus enthält der IRF7307 eine Dämpferdiode, die den Transistor vor Energieemissionen beim Schalten induktiver Lasten schützen soll.

H-Brücke auf Feldeffekttransistoren IRF7307

Die folgende Abbildung zeigt den Schaltplan einer Niederspannungs-Hochleistungs-H-Brücke. Zur Steuerung werden logische Elemente „AND-NOT“ der CD4093-Mikroschaltung verwendet, die in ihrer Struktur einen Schmitt-Trigger enthalten. Die maximale Spannung an den Ausgängen von Logikelementen beträgt etwa 50 mV (laut Texas Instruments). Dieser Wert reicht aus, um die MOSFET-Kanäle unabhängig von der Eingangssteuerspannung vollständig zu öffnen oder zu schließen.

Wenn die Logikelemente keinen Schmitt-Trigger haben, besteht die Gefahr, dass bei gleichzeitiger Zufuhr von Steuerspannung die Transistoren eines der Schaltungszweige beschädigt werden und die Stromquelle durch einen Kurzschluss beschädigt wird. Die Widerstände R1 und R2 bilden bei fehlendem Steuersignal die Eingangsspannung.

Nach der Montage sind keine Einstellungen erforderlich, das Gerät ist sofort einsatzbereit. Die Versorgungsspannung liegt im Bereich von 3-12 Volt und ist streng durch die maximale Spannung der MOSFET-Transistoren begrenzt. Im Ausgangszustand, wenn keine Last vorhanden ist, verbraucht die Schaltung einen Strom von weniger als 1 mA.

Die Schaltzeit von Logikelementen ist relativ lang, daher ist es wünschenswert, dass die Lastschaltfrequenz mehrere hundert Hertz nicht überschreitet. Bei höheren Frequenzen besteht die Möglichkeit, dass beide Transistorkanäle offen sind, was zu einem hohen Stromverbrauch führt.

Videorezension

Funktionsprinzip der H-Brücke

Der Begriff „H-Brücke“ leitet sich von der grafischen Darstellung dieser Schaltung ab, die dem Buchstaben „H“ ähnelt. Die H-Brücke besteht aus 4 Schlüsseln. Abhängig vom aktuellen Zustand der Schalter ist ein unterschiedlicher Zustand des Motors möglich.

S1S2S3S4Ergebnis
1 0 0 1 Motor dreht nach rechts
0 1 1 0 Motor dreht nach links
0 0 0 0 Freie Drehung des Motors
0 1 0 1 Motor wird langsamer
1 0 1 0 Motor wird langsamer
1 1 0 0
0 0 1 1 Kurzschluss der Stromversorgung

Anschluss und Einrichtung

Die H-Brücke (Troyka-Modul) kommuniziert über 2 Signalleitungen D und E mit der Steuerelektronik – Drehzahl und Drehrichtung des Motors.

Der Motor wird an die Klemmen M+ und M- angeschlossen. Und die Stromquelle für den Motor ist mit ihren Kontakten an die Blöcke unter der Schraube P angeschlossen. Der Pluspol der Stromversorgung ist mit dem P+-Anschluss und der Minuspol mit dem P-Anschluss verbunden.

Wenn es angeschlossen ist oder es bequem zu bedienen ist.
Sie können auf unnötige Kabel verzichten.

Arbeitsbeispiele

Beginnen wir mit der Demonstration der Fähigkeiten. Der Anschlussplan ist im Bild oben. Die Stromversorgung der Steuerplatine erfolgt über USB oder einen externen Stromanschluss.

Beispiele für Arduino

Drehen Sie den Motor zunächst drei Sekunden lang in die eine und dann in die andere Richtung.

dc_motor_test.ino #Geschwindigkeit definieren 11 // Pins zum Verlassen des Modus // Den Motor 3 Sekunden lang in eine Richtung drehen digitalWrite(DIR, LOW) ; digitalWrite(SPEED, HIGH) ; Verzögerung(3000 ) ; digitalWrite(SPEED, LOW) ; Verzögerung (1000);

// dann den Motor 3 Sekunden lang in die andere Richtung drehen

digitalWrite(DIR, HIGH) ; digitalWrite(SPEED, HIGH) ; Verzögerung(3000 ) ; // dann den Motor stoppen digitalWrite(SPEED, LOW) ; // Pins zum Verlassen des Modus Verzögerung (1000); // Richtung ändern digitalWrite(DIR, LOW) ;<= 255 ; i++ ) { analogWrite(SPEED, i) ; delay(10 ) ; } für (int i = 0 ; i// den Motor langsam stoppen lassen // Richtung ändern for (int i = 255 ; i > 0 ; i-- ) ( analogWrite(SPEED, i) ; delay(10 ) ; ) digitalWrite(DIR, HIGH) ;// Jetzt lassen wir den Motor langsam auf Maximum beschleunigen<= 255 ; i++ ) { analogWrite(SPEED, i) ; delay(10 ) ; } for (int i = 255 ; i >für (int i = 0 ; i

0 ;

i-- ) ( analogWrite(SPEED, i); delay(10 ) ; ) ) Beispiel für Iskra JS dc_motor_test.js // Bibliothek verbinden var Motor = require("@amperka/motor" ); // Schließen Sie den Motor an und geben Sie dabei den Stift für Geschwindigkeit und Drehrichtung an var myMotor = Motor.connect ((phasePin: A3, pwmPin: P11, freq: 100));

// Den Motor auf 75 % Leistung zurückdrehen

myMotor.write(0.75);

Brettelemente

Motorfahrer

Der TB6612FNG-Motortreiber ist eine Baugruppe aus zwei H-Halbbrücken. In unserem Modul haben wir beide Kanäle des H-Brücken-Chips parallel geschaltet, um die Erwärmung auszugleichen.

Der Motor wird mit seinen Kontakten an die M- und M+-Schraubblöcke angeschlossen. Die Polarität ist in diesem Fall nicht wichtig, da sie die Drehrichtung der Welle beeinflusst und programmgesteuert geändert werden kann.

Ladeleistung

Die Stromversorgung des Motors (Stromversorgung) wird mit seinen Kontakten an die Blöcke unter der Schraube P angeschlossen. Der Pluspol der Stromversorgung ist mit dem P+-Anschluss und der Minuspol mit dem P-Anschluss verbunden. Die Motorversorgungsspannung sollte zwischen 3 und 12 VDC liegen.

    Kontakte zum Anschluss von Dreileiterschleifen

    1-Gruppe

    D – Drehrichtungen des Motors. Verbinden Sie sich mit dem digitalen Pin des Mikrocontrollers.

V - Stromversorgung des logischen Teils des Moduls. An die Stromversorgung des Mikrocontrollers anschließen.

    G – Erde. Dupliziert Pin G aus der zweiten Gruppe von Troyka-Kontakten. Mit der Masse des Mikrocontrollers verbinden.

    2-Gruppen

    E – Einschalten und Steuern der Motordrehzahl. Verbinden Sie sich mit dem digitalen Pin des Mikrocontrollers.

V2 - Stromversorgung des Moduls. Erfahren Sie mehr über Power-Pooling.

G – Erde. Dupliziert Pin G aus der ersten Gruppe von Troyka-Kontakten. Mit der Masse des Mikrocontrollers verbinden.

Stromversorgungsbrücke

Die Stromversorgung kann auch über die Pins V2 und G aus der zweiten Gruppe von Troyka-Kontakten angeschlossen werden. Setzen Sie dazu den Netzteil-Jumper V2=P+. In diesem Fall ist es nicht mehr erforderlich, die Kontakte P+ und P- mit Strom zu versorgen.

Wenn der Platine beispielsweise über den externen Stromanschluss 12 V zugeführt werden, erhalten Sie durch Setzen des Jumpers am Troyka Slot Shield auf die V2-VIN-Position eine Spannung von 12 V am V2-Zweig der H-Brücke . Diese 12 V können zur Versorgung der Last gesendet werden – installieren Sie einfach die Brücke V2=P+ auf der H-Brücke.

Lichtanzeige

Doppelte LED zur Anzeige von Geschwindigkeit und Drehrichtung auf der Platine.

Wenn der Logikpegel am Drehrichtungskontrollstift E hoch ist, leuchtet die Anzeige rot. Wenn der Pegel niedrig ist – grün.

Je höher die Motordrehzahl, desto heller leuchtet die grüne bzw. rote LED.

Kabelbaum zur Anpassung der Spannungspegel

Notwendig zum Koppeln von Geräten mit unterschiedlichen Logikpegelspannungen.



Artikel zum Thema