Forum: Mikrocontroller und Digitale Elektronik Auswertung DEOL Widerstand


von Harald M. (transporter08)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich wollte mir eine Auswerteschaltung für eine Meldelinie in einer 
Alarmzentrale bauen, die ich in einem AVR weiterverwerten kann.

Die Verdrahtung der Meldelinie soll nach dem im Bild gezeigten Muster 
geschehen.

Also die Meldelinie ist mit einem Abschlusswiderstand versehen (EOL) und 
die NO-Kontakte sind mit Widerständen gebrückt.

Beispiel (ich lasse es mal in Englisch):

both contacts open, and tamper not broken =
2.2K + 4.7K+4.7K = 11.6K which indicates tamper ok and zone open,

One contact Open and tamper not broken =
2.2K + 4.7K + 0 = 6.8K = tamper ok and zone open

neither contact open, and tamper not broken =
2.2K + 0K + 0K = 2.2K - tamper ok, zone closed.

Wie sähe eine störungsfeste Auswerteschaltung aus, die sowas z.B. für 
den AVR-ADC schmackhaft macht ?

Welche OPAMP-Grundschaltung braucht man da ?

Ich glaube, in die Schleife wird ein Strom eingeprägt, damit lange 
Leitungen störungsfrei betrieben werden können.

Vielen Dank schonmal.

von Joe F. (easylife)


Lesenswert?

Was für eine Stromversorgung hast du denn zur Verfügung?
Ein passender Messwiderstand sollte ausreichen, um den zu messenden 
Widerstandswert in eine für einen ADC passende Eingangsspannung zu 
verwandeln.

von Harald M. (transporter08)


Lesenswert?

Als Stromversorgung hatte ich an 5V oder 12V gedacht.

Wie müsste die Meldelinie beschaltet werden um

a) einen Strom einzuprägen (falls nötig wegen Störsicherheit)

b) die Linie betriebssicher auszuwerten ?

Oder gibt es vielleicht jemand, der ein Schaltbild von so einer 
Eingangsschaltung einer Meldelinie einer Alarmzentrale hat ?

von Joe F. (easylife)


Lesenswert?

Was meinst du mit "Strom einprägen"?
Du brauchst eine stabile Spannungsversorgung, und schaltest die 
Meldelinie und einen Messwiderstand in Reihe.
Am Messwiderstand fällt abhängig vom Zustand der Meldelinie eine 
Spannung ab, die du mit dem ADC misst.
Für jeden bekannten Zustand bekommst du also einen entsprechenden Wert 
vom ADC.
Betriebssicherheit erreichst du, indem du den gemessenen Wert in 
Software mit einer gewissen Toleranz auswertest, und mehrere Messwerte 
mittelst.
So eliminierst du Fehlauslösungen durch kurze elektromagnetische 
Einstrahlungen (z.B. durch Blitze in der Nähe), oder temperaturbedingte 
Widerstandsänderungen.
Überspannungsschutz nicht vergessen.

von Joe F. (easylife)


Angehängte Dateien:

Lesenswert?

Also, folgende Idee:

Du machst aus den 12V mit einem 10V LDO eine saubere, stabile 10V 
Versorgung.

Mit einem Widerstandsteiler 4.7K / 3.3K (1%) teilst du diese 10V auf 
4.125V.
Diese Spannung nimmst du als Referenz für deinen ADC.

Die stabilen 10V legst du auch an ein Ende der Meldelinie.
Das andere Ende kommt an einen 1.5K (1%) Widerstand, der als 
Messwiderstand dient. Das andere Ende des Messwiderstandes ist am 
gemeinsamen GND der 12V Versorgung, der 5V Versorgung des uC etc.

An dem Punkt der zwischen Messwiderstand und Meldelinie liegt, schließt 
du den ADC Eingang an.

In dem Fall ergeben sich bei einem 10-bit ADC die in der angehängten 
Grafik gezeigten Spannungen (bei bis zu 5 hintereinander hängenden 
Alarmkontakten).
Eine Toleranz von +/-8% bei der Auswertung der Messwerte sollte nicht 
schaden.

Das Eingangssignal am ADC würde ich noch mit einem kleinen RC-Tiefpass 
glätten, beachtet werden muss dabei, das bei Zustandsänderung der 
Meldelinie kurzzeitig "ungültige" Messwerte entstehen.
Die Auswertesoftware sollte dies berücksichtigen.

von Joe F. (easylife)


Lesenswert?

Nachtrag:
also oberste Grenze sollte man besser nicht den ADC full range Wert 
nehmen, sondern knapp drunter.
So findest du auch raus, ob jemand mit einer externen Spannungsquelle 
versucht das System zu betrügen.

von Peter D. (peda)


Lesenswert?

Harald Meier schrieb:
> Welche OPAMP-Grundschaltung braucht man da ?

Brauchts nicht, Du mußt ja nur 3 Werte erkennen.
Einfach in Reihe mit 10k nach VCC und an einen ADC-Eingang.

Die Formeln für die Schwellen und Fangbereiche schreibt man direkt hin 
und läßt sie vom Compiler ausrechnen.
Ein Beispiel dafür findest Du hier:

Beitrag "Tastenmatrix auslesen über nur 2 Leitungen"

von Harald M. (transporter08)


Lesenswert?

Sorry für die verspätete Rückmeldung.

Erstmal vielen Dank für die guten Vorschläge und Erklärungen.

Bei der Verschaltung, die der Joe weiter oben angeregt hat, gibt es aber 
folgendes (theoretisches ?) Problem:

Wenn der EOL Widerstand (in dem Beispiel 2.2k) normal anliegt, ist alles 
ok => Spannung aufgrund des Teilers mit 1.5k knapp unter ARef. Wird 
dieser EOL allerdings kurzgeschlossen (oder Kurzschluss auf der 
Strippe), dann liegen ja die vollen 10V am ADC Eingang an, oder ?

Da brauchts ja bestimmt noch eine Schutzmaßnahme. Auch der Einwand mit 
der Zuführung einer Spannung auf der Linie ist nicht von schlechten 
Eltern. Wie könnte man dem Problem begegnen ?

von Joe F. (easylife)


Lesenswert?

Harald Meier schrieb:
> Wird
> dieser EOL allerdings kurzgeschlossen (oder Kurzschluss auf der
> Strippe), dann liegen ja die vollen 10V am ADC Eingang an, oder ?

Das ist richtig.
Du könntest noch 100 Ohm seriell schalten, und eine Diode gegen VCC 
legen.

Harald Meier schrieb:
> Auch der Einwand mit
> der Zuführung einer Spannung auf der Linie ist nicht von schlechten
> Eltern. Wie könnte man dem Problem begegnen ?

Wie gesagt, wenn du dein oberes Limit so ansetzt, dass der ADC nicht 
voll ausgesteuert wird, dann kannst du auch dies erkennen. ADC maximum 
heisst jemand speist eine Spannung ein.
Wenn jemand aber so gut ist, die Spannung vorher genau zu messen, kannst 
du nicht viel machen.
Aber Einbrecher sind ja bekanntermaßen dumm.

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.