Arduino Forum

International => Deutsch => Topic started by: RedSnake64 on Mar 09, 2013, 04:56 pm

Title: Arduino - AnalogInput - Problem
Post by: RedSnake64 on Mar 09, 2013, 04:56 pm
Hallo,

habe mir ein Arduino-Micro zugelegt und bin bis jetzt recht zufrieden.

Leider habe ich momentan ein Problem mit dem Analog-Eingang, bei dem ich nicht weiter komme.

Ich möchte mit dem Arduino Spannungen messen (0 - 24V).
Habe bereits eine kleine Schaltung dazu aufgebaut (siehe Anhang)
Das funktioniert schon mal alles...

Das Problem:


Wenn ich beim Spannungsteiler keine Spannung (0V) anliegen habe, dann gibt mir Arduino z.B. den Wert 150 , 100 , 120 usw. aus... (Wert schwankt)
Warum ist dieser nicht auf 0?


Bei z.B.: 12 Volt gibt mir das Board ca. 350 aus
Müsste dieser Wert nicht 512 sein? (Analog-Eingang 0...1024 ; beim Spannungsteiler liegt 2,5 Volt an ; also die Hälfte vom Eingang?)


Dadurch wird immer eine falsche Spannung ausgegeben


Muss ich den Analog-Eingang auf GND setzen?
Wenn ja, wie?


Danke für eure Hilfe...


MfG Snake
Title: Re: Arduino - AnalogInput - Problem
Post by: Klaus_ww on Mar 09, 2013, 05:22 pm
Ein offener Eingang fängt immer was auf, das ist normal. Deinen Spannungsteiler hab ich jetzt erstmal nicht weiter angeschaut, aber die Dimensionierung finde ich merkwürdig. Absicht?
Title: Re: Arduino - AnalogInput - Problem
Post by: RedSnake64 on Mar 09, 2013, 05:29 pm
Was meinst du mit Dimensionierung (Spannung die gemessen wird?)

Warum bekomme ich bei 12V (Messspannung) keine 512, sondern nur 350?
Title: Re: Arduino - AnalogInput - Problem
Post by: Realizer on Mar 09, 2013, 05:56 pm
Wo ist der gemeinsame Bezugspunkt ?

Ich sehe + , - und GND. Der Arduino misst den Analogeingang gegen GND.
Title: Re: Arduino - AnalogInput - Problem
Post by: RedSnake64 on Mar 09, 2013, 05:58 pm
Hab ich total vergessen einzuzeichnen:

Der GND ist (bei beiden Spannungen) zusammengefasst
Title: Re: Arduino - AnalogInput - Problem
Post by: Realizer on Mar 09, 2013, 06:06 pm
Seltsam. Wenn am Analogpin 2,5Volt anliegen, dann muss das Ergebnis etwa 512 sein. Nimm mal ein Poti und versoge den Analogpin über das Poti mit der 5V Spannung vom Arduino. Musst sauber 0-1023 angezeigt bekommen.

Miss dazu auch mal die Spannung am Analogpin gegen GND mit einem Multimeter. Du musst logisch vorgehen. :)
Title: Re: Arduino - AnalogInput - Problem
Post by: Klaus_ww on Mar 09, 2013, 06:14 pm
Toleranz der Widerstände würde ich sagen. Also Spannung messen, siehe Realizer. Und/oder Widerstände messen.
Die Dimensionierung empfinde ich als zu niederohmig, aber das hängt sicher am Einsatzbereich. Wo kommt denn die Spannung her die Du messen möchtest?
Title: Re: Arduino - AnalogInput - Problem
Post by: RedSnake64 on Mar 09, 2013, 06:16 pm
Die Spannung kommt z.B. von einem Akku

Kann es sein das der Analog-Input nur 3,3 Volt verträgt?
Title: Re: Arduino - AnalogInput - Problem
Post by: Doc_Arduino on Mar 09, 2013, 06:18 pm
Hallo,

