Kleines Problem mit dem IMU

Hallo,
ich wollte heute mein IMU wieder in Betrieb nehmen doch leider bekomme ich es nicht ans laufen.
Seltsam finde ich das es in der Prof zwar aktiviert ist, aber keinerlei Daten kommen. IMU-Plot nur gerade Striche. Auch beim Kompasstest wenn ich z.B. auf Süden gehe dreht sich der Mäher nur munter im Kreis. Was aber komischerweise funktioniert ist, das ich mit der Ardumag-App, an dieser Stelle nochmals ein großes Lob und Danke an Alexander für diese geniale App die das Kalibrieren zum Kinderspiel macht, prima kalibrieren kann. Daten werden empfangen und zurück gesendet.
Hat da jemand evtl. noch ne Idee?
Gruß
Stephan
 
Hallo Stephan,

ich vermute das IMU berechnet noch keine gültigen Yaw-, Pitch- und Roll-Werte. Werden denn Yaw, Pitch, Roll angezeigt wenn Du Dich mit der seriellen Konsole des IMU-Nanos in der Arduino IDE (CTRL+SHIT+M) verbindest (19200 Baud)?

Falls dort z.B. "NaN" (Abkürzung für "not a number") bei Yaw steht, sind evtl. die von ArduMag errechnen Kalibrierungsparameter nicht im IMU-Modul angekommen (derzeit gibt nur der Ardumower-Mega einen Feedback, dass "er" die Kalibrierungsparameter bekommen hat, prüft aber nicht, ob das IMU-Modul diese auch wirklich empfangen konnte).

Diesen Schwachpunkt müssen wir noch verbessern.

Es ist ratsam, die Kalibrierungsdaten in der ArduMag zu speichern (Data->Save), so dass man sie bei Bedarf einfach wieder hineinladen kann (d.h. in ArduMag: per Bluetooth verbinden, dann "Data->Open", dann "Calibrate"), um den Kalibrier-Vorgang nicht ständig wiederholen zu müssen.

Gruss,
Alexander

Nachtrag: wurde der Beschleunigungssensor wie auf der Projektseite beschrieben kalibriert? Evtl. stehen dessen Kalibrierunsparameter noch auf "NaN" (Kalibrierungsparameter werden beim Start des IMU-Nanos in dessen serielle Konsole angezeigt).
 
Hallo Alexander,
danke für die Infos. Ich werde dies heute Abend nochmal überprüfen.
Den Beschleunigungssensor habe ich wie auf der Projektseite beschrieben kalibriert.In der seriellen Konsole wurden mir die Werte auch richtig angezeigt. Das ist alles sehr komisch. Zumal hatte ich bereits alles vor dem Winter schon mal nach der alten Methode, Daten ausgelesen mit dem Windowsprogramm berechnet und wieder zurück, am laufen. Jedoch wollte ich alles ein wenig verbessern und habe mir eine Montageplatte die perfekt in den Tianchen passt ausgefräst und dabei auch den Sensor besser gelagert (alte Federung aus einem CD-Laufwerk). Naja egal wird wohl bald wieder seine Bahnen im Garten ziehen können.
Gruß
Stephan
 
@Stephan: das mit dem noch weiter verbessern kann ich nachvollziehen :) - wir arbeiten ja ebenfalls daran, alles möglichst einfach und dennoch perfekt zu gestalten. Beim IMU-Modul sieht die Entwicklung (zwei Schritte vor, einer zurück) daher manchmal wie ein Eierlauf aus ;) - aber wir schaffen das :)
 
Hallo,
hier ein kurzer Auszug aus der seriellen Konsole des IMU:

