MinIMU-9 Gyro, Accelerometer, and Compass (L3G4200D and LSM303DLH Carrier)

gfunk

Erfahrener Benutzer
#21
ich bin bis jetzt so weit gekommen ACC LSM303DLH:

// ************************************************************************************************************
// I2C Accelerometer LSM303DLH
// ************************************************************************************************************
// I2C adress: 0x18  (7bit)
// 
// ************************************************************************************************************

#if defined(LSM303DLH)
void ACC_init (){
  delay(10);
  i2c_writeReg(LSM303DLH_ADDRESS, 0x20, 0x27);//set CTRL_REG1_A register
  delay(5);
  i2c_writeReg(LSM303DLH_ADDRESS, 0x23, 0x40);//set CTRL_REG4_A register
  acc_1G = 256;
}

void ACC_getADC () {
  TWBR = ((16000000L / 400000L) - 16) / 2; // change the I2C clock rate to 400kHz, ADXL435 is ok with this speed
  i2c_getSixRawADC(LSM303DLH_ADDRESS ,0x28);

  ACC_ORIENTATION( - ((rawADC[0]<<8) | rawADC[1]) ,
  ((rawADC[2]<<8) | rawADC[3]) ,
  ((rawADC[4]<<8) | rawADC[5]) );
  ACC_Common();
}
#endif
natürlich wurde hab ich alles definiert in config.h und def.h

hier auf seite 9 stehen alle addressen usw

mein problem:
i2c_getSixRawADC(LSM303DLH_ADDRESS ,0x28);
erhöht die adresse immer um eins pro schleife, es sollte aber immer die reg-adresse (0x28) erhöhen, da hier die werte ausgelesen werden (0x28, 0x29, 0x2A,...)

da getSixRawADC() wird auch zum auslesen vom gyro verwendet darum kann ichs nicht einfach umschreiben...

i denke ich bin da schon kurz vor der lösung.
kann mir da jemand helfen? eine einfache idee?
will nicht alles umschreiben
 
#23
Hallo Leute,

ich möchte meinen Arduino Mega 2560 mit dem Mega Shield wir auf dem Foto zu sehen verwenden mit dem 10DOF-IMU das hab ich mir nun auch bestellt.

Hat von euch jemand schon versucht das Große Board zu verwenden, auf der multiwii.com Seite steht das es möglich ist aber hab’s noch nirgends im Internet gefunden.

Vielleicht kann mir jemand etwas helfen.

Mit freundlichen Grüßen
 

gfunk

Erfahrener Benutzer
#24
dr.dado hat gesagt.:
Hallo Leute,

ich möchte meinen Arduino Mega 2560 mit dem Mega Shield wir auf dem Foto zu sehen verwenden mit dem 10DOF-IMU das hab ich mir nun auch bestellt.

Hat von euch jemand schon versucht das Große Board zu verwenden, auf der multiwii.com Seite steht das es möglich ist aber hab’s noch nirgends im Internet gefunden.

Vielleicht kann mir jemand etwas helfen.

Mit freundlichen Grüßen
das 10DOF-IMU ist ein völlig anderes board als das MinIMU, wie 5 posts zuvor schon festgestellt wurde (da es auch anderen sensoren besteht).

also passt deine frage hier nicht wirklich her.

mit dem megaboard hast du da sicher keine probleme.
definier einfach das mega, die betreffenden pins findest du dann unter def.h
was baust du für ein ungetüm weli du ein mega brauchst?
 

JUERGEN_

Generation 60++
#25
gfunk006 hat gesagt.:
...
das 10DOF-IMU ist ein völlig anderes board als das MinIMU, wie 5 posts zuvor schon festgestellt wurde (da es auch anderen sensoren besteht).
10DOF-IMU, was soll da anders sein als bei der Free-IMU 3.5 BMP ?

die gleichen sensoren,
die gleiche sensorausrichtung,
es fehlt nur der 3,3V SPAWA.

