PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Spannung messen



Dominik009
25.12.2009, 14:25
hallo
ich habe nun einen sharp gp2Y0A02YK.
ich habe ihm mit vcc und gnd versorgt.
Nun habe ich mit einem neuen multimeter gemessen.
alles super die korrekten spannungen kommen raus.
Nun habe ich den sensor bei meiner rn control an port A 1 geschlßn.
Wen ich nun mit dem demo programm die spannungmesse kommt immer:


**** RN-CONTROL 1.4 *****
Das neue Experimentier- und Roboterboard
Weitere passende Zusatzboards bei www.robotikhardware.de


Ermittelte Messwerte an Port A:
Pin 0 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt
Pin 1 ADC-Wert= 685 bei 5V REF waeren das 3.347995994 Volt
Pin 2 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt
Pin 3 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt
Pin 4 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt
Pin 5 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt
Pin 6 ADC-Wert= 419 bei 5V REF waeren das 2.04789829 Volt
Pin 7 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt

Ermittelte Messwerte an Port A:
Pin 0 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt
Pin 1 ADC-Wert= 682 bei 5V REF waeren das 3.33333325 Volt
Pin 2 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt
Pin 3 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt
Pin 4 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt
Pin 5 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt
Pin 6 ADC-Wert= 417 bei 5V REF waeren das 2.038123128 Volt
Pin 7 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt

Ermittelte Messwerte an Port A:
Pin 0 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt
Pin 1 ADC-Wert= 686 bei 5V REF waeren das 3.352883574 Volt
Pin 2 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt
Pin 3 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt
Pin 4 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt
Pin 5 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt
Pin 6 ADC-Wert= 414 bei 5V REF waeren das 2.023460387 Volt
Pin 7 ADC-Wert= 1023 bei 5V REF waeren das 4.999999517 Volt


kan mir da wer helfen?
mein multimeter zeigt korrekte werte an.

gruß Dominik

P.S.: Frohe Festage euch allen.

Hubert.G
25.12.2009, 14:57
Wenn du auf PORTA1 gleichzeitig mit dem Multimeter misst, hast du da das gleiche Ergebnis?

oberallgeier
25.12.2009, 15:38
... sharp gp2Y0A02YK ... mit vcc und gnd versorgt ... bei ... rn control an port A 1 geschlßn ...Woher kommen GND und Vcc für den Sharp? Ist GND-Sharp mit GND-RNControl verbunden? Wie hoch ist U (Vcc-GND) am Sharp während der Messung? Und wie hoch ist diese Spannung OHNE Sharp?

Dominik009
25.12.2009, 18:56
also wenn ich nur mit dem multimeter messe ist alles ok.
nur controle ist wie gesagt mist.
Wen ich mit controler und multimetermesse habe ich den gleichen mist auch am multimeter stehen.

so nin zum Joemberg.
Gnd und VCC nehme ich vom rn control /die 5V ports).
Daher nehme ich an das gnd sharp und gnd rn control verbunden sind.
Was meinst du mit U?
das gelbe kabel wo die der sharp die spannung ausgibt?

Hubert.G
25.12.2009, 19:06
Ist der Stecker UREF gesteckt?

Dominik009
25.12.2009, 19:41
jo, ist drinnen.
gruß
Dominik

Hubert.G
25.12.2009, 19:50
Jetzt würde mich noch interessieren was dein Meßgerät anzeigt und was dein Programm ausgibt.
Auch schon mal ohne Sensor die Ausgabe getestet.

Dominik009
25.12.2009, 20:02
hallo
Wie soll ich ohne sensor testen was er ausgibt.
Habe doch dan nichts mehr was ausgibt.
also ich habe den sensor momentan so ausgerichtet das am messgerät 0,35 bis 0,36 steht.
Wen ich dan ohne mesgerät mit dem mega32 messe kommt folgendes:

Pin 1 ADC-Wert= 699 bei 5V REF waeren das 3.416422126 Volt

und wen ich dan mein multimeter auch zusätzlich dranhalte steht auf dem multimeter 3,55 - 3,56.

