24V Sensor auswerten

Hallo Leute,
ich wollte einen digitalen 24V Sensor an meinen Arduino Mega auswerten. Also nur den Logikpegel 0V oder 24V. Nun verträgt der digital Input-Pin nur 5V Volt :frowning:
Ich wollte jetzt die Ausgangsspannung des Sensors mit Hilfe eines Spannungsteilers splitten.
Wie bekomme ich raus, welche Widerstände ich brauche?
Das ist doch ein belasteter Spannungsteiler, da der Arduino einen intern Widerstand hat, oder sehe ich das falsch?
Wie groß genau ist dieser Widerstand?
Wenn ich mit einem Signalstrom <10mA rechne dürfte dem Eingang des Arduino doch nichts passieren?

Danke schon mal...

Eingangs-Pins sind extrem hochohmig. Der Eingangsstrom ist um die 1µA. Du kannst das also als unbelastet betrachten.

Die internen Pullups sind standardmäßig aus und spielen daher keine Rolle. Die braucht man nur wenn man das Signal extern auf Low zieht (z.B. über einen Taster oder Transistor). In deinem Fall gibt der Sensor High und Low aus.

Noch besser sind dafür allerdings Optokoppler.

Die Formel zu Berechnung findest du zum Beispiel hier: Spannungsteiler (unbelasteter belasteter)

Da du nur zwei Zustände auswerten möchtest, wäre es gut zu wissen, wie exakt der 5-Volt-Pegel vom Arduino erkannt wird, bzw. welche Toleranzen der Arduino bei der Erkennung hat. Irgendwo habe ich die Werte mal gelesen und mich gewundert, dass er so tolerant bei der Erkennung ist. Aber die Werte habe ich leider auch nicht mehr auf dem Schirm.

Frank

Gelegenheitsbastler:
Irgendwo habe ich die Werte mal gelesen und mich gewundert, dass er so tolerant bei der Erkennung ist. Aber die Werte habe ich leider auch nicht mehr auf dem Schirm.

Datenblatt Seite 313:

Maximum Low: Vcc * 0.3 = 1.5V
Minimum High: Vcc * 0.6 = 3V

Und maximal verträgt ein Pin Vcc + 0.5V

Genau das meinte ich. Unglaublich wie tolerant die Pegelauswertung ist. Optimal zum (nicht ganz so exakten) selber frickeln :wink:

Frank

wie schon gesagt, da mußt du dir keine Sorgen machen:
Input leakage current: 1µA

Spannungsteiler 18k/4,7k sollte ausreichend sein.

Wie sicher bist du dir, dass auf den 24V keine Spannungsspitzen drauf sind?
ggf Schutzbeschaltung vorsehen. z.B. parallel zu den 4,7k noch eine Z-Diode 5,1V

Die Z-Diode wird keine Transienten vom Arduino abhalten. Schon granicht, wenn 18k vorgeschaltet sind.

Wenn die Z Diode vor Überspannung schützen soll würde ich den Spng Teiler mit drei Widerständen in Reihe aufbauen, wobei zwei Widerstände parallel zur Z-Diode hängen. Mit diesen zwei R würde ich dann etwas über minimum High gehen, so ca. 4V.
Der Spannungsteiler sollte insgesamt 1,2k(20mA) haben, wenn die Sensorausgänge unbelastet sind. So kann eine sichere Erfassung der Level gewährleistet werden.

Danke * für die schnellen Antworten.

Ich habe jetzt für R1 einen 5,6k und für R2 einen 1,2k Widerstand gewählt. Spannung am Arduino-Input wären dann 4,2V bei einem Strom von 1mA.

Die Sensoren sollen „ganz normale“ optische, induktive usw. sein, von Sick (IM05-0B8PS-ZW1) oder Festo (SME-8-K5-LED-24) zum Beispiel.

Wie groß ist bei denen die Gefahr von Spannungsspitzen?

Eingangs-Pins sind extrem hochohmig.

Wie groß ist hochohmig? Gibt es keinen festen Zahlenwert?

Die Sensoren machen keine Spannungsspitzen.
Der Dreck im 24V Industrieumfeld kommt meistens von Motoren, Ventilen und weiteren Induktiven Verbrauchern...

Schau mal im Datenblatt nach dem Eingangswiderstand. Ich vermute mal >1MOhm

arduino-yoda:
Wie groß ist hochohmig? Gibt es keinen festen Zahlenwert?

Zitat Datenblatt:
Input Leakage Current I/O Pin max. 1 ?A

Also mindestens 5MegaOhm

Wie gesagt, wenn du ganz sicher gehen willst nimmst du Optokoppler. Dann ist das alles galvanisch getrennt.

Input Leakage Current I/O Pin max. 1 ?A

Was macht der interne Leckstrom und in welchem Zusammenhang steht er zu meinem Spannungsteiler?

Ist das ein Strom der nur dann fließt wenn kein Signal an dem Pin anliegt?

Was heiss schon "kein Signal" ...

Ich interpretiere das so, dass höchstens 1µA rein ( wenn 5V anliegt ) oder raus ( wenn 0 V anliegt) fliesst.

Wie gunterb schon gesagt hat, rechne mit 5MOhm.

Oder mit unendlich, das dürfte keinen wesentilchen Unterschied machen, wenn du im erlaubten Bereich bleibst.

Das ist CMOS Technik. Das heißt, dass Gate ist isoliert und du hast theoretisch stromlose Ansteuerung. Praktisch ist ein Widerstand zwischen Gate und Kanal vorhanden und es fließt doch etwas Strom wenn der Transistor geschaltet wird. Das ist der Leckstrom.

1µA kannst du vernachlässigen. Nimm den Spannungsteiler einfach als unbelastet an.