Wie kann ein GPIO-Logik-zu-Hochspannungs-Logikadapter mit mehreren Spannungen aufgebaut werden? (5 V, 12 V, 24 V)

Ich arbeite an einem Projekt, das die Herstellung eines ziemlich universellen Boards erfordert (um auf verschiedenen Modellmaschinen zu arbeiten). Ich muss viele bereits vorhandene Motoren und Schalter/Sensoren an die Platine anschließen, die alle mit unterschiedlichen Spannungen arbeiten und ihre eigene einzigartige Pin/Stecker-Konfiguration haben. Ich dachte, die Verwendung von fpga würde die Programmierung der richtigen Konfiguration ermöglichen, aber ich benötige die 3,3-V-fpga-Pins, um die Ein- / Ausgabe von 5 VDC, 12 VDC und 24 VDC selektiv zu akzeptieren. Gibt es da draußen eine einfache Lösung? Sie alle benötigen PWM-Fähigkeit und die Fähigkeit, kleine Motoren/Geräte anzutreiben.

Ich habe daran gedacht, Lastschalter für die Ausgänge zu verwenden, was richtig erscheint. Was die Eingänge betrifft, dachte ich an Isolatoren, aber sie erlauben keinen so großen Bereich von Eingangsspannungen, wenn ich richtig liege. Das einzige andere, was mir einfällt, sind Spannungsregler in Reihe oder parallel, um die Spannung in 3,3-V-Logik umzuwandeln. Dies kann jedoch ein Problem darstellen, wenn Pins nicht für hohen Strom geerdet werden können (wie bei 0 V) ​​und auch als logischer Eingang dienen. Jede mögliche Hilfe oder Ideen würden geschätzt.

Seien Sie klar ... möchten Sie 5-V-Logikpegelsignale in 3V3-Logikpegel oder umgekehrt umwandeln?
@Andyaka 3,3-V-Logik-E / A an E / A von 5, 12 und 24 V.
Welche Geschwindigkeitsanforderungen?
@Andyaka Soweit ich weiß, nur PWM zum Antreiben von Schrittmotoren. Etwas hohe Ampere für kleine Motoren, um vorübergehend ein wenig Drehmoment zu erzeugen (1 oder 2 Ampere). Es ist für die Steuerung von Verkaufsautomaten.

Antworten (2)

Für Ihre Weitbereichseingänge könnten Sie eine Lösung in Betracht ziehen, die ich mehrmals verwendet habe. Bringen Sie Ihre Eingaben über eine Schaltung wie diese ein:

Geben Sie hier die Bildbeschreibung ein

Wie gezeigt, wird die Eingangsschwelle für High/Low durch die Verwendung des TLV431 auf 2,5 V eingestellt. Das Eingangssignal, das durch die 2,2-K-Serienwiderstände kommt, wird an die 5-V-Versorgung geklemmt, um sie im sicheren Eingangsbereich des AM26LV32 zu halten. Die Ausgänge schwingen von Schiene zu Schiene von 0 bis 3,3 V für den Eingang zum FPGA.

Für Weitbereichseingänge ist es mir kürzlich gelungen, einen zu bauen, der mit einem Optoisolator, einer Zenerdiode und einem Paar Widerständen von 5 V bis 30 V oder so funktioniert. Gestalten Sie die Schaltung grundsätzlich so, dass der LED-Strom am Eingang für den gesamten Spannungsbereich, an dem Sie interessiert sind, im Bereich liegt. Es ist auch möglich, dort einen Brückengleichrichter einzubauen, um die Schaltung auf Kosten der Polarität unempfindlich zu machen ungefähr 1,2 Volt oder so zusätzlicher Abfall. Der Widerstand und die Diode sind so ausgewählt, dass sie den minimalen Einschaltstrom für den Optoisolator bei etwa 5 V erzeugen und auf den maximalen LED-Strom ansteigen, wenn der Zener zu leiten beginnt.

schematisch

Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan

Das wäre toll!
Ich habe in der Vergangenheit Optokoppler für Eingänge verwendet, aber anstelle von Zenern oder Widerständen habe ich eine Konstantstromdiode verwendet, um den LED-Strom des Optokopplers auf 3,5 mA zu begrenzen. Das Problem, das ich hatte, ist, dass die Optokoppler für einige Anwendungen, bei denen beispielsweise ein Drehgeber Eingänge mit Frequenzen bis in den MHz-Bereich liefert, häufig zwei langsam sind. Wenn Sie wirklich eine Erdungsisolierung benötigen, sind die Optokoppler der richtige Weg, aber sie bieten wenig Nutzen in Fällen, in denen GNDs alle miteinander verbunden sind. Schauen Sie sich also meine Antwort für eine andere Lösung an, bei der GNDs üblich sind.
CRDs funktionieren auch, aber ich fand, dass sie ein bisschen teurer sein können als ein paar Widerstände und eine Zenerdiode. Sie haben auch manchmal einen ziemlich großen Spannungsabfall, der Probleme am unteren Ende des Bereichs verursachen könnte.
@MichaelKaras - große Köpfe müssen gleich denken;) (Ich habe während des Studiums in meinem Labornotizbuch eine nahezu universelle Eingangsschaltung geschrieben, die im Grunde die gleiche ist wie Ihre, mit einem Brückengleichrichter am Frontend, um sie polaritätsunempfindlich zu machen, und mit a Verarmungs-MOS für die Stromquelle anstelle eines CRD.)
@ThreePhaseEel - Die CRDs haben Probleme mit dem Spannungsabfall, was bedeutet, dass ein Allzweckeingang, der an einen Optokoppler geht, für einen 3,3-V-Eingang nicht gut funktioniert und unter den meisten Bedingungen für 5 V OK funktioniert. Übrigens sind CRDs mit einem N-Kanal-JFET aufgebaut, dessen Gate nach einem Reihen-Source-Widerstand mit der Source-Schaltung verbunden ist.
@MichaelKaras - ja, 3,3 V liegen nicht innerhalb der Konformitätsgrenzen der meisten aktuellen Quellen, sobald Sie den LED-Tropfen anheften. (Meins wurde entwickelt, um bei den IEC / ... Standardspannungen für DC-Eingänge zu schalten - und ich habe die Verarmungs-MOS-Version verwendet, da Sie keine 400-VDC-CRD erhalten können :) PS: Er muss keine 3,3 V aufnehmen die Optoseite.