normal müsste es laut dem datelblatt (bei dieser entfernung) in etwa 0,35 sein.
Das misst das multimeter alleine ja auch.

Hubert.G
25.12.2009, 20:19
Das ist jetzt nicht ganz klar.
Ohne Kontroller 0,35V
Der ADC gibt 3,4V
ADC und Meßgerät ergeben am Meßgerät 3,55V

Ohne das etwas an den ADC-Eingängen angeschlossen ist, was misst du dort für eine Spannung.
Misst du immer vom selben GND-Punkt aus.

Dominik009
25.12.2009, 20:21
nein.
Ohne Kontroller 0,35V
Der ADC gibt 3,4V
ADC und Meßgerät ergeben am Meßgerät 3,5V
ist schon richtig.
das gibt der sharp aus.
einmal mit multi einmal mit adc und einmal mit adc und multi.
kans du mir da helfen?

Hubert.G
25.12.2009, 20:34
Ich bin mir fast sicher das du da beim Anschließen was verhaut hast.
Was misst du an den ADC-Eingängen wenn der Sharp nicht drauf ist.
Leg einmal den A1 mit einem Widerstand 100 Ohm auf GND, was zeigt dann dein ADC an.

Dominik009
25.12.2009, 20:56
also,
ich habe nun folgende werte:
1. Nichts liegt an.
Der Mega schreibt:
ADC = 1023 bei 5V REF währen 4.99999917V

2. gnd und adc sind mit einem 100Ohm wiederstand verbunden.
Der Mega schreibt:
ADC = 17 bei 5V REF währen 0.08088931V

3. gnd und adc sind mit einem 220Ohm wiederstand verbunden.
Der Mega schreibt:
ADC = 22 bei 5V REF währen 0.107526856V

kanst du/ihr damit was anfangen?

TomEdl
25.12.2009, 21:00
1. Nichts liegt an.
Der Mega schreibt:
ADC = 17 bei 5V REF währen 4.99999917V
2. gnd und adc sind mit einem 100Ohm wiederstand verbunden.
Der Mega schreibt:
ADC = 17 bei 5V REF währen 0.8088931V

Das kann nicht stimmen. Du hast zweimal den Wert 17 rausbekommen, also müsste das wohl auch zweimal dieselbe Spannung sein.

Grüße
Thomas

Hubert.G
25.12.2009, 21:07
Und ADC=22 kann nicht weniger Spannung ergeben als ADC=17
Es kann da auch etwas nicht stimmen, wenn der ADC-Eingang über 220 Ohm auf GND liegt, darf dort keine Spannung mehr zu messen sein.

Dominik009
25.12.2009, 21:15
hi
sorry, ich habe mich vertan.
Ich habe den beitrag oben berichtigt.
Sorry.
ich hoffe ihr könnt mir helfen

Hubert.G
25.12.2009, 21:20
Du bist dir sicher das an diesem Port sonst nichts drauf ist. Nach meiner Berechnung liegt da noch ein 10k Widerstand nach +5V drauf. Der dürfte dir die Messung verhauen.

Dominik009
25.12.2009, 21:26
also auf dem port liegt nur das kabel vom sharp.
ich habe es auch auf annderen pins von port a probiert.
aber bei all denen kommt immer das selbe raus.
ADC-Wert= 699 bei 5V REF waeren das 3.416422126 Volt

Dominik009
25.12.2009, 21:41
der sharp bekommt vom rn control + und - 5V aber egal an welchem pin ich von port a messe,
es kommt immer der selbe sch****.
Das regt mich auf.
Ich hoffe ihr könnt mir helfen

Hubert.G
25.12.2009, 21:42
Gib den Sharp mal komplett weg und mess mal die Spannung an AVCC und AREF direkt am Kontroller.
Ausserdem habe ich mir gerade das Demoprogramm angesehen. Dort werden die internen PullUp aktiviert. Das kannst du für deine Messung vergessen. Schreib dir ein eigenes Programm für den ADC.

Dominik009
25.12.2009, 22:19
also,
zwischen avcc und agnd ist 5,5V.
zwischen acc und aref ist 0,0V.
ich werde mir mal ein eigenes programm schreiben.

