-
-
Die Masseverbindung stimmt.
Es gibt 10 Pins, 1 = Vin, 2 = Gnd, 3 = 3,3 Vin, 4 = Z, 5 = y, 6 = x, 7-10 = Jumper für Genauigkeit. Masse passt. Das einzige was noch zusätzlich drin ist ist sleep, aber was ich damit Anfangen soll ka.
http://www.shop.robotikhardware.de/s...roducts_id=204
Laut Datasheet sollte es bei 0 1,65 V anliegen haben an einem Ausgang. Hier liegt aber eigentlich nichts an, und an x ständig 0,5 v oder mal 0,3 v.
-
Erfahrener Benutzer
Robotik Einstein
schau doch einfach ins datenblatt, da steht WAS man mit sleep anzustellen hat, wenn der rumfloatet, kanns gut sein, dass dein gyro die ganze zeit pennt und wieder anläuft wie er grad lustig iss! den reset am controller lässte ja schließlich auch nciht unbeschaltet 
EDIT:
hab jetzt mal reingesehen, offensichtlich hat der nen eigenen pullup, daran kanns nich liegen ... versuchs mal mit 5V als eingang, laut datenblatt hat der nen spannungsregler drauf, vielleicht fällt da zu viel spannung ab und er arbeitet nicht richtig!
-
Hab ihn mal beschaltet nach Englischem Datenblatt, im Deutschen steht garnichts davon.
Passiert dadurch aber auch nicht mehr, selbe Ergebnisse wie vorher.
Die Werte springen immer noch obwohl es ruhig auf dem Tisch liegt zwischen 0 Volt und 3 Volt hin und her
-
Erfahrener Benutzer
Robotik Einstein
hast du eventuell ein oszilloskop verfügbar, oder könntest du versuchen die ermittelten messwerte der zeitnach zu ordnen und darzustellen, vielleicht hast du eine regelmäßigkeit drin, die auf eine äußere störung schliessen lassen würde
-
Erfahrener Benutzer
Roboter-Spezialist
Ich glaube, die Berechnungen gehen in die Hose. Ich bin da auch schon mehrfach reingefallen.
Xwert = X * Ref
single=word*const
Ich glaube, das geht nicht.
tempsingle1=x
tempsingle2=ref
single=tempsingle1*tempsingle2
mfg
Stefan
-
Erfahrener Benutzer
Roboter Genie
Im Datenblatt des Mega32 steht, dass unter bestimmten Umständen (weiss nicht mehr welche...) die ersten Werte der AD Konvertierung Müll sind. Also: Ganz oben an den Anfang deines Programms sollte ein "Start ADC" und nirgends ein Stop ADC.
Vielleicht klappt es dann.
-
Also an dem Single Word usw kann es nicht liegen, weil die normale Ausgabe ja auch schon nicht stimmt, ohne die Multiplikation.
Auch wenn ich ganz oben ein Start ADC hinschreibe und kein Stop ADC ändert sich nichts.
Osziloskop ist leider nicht vorhanden, aber ich schau mal ob ich Zeitwerte dazu generieren kann.
Für was steht der Dateityp Word eigentlich genau, weil getadc() erwartet den ja. Und was passiert wenn ich getadc(.2) also den Punk davor mache?
Grüße
-
Erfahrener Benutzer
Robotik Visionär
Word steht für eine 16 Bit Zahl ohne Vorzeichen.
Bei getadc(.2) könnte es einen Fehler beim Compilieren geben oder es sollte als getadc(0) interpretiert werden, wenn der Compiler keinen Fehler hat.
-
Erfahrener Benutzer
Roboter Genie
Vielleicht empfiehlt sich folgendes Vorgehen um den Fehler zu finden...:
Klemm doch mal einen Spannungswandler (vorzugsweise mit einem Poti) an deinen ADC. Dann kannst du verschiedene Spannungen einstellen und gucken ob was sinnvolles bei der Konvertierung rauskommt. Falls ja: Dann stimmt was mit dem ACC nicht. Falls nein: Dann ist vielleciht dein ADC zerschossen.
Hast du den ACC denn schonmal mit einem Multimeter gemessen?
-
Hallo,
also ich hab den ADC mit dem Multimeter nachgemessen, er zeigt das richtige an. Blos das Modul scheint zu spinnen.
Und zu dem Punkt von (.2): Er zeigt irgend was an, und lässt sich auch normal compilen. In dem Buch Roboter selbst bauen wird es halt im Beispielprogramm so angegeben : getadc(6.
Grüße
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen