Forum: Mikrocontroller und Digitale Elektronik Levelshifter 25V -> 3.3V


von Florian G. (suffix90)


Lesenswert?

Hallo zusammen,

ich möchte einen digitalen Bus, der einen High-Pegel von 20..25V hat, 
mit einem 3.3V µC auslesen. Dazu habe ich mir ein paar Lösungen 
ausgedacht mit denen ich allerdings allesamt nicht ganz happy bin:

- CD4050B 6-Kanal Levelshifter. Zum einen gibt das Datenblatt (zumindest 
bei TI) nicht wirklich Auskunft was denn nun am Eingang erlaubt ist: 
"The input voltage may exceed Vcc", um wie viel wird nicht angegeben, 
bei Fairchild steht mehr als 15V gehen nicht.
Dieses Problem könnte ich mittels eines Spannungsteilers zwischen Bus, 
Shiftereingang und Ground umgehen, je nach Dimensionierung verbrenne ich 
damit unnötig Leistung, wäre jetzt aber nicht so tragisch. Bleibt noch 
der Punkt dass ich von einem 6-Kanal Shifter nur 1 Kanal brauche

- n-Kanal MOS gegen 3.3V (Drain), Source an den Pin des µC und über 
einen Pull-down an Ground, Bussignal an Gate. Dass man einen NMOS nicht 
gegen +Vcc schalten sollte dürfte hier keine Rolle spielen, da V_GS auch 
bei eingeschaltetem MOS noch hoch genug ist (20..25V - 3.3V), oder 
übersehe ich hier was?
Das Signal am µC wäre dann auch invertiert, das könnte ich aber intern 
wieder rückgängig machen.
Problem hier: Ohne Spannungsteiler müsste ich hier auf Leistungsmosfet 
zurückgreifen, da die meisten Signal-MOS nicht mehr als 20V V_GS 
mitmachen, unter allen anderen Aspekten wäre ein Leistungs-MOS aber 
völlig unnötig.

- Einfacher Spannungsteiler zwischen Bus, µC-Pin und Ground, Pin wäre 
dann halt nicht gegen Spikes etc. geschützt

- Einfach mit hochohmigem R in Reihe an den µC und somit Spannungsteiler 
mit dem µC-internen Widerstand. µC soll ein MSP430 werden, im Datenblatt 
wird nur eine Kapazität als Eingangsimpedanz angegeben, allerdings 
sollte doch trotzdem ein Widerstand (im MOhm-Bereich) an den Pins 
vorhanden sein? Hat da jemand Erfahrungen/Werte?

Fällt jemandem spontan eine bessere Lösung/ICs die meinen Zweck erfüllen 
ein? Wenn nein, welche meiner Varianten wäre vorzuziehen?

Vielen Dank im Voraus

von Guido C. (guidoanalog)


Lesenswert?

Hallo,

bei einer niedrigen Datenübertragungsrate wäre eine Optokoppler noch 
eine Lösung (ggf. mit Spannungsteiler am Eingang).

Mit freundlichen Grüßen
Guido

von Conny G. (conny_g)


Lesenswert?

Sowas?
Beitrag "Re: Komische Spannungen - woran liegt's?"

Was für ein Bus ist es denn?

von Florian G. (suffix90)


Lesenswert?

Motorola MMC ;) An den Optokoppler hatte ich nicht gedacht - gute Idee. 
Komparator mit einem OPV der 25V abkann würde auch gehen, werde ich auch 
mal untersuchen ;)

von Florian G. (suffix90)


Lesenswert?

Hat noch jemand eine Meinung zu meinen ursprünglichen Vorschlägen? Die 
Variante mit Optokoppler scheidet leider auch aus, hier hab ich daselbe 
Problem dass die 25V am Eingang schlicht zu viel sind, ebenso bei 
Isolatoren zB von Analog. Würde also bei relativ hohem 
Materialeinsatz/Preis wieder auf eine Spannungsteiler-Lösung rauslaufen.

von (prx) A. K. (prx)


Lesenswert?

