Lösung zum Akzeptieren von 3-24 V als digitales Hoch für Mikrocontroller

Ich suche nach Vorschlägen zum Konvertieren eines digitalen Eingangs im Bereich von 3-24 VDC in ein 3,3-V-Signal für einen Mikrocontroller.

Ich muss insgesamt 32 Eingänge verarbeiten (von denen jeder irgendwo zwischen diesen Spannungen variieren kann), daher ist die Dichte wichtiger als die Kosten.

Jemand schlug vor, dass ein nicht invertierender Hex-Puffer wie der CD4050 von TI ( http://www.ti.com/lit/ds/symlink/cd4050b.pdf ) die Lösung sein könnte, aber ich bin mir nicht ganz sicher, ob er mit mehreren unterschiedlichen Puffern umgehen kann Eingangsspannungen.

Vielen Dank im Voraus für Ihre Vorschläge.

EDIT: Die Eingänge werden entweder verbunden mit:

  1. Verschiedene mechanische Schalter, die die Leitung auf GND oder auf eine Spannung irgendwo im angegebenen Bereich von 3-24 V ziehen können

oder

  1. Sensoren verschiedener Typen mit digitalen Ausgängen. Diese Ausgänge können niedrig (Masse) oder hoch sein, mit Spannungen, die irgendwo im gegebenen Bereich von 3–24 V liegen können, je nach Typ, Fabrikat und Modell des Sensors.

Jeder der Eingänge kann mit jeder Art von Schalter oder Sensor innerhalb der oben angegebenen Grenzen verbunden werden.

EDIT 2: Multiplexer und dergleichen sind leider nicht möglich, da die Timings SEHR eng sind und Interrupts mit unterschiedlicher Priorität ausgiebig verwendet werden sollen, was direkte Verbindungen zu den Mikrocontroller-Pins erfordert.

Hast du das Datenblatt gelesen?
Ja. Mehrmals.
Welche Beladung benötigen Sie? dh suchen Sie nach hoher Impedanz?
Wie wäre es mit einem 10:1 Spannungsteiler und einem Komparator?
Ja, ein Teiler. Wenn es sich um ein Hochgeschwindigkeitssignal handelt, kann die Teilerbandbreite verbessert werden, indem sowohl ein kapazitiver Spannungsteiler als auch ein resistiver Spannungsteiler verwendet werden. Der obere Kondensator sollte nur wenige pF betragen. Niedriger gewählt, um das richtige Verhältnis zu erzeugen.
Wäre ein 10:1-Teiler und -Komparator nicht ein bisschen besorgniserregend, wenn der Eingang nur 3 Volt beträgt?
Die Komparatorschwelle würde auf 0,3 V eingestellt werden. Sie müssen einige 1% Widerstände verwenden und die Eckberechnungen durchführen. Aber ich vermute, dass es machbar ist.
Ja, hochohmige Belastung.
Sie könnten einen Komparator ohne Teiler verwenden und den Eingang einfach klemmen, um ihn zu schützen. Aber das könnte für die Quelle irgendwie missbräuchlich sein, je nachdem, was es ist. In diesem Fall würde die Schwelle auf 3 V eingestellt werden.
Es wäre hilfreich, mehr über die Eingangsspannungen und Schwellenwerte zu erfahren, die Sie zur Bestimmung des Logikpegels benötigen. Ist zB der Crossover-Pegel immer gleich? Und was sind sie?
Hier könnte es viele Systemdesignprobleme geben. Wie werden die Sensoren mit Strom versorgt? Könnten sie mit Strom versorgt werden, wenn das Mikro nicht ist? Denn das erfordert eine besondere Behandlung, wenn dies der Fall ist. Usw.
Wie wäre es mit einem großen Widerstand und einer Low-Drop-Diode an der 3,3-V-Schiene? Dies wird bei jeder Spannung > 2,5 V hoch angezeigt. Verwenden Sie einen viel größeren Pulldown-Widerstand, damit selbst ein 3-V-Eingang immer noch den Logikschwellenwert überschreitet.
@mkeith Könnten Sie erklären, warum das relevant ist?
Hier sind wirklich weitere Informationen erforderlich ... was genau bedeutet 3-24-V-Signal?
@Trevor könnten Sie genau klären, welche weiteren Informationen Sie benötigen?
Ähm... ist das ein Bereich... ist das ein Min-Max? Ist das Logikpegel ... Sie sagen, Sie haben viele, sind sie alle gleich ... Was sind die Werte von Logik Low Max und Logik High Min .... Auch was ist die Quellenimpedanz der Signale ... .
(von denen jede irgendwo zwischen diesen Spannungen variieren könnte), ... was genau meinst du damit ... sind das tatsächlich analoge Signale?
@Trevor vielen Dank für die Kommentare. Bitte beachten Sie die Bearbeitung oben. Das beantwortet hoffentlich deine Frage. Danke noch einmal.
Option 1 kann mit den meisten der folgenden Antworten behandelt werden, Option 2 erfordert jedoch immer noch, dass Sie die niedrige Spannung des Sensors definieren. Sie sagen GND ... aber das ist selten der Fall ... Einige 24-V-Ausgänge haben einige logische Nullspannungsbereiche mit ziemlich hohem Pegel, und die Ausgangsimpedanz kann ein Problem darstellen.
Angenommen, das ist ... Masse am Sensor = Masse am Empfänger ...
@Trevor Das kann ich dir nicht sagen, weil es auf den genauen Sensor ankommt und der nicht vorher festgelegt wird. Das ist eigentlich der Sinn meiner Frage. Wenn alle Parameter vorher genau festgelegt und bekannt wären, könnte ich die Schaltung einfach passend gestalten. Der Punkt der Frage ist, wie man eine Schaltung entwirft, die eine sehr breite Palette möglicher Sensortypen akzeptiert.
@LachlanFletcher, das ist jedoch mein Punkt. Es kann unmöglich sein, eine einfache generische Lösung zu entwickeln, die alle Ihre Anforderungen erfüllt, ohne eine Schaltung zu verwenden, die das Mikro oder der Benutzer anpassen kann, um sie an den angeschlossenen Sensor anzupassen.
Müssen Sie diese Spannung messen oder handelt es sich nur um ein digitales Signal?
Solche Sensoren sind bei SPSen üblich. Optoisolierte Eingänge sind die gebräuchlichste robuste Lösung für die von Ihnen beschriebene Aufgabe. Die 3-V-Eingangsanforderung erfordert eine sorgfältige Auswahl der Komponenten. 5 V sind häufiger und viel einfacher zu erreichen. Folgen Sie einigen der Links auf dieser Bildersuche. - google.com/search?q=3V+24V+opto+isolator&tbm=isch
Wenn Sie eine Schaltung haben, die nicht mit Strom versorgt wird, und Sie einen Eingang auf eine hohe Spannung treiben, führt dies zu einem unvorhersehbaren Verhalten der nicht mit Strom versorgten Schaltung. Wenn dies ein möglicher Fall ist, müssen die Eingänge geschützt werden, damit sie hochohmig bleiben, bis die lokale Schaltung eingeschaltet wird.

Antworten (4)

Sie könnten zwei vorgespannte Transistoren verwenden (16 erforderlich). Wenn die MCU über geeignete interne Pullups verfügt, benötigen Sie keine weiteren Teile. R1/R2 von 22K/22K oder 47K/47K könnten geeignet sein. Die Nenneingangsspannung beträgt für diese Werte -10 V bis +40 V.

Geben Sie hier die Bildbeschreibung ein

Sie sind etwa 2 mm x 2 mm groß und nehmen daher nicht viel Platz auf der Platine ein.

Danke für den Vorschlag @spehro-pefhany. Ich denke, das wird wahrscheinlich das tun, wonach ich suche. Die Komponenten sind bestellt und ich werde morgen mit dem Testen beginnen. Danke noch einmal.

schematisch

Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan

Mit Pull-up-Widerstand ist die Eingangsspannung des Mikrocontrollers HIGH. Egal, wie hoch die Spannung am 3-24-V-Eingang ist. Außer bei einer Eingangsspannung von 3-24 V unterhalb der Eingangsschwelle des Mikrocontrollers. (einschließlich der Durchlassspannung über der Diode). In diesem Fall lässt die Diode Strom durch und der Eingang des Mikrocontrollers ist LOW.

Das Hauptproblem hierbei ist, dass der MCU-Eingang typischerweise einen Vinput (Low) von < 0,8 V hat. Um den Eingang also auf einen garantiert niedrigen Wert zu ziehen, müssen Sie eine extrem niedrige Spannung (selbst wenn Sie eine Schottky-Diode verwenden) von < 0,6 haben V oder weniger auf der Sensorseite. Das wird schwer zu erreichen sein.
@ Jack Creasey, du hast Recht. Wenn ich die Frage verstehe, sind diese Anforderungen erfüllt. Und Schottky-Dioden-Version mit weniger anspruchsvollen als die Version des FET. Und Diode zum Schutz des Mikrocontrollers, wenn keine Versorgungsspannung anliegt.

Da Ihr Spannungsbereich so hoch ist, könnten Sie meiner Meinung nach mit einem einzelnen N-Kanal-FET ein gutes Ergebnis erzielen. Es sind FETs mit V(GS)-Nennwerten über 24 V erhältlich. Hier ist einer mit 40 V-Nennwert: 2n7002 . Sie können sogar FETs in einem Array erhalten, obwohl es etwas schwieriger ist, sie mit hohen V(GS)-Bewertungen zu finden.
Sie könnten auch die neueren FETs wie den NTJD5121NT1G verwenden , diese haben eingebaute Gate-ESD-Schutzdioden und Sie könnten damit den Eingang nur mit einem Vorwiderstand klemmen. Aus dem Datenblatt ist ersichtlich, dass der ESD-Schutz bei einer Gate-Bewertung von 20 V zu greifen beginnt.

schematisch

Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan

Die V(GS)-Übertragungskurve lautet:

Geben Sie hier die Bildbeschreibung ein

Dies sollte ein Eingangshoch von etwa 1,5 bis 24 V liefern. Niedrig müsste unter 1 V Eingang liegen.

Unabhängig davon, was Sie für 32 Eingänge tun, benötigen Sie mindestens 32 Widerstände (wenn Sie hochohmige Eingänge wünschen) und wahrscheinlich 16 bis 32 SMD-Gehäuse, sodass erheblicher Platzbedarf auf der Platine erforderlich ist. Sie könnten einen HV5622 in Betracht ziehen und eine serialisierte Lesemethode verwenden, wie ich sie hier vorgeschlagen habe . Der Erfassungseingang könnte neu angeordnet werden, um einen einzelnen Komparator zu verwenden. Dies reduziert die PCB-Komplexität, aber es ist immer noch ein Layout-Job mit vielen Leiterbahnen. Das Schöne an der seriellen Erfassung ist natürlich, dass es einfach ist, die Erfassungsplatine zu trennen und von der MCU zu isolieren.

Vielen Dank für die hervorragenden Details in Ihrer Antwort, Jack. Ich denke, diese Lösung würde definitiv funktionieren, aber für 32 einzelne Eingänge denke ich, dass die Schaltung etwas kompliziert werden und etwas zu viel Platz auf der Platine einnehmen könnte.
@LachlanFletcher Sie können auch vorgespannte Transistoren erhalten, bei denen die Widerstände in das Gehäuse integriert sind. Diese werden in Doppelpaketen geliefert, sodass Sie mit 16 davon auskommen könnten. Schauen Sie sich so etwas wie die NXP PUMH-Reihe an.
Dies wird natürlich möglicherweise nicht funktionieren, wenn v Ö L max > 1,022 V, was für 24-V-Sensoren nicht untypisch ist und definitiv nicht funktioniert, wenn v Ö L max > 2,555, was ebenfalls keine Seltenheit ist.
Fügen Sie Jacks Antwort die Möglichkeit eines 36-V-16-Kanal-Multiplexers hinzu, und Sie können einfach die Eingänge scannen. Dies würde jedoch erfordern, dass die Leistung bei oder über der maximal erwarteten Eingangsspannung liegt; ti.com/product/mux36s16
@Trevor. Sie können natürlich die FETs mit jeder gewünschten V(GS)-Schwelle auswählen, ich habe einfach eines der neueren Geräte mit sehr niedriger Schwelle ausgewählt.
@JackCreasey Ja, ich weiß, aber eine "generische" Variante für eine Vielzahl von Sensoren ist möglicherweise unrealistisch. Ich bevorzuge diese Antwort jedoch für ein kontrollierteres Sensorset.
Danke Peter für den Kommentar. Einzelheiten zu Multiplexern und dergleichen finden Sie in meiner Bearbeitung oben.

Am einfachsten wäre es, für jeden Eingang einen großen Widerstand zu verwenden. Die Klemmdiode am Eingangspin + dieser Widerstand wird gute Arbeit leisten.

Verwenden Sie alternativ einen Widerstand + einen 3,3-V-Zener.

Es gibt auch komplexere Antworten.

Dies würde sicherlich ein Hoch in die MCU liefern, aber es wäre unwahrscheinlich, dass es ein garantiertes Tief (durch diesen Widerstand mit hohem Wert) liefert. Betrachten Sie ein Beispiel ... einen 3,3-V-Anschlusseingang mit eingeschaltetem internen Pullup-Widerstand (47 k). Um diesen Eingang auf ein gültiges Low (<0,8 V) zu ziehen, ist ein Pulldown von 15 k oder weniger (und auf 0 V) ​​erforderlich. 15 k führen zu einem Stromfluss in die MCU-Klemmdiode von 1,3 mA, wenn sie hoch ist. Ich würde es als schlechte Form betrachten (ein Potenzial von insgesamt 43 mA durch die MCU-Klemmen). Vielleicht wäre ein gewöhnlicher TL431 und 32 Dioden akzeptabler.