Forum: Mikrocontroller und Digitale Elektronik 8 analoge Signale zu 4 digitalen machen


von Sebastian B. (lufti)


Lesenswert?

Hallo, ;)

ich habe 8 230V Glimmlämpchen einer fremden Schaltung, die ich irgendwie 
auf maximal 4 digitale Eingänge meines AVR schalten muss. Habt Ihr eine 
Idee, wie ich das machen könnte?

Eine galvanische Trennung wäre bei 230V sinnvoll. Dachte da zuerst an 
Phototransistoren, habe da aber gar keine Erfahrung mit. Die Umwandlung 
könnte man mit mit einem 8:3 BCD-Binär-Wandler (kennt ihr einen?) 
machen.

Vielleicht könnt ihr mir da eine Beispielschaltung zum abgucken zeigen 
oder habt sonst noch Tipps für mich.

Vielen Dank im Voraus!

Sebastian

von Hannes J. (Firma: _⌨_) (pnuebergang)


Lesenswert?

230V und keine Ahnung? Mach was einfacheres, weniger gefährliches.

von Uwe G. (scd)


Lesenswert?

Womit werden diese Glimmlampen angesteuert? Warum bzw. wofür willst Du 
deren Zustand erfassen? Mach mal nähere Angaben zum Gesamtprojekt. Und 
Finger weg von 230V, siehe Hannes Post ..

von Sebastian B. (lufti)


Lesenswert?

Es ist nicht so, dass ich keine Ahnung hätte. Mein Schaltungsrepertoire 
ist nur sehr begrenzt und ich will die bestmögliche Lösung. Warum sollte 
ich nicht mal die Profis fragen, bevor ich mir Mühe in die falsche 
Richtung mache? Ich habe schon einige Erfahrungen mit AVR, 8051 und ein 
einigen 230V Schaltungen und - du glaubst es nicht - eine eingerostete 
Kommunikationselektronikerausbildung. Mach dir da mal keine Sorgen. ;)

Dennoch sind mir die 230V selbst nicht geheuer und dachte genau aus 
diesem Grund an Phototransistoren, so dass ich nicht einmal das Gehäuse 
der anderen Schaltung öffnen muss.

EDIT: Die fremde Schaltung ist ein Wasserboiler, tief vergraben im 
Keller, deren Temperaturstand ich anhand seiner 8 Glimmlämpchen auslesen 
und über das Netzwerk verschicken möchte.

von Max (Gast)


Lesenswert?

Fragen:
- Leuchtet IMMER nur eine Lampe?
- is es im keller dunkel?
- muss man die anzeige auch noch im keller ablesen können
- wieso nur 4 pins ?

von Sebastian B. (lufti)


Lesenswert?

- Es leuchten mehrere Lampen gleichzeitig (eine symbolisiert das 
"Heizen")
- Im Keller ist es nicht immer dunkel, aber ich kann die Photoelemente 
gut abdichten.
- Die Lampen sind groß genug um trotz Phototransistoren noch abgelesen 
werden zu können.
- 4 Pins, da ich nur noch 4 an meinem AVR-NET-IO frei habe.

von Wolfgang (Gast)


Lesenswert?

Sebastian B. schrieb:
> - Es leuchten mehrere Lampen gleichzeitig (eine symbolisiert das
> "Heizen")

Dann wird es nicht möglich sein, den Zustand von 8 Anzeigen über 4 
Portpins zu führen.

Was spricht dagegen, ein Schieberegister mit 8 Eingängen (74hc165) vor 
deinen µC zu hängen, so dass du in einem Byte den Zustand deiner 
Anzeigen repräsentierst?
http://www.mikrocontroller.net/articles/AVR-Tutorial:_Schieberegister

Falls deine Glimmlampen mit 50/100 Hz flackern, müßtest du dich beim 
Auslesen des Zustandes mit der Netzschwingung synchronisieren.

von Max (Gast)


Lesenswert?

nimm nen externen opamp (gibts als 4x in einem gehäuse, davon 2 stück), 
schalt jeden der 8 als schmitt-trigger (komparator mit hysterese) und 
stell den schaltpunt gut zwischen hel-dunkel ein, das auslesen erfolgt 
dann einfach der schieberegister.
Kostet minimal (<10€) und sollte recht gut funktionieren...

von Jobst M. (jobstens-de)


Lesenswert?

Wo sind da die analogen Signale?
Ich würde auch ein Schieberegister empfehlen.


Gruß

Jobst

von MaWin (Gast)


Lesenswert?