Florian G. schrieb:
> - Einfacher Spannungsteiler zwischen Bus, µC-Pin und Ground, Pin wäre
> dann halt nicht gegen Spikes etc. geschützt

Wenn der Spannungsteiler hochohmig genug ist, dann sorgt der µC für sich 
selbst, in Form der Schutzschaltung des Pins bei Spikes.

: Bearbeitet durch User
von spontan (Gast)


Lesenswert?

Gibts ein paar mehr Informationen?

Wie hoch darf der Bus (???) belastet werden?
Welche Spannung stellt Low oder High dar, mit welchen Toleranzen?
Datenrate?
Uni- oder bi-direktional?

von Rainer M. (excogitator)


Lesenswert?

Ich versteh das Problem mit dem Optokoppler nicht wirklich.
Der Optokoppler besteht am Eingang nur aus einer LED. Zusammen mit einem 
passenden Vorwiderstand sollten auch 25V kein Problem sein.

Gruß
Rainer

von (prx) A. K. (prx)


Lesenswert?

Beim Optokoppler sehe ich eher ein Problem bei der Strombelastung.

von ich (Gast)


Lesenswert?

A. K. schrieb:
> Beim Optokoppler sehe ich eher ein Problem bei der Strombelastung.

Wie meinst du das? Angenommen, man will 10mA für die OK-LED, nimmt man 
einen Vorwiderstand von 2k5 / 0,25W. Wo siehst du da ein Problem?

von Florian G. (suffix90)


Lesenswert?

A. K. schrieb:
> Florian G. schrieb:
>> - Einfacher Spannungsteiler zwischen Bus, µC-Pin und Ground, Pin wäre
>> dann halt nicht gegen Spikes etc. geschützt
>
> Wenn der Spannungsteiler hochohmig genug ist, dann sorgt der µC für sich
> selbst, in Form der Schutzschaltung des Pins bei Spikes.

Wie hoch darf ich hier in etwa gehen um mir nicht zu viel Noise 
einzukoppeln? Sind zwei R zwischen 1k und 50k okay? 3.3/25 ist grob 1/8, 
eine Kombination aus 5k und 35k sollte also den gesuchten Teiler grob 
realisieren, alternativ 10k und 70k, genaue Werte natürlich je nach 
Verfügbarkeit in E-Reihen.
An sich wäre mir das die sympathischste Lösung;)

spontan schrieb:
> Gibts ein paar mehr Informationen?
>
> Wie hoch darf der Bus (???) belastet werden?
> Welche Spannung stellt Low oder High dar, mit welchen Toleranzen?
> Datenrate?
> Uni- oder bi-direktional?

Bus ist eine Kombination aus Energie- und Datenbus, kann also durchaus 
im Watt-Bereich belastet werden, was ich allerdings nicht will.
High- und Low- Pegel sind symmetrisch, wobei alles zwischen 18V und 22V 
sein kann, ich wäre aber gerne robust bis hin zu 25V.
Unidirektional, mein µC muss nur lesen können, Grundfrequenz sind 
38.48kHz, durch Kodierung (ein Bit = 8 Symbole) effektive 
Übertragungsrate 4.8kBit/s

Rainer M. schrieb:
> Ich versteh das Problem mit dem Optokoppler nicht wirklich.
> Der Optokoppler besteht am Eingang nur aus einer LED. Zusammen mit einem
> passenden Vorwiderstand sollten auch 25V kein Problem sein.
>
> Gruß
> Rainer

Ups, da habe ich wohl den Wald vor lauter Bäumen nicht gesehen. Ja 
natürlich, Flussspannung/Durchlassstrom sind ja in den Datenblättern 
schön dokumentiert, damit wäre diese Lösung doch eher wieder im 
Favoritenkreis ;)

von Florian G. (suffix90)


Lesenswert?

ich schrieb:
> A. K. schrieb:
>> Beim Optokoppler sehe ich eher ein Problem bei der Strombelastung.
>
> Wie meinst du das? Angenommen, man will 10mA für die OK-LED, nimmt man
> einen Vorwiderstand von 2k5 / 0,25W. Wo siehst du da ein Problem?

Dito

von (prx) A. K. (prx)