:rot:
 
#26
na ja das Mega Shield ist klasse da schon alle anschlüße (Pins) vorhanden sind und von den hab ich noch 2 rumliegen deswegen werde ich es mit denen versuchen ich werde denke ich in einem neuem Post mehr Berichten

danke an euch und grüße
 

gfunk

Erfahrener Benutzer
#27
JUERGEN_ hat gesagt.:
gfunk006 hat gesagt.:
...
das 10DOF-IMU ist ein völlig anderes board als das MinIMU, wie 5 posts zuvor schon festgestellt wurde (da es auch anderen sensoren besteht).
10DOF-IMU, was soll da anders sein als bei der Free-IMU 3.5 BMP ?

die gleichen sensoren,
die gleiche sensorausrichtung,
es fehlt nur der 3,3V SPAWA.

:rot:
auch für das Free-IMU 3.5 BMP wärs der falsche thread (siehe titel)
 

JUERGEN_

Generation 60++
#28
JUERGEN_ hat gesagt.:
nun der ST’s L3G4200D ist ja eigentlich relativ neu.

aber der preis von $ 49.95 für eine 9DOF-IMU könnte einen neugierig machen. ;)


[size=medium]MinIMU-9 Gyro, Accelerometer, and Compass [/size](L3G4200D and LSM303DLH Carrier)
- > http://www.pololu.com/catalog/product/1264
und hat nun schon einer das teil geordert, und in betrieb[size=large]? [/size]

:rot:
 

gfunk

Erfahrener Benutzer
#29
JUERGEN_ hat gesagt.:
JUERGEN_ hat gesagt.:
nun der ST’s L3G4200D ist ja eigentlich relativ neu.

aber der preis von $ 49.95 für eine 9DOF-IMU könnte einen neugierig machen. ;)


[size=medium]MinIMU-9 Gyro, Accelerometer, and Compass [/size](L3G4200D and LSM303DLH Carrier)
- > http://www.pololu.com/catalog/product/1264
und hat nun schon einer das teil geordert, und in betrieb[size=large]? [/size]

:rot:
ich... funzt im gui super, hatte leider ein paar probleme mit meiner hardware (rahmen und motoren) hoffe ich komm am we endlich dazu alles mal zu testen.

mit dieser anleitung kann man den sensor easy aktivieren.

EDIT: mir fällt gerade ein ich hatte es schon getestet, war aber kurz vorm finster werden, daher nur schnell schnell... hh war nicht kalibriert aber trotz aktiven gegenlenken, kams mir sehr stabil vor.
den stable mode hatte ich auch nicht kalibiriert, aber auch hier mit ein wenig aktiven gegenlenken steht er super in der luft...
vor allem war das board nur mit isolierband direkt auf das buchenkreuz gewickelt (keine dämpfung)

mit etwas mehr zeit fürs kalibireren sicher brauchbar (vor allem bald mit BT-modul :))
 
#31
Mein erster tipp ist schon mal die Delays raus zu machen und eine (milis) Schleife einzufügen. Delay ist pöses Hundepfui und mach dei Büchs immer träger.In einem delay kann die CPU nix anderes tun - und wenn dan der Sensor mal spinnt: Gravity wins!

Delay ist eine logikbombe und unterbindet jegliche Parallelität - auch ein grund warum die PID-Regelunng so Zickig ist und nicht in allen Berteibszuständen Gleichmäßig wirkt.

Von den ganzen nicht geschlossen Termen im offiziellen Code will ich mal granicht anfangen..

Ist müßig und nervig - ich mache das bei mir aber mittlerweile überall raus.
und schon ist die Cycle Time wieder 620 tiefer ;)

Hab in der aktuellen Quadroconf mit 4 sensoren schon 1900- 2600er Cycletime.
LCD/ Alarm und Camstab dabei aber raus .
Das Hochzälen der Register machst über ne deklaration und einen for-schleife-> 99 Bottles of Beer in C++ ansehen ;)
 