Deine Widerstandsdimensionierung stimmt schon. Aber die Widerstandswerte sind laut meiner Meinung generell zu niedrig gewählt.
Wenn Du 12 Volt anlegst fließen 5mA durch den Spannungsteiler. Deine Meßspannung wird da schon generell stark belastet.

Ich vermute auch das Du ein Masseproblem hast. Sind alle Massen wirklich verbunden?

Ansonsten nehme mal nur 2 gleich große Widerstände, so 5kOhm rum oder größer, diese in Reihe, Anfang und Ende direkt an die Arduino 5V und Masse und Mittelabgriff an den Analogeingang. Bekommste ca. 512 angezeigt? Das muß funktionieren. Statt der beiden Widerstände kannste auch ein 10K Poti nehmen.

Ansonsten nochmal Schaltplan überprüfen und uns samt Sketch zeigen.
Title: Re: Arduino - AnalogInput - Problem
Post by: Doc_Arduino on Mar 09, 2013, 06:21 pm
Hallo,

die analoge Eingangsspannung darf so groß sein wie die Betriebsspannung vom µC. In Deinem Fall 5V.
Title: Re: Arduino - AnalogInput - Problem
Post by: RedSnake64 on Mar 09, 2013, 06:48 pm
Beim Widerstand funktionierts, aber:

- Wenn ich es mit dem "ReadAnalogVoltage" - Projekt auslese (http://arduino.cc/en/Tutorial/ReadAnalogVoltage), dann ist der minimalste Wert 1V (ohne dass eine Spannung anliegt)
   Ist das Normal?

Warum funktioniert das mit dem Spannungsteiler nicht?
GND ist überall vorhanden...
Title: Re: Arduino - AnalogInput - Problem
Post by: Doc_Arduino on Mar 09, 2013, 07:14 pm
Hallo,

nochmal, welche Widerstände funktionieren mit welchen Sketch und was nicht. Wir können nur das lesen wa da steht.

Hast Du in dem Bsp. auch den analogen Eingangspin geändert den Du verwendest?
Title: Re: Arduino - AnalogInput - Problem
Post by: RedSnake64 on Mar 09, 2013, 08:47 pm
Vielen Dank für eure Hilfe !!!

Habe das Problem gefunden...

Hatte am Minus-Pol eine Diode (Verpolschutz).
Anscheinend hat das GND gestört...


MfG Snake
Title: Re: Arduino - AnalogInput - Problem
Post by: Doc_Arduino on Mar 09, 2013, 08:58 pm
Hallo,

und warum fehlte die Diode im obigen Schaltplan? Dann wäre alles klar gewesen. 
Die müßte in Flussrichtung drin gewesen sein, dann fallen immer ca. 0,7V ab und zieht damit Dein Massepotential auf 0,7V hoch. Drunter hat Dein Arduino am A0 nie gesehen.

Title: Re: Arduino - AnalogInput - Problem
Post by: uwefed on Mar 09, 2013, 09:44 pm

Hallo,

Deine Widerstandsdimensionierung stimmt schon. Aber die Widerstandswerte sind laut meiner Meinung generell zu niedrig gewählt.
Wenn Du 12 Volt anlegst fließen 5mA durch den Spannungsteiler. Deine Meßspannung wird da schon generell stark belastet.

Ich vermute auch das Du ein Masseproblem hast. Sind alle Massen wirklich verbunden?

Ansonsten nehme mal nur 2 gleich große Widerstände, so 5kOhm rum oder größer, diese in Reihe, Anfang und Ende direkt an die Arduino 5V und Masse und Mittelabgriff an den Analogeingang. Bekommste ca. 512 angezeigt? Das muß funktionieren. Statt der beiden Widerstände kannste auch ein 10K Poti nehmen.

Entschuldige aber Du schreibst einiges falsch.

Der Querstrom durch einen Spannungsteiler kann nie zu groß sein, damit der Ausgangstrom die Ausgangsspannung verändert. Es ist umgekehrt, wenn der Querstrom im Verhältnis zum Ausgangsstrom des Spannungsteilers zu groß ist wird dei Ausgangsspannung verfälscht.
Wenn Die Batterie genug Strom liefern kann daß die Battereispannung nicht einbricht dann ist ein Querstrom von 5mA kein Problem.

@RedSnake64
Welche Spannung mißt Du am Ausgang des Spannungsteilers?

Wenn Du mehrmals mit analogRead mißt, bleibt der Wert stabil oder nähert er sich an 512?

Ich kann mir den ADC Wert von  150 , 100 , 120 bei 0V nicht erklären.
Kontrolliere mal die Schaltung.

Grüße Uwe
Title: Re: Arduino - AnalogInput - Problem
Post by: RedSnake64 on Mar 09, 2013, 09:48 pm
Vielen Dank!!!

Problem wurde bereits gelöst :-)