Lesenswert?

ich schrieb:
> Wie meinst du das? Angenommen, man will 10mA für die OK-LED, nimmt man
> einen Vorwiderstand von 2k5 / 0,25W. Wo siehst du da ein Problem?

In den 10mA. Die muss der Bus nämlich liefern.

von Florian G. (suffix90)


Lesenswert?

Sorry, Nachtrag:

> spontan schrieb:
>> Gibts ein paar mehr Informationen?
>>
>> Wie hoch darf der Bus (???) belastet werden?
>> Welche Spannung stellt Low oder High dar, mit welchen Toleranzen?
>> Datenrate?
>> Uni- oder bi-direktional?
>
> Bus ist eine Kombination aus Energie- und Datenbus, kann also durchaus
> im Watt-Bereich belastet werden, was ich allerdings nicht will.
> High- und Low- Pegel sind symmetrisch, wobei alles zwischen 18V und 22V
> sein kann, ich wäre aber gerne robust bis hin zu 25V.
> Unidirektional, mein µC muss nur lesen können, Grundfrequenz sind
> 38.48kHz, durch Kodierung (ein Bit = 8 Symbole) effektive
> Übertragungsrate 4.8kBit/s

Mit symmetrisch meine ich alles von +-18V bis +-22V, der low-Pegel wird 
also mittels negativer Spannung realisiert. Alles negative würde ich vor 
jeglichem Level-Converter mittels Diode abschneiden.

Belasten will ich den Bus nicht, da ich meine Hardware ohne 
Schwierigkeiten auch anderweitig versorgen kann, der Bus-Transmitter 
aber natürlich nur eine begrenzte Sendeleistung hat und ich die Leistung 
für andere, weniger flexiblere Empfänger sparen will.

von Conny G. (conny_g)


Lesenswert?

A. K. schrieb:
> ich schrieb:
>> Wie meinst du das? Angenommen, man will 10mA für die OK-LED, nimmt man
>> einen Vorwiderstand von 2k5 / 0,25W. Wo siehst du da ein Problem?
>
> In den 10mA. Die muss der Bus nämlich liefern.

Gibt's nicht auch OK, die mit weniger auskommen?

von Florian G. (suffix90)


Lesenswert?

Conny G. schrieb:
> A. K. schrieb:
>> ich schrieb:
>>> Wie meinst du das? Angenommen, man will 10mA für die OK-LED, nimmt man
>>> einen Vorwiderstand von 2k5 / 0,25W. Wo siehst du da ein Problem?
>>
>> In den 10mA. Die muss der Bus nämlich liefern.
>
> Gibt's nicht auch OK, die mit weniger auskommen?

Hier: http://www.vishay.com/docs/82405/vol618a.pdf Fig. 6 -> Bei 25° 1mA 
bei 1.1V, das entspräche bei 25V einem 23.9k Vorwiderstand -> Bueno :)

von ich (Gast)


Lesenswert?

A. K. schrieb:
> In den 10mA. Die muss der Bus nämlich liefern.

Stimmt, da hast du natülich recht. Da habe ich nicht dran gedacht.
Aber mittlerweile wissen wir, daß das kein Problem darstellt:

Florian G. schrieb:
> Bus ist eine Kombination aus Energie- und Datenbus, kann also durchaus
> im Watt-Bereich belastet werden, was ich allerdings nicht will.

von (prx) A. K. (prx)


Lesenswert?

ich schrieb:
> Aber mittlerweile wissen wir, daß das kein Problem darstellt:
>
> Florian G. schrieb:
>> Bus ist eine Kombination aus Energie- und Datenbus, kann also durchaus
>> im Watt-Bereich belastet werden, was ich allerdings nicht will.

Oder doch:

Florian G. schrieb:
> was ich allerdings nicht will.

Florian G. schrieb:
> Belasten will ich den Bus nicht,

: Bearbeitet durch User
von Conny G. (conny_g)


Lesenswert?