So:

  +5V
   |     LPT80
  |< Phototransistor  74HC165  uC
   |                  +-----+  +---
   +------------------|A    |  |
   |                --|B    |  |
  10k               --|C CLK|--|
   |                --|D    |  |
  GND               --|E  LD|--|
                    --|F    |  |
                    --|G OUT|--|
                    --|H    |  |
                      +-----+  +--

Die 10k evemtuell an die Helligkeit deiner Lampen
und der Restumgebungshelligkeit anpassen.

von MaWin (Gast)


Lesenswert?

Ops, was vollkommen vergessen wurde:
Glimmlampen flimmern mit 50 oder 100Hz.
Wenn man Pech hat, "sieht" man genau die Dunkelphase.

Also noch ein Kondensator dran, dann müsste auch noch
ein Schmitt-Trigger dahinter, und weil der invertiert
den Phototransistor an die andere Polarität:

  +5V
   |
  10k
   |          74HC14   +-----+  +---
   +--100k--+---|>o----|A    |  |
   |        |        --|B    |  |
   |       1uF       --|C CLK|--|
   |        |        --|D    |  |
  |< LPT80  |        --|E  LD|--|
   |E       |        --|F    |  |
  GND      GND       --|G OUT|--|
                     --|H    |  |
                       +-----+  +--

von Wolfgang (Gast)


Lesenswert?

MaWin schrieb:
> Ops, was vollkommen vergessen wurde:
> Glimmlampen flimmern mit 50 oder 100Hz.

Wieso?

Wolfgang schrieb:
> Falls deine Glimmlampen mit 50/100 Hz flackern, müßtest du dich beim
> Auslesen des Zustandes mit der Netzschwingung synchronisieren.

... oder irgendetwas zur Signalberuhigung vorsehen.

von Jobst M. (jobstens-de)


Lesenswert?

MaWin schrieb:
> Glimmlampen flimmern mit 50 oder 100Hz.
> Wenn man Pech hat, "sieht" man genau die Dunkelphase.

Aber das ist doch ein relativ kleines Problem. Einfach mehrfach 
einlesen.


Gruß

Jobst

von Hans (Gast)


Lesenswert?

Na ja, wenn es auch im normalen Betrieb den Zustand "alle Lampen aus" 
gibt wird man mit mehrmals einlesen nicht glücklich.

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Sebastian B. schrieb:
> - 4 Pins, da ich nur noch 4 an meinem AVR-NET-IO frei habe.

Wenn die 4 Eingänge auch integrierte AD-Wandler haben, kannst du jeweils 
zwei binäre Signale so überlagern, dass du als Ergebnis EIN Signal mit 
vier möglichen Stufen hast.

von Wolfgang (Gast)


Lesenswert?

Hans schrieb:
> Na ja, wenn es auch im normalen Betrieb den Zustand "alle Lampen aus"
> gibt wird man mit mehrmals einlesen nicht glücklich.

Das kommt drauf an, ob man es fertig bringt, zeitlich halbwegs 
koordiniert so abzutasten, dass man die Anzeigen innerhalb einer Sequenz 
sicher einmal in der Nähe des Maximums erwischt, wenn man sich dann 
partout nicht synchronisieren möchte.

von citb (Gast)


Lesenswert?

Wolfgang schrieb:
> Das kommt drauf an, ob man es fertig bringt, zeitlich halbwegs
> koordiniert so abzutasten, dass man die Anzeigen innerhalb einer Sequenz
> sicher einmal in der Nähe des Maximums erwischt, wenn man sich dann
> partout nicht synchronisieren möchte.

Naja, da reicht sicher 4x Abtasten im Abstand von je 5ms.
Da ist dann mindestens eine Abtastung von min. 0,7*Maximum dabei.

citb

von i sense (Gast)


Lesenswert?

Gib mal das Wort 'Stromsensor' in die www Suchmaschine ein.

von Sebastian B. (lufti)


Lesenswert?

Vielen, vielen Dank für Eure Hilfe! :)

Ich habe eben die Variante mit den Phototransistoren und nem Kondensator 
an einem Digitalpin eines Testboards ausprobiert, mit nem 
Operationsverstärker als Schmitt-Trigger.
=> Scheint wunderbar zu funktionieren - Auch bei Kellerlicht + 
Taschenlampe!!

Werde mir jetzt nen Mehrfach-Schmitt-Trigger-Baustein und einen 74HC165 
(Schieberegister) bestellen.

In der Zwischenzeit muss ich nur noch herausfinden, welche Firmware für 
das AVR-NET-IO am geeignetsten ist (muss bei http bzw, reinen TCP 
Abfragen die Sensordaten verschicken können und ein oder zwei Ausgänge 
schalten können).

So reibungslos hat noch kein Projekt geklappt!

Danke nochmals! :)

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.