gfunk

Erfahrener Benutzer
#32
Ben_der hat gesagt.:
Mein erster tipp ist schon mal die Delays raus zu machen und eine (milis) Schleife einzufügen. Delay ist pöses Hundepfui und mach dei Büchs immer träger.In einem delay kann die CPU nix anderes tun - und wenn dan der Sensor mal spinnt: Gravity wins!

Delay ist eine logikbombe und unterbindet jegliche Parallelität - auch ein grund warum die PID-Regelunng so Zickig ist und nicht in allen Berteibszuständen Gleichmäßig wirkt.

Von den ganzen nicht geschlossen Termen im offiziellen Code will ich mal granicht anfangen..

Ist müßig und nervig - ich mache das bei mir aber mittlerweile überall raus.
und schon ist die Cycle Time wieder 620 tiefer ;)

Hab in der aktuellen Quadroconf mit 4 sensoren schon 1900- 2600er Cycletime.
LCD/ Alarm und Camstab dabei aber raus .
Das Hochzälen der Register machst über ne deklaration und einen for-schleife-> 99 Bottles of Beer in C++ ansehen ;)
geht das etwas detailierter? (die erklärung)
 

lazyzero

... zu viel geflashdingst
#33
Hi,

meine Lieferung von pololu ist heute endlich angekommen, ich könnte mir etwas in den Ar*** beissen das ich jetzt doch "so viel" gezahlt hab, aber egal.

Ich bin gerade dabei mich durch die links zu wursteln, und wenn ich es richtig verstehe sind Gyro (ist ja eindeutig) und Magnetometer (HMC5883) schon im 1.9er code.
Nur den Code der ACC muss ich also noch einbauen. Richtig?

Also den ifdefine-Block in Sensors kopiert und def + config angepasst.
Die drei Chips aktiviert und das war's?

Wie wird das board ausgerichtet? Also von oben in der Draufsicht Pinleiste hinten? Passen dann die Wirkrichtungen?

Elektronisch gesehen kann ich das board einfach anschliessen und die internen Pullups muss ich deaktivieren. Kein LCC? Keine 3,3V auf dem Board erforderlich?

Gruß Christian
 

lazyzero

... zu viel geflashdingst
#35
Hab gerade mal in den trunk von subversion geschaut und mir dort nochmal die define für das ACC geholt (ist also in Arbeit das board zu unterstützen, auch wenn es noch nichts im IMU gibt). Ist etwas aufgeräumter als von dem link oben, aber sonst das gleiche.

Christian
 

lazyzero

... zu viel geflashdingst
#36
So ich glaube ich hab es schon geschrottet. Hatte vergessen den FTDI seiner 5V zu berauben. So das ich kurz die Sensorwerte gesehen habe und dann stand alles. Danach hab ich nichts mehr gesehen. Egal was ich gemacht habe.

Kann das die IMU wirklich zerstören? Oder eher den Arduino?

EDIT: Arduino ist noch okay wenn ich das richtig sehe. Ich kann ihn zumindest neu flashen. Aber ich bekomme weder Werte noch Einstellungen können gelesen werden.

Christian
 

lazyzero

... zu viel geflashdingst
#37
lazyzero hat gesagt.:
Kann das die IMU wirklich zerstören? Oder eher den Arduino?
Weder noch. Ich hatte das Problem das der Mac die sketches nicht richtig hochgeladen hat. Mit Linux ging es jetzt und alles funktioniert auch noch.

Dann hab ich nur noch eine Stunde damit verbracht mich zu fragen warum ich den nicht gearmt bekomme, aber das hab ich dann auch noch hin bekommen. Der untere Gas-Weg ist zu hoch gewesen.

Gruß Christian
 
FPV1

Banggood

Oben Unten