TomEdl
25.12.2009, 22:21
also,
zwischen acc und aref ist 0,0V.

Dann liegt die Referenzspannung auf 5V, das sollte schon mal in Ordnung sein.

Grüße
Thomas

Dominik009
25.12.2009, 22:40
hi
also mien programm sieht momentan so aus:
' Die gemessene Spannung wird in der Variablen W gespeichert.
' Channel ist der Pin, an dem die Spannung gemessen werden soll.

$regfile = "m32def.dat"
$framesize = 32
$swstack = 32
$hwstack = 32
$crystal = 16000000
$baud = 9600


Config Adc = Single , Prescaler = Auto
Start Adc
Dim W As Word , Channel As Byte
Channel = 2
Do
W = Getadc(channel)

Print "ADC-Pin " ; Channel ; ": Wert " ; W
Incr Channel
If Channel > 2 Then Channel = 2
Wait 1
Loop
End

der controler zigt miener meinung auch de richtigen adc werte an.
wie kann ich den adc wert anhand der ref spannung in volt umwandeln?
könnte das jemand mienem code ergänzen?
pls.

gruß
Dominik

Dominik009
25.12.2009, 22:54
hallo.
ich habe es.
nun läuft es.
genaueres schreiebe ich euch morgen.
muss jetzt schlfen.
bin hundemüde

gruß
Dominik
P.S.: danke für eure hilfe.
ohne euch hätte ich das nie geschafft.

TomEdl
25.12.2009, 23:13
Hallo!

In deinem Code fehlt die Angabe der Referenzspannung:

Config Adc=Single , Prescaler = Auto, Reference = AVCC

Die Umwandlung kannst du wie folgt machen:
Vmess = (Vreference / 1024) * ADCWert
Den Teil in der Klammer kannst du auch als Konstante abspeichern, in deinem Fall wäre der richtige Wert dafür 0.004882813

Grüße
Thomas

Hubert.G
26.12.2009, 09:20
Du kannst ja das aus dem Beispielcode verwenden. Du musst nur den richtigen ADC Kanal einsetzen und eventuell den Ausgabetext ändern.
'Diese Unterfunktion zeigt Batteriespannung an
Sub Batteriespannung()
Local W As Word
Start Adc
W = Getadc(6)
Volt = W * Ref
Volt = Volt * 5.2941
Print "Die aktuelle Spannung beträgt: " ; Volt ; " Volt"
End Sub

Dominik009
26.12.2009, 10:33
allo
also wie gesagt,
es läuft.
Ich habe nun die richtigenen werte.
Es lag an den internen wiederständen.
Hier mein code:

' Die gemessene Spannung wird in der Variablen W gespeichert.
' Channel ist der Pin, an dem die Spannung gemessen werden soll.

$regfile = "m32def.dat"
$framesize = 32
$swstack = 32
$hwstack = 32
$crystal = 16000000
$baud = 9600

Const Adc_multi = 0.0048828125 ' = 5.0 / 1024.0

Config Adc = Single , Prescaler = Auto
Start Adc
Dim W As Word , Channel As Byte
Channel = 2
Do
W = Getadc(channel)
Dim Volt As Single
Volt = W * Adc_multi
Print "ADC-Pin " ; Channel ; ": Wert " ; W ; " Volt: " ; Volt
Incr Channel
If Channel > 2 Then Channel = 2
Wait 1
Loop
End
danke für eure hilfe.
gibt es eine mölichkeint (formel) um den adc wert in cm umzuwandeln?

Hubert.G
26.12.2009, 11:25
Nachdem die Spannung und Entfernung nicht linear zu einander sind, macht man das am Besten über ein Array. Wie das allerdings in BASCOM geht weiss ich nicht.

Dominik009
26.12.2009, 11:32
hallo
schlechte news.
Habe eben den sensor eingeschaltet.
Er ist kaputt.
Am mulzimeter und am controler kommt immer nur 0.01 - 0.30 V
egal wie ich ihn halte.
werde mir dan montag einen neuen kaufen