Hatte durch eine Diode ein Masse-Problem, wie Doc_Arduino bereits erklärte.

Das erklärt auch die Werte, da die Diode immer 0,7 durchgelassen hat.
Title: Re: Arduino - AnalogInput - Problem
Post by: Realizer on Mar 09, 2013, 10:17 pm
Deswegen ist es immer sehr wichtig, genau die Schaltung zu posten die man tatsächlich verwendet hat. Sonst wundern sich nämlich die Experten. Das ist jetzt auch keine negative Kritik an Dir, sondern eine gutgemeinte Anregung.

Naja, nun funktioniert es und Du hast den Fehler gefunden. :)

LG, Realizer
Title: Re: Arduino - AnalogInput - Problem
Post by: RedSnake64 on Mar 09, 2013, 10:21 pm
Werd ich mir für das nächste Mal merken! :-)

Ich dachte dass die Diode keine große Rolle spielt.
Ich weiß zwar das je nach Diode ca 0,7 V abfallen, aber nicht dass dadurch das Massepotential verändert wird...
Title: Re: Arduino - AnalogInput - Problem
Post by: uwefed on Mar 10, 2013, 12:00 am
Wieso hast Du den eine Diode dazwischengeschaltet?
Grüße Uwe
Title: Re: Arduino - AnalogInput - Problem
Post by: Doc_Arduino on Mar 10, 2013, 01:02 pm


Hallo,

Deine Widerstandsdimensionierung stimmt schon. Aber die Widerstandswerte sind laut meiner Meinung generell zu niedrig gewählt.
Wenn Du 12 Volt anlegst fließen 5mA durch den Spannungsteiler. Deine Meßspannung wird da schon generell stark belastet.

Ich vermute auch das Du ein Masseproblem hast. Sind alle Massen wirklich verbunden?

Ansonsten nehme mal nur 2 gleich große Widerstände, so 5kOhm rum oder größer, diese in Reihe, Anfang und Ende direkt an die Arduino 5V und Masse und Mittelabgriff an den Analogeingang. Bekommste ca. 512 angezeigt? Das muß funktionieren. Statt der beiden Widerstände kannste auch ein 10K Poti nehmen.

Entschuldige aber Du schreibst einiges falsch.

Der Querstrom durch einen Spannungsteiler kann nie zu groß sein, damit der Ausgangstrom die Ausgangsspannung verändert. Es ist umgekehrt, wenn der Querstrom im Verhältnis zum Ausgangsstrom des Spannungsteilers zu groß ist wird dei Ausgangsspannung verfälscht.
Wenn Die Batterie genug Strom liefern kann daß die Battereispannung nicht einbricht dann ist ein Querstrom von 5mA kein Problem.

Grüße Uwe


Hallo Uwe,

habe lange überlegt wie ich jetzt antworte ohne jemanden zu verärgern. Ich möchte Dir auch nicht auf die Füße treten, deswegen lies Dir das alles nochmal genau durch und überfliege nicht immer alles nur so nebenbei. Ich habe nichts falsches geschrieben, Du hast das aus irgendwelchen Gründen falsch verstanden. Ich habe auch nichts von Querströmen geschrieben.
5mA Laststrom mögen für die 24V Batterie nicht viel sein, stellt aber schon eine Belastung dar. Wenn die schwächer wird, kann man schon durch anschließen eines niederohmigen Meßgeräts, wie in dem Fall hier, den Meßwert selbst verfälschen. Selbst frühere analoge Meßgeräte hatten Eingangswiderstände von mehreren kOhm. Im Zeitalter unserer digitalen Meßgeräte mit 10MOhm Eingangswiderstand denkt da vielleicht niemand mehr dran.

Für Dich besser zum Ausdruck gebracht.  ;)
Deine Widerstandsdimensionierung stimmt schon. Aber die Widerstandswerte sind laut meiner Meinung generell zu niedrig gewählt.
Wenn Du 12 Volt anlegst fließen 5mA durch den Spannungsteiler. Deine zu messende Spannung wird da schon generell stark belastet.

Friedenspfeife liegt schon bereit.  :D
Title: Re: Arduino - AnalogInput - Problem
Post by: uwefed on Mar 10, 2013, 01:49 pm
Hallo Doc_Arduino
Ich hatte nicht vor mit Dir zu streiten  :)

Deine Aussage daß 5mA absolut zu groß sind, kann ich nicht annehmen; das muß von Fall zu Fall geklärt werden und darum und um User mit bescheidenen Elektronikkentnissen nicht in die Irre zu führen hab ich meine Antwort geschrieben.

Es kommt auf die Batterie und dessen Innenwiderstand an. Ein 12V Bleiakku hat da keine Probleme; eine A23 Alkaline-Batterie mit  38 mAh schon.

Ich hatte geschrieben:
Quote
Wenn Die Batterie genug Strom liefern kann daß die Battereispannung nicht einbricht dann ist ein Querstrom von 5mA kein Problem.


Quote
Deine Widerstandsdimensionierung stimmt schon. Aber die Widerstandswerte sind laut meiner Meinung generell zu niedrig gewählt.
Wenn Du 12 Volt anlegst fließen 5mA durch den Spannungsteiler. Deine zu messende Spannung wird da schon generell stark belastet.


Eine zu großer Querstrom durch den Spannungteiler kann die Soannungquelle (= die zu messende Spannung) zu stark belasten, sodaß sie einbricht (=ein zu großer Spannungsabfall am Innenwiderstand der Spannungsquele auftritt). Andererseits ein zu kleiner Querstrom durch den Spannungsteiler macht diesen empfindlich gegnüber einem variablen Ausgangstrom des Spannungsteiler. Man muß einen Mittelweg finden.

Als absoluter Nichtraucher kann ich mich mit eine Friedenspfeife nicht anfreunden aber etwas anders gerne.  ;) ;) ;)

Grüße Uwe
Title: Re: Arduino - AnalogInput - Problem
Post by: Doc_Arduino on Mar 10, 2013, 02:23 pm
Hallo,

da muß ich leider nochmal drauf eingehen. Man belastet eine zu messende Spannung generell nicht. Sonst verfälscht man sich seine Messung an sich. Deswegen haben Spannungsmeßgeräte einen sehr hochohmigen Eingangswiderstand. Wenn die zu messende Spannung Störungen aufweisst, dann möchte man diese in der Regel ja mitbekommen. Ansonsten muß man filtern. Das wäre aber nicht die Regel.

Wenn am Mittelabzweig eines Spannungsteilers mit Widerständen aufgebaut eine Last dran hängt, dann ist so ein Spannungsteiler eh nie eine gute Idee. Eben weil sich alles je nach Last verändert in dem Gebilde. In dem Fall hier werden die Widerstände als reiner Spannungsteiler verwendet. Der Arduino Analogeingang stellt keine Last in dem Sinne dar. Nur deswegen funktioniert das. Und noch genauer wird es eben wenn der Spannungsteiler selbst für die zu messende Spannung keine große Last darstellt. Nur deswegen würde ich größere Widerständen verwenden.

Bin auch strikter Nichtraucher. Hätte jedoch eine Ausnahme gemacht. Ich hätte noch eine Flasche Wein da ...  ;)