mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Mittelwert über n Spannungen durch Schaltung


Autor: Christian Weichel (weichel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich möchte um zu verhindern das mir die ganze Zeit die Blumen wegsterben 
eine Art portables "Feuchtigkeitsmessgerät" bauen. Nachdem ich mir 
mehrere Threads (vor allem in diesem wirklich großartigen Forum) 
durchgeslesen habe, bin ich zu dem Schluss gekommen das mit Hilfe von 
Widerständen zu realisieren (die Messung findet ja nicht alle 10s statt, 
sondern so jeden Tag mal und dann nur für kurze Zeit -> wenig 
Korrosion).

Nun habe ich aber das Problem das manche Blumenkübel größer sind als 
andere. Dort würde ich gerne mit mehreren "Sensoren" messen. Da nun aber 
schon alle meine ADC PINs (um genau zu sein wirklich alle Pins) an dem 
Atmega8 belegt sind, bräuchte ich eine Schaltung welche in der Lage ist 
die an beliebig vielen Widerständen abfallende Spannung zu mitteln.

Ist sowas überhaupt (mit vertretbarem Aufwand) möglich, oder muss man 
sich vorher auf eine gewisse Anzahl an Widerständen festlegen (und dann 
z.B. über so ne Art Spannungsteilerkonstruktion mitteln, siehe 
Beitrag "Re: Schaltung zur Bererchung des Durschnitt von Spannungen")?

Vielen Dank für Hilfe ^^

Autor: Stefan Salewski (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Geht mit einem Operationsverstärker geschaltet als Addierer, siehe etwa

http://www.mikrocontroller.net/articles/Operations...

Der Addierer (Summierverstärker)

Autor: Εrnst B✶ (ernst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist bei den Anwendungsfall nicht eher interressant, die höchste oder 
niedrigste Spannung zu messen?
Wenn eine Ecke des Blumenkübels unter Wasser steht, die andere aber 
schon staubtrocken ist, soll doch wohl ein Alarm ausgegeben werden, auch 
wenns im Mittel stimmt...
Lässt sich evtl. einfach mit einer Hand voll Dioden realisieren.

Autor: Christian Weichel (weichel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wow, das ging ja schnell :-)

Die Variante mit dem OP sieht interessant aus. Soweit ich das verstehe 
stellen sich mir dabei aber zwei weitere Fragen:
  1) Die Spannung Ua scheint negativ zu sein (da invertierter OP) und 
siehe GL. Da ich vorhabe die Spannung (Ua?) mit einem ADC zu messen, 
müsste ich dafür sorgen das sie wieder positiv wird (Spannungsteiler?)
  2) Da die Spannungen durch den OP addiert werden, müsste ich um den 
Mittelwert zu errechnen, Ua noch durch die Anzahl der Widerstände 
teilen?

Die Idee mit der höchsten/bzw. niedrigsten Spannung ist in der Tat sehr 
interessant. Wie könnte man das mit Dioden implementieren? (Filter mit 
versch. Z-Dioden nach GND?). Hab in Elektrotechnik noch nicht viel 
Erfahrung (merkt man wahrscheinlich :-)

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

4051 als Analog-Multiplexer sind 8 Eingänge, die dann an einem 
AVR-ADC-Eingang landen. 3 Leitungen für deren Eingänge A, B, C macht 4 
Pins.
1x Decoder 74HCT138 an die nächsten 2 Pins, dann ist Port A voll.
Die ersten 4 Decoderausgänge steuern die Inhibit von 4 Stück 4051 macht 
36 Analog-Eingänge. Wenn Du noch ein Pin für den HCT138 findest, kannst 
Du 4x 4051 selektieren, macht 64 analoge Eingänge.

Zeit zum steuern der Mux-Geschichte hast DU ja mehr als genug.
Wenn die Spannungen Deiner Sensoren irgendwo zwischen 0V und 5V zur 
Auswertung bleiben, geht auch alles mit 5V.

Ganz unten (0V und ganz oben (5V wird es ungenau wegen der 4051, sollte 
in Deiner Anwendung aber keine Rolle spielen.

IC-Kosten so um 1 Euro, außer den übliche 100n Cs keine Bauteile, die 
nicht sowieso für Deine Sensoren brauchst.

Mit einem zusätzlichen 74HCT573 kannst Du auch für 8x 4051 mit 5 
Portpins auskommen: 1x ADC, A,B,C an die 4051 und an 3 Eingänge des 573. 
Die Eingänge des 74HCT138 an die Ausgänge des '573 und eine Portpin für 
den Latch-Puls des '573.

Adresse für den gewünschten 4051 anlegen, in den 537 latchen, Adresse 
des MUX im 4051 anlegen, messen.

Gruß aus Berlin
Michael

Autor: Christian Weichel (weichel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wow, das ist dann die vollausstattung ^^
Das Problem ist das eben schon (fast) alle PINs am Atmega belegt sind. 
D.h. selbst die benötigten 6 Leitungen für die MUX-ICs sind nicht mehr 
drin. Durch n bischen umschaufeln hab ich zumindest noch nen weiteren 
ADC PIN frei bekommen.

Eine Idee war noch die "Sensoren" parallel zu schalten, und über ne 
zweite Strecke mit definierten Widerständen die Anzahl an "Sensoren" zu 
messen, z.B. 1k pro Sensor, und im uC den gemessenen Wert der Sensoren 
durch die Anzahl an Widerständen zu teilen.
Aber dabei währen die Sensoren schon wieder komplexer als einfach nur 
zwei Nägel (o.ä.), und mein schön einfacher Spannungsteiler is auf 
einmal nicht mehr so einfach :-)

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Du kannst die 4051 ja über Schieberegister selektieren, Du hast ja keine 
Zeitprobleme.

Dann brauchst Du einen ADC-Pin und 1x Clock, 2x DataOut und 1x Reset für 
z.B. 74HCT164.

For Clock nimmst Du Deinen freien Pin, Reset und DataOut lassen sich 
sicher irgendwo mit anbinden. Taster z.B. oder die Datenleitungen eines 
Display o.ä.
Hängt nur davon ab, was Du eigentlich am Mega8 dranhast.
Dein Programm weiß doch zu jeder Zeit, was es macht.
Wenn z.B. ein Display angesteuert wird, sind die Daten nur beim E-Clock 
interessant, sonst sind sie dem Display egal. Währen dieser Zeit muß Du 
ja nicht messen.
An einen 164 könntest Du 5x 4051 hängen, 3x deren Daten und 5x Inhibit 
zur Auswahl. Wären wieder 40 Sensoren...

Gruß aus Berlin
Michael

Autor: Stefan Salewski (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Die Variante mit dem OP sieht interessant aus. Soweit ich das verstehe
>stellen sich mir dabei aber zwei weitere Fragen:
>1) Die Spannung Ua scheint negativ zu sein (da invertierter OP) und
>siehe GL. Da ich vorhabe die Spannung (Ua?) mit einem ADC zu messen,
>müsste ich dafür sorgen das sie wieder positiv wird (Spannungsteiler?)
>2) Da die Spannungen durch den OP addiert werden, müsste ich um den
>Mittelwert zu errechnen, Ua noch durch die Anzahl der Widerstände
>teilen?

Ja, der gewöhnliche Addierer mit OP invertiert das Signal. Daher:
Entweder wenn möglich von den Sensoren ein negatives Signal erzeugen 
lassen, das dann invertiert und damit wieder positiv wird. Oder einen 
weiteren invertierenden OP einsetzen. OPs kosten ja sehr wenig, es gibt 
auch mehrere in einem Gehäuse. Der Nachteil bei dieser Variante ist nur, 
dass man für den Betrieb i.a. eine positive und eine negative 
Versorgungsspannung benötigt.

Um aus der Summe einen Mittelwert zu machen kann man dann einfach einen 
Spannungsteiler einsetzen, oder aber man macht die Verstärkung des 
invertierenden Addierers gleich so klein, dass man nicht teilen muss.

Aber wahrscheinlich sind die anderen Vorschläge mit Multiplexer usw. die 
bessere Lösung.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.