PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mpu 6050



inka
25.02.2021, 10:18
hallo,
ich habe zwei aufbauten, beide mit einem ESP8266 und MPU6050 (für den anti-apnoe-sensor). beide mit dem gleichen code bestückt. Die reaktionen der gyros sind aber anders. Gibt es da unterschiedliche ausführungen der MPU? Vom aussehen sind die beiden platinchen aber gleich!

Moppi
25.02.2021, 16:42
Hast Du es schon rausgefunden?


Das Problem daran ist, dass man das so nicht beurteilen kann. Gleich aussehen heißt nicht, gleicher Aufbau und gleiche Bauteile, sowie gleicher Hersteller. Ich würde direkt zwei Gleiche nehmen und zusammen einkaufen, z.B. Sonst kann es auch Beschaltungsfehler von Dir sein oder Du hast die Software anders aufgespielt, als beim ersten Exemplar (Parameter im Menü der Arduino-IDE bspw.).


MfG

inka
25.02.2021, 17:28
die zwei sensoren wurden zusammen gekauft, der aufbau ist fest verdrahtet und bei der geringen anzahl von verbindungen ist es eigentlich nicht möglich da was anderes zu machen, dann funktioniert es gar nicht. Auch die software wurde direkt nacheinander aufgespielt, unter gleichen einstellungen in der IDE...
ich habe jetzt noch einmal die beiden - identischen - ausführungen mit der gleichen software, ansonsten siehe oben - getestet...

das sind die messwerte:






90°
180°
270°










Modell 1

1,5
0,5
-0,5
0,5










Modell 2


1
0
-1
0




die werte unterscheiden sich immer um "-0,5", das könnte man evtl. durch die software korrigieren, oder statt der x-achse eine andere nehmen...

Moppi
25.02.2021, 18:51
Vielleicht kann man den Sensor auch kalibrieren, andere Werte zur Berechnung drauf speichern. Vermutlich werden die RAW-Daten beider Sensoren dann auch nicht übereinstimmen. Ich habe mit ähnlichem Sensor auch mal herumprobiert. Ich denke, man kann froh sein, wenn die Werte halbwegs stimmen. Bei 1.5 zeigt der Andere 1.0, bei 0.5 zeigt er 0. Der Fehler zwischen den Beiden kann bei ~0.1 liegen, damit der Eine 0.5 ausgibt und der Andere 0; wenn es nur 0.5er Schritte gibt. Wenn man es so betrachtet, ist der Unterschied nicht sonderlich groß.

MfG

Rabenauge
26.02.2021, 07:10
Diese kleinen Abweichungen sind normal.
Der Sensor hat dafür Register, in die man Korrekturwerte schreiben kann.

Wolle erklärt das hier ganz gut. (https://wolles-elektronikkiste.de/mpu6050-beschleunigungssensor-und-gyroskop)

inka
26.02.2021, 10:03
ich weiss nicht, Ihr sprecht von ganz kleinen änderungen, für mich lesen sich die zahlen eher nach 50% ?

Che Guevara
26.02.2021, 13:02
Ja das wäre eine gute Frage, was die Messwerte darstellen sollen?!
Sind es Gyro Daten, wenn ja welche Einheit? °/s ? Rohwerte gefiltert? Pferde / Lichtjahr?

Rabenauge
26.02.2021, 13:03
Hm...was bitte misst du da?
Da oben drüber Grad steht, ging ich davon aus...und anderthalb Grad Abweichung ist nun nichts dramatisches.
Je nach Einstellung (auch dazu bitte obigen Link mal studieren) sind die Dinger so empfindlich, dass du detektieren kannst, wenn ne Fliege am anderen Tischende landet.

inka
26.02.2021, 13:20
ich messe
Ax = (double)AccelX / AccelScaleFactor;

(eine zeile aus einem testsketch) in jeweils um90° voneinander abweichenden positionen. Also 4x am kreis, der sensor macht quasi ein looping...

- - - Aktualisiert - - -

noch ein foto, links model 2, rechts model 1.

35444

Die "ohren" am linken modell - da wird der gurt durchgezogen zum umschnallen um den brustkorb. Die drehung im kreis soll die
lageveränderung rücken / linke seite / bauch / rechte seite simulieren...

Moppi
26.02.2021, 18:25
Wenn das zusammengebaut ist und nicht mehr im Gehäuse verrutschen kann, musst Du das dann abgleichen, wenn Du unter denselben Lagerbedingungen dieselben Werte bekommen möchtest.

MfG

inka
02.03.2021, 14:56
Diese kleinen Abweichungen sind normal.
Der Sensor hat dafür Register, in die man Korrekturwerte schreiben kann.

Wolle erklärt das hier ganz gut. (https://wolles-elektronikkiste.de/mpu6050-beschleunigungssensor-und-gyroskop)

habe mir das angeschaut, auch mit Wolle kurz diskutiert. Dann habe ich den offensichtlich defekten sensor gegen einen anderen ausgetauscht - jetzt habe ich zwei module, die beide die gleichen (oder so gut wie) werte liefern...
danke für euere tipps...