IMU v601
--------
accOfs=11.30,-1.95,-34.35
accScale=510.60,518.10,505.10
comCalB=53.073120 97.812774 -97.980445 comCalA_1=1.755833 0.020509 0.016096 0.020509 1.844231 0.013324 0.016096 0.013324 2.143385 --------
gyro calib min=3.00 max=15.00 ofs=9.70 noise=102.26
gyro calib min=2.00 max=18.00 ofs=10.36 noise=10.83
counter=100
ofs=2.40,1.06,9.70
press...
1 to calibrate accel
2 to monitor raw compass
h to output human readable (default)
a to output accel only
c to output compass only
g to output gyro only
i to output IMU only
d to output calib data
r to reset calib data
freq=91 latency=0 access=14 yaw=-38.50 pitch=2.24 roll=-8.68 accX=-0.21,0.00
freq=98 latency=0 access=4 yaw=-151.49 pitch=4.36 roll=8.56 accX=-0.05,0.02
freq=98 latency=0 access=4 yaw=171.62 pitch=7.73 roll=12.16 accX=0.00,0.03
freq=98 latency=0 access=4 yaw=-165.45 pitch=4.50 roll=10.52 accX=0.00,0.03
freq=98 latency=0 access=4 yaw=-129.73 pitch=0.46 roll=4.79 accX=-0.00,0.02
freq=98 latency=0 access=5 yaw=-122.11 pitch=-0.28 roll=3.28 accX=-0.04,0.00
freq=98 latency=0 access=5 yaw=-130.66 pitch=0.55 roll=5.13 accX=-0.03,0.00
freq=98 latency=0 access=5 yaw=-137.26 pitch=1.15 roll=6.24 accX=-0.00,0.01
freq=98 latency=0 access=5 yaw=-137.48 pitch=1.11 roll=6.35 accX=-0.00,0.01
freq=99 latency=0 access=5 yaw=-135.58 pitch=1.03 roll=5.87 accX=-0.00,0.01
freq=98 latency=0 access=5 yaw=-134.41 pitch=0.81 roll=5.72 accX=-0.01,0.01
freq=98 latency=0 access=5 yaw=-134.59 pitch=0.92 roll=5.70 accX=-0.01,0.00
freq=98 latency=0 access=5 yaw=-135.01 pitch=0.89 roll=5.84 accX=-0.01,0.00
freq=98 latency=0 access=5 yaw=-135.11 pitch=0.56 roll=5.81 accX=-0.01,0.01
freq=98 latency=0 access=5 yaw=-134.85 pitch=-4.27 roll=1.41 accX=-0.01,0.00
freq=98 latency=0 access=4 yaw=-130.34 pitch=-10.86 roll=-6.22 accX=-0.01,0.01
freq=97 latency=0 access=4 yaw=-128.62 pitch=-9.64 roll=-6.23 accX=-0.01,0.00
freq=98 latency=0 access=4 yaw=-129.08 pitch=-9.54 roll=-6.02 accX=-0.00,0.00
freq=98 latency=0 access=5 yaw=-130.07 pitch=-9.68 roll=-5.65 accX=-0.01,0.01
freq=97 latency=0 access=5 yaw=-132.04 pitch=-2.89 roll=2.61 accX=-0.01,0.04
freq=98 latency=0 access=5 yaw=-135.92 pitch=0.29 roll=6.74 accX=-0.02,0.04
freq=98 latency=0 access=5 yaw=-135.85 pitch=1.25 roll=6.28 accX=-0.00,0.01
freq=98 latency=0 access=5 yaw=-135.07 pitch=1.16 roll=6.16 accX=-0.01,0.01
freq=98 latency=0 access=5 yaw=-134.59 pitch=1.15 roll=6.02 accX=-0.01,0.01
freq=98 latency=0 access=5 yaw=-134.88 pitch=1.18 roll=6.11 accX=-0.01,0.00
freq=98 latency=0 access=5 yaw=-135.00 pitch=1.14 roll=6.12 accX=-0.01,0.00
freq=98 latency=0 access=5 yaw=-135.01 pitch=1.17 roll=6.20 accX=-0.01,0.00
freq=98 latency=0 access=5 yaw=-134.88 pitch=1.08 roll=6.07 accX=-0.01,0.01
freq=98 latency=0 access=5 yaw=-134.97 pitch=1.15 roll=6.12 accX=-0.00,0.00
freq=98 latency=0 access=5 yaw=-134.87 pitch=1.20 roll=6.10 accX=-0.01,0.01
freq=98 latency=0 access=5 yaw=-134.91 pitch=1.18 roll=6.12 accX=-0.01,0.00
freq=98 latency=0 access=4 yaw=-134.90 pitch=1.11 roll=6.10 accX=-0.01,0.00

sieht doch eigentlich gut aus, oder?
Gruß
Stephan
 
@Stefan: Sieht alles gut aus, man sieht auch dass der Ardumower 5 mal in der Sekunde auf den IMU-Nano zugreift (access=5). Ich habe keine Idee... was zeigt die serielle Konsole des Ardumowers an? Auch den yaw-Wert?
 
Hallo,
so jetzt funktioniert es wieder.
Ich habe einfach nochmals das Mega mit der aktuellen V0.9.2.2 Ardumower geflasht und es läuft. Eine Erklärung habe ich dafür jedoch nicht.
Das Problem mit dem extrem langsamen Fahrverhalten im Auto-Betrieb konnte ich jedoch damit nicht lösen. Dies hatte ich bereits an anderer Stelle
helldriver schrieb:
Nun habe ich aber ein Problem. Wenn ich ihn zur Ladestation schicke und er auf die Schleife trifft, dann dreht er sich nur im Kreis und fährt nicht die Schleife ab.

[video width=425 height=344 type=youtube]geiJyw6zrNI[/video]

Kann evtl. die Spulen links und rechts am Nano vertauscht sein?
Desweiteren finde ich im Auto-Modus die Geschwindigkeit sehr langsam. Ist dies auch so gewollt?

[video width=425 height=344 type=youtube]mqcMzzax7as[/video]

Bei der Manuellen-Steuerung geht es in der normalen mir bekannten Geschwindigkeit von der originalen Tianchen Steuerung.

[video width=425 height=344 type=youtube]RWfnyE85KoE[/video]
hier im Forum beschrieben.

ZZ. nutze ich kein Sonar und habe dieses auch in der Config abgestellt. Kann es evtl. auch damit zusammenhängen, das ich keinen Mähmotor angeschlossen habe?
Gruß
Stephan
 
Zuletzt bearbeitet von einem Moderator:
Hallo Stephan,

ein paar Ideen:
-Mäher aufbocken und in der seriellen Ardumower Konsole mal den Motortest laufen lassen
-Motortest über pfodApp laufen lassen (Settings->Motor)

...und dann schauen, ob beim Test dasselbe passiert

Allerdings sehe ich gerade: auch wenn Du keinen Ultraschallsensor nutzt, muss der der Config-Wert "sonarTriggerBelow" richtig eingestellt werden - am Besten Du stellst ihn mal auf "0". Oder Du kommentierst diese Zeile wie folgt aus der Config aus:

// case SEN_SONAR_CENTER: return(readHCSR04(pinSonarCenterTrigger, pinSonarCenterEcho)); break;

Dann müsste es funktionieren!

Gruss,
Alexander
 
Oben