www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Füllstandsanzeige per LED-Bargraph-Anzeige


Autor: GURKE (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
Ich möchte eine Füllstandsanzeige für meine Unterirdische Zisterne 
bauen.

Der Wasserstand der Zisterne tendiert zwischen 0 und 250 cm.

Ich dachte an folgenden Drucksensor:
http://www.reichelt.de/?ACTION=3;ARTICLE=42062;PROVID=2402

Und folgende Bargraf-Anzeige:
http://www.reichelt.de/?ACTION=3;ARTICLE=31501;PROVID=2402


Nun wollte ich diese beiden mit einem Mikrocontroller verknüpfen.


Könnt ihr mir dazu ein passenden IC nennen und eine entsprechende 
Schaltung?


Gruß
GUREK

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
GURKE schrieb:
> Nun wollte ich diese beiden mit einem Mikrocontroller verknüpfen.

Hallo Gurke (sehr persönlich), also so wie ich das sehe bedarf es bei 
dir noch einiger Grundkenntnisse. Nur zu deiner Kenntniss: Ein 
Microcontroller ist zwar ein IC allerdings muss man den Programmieren! 
Das heißt man sag dem wenn [irgendwas passiert] mach [das und das].
Hierfür braucht man neben guten C Kenntnissen u.A. Programmiergeräte 
(sog. Programmer) und vor allem viel Zeit sich in die Thematik 
einzulesen.

Hier sind deine Einleitungen.

http://www.mikrocontroller.net/articles/AVR-Tutorial
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial

Hier geht es um sog. AVRs das ist einfach ein bestimmter Typ 
Microcontroller. Eine andere Familie sind die PICs vom Hersteller 
Microchip. Was nun besser ist ist eine philosophische Diskussion. Auch 
wenn ich begeisterter PIC-ler bin kann ich dir angesichts des guten 
deutschen Supports hier im Forum als Anfänger nur zu ATMEGA (AVR) raten.

Die Schaltung hilft dir genausowenig wie die Software alleine. Man muss 
soetwas langsam entwickeln. Software und Hardware müssen aufeinander 
abgestimmt werden. Eines alleine kann man unmöglich entwickeln.

Ich muss dir allerdings klar sagen, dass so ein Projekt schon etwas 
fortgeschrittener ist. Noch einige Sachen die du dir angeignen musst:

http://www.mikrocontroller.net/articles/LED-Matrix

Hier geht es um die Ansteuerung vieler LEDs. Das brauchst du bei deinem 
Projekt.

Ein weiteres Stichwort für dich ist AD-Wandlung (auch ADC genannt).

Zu guter letzt noch etwas Mathematik zur Angleichung der Nichtlinearität 
des Druckmessers: lineare Interpolation.

Zusammengefasst: Zeitaufwand "nebenher" ca. 2-4 Monate für die 
Grundlagen im Bereich Microcontroller. Dann kannst du mit dem Projekt 
beginnen. Wenn du die Grundlagen hast dann ist das Projekt eine 
"kleinere" Arbeit.

Gruß

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Reichelt ist tot, wird wohl irgend so ein MPX Ding sien und ne 10er 
Anzeige.
Der IC heisst LM3914.

Wozu nun der uC ?

Autor: Oliver Heinrichs (Firma: OliverHeinrichs.de) (dobson)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann ich nur empfehlen (Beitrag von Michael; Klasse geschrieben). Danach 
ist man viiiieeeel flexibler, wenn das nächste Projekt kommt...

Autor: GURKE (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Michael,
Danke erst mal für deine schnelle ausführliche Antwort!

Wie du schon richtig bemerkt hast, sind meine Kenntnisse im 
Mikrocontroller-Bereich noch sehr vage!
Bis jetzt habe ich nur mit einem AtMega32 gearbeitet und dies eigentlich 
kaum erfolgreich.
Momentan versuche ich C++ zu lernen. Ist diese ähnlich C?

Wenn ja, dann werde ich es vll. bald schaffen ein Programm zu schreiben, 
welches meines Erachtens relativ einfach gebaut ist.

& @MaWin:
Später kann ich dann ja auf den LM3914 umsteigen!

Ein Programmer für ISP habe ich auch um den AtMega zu beschreiben.

Ist es denn prinzipiell möglich, an einen der Inputs den Ausgang des 
Druck-Messers anzuschließen und an 10 Ausgängen (oder 7 (3x4 Matrix)) 
die LEDs?

Gruß
GURKE

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
GURKE schrieb:

> Ist es denn prinzipiell möglich, an einen der Inputs den Ausgang des
> Druck-Messers anzuschließen und an 10 Ausgängen (oder 7 (3x4 Matrix))
> die LEDs?

Ja. Ist an und für sich kein allzugroßes Problem. Den Sensor wird man 
höchst wahrscheinlich pegelmässig mit einer Anpasschaltung versehen, das 
ist aber eine elektronisches Standardproblem. Bei 10 Leds würde ich noch 
gar keine Spezialdinge wie Matrix etc. unternehmen, sondern die LED mehr 
oder weniger direkt an den µC anhängen.

Alles was du programmtechnisch dazu brauchst, findest du im 
AVR-GCC-Tutorial.

Einzig und allein deine Aussage, dass du "kaum erfolgreich bisher 
programmiert hast und daher momentan C++ lernst" macht mich ein klein 
wenig stutzig.

Allerdings ist ein µC für dein Vorhaben IMHO nicht wirklich das Mittel 
der Wahl. Besagter LM3914 erledigt im Grunde genau das, was du mit einem 
µC und zuätzlichem Programm erst mühsam entwickeln musst.

Autor: Christian T. (shuzz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gurke Du hast MaWin missverstanden: LM3914 ist ein IC welches genau das 
tut was Du möchtest: Eine analoge Spannung wird gemessen und zur 
Ansteuerung von 10 LEDs benutzt.

Es ist KEIN Mikrocontroller, also nicht programmierbar.

Googel mal danach, das Ding ist wirklich ideal für Dein Projekt 
geeignet.

Autor: Oliver Heinrichs (Firma: OliverHeinrichs.de) (dobson)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Christian ermutige ihn doch nicht etwas nicht zu lernen...
Wenn er elektronisch erstmal das Ausgangssignal auf 0-5V gebracht hat 
(In dem Falle des LM3914 oder auch des LM3915 wäre wahrscheinlich auch 
eine Anpassung nötig) sind es nur ca. 20 Zeilen Bascom-Code oder ein 
paar Zeilen mehr C-Code bis zum Erfolg. Die LEDs kann man wie schon 
erwähnt direkt an den Controller knallen. Nur bitte den maximalen Strom 
dabei beachten und Vorwiderstände dementsprechend dimensionieren.
Er möchte es doch lernen.
Man könnte auch eine Routine nachträglich einbauen, mit einer Erkennung, 
ob der Drucksensor korrekt arbeitet. Da sind einem alle Möglichkeiten 
offen. Mit den Standard-ICs wäre es zwar schnell, billig und einfach 
gemacht. Aber wo bliebe da der Spass?

Autor: GURKE (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo nochmal,
Erstmal möchte ich korrigieren, das ich C++ nicht wegen der yC lerne, 
sondern weil ich VBA einfach ätzend gebunden finde!

Ich habe mir das Datenblatt jetzt mal angeschaut. Sieht ja vom Aufbau 
her sehr einfach aus, nur eine Frage bleibt mir da noch, wie sage ich 
dem LM3914 wo der Spannungsbereich liegt?
Ich meine, ich habe eine Ausgangsspannung vom Druckschalter von 2 bis 
20mV. Dieses muss ich erst mal verstärken, so auf 0,4 bis 4V(x200). Das 
passt natürlich nun nicht zum Eingang des LM3914 (0...5V).

Gruß
Julian

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
GURKE schrieb:

> Ich meine, ich habe eine Ausgangsspannung vom Druckschalter von 2 bis
> 20mV. Dieses muss ich erst mal verstärken, so auf 0,4 bis 4V(x200).

Wenn du es bis auf 4V verstärken kannst, kannst du es auch auf 5V 
verstärken, ...

> Das
> passt natürlich nun nicht zum Eingang des LM3914 (0...5V).

... dann passt es.

Im übrigen hast du das Datenblatt nicht sehr gut studiert bzw. 
verstanden. Sonst hättest du gesehen, dass da intern einfach nur ein aus 
Widerständen gebildeter Spannungsteiler werkelt, dessen oberes und 
unteres Ende auf jeweils einen Pin heraus geführt ist (Rhi und Rlo)

Autor: GURKE (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Karl,
Nein, soweit bin ich ehrlich gesagt nicht gegangen. Ich sah die Graphen 
und dachte mir, das nur noch Graphen und Masse kommen.

Ich hoffe mal, das ich das jetzt nicht überlesen habe, jetzt habe ich es 
mal komplett durchforstet.

Wie stehen die Widerstände im Verhältnis zum Eingangsspannungsbereich?

Gruß
GURKE

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ist es denn prinzipiell möglich, an einen der Inputs den Ausgang des
> Druck-Messers anzuschließen

Nein.

> Wenn er elektronisch erstmal das Ausgangssignal auf 0-5V gebracht hat

Eben.

So braucht er einen OpAmp als Verstärker.

Hätte er einen aus der MPX4115-Serie genommen, könnte er sich das 
sparen, oder ein ATtiny26 hätte wohl auch gereicht, aber die Leute suche 
sich immmer zielgenau eine unpassende Kombination aus.



Immerhin lässt sich der LM3914 auf recht kleine Spannungsbereiche 
auslegen, aber ich fürchte auch, daß es für den MPX2050 (Reichlt lebt 
wieder :-) nicht reicht und man immer noch einen OpAmp bräuchte.

Autor: GURKE (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,
Bis jetzt habe ich noch nichts für dieses Projekt gekauft! Der 
Druckmesser war nur ein Vorschlag.

Der MPX4115 passt doch relativ schlecht, weil er erst bei 1,5m anfangen 
würde zu messen.

Also kann ich den MPX2050 mit einem Operationsverstärker mit dem LM3914 
verbinden an welchem wieder eine Bargraph-Anzeige hängt.

Mein einziges Problem besteht noch darin, das wie genau der 
Eingangsspannungsbereich des LM3914 eingestellt wird.

Gruß
GURKE

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> das wie genau der Eingangsspannungsbereich des LM3914 eingestellt wird

In dem du die maximale Spannung an Rhi und die minimale an Rlo anlegst.

Der MPX2050 liefert halt nur 40mV wenn ich dessen Datenblatt richtig 
lese.
Das ist nach Datenblatt für den LM3914 zu wenig, und in der Realität 
wohl auch.

Daher ist ein Geber mit integriertem Verstärker besser. Daß der MXP4115 
den falschen Messbereich hat, ist Pech. Es gibt sie auch mit dem 
richtigen Messbereich.

Autor: GURKE (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
Okay danke für die Antwort!
Wo hast du das gefunden?


Nach einem passenden MPX suche ich nachher nochmal, gehe jetzt ins Bett 
;)

Werde dann auch noch ein kleinen Schaltplan hochladen, welchen ihr vll. 
nochmal abhacken könnt ;)


Gruß
Julian

Autor: GURKE (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So, da bin ich wieder ;)

Ich würde sagen, folgender Sensor passt sehr gut:
http://www.reichelt.de/?ACTION=3;ARTICLE=42062;PROVID=2402


Er hat 0,8mV/kPa. Das heißt ich muss das Signal um das 250-fache 
verstärken. Kann ich das nicht auch mit einem einfachen Transistor 
machen?

Gruß
GURKE

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
GURKE schrieb:
> So, da bin ich wieder ;)
>
> Ich würde sagen, folgender Sensor passt sehr gut:
> http://www.reichelt.de/?ACTION=3;ARTICLE=42062;PROVID=2402
>
>
> Er hat 0,8mV/kPa. Das heißt ich muss das Signal um das 250-fache
> verstärken. Kann ich das nicht auch mit einem einfachen Transistor
> machen?

Könnte man sicherlich auch.
Aber ein OP-Amp ist deutlich einfacher zu benutzen.

http://www.elektronik-kompendium.de/sites/slt/0210151.htm

Autor: GURKE (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
So hier mein erster Entwurf des Schaltplans

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Äh
Nein. Das wird so nix.

Such dir einen schönen Op-Amp für den Verstärker aus.
Das willst du dir nicht wirklich antun, dass du mit Transistoren einen 
halbwegs linearen Verstärker aufbauen musst.
Es sei denn, du findest hier im Forum jemanden der dir einen 
dimensioniert und durchrechnet.
Aber nur soviel als Hinweis: Mit einfach einen Transistor an seinen 3 
Beinchen irgendwie anszuschliessen ist es nicht getan. Bei weitem nicht 
getan!

Autor: GURKE (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Karl,
Okay, habe halt mit so was noch nicht so viel Erfahrung.

Habe jetzt mal den genommen ein LM1458D genommen.

Autor: GURKE (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mir fehlen gerade noch 2 kleine Feheler auf:
1. Unten muss die Masse noch mit der Stromversorgung verbunden werden.
2. Der Ausgang des Drucksensors ist verkehrt herum mit dem Op-Amp 
verbunden, also Vout- mit dem Op-Amp- und Vout+ über den Widerstand mit 
dem Op-Amp+

Autor: Jane (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo GURKE,

da ich im Moment auch nach einer Lösung für eine Füllstandsmessung für 
bis zu 3,5m Wasserhöhe suche, würde ich gerne wissen:
Wie willst Du mit dem Sensor den Wasserstand messen?
Im besten Fall muss der Sensor ja unter Wasser auf dem Niveau des 
Zisternenbodes sein, und der zweite Anschluss Kontakt mit dem 
Umgebungsluftdruck haben.
Oder montierst Du den ausserhalb der Zisterne?

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Mir fehlen gerade noch 2 kleine Feheler auf

Ich hätte da noch eine Handvoll mehr.

1. Du brauchst keine Vorwiderstände bei den LEDs am LM3914. Dein Chip 
ist bereits so beschaltet, dass die LEDs mit 10mA versorgt werden.

2. Der RC1458 ist kein single supply OpAmp, er braucht eine negative 
Versorgungsspannung wenn der Ausgang auf 0 heruntergehen können soll und 
die hast du nicht. Nimm lieber einen LM358.

3. Das Vout- des Sensors nicht auf Masse kommt, hast du inzwischen 
selbst bemerkt. Aber du hast ungeschickterweise immer noch einen Sensoer 
der ein viel zu kleines Signal ausgibt, welches also extra verstärkt 
werden muss. Du scheinst 60kPa Vollausschlag Differenzdrucksensor haben 
wollen. Reichelt hätte den MPX5500, der (mehr aushält und) bei 60kPa ca. 
0.57V liefert. Über einen Spannungsbereich von 0.02V bis 0.57V liesse 
der LM3914 wohl ohne Verstärkung durch einen zusätzlichen OpAmp mit sich 
reden (es ist eine Frage, wie abrupt der Übergang von einer LED zur 
nächsten ist, der ist wohl eher fliessend). Der empfindlichere MPX4115 
ist wohl ein Absolutdrucksensor den du nicht brauchen kannst.

4. Du hast den LM3914 so geschaltet, daß er von 0V bis 11.55V geht (das 
liegt knapp unter den maximal möglichen 12V, geht aber nur wenn deine 
Versorgungsspannung mindestens 13.05V beträgt - du hast nicht 
drangeschrieben, wie hoch sie ist, auch für den OpAmp müsste sie 2.5V 
höher sein als die maximale Ausgangsspannung).

Autor: GURKE (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da ich jetzt erstmal für 2 Wochen weg bin, kann ich erstmal nicht mehr 
antworten, werde mir das danach wieder genauer anschauen!

Auf alle Fälle erstmal:
Danke für eure Hilfe!

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.