Florian G. schrieb:
> Conny G. schrieb:
>> A. K. schrieb:
>>> ich schrieb:
>>>> Wie meinst du das? Angenommen, man will 10mA für die OK-LED, nimmt man
>>>> einen Vorwiderstand von 2k5 / 0,25W. Wo siehst du da ein Problem?
>>>
>>> In den 10mA. Die muss der Bus nämlich liefern.
>>
>> Gibt's nicht auch OK, die mit weniger auskommen?
>
> Hier: http://www.vishay.com/docs/82405/vol618a.pdf Fig. 6 -> Bei 25° 1mA
> bei 1.1V, das entspräche bei 25V einem 23.9k Vorwiderstand -> Bueno :)

So würde ich es machen.

von Florian G. (suffix90)


Lesenswert?

Conny G. schrieb:
> Florian G. schrieb:
>> Conny G. schrieb:
>>> A. K. schrieb:
>>>> ich schrieb:
>>>>> Wie meinst du das? Angenommen, man will 10mA für die OK-LED, nimmt man
>>>>> einen Vorwiderstand von 2k5 / 0,25W. Wo siehst du da ein Problem?
>>>>
>>>> In den 10mA. Die muss der Bus nämlich liefern.
>>>
>>> Gibt's nicht auch OK, die mit weniger auskommen?
>>
>> Hier: http://www.vishay.com/docs/82405/vol618a.pdf Fig. 6 -> Bei 25° 1mA
>> bei 1.1V, das entspräche bei 25V einem 23.9k Vorwiderstand -> Bueno :)
>
> So würde ich es machen.

Werde es mal so umsetzen, danke für eure tolle Hilfe :)

von ich (Gast)


Lesenswert?

A. K. schrieb:
> ich schrieb:
>> Aber mittlerweile wissen wir, daß das kein Problem darstellt:
>>
>> Florian G. schrieb:
>>> Bus ist eine Kombination aus Energie- und Datenbus, kann also durchaus
>>> im Watt-Bereich belastet werden, was ich allerdings nicht will.
>
> Oder doch:
>
> Florian G. schrieb:
>> was ich allerdings nicht will.
>
> Florian G. schrieb:
>> Belasten will ich den Bus nicht,

1mA bei obengenanntem OK ist keine nennenswerte Last für einen Bus, der 
im Watt-Bereich belastet werden kann.

von Conny G. (conny_g)


Lesenswert?

Hallo Florian,

vielleicht ist das auch interessant für Dich.
Hier habe ich gerade beim Rumsuchen / Rumlesen eine Studentenarbeiten 
gefunden, die allgemein Bussysteme zusammenfasst.

http://www.ib.cvut.cz/sites/default/files/Studijni_materialy/SZS/Buses,%20Protocols%20and%20Systems%20for%20Home%20and%20Building%20Automation.pdf

Eine Erkenntnis für mich draus:
Busse wie Deiner oder der Siedle-Bus mit dem ich mich schon gespielt 
haben arbeiten nach dem Prinzip:
- sie liefern Strom und Daten
- Normalpegel liegt bei 16-27V
- der Master sendet Daten über Spannungswechsel
- die Slaves senden Daten über Stromwechsel

Die letzten beiden habe ich bei "meinem" Bus durch Messen und Spielen 
herausgefunden
Beitrag "Siedle In-Home-Bus Protokoll"
Beitrag "Re: Komische Spannungen - woran liegt's?"
und war gerade auf der Suche nach einer allgemeinen Busbeschreibung für 
derlei Systeme.
Das Doc oben ist zwar noch nicht genau das was ich gesucht habe, aber 
ist schon mal eins weiter.

Vg,
Conny

von Humpfdidumpf (Gast)


Lesenswert?

Hi,

Optokoppler sind ungüngstig bei so kleinen Strömen wie den 1mA. Die sind 
die extrem langsam bzw. man braucht einen sehr guten. Grund ist der für 
hohe Geschwindigkeiten nötige hohe Transistorstrom und das CTR von meist 
um die <1. Dazu einfach mal das Datenblatt konsultieren. Die angegebenen 
Zeiten gelten oft für Ströme um 10mA, nicht 1mA. Das kann einen 
gewaltigen Unterschied machen.

Daher das Datenblatt genau prüfen!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.