Seite 725 von 1010

#10861 Re: Der WII-Copter ( Selbstbau-Projekt )

Verfasst: 28.04.2012 21:46:45
von el-dentiste
Hab mich vorhin mit Paul unterhalten und es gibt ein lpf Sketch Schnipsel zum reinkopieren in die V2.0
Für die mpu 6050.
Wenn ich die hab stell ich sie ein hier.

#10862 Re: Der WII-Copter ( Selbstbau-Projekt )

Verfasst: 28.04.2012 22:08:47
von Michael Brakhage
Hallo

der Code für den MPU6050 ist doch schon ein paar Tage raus. Wurde von Fabio Varesano am 23.4.2012 im Supportforum veröffentlicht.

Code: Alles auswählen

    // ************************************************************************************************************
    // I2C Gyroscope and Accelerometer MPU6050
    // ************************************************************************************************************
    #if defined(MPU6050)

    void Gyro_init() {
      TWBR = ((16000000L / 400000L) - 16) / 2; // change the I2C clock rate to 400kHz
      i2c_writeReg(MPU6050_ADDRESS, 0x6B, 0x80);             //PWR_MGMT_1    -- DEVICE_RESET 1
      delay(5);
      i2c_writeReg(MPU6050_ADDRESS, 0x19, 0x00);             //SMPLRT_DIV    -- SMPLRT_DIV = 0  Sample Rate = Gyroscope Output Rate / (1 + SMPLRT_DIV)
     
      i2c_writeReg(MPU6050_ADDRESS, 0x6B, 0x03);             //PWR_MGMT_1    -- SLEEP 0; CYCLE 0; TEMP_DIS 0; CLKSEL 3 (PLL with Z Gyro reference)
      i2c_writeReg(MPU6050_ADDRESS, 0x1B, 0x18);             //GYRO_CONFIG   -- FS_SEL = 3: Full scale set to 2000 deg/sec
      // enable I2C bypass for AUX I2C
      #if defined(MAG)
        i2c_writeReg(MPU6050_ADDRESS, 0x6A, 0x00);             //USER_CTRL     -- DMP_EN=0 ; FIFO_EN=0 ; I2C_MST_EN=0 (I2C bypass mode) ; I2C_IF_DIS=0 ; FIFO_RESET=0 ; I2C_MST_RESET=0 ; SIG_COND_RESET=0
        i2c_writeReg(MPU6050_ADDRESS, 0x37, 0x02);             //INT_PIN_CFG   -- INT_LEVEL=0 ; INT_OPEN=0 ; LATCH_INT_EN=0 ; INT_RD_CLEAR=0 ; FSYNC_INT_LEVEL=0 ; FSYNC_INT_EN=0 ; I2C_BYPASS_EN=1 ; CLKOUT_EN=0
      #endif
     
      i2c_writeReg(MPU6050_ADDRESS, 0x1A, MPU6050_DLPF_CFG); //CONFIG        -- EXT_SYNC_SET 0 (disable input pin for data sync) ; default DLPF_CFG = 0 => ACC bandwidth = 260Hz  GYRO bandwidth = 256Hz)
      }
dies einfach in der sensors.ino ändern.

danach werden die lpf werte auch im mpu6050 gespeichert!

geht nun einwandfrei!

#10863 Re: Der WII-Copter ( Selbstbau-Projekt )

Verfasst: 28.04.2012 22:13:35
von Michael Brakhage
Crizz hat geschrieben:Ich hab nur den Eindruck, wenn man LPF und PID-Werte sehr weit reduzieren muß, das die Copter dann extrem "weich" in der Reaktion werden, als wenn Steuereingaben leicht verzögert werden, ws ich persönlich eben weniger mag.
Ich bin ja nur mit dem lpf runter. die PIDs sind Standard! der copter rastet richtig schön ein. aber die gasannahme ist wieder richtig gut und das flugverhalten ist richtig "rund". keine wackler oder aufschaukeln oder sonstige unannehmlichkeiten.

#10864 Re: Der WII-Copter ( Selbstbau-Projekt )

Verfasst: 28.04.2012 22:15:37
von Crizz
Wichtig ist das es für dich fliegbar ist und deinen Wünschen entspricht, dann sind die Werte Nebensache ;)

#10865 Re: Der WII-Copter ( Selbstbau-Projekt )

Verfasst: 29.04.2012 07:59:48
von el-dentiste
Michael Brakhage hat geschrieben:Hallo

der Code für den MPU6050 ist doch schon ein paar Tage raus. Wurde von Fabio Varesano am 23.4.2012 im Supportforum veröffentlicht.

Code: Alles auswählen

    // ************************************************************************************************************
    // I2C Gyroscope and Accelerometer MPU6050
    // ************************************************************************************************************
    #if defined(MPU6050)

    void Gyro_init() {
      TWBR = ((16000000L / 400000L) - 16) / 2; // change the I2C clock rate to 400kHz
      i2c_writeReg(MPU6050_ADDRESS, 0x6B, 0x80);             //PWR_MGMT_1    -- DEVICE_RESET 1
      delay(5);
      i2c_writeReg(MPU6050_ADDRESS, 0x19, 0x00);             //SMPLRT_DIV    -- SMPLRT_DIV = 0  Sample Rate = Gyroscope Output Rate / (1 + SMPLRT_DIV)
     
      i2c_writeReg(MPU6050_ADDRESS, 0x6B, 0x03);             //PWR_MGMT_1    -- SLEEP 0; CYCLE 0; TEMP_DIS 0; CLKSEL 3 (PLL with Z Gyro reference)
      i2c_writeReg(MPU6050_ADDRESS, 0x1B, 0x18);             //GYRO_CONFIG   -- FS_SEL = 3: Full scale set to 2000 deg/sec
      // enable I2C bypass for AUX I2C
      #if defined(MAG)
        i2c_writeReg(MPU6050_ADDRESS, 0x6A, 0x00);             //USER_CTRL     -- DMP_EN=0 ; FIFO_EN=0 ; I2C_MST_EN=0 (I2C bypass mode) ; I2C_IF_DIS=0 ; FIFO_RESET=0 ; I2C_MST_RESET=0 ; SIG_COND_RESET=0
        i2c_writeReg(MPU6050_ADDRESS, 0x37, 0x02);             //INT_PIN_CFG   -- INT_LEVEL=0 ; INT_OPEN=0 ; LATCH_INT_EN=0 ; INT_RD_CLEAR=0 ; FSYNC_INT_LEVEL=0 ; FSYNC_INT_EN=0 ; I2C_BYPASS_EN=1 ; CLKOUT_EN=0
      #endif
     
      i2c_writeReg(MPU6050_ADDRESS, 0x1A, MPU6050_DLPF_CFG); //CONFIG        -- EXT_SYNC_SET 0 (disable input pin for data sync) ; default DLPF_CFG = 0 => ACC bandwidth = 260Hz  GYRO bandwidth = 256Hz)
      }
dies einfach in der sensors.ino ändern.

danach werden die lpf werte auch im mpu6050 gespeichert!

geht nun einwandfrei!
Moin Michael

Wenn es das ist (wovon ich verschärft ausgehe :) ), vielen dank fürs einstellen.

Wünsche euch einen schönen Flug/Grill/Chill/Bastel/Ausruh-Sonntag :bounce:

#10866 Re: Der WII-Copter ( Selbstbau-Projekt )

Verfasst: 29.04.2012 20:15:24
von Michael Brakhage
Nabend :)

nach einigen Testflügen und neuen Props fliege ich nun wieder ohne LPF Filter mit dem MPU6050. PIDs sind alle Defaultwerte bis auf RC-Rate 1,10/R-P Rate 0,1/Y-Rate 0,35

Den MPU6050 habe ich weiterhin sehr weich gelagert (Microbeastpad).

Keinerlei Beanstandungen im Flugverhalten. Wind macht das Quad etwas nervös aber ansonsten ist alles wunderbärchen! :)

#10867 Re: Der WII-Copter ( Selbstbau-Projekt )

Verfasst: 30.04.2012 23:12:37
von speedy
Ich hab gerade in dem Flydumini Thread Seite 6 oder 7 gelesen, daß man seit der Software Version 1.9 irgendwelche Widerstände benötigt für zwischen den WMP und dem I2C Ausgang am Board. Kann mir mal bitte jemand ne Zusammenfassung (evtl auch als Link) geben, wieso wofür und überhaupt man diese da jetzt auf einmal benötigt ? In dem Thread wurde auch dieser [url=http://www.dsscircuits.com/articles/eff ... stors.html]Artikel verlinkt[url], den Fabio ihm gegeben hat.

Also ich will ja den Femtoduino Version 1 verwenden und den I2C Signal Wandler auch von Fabio - und da waren von Anfang an Widerstände als SMD verlötet, für die mir Fabio auch noch andere zum Tauschen mitgeschickt hatte für ne evtl bessere/andere Flanke.(da hatte ich auch oben erwähnten Link von Fabio bekommen also Info-Quelle) ... aber jetzt frage ich mich natürlich, ob da noch irgendeine neue Erkenntnis oder Besserung dazugekommen ist (habe ne lange Zeit die Sache nicht verfolgt) oder ob damit jene Widerstände gemeint sind, die auf dem Wandler schon drauf sind - aber die hatte ich eben auch schon "damals" und wäre somit nichts neues für mich.


MFG
speedy

#10868 PULLUPS ab 1.9 Multiwii

Verfasst: 01.05.2012 00:07:26
von dynai
Hi,

tilman war da mal wieder fleissig und hat uns das sehr schön aufbereited
-> http://www.microcopters.de/artikel/das- ... kompendium

da gibts den hinweis beim WMP und beim BMA 020 ;)

gruß Chris

#10869 Re: Der WII-Copter ( Selbstbau-Projekt )

Verfasst: 01.05.2012 00:31:22
von speedy
Danke Tilman ... da brauch ich dann also nichts tun. :bounce:


MFG
speedy

#10870 Re: Der WII-Copter ( Selbstbau-Projekt )

Verfasst: 01.05.2012 13:07:37
von VoBo
Hi Leute,

Ich bräuchte mal eine Empfehlung von den Profi´s :mrgreen:

Ich habe in meinem Copter neuerdings die Freeimu 0.4.3 verbaut und musste im Vergleich zur WM+ und BMA020 Variante gleich mal mit den P-Werten (Pitch+Roll) auf 3,5 runtergehen.
Montiert hatte ich die IMU mit 2 Lagen Servotape von "C".

Wie ist denn die beste Montagevariante für die Freeimu 0.4.3 ?
Ich habe zu Verfügung:
- "C" Servotape
- Gy401 Gyro-Pad´s
- HC3D Montagepad´s

Gruß
Volker

#10871 Re: Der WII-Copter ( Selbstbau-Projekt )

Verfasst: 01.05.2012 13:16:27
von Crizz
Ich befestige di Varesano-IMU immer mit recht dünnem, festen Tape, bisher haben die es lieber hart als weich gemocht.

#10872 Re: Der WII-Copter ( Selbstbau-Projekt )

Verfasst: 01.05.2012 14:49:40
von Jingej
vibrationen, vibrationen, vibrationen - ich flieg mit 8.0/0.040/40 und das ding liegt wie ein stein in der luft - alle werte unter 4 sind murks, beseitige unwuchten/unzentrierte propeller und flieg mit werten über P 4 und alles fliegt fein

#10873 Re: Der WII-Copter ( Selbstbau-Projekt )

Verfasst: 01.05.2012 17:27:44
von r0sewhite
Jingej hat geschrieben:vibrationen, vibrationen, vibrationen - ich flieg mit 8.0/0.040/40 und das ding liegt wie ein stein in der luft - alle werte unter 4 sind murks, beseitige unwuchten/unzentrierte propeller und flieg mit werten über P 4 und alles fliegt fein
Naja, das hängt letztendlich auch von Größe und Gewicht des Copters ab. Mein X8 liegt mit P9.0 ungefähr so stabil in der Luft, wie mein Flydumini mit P3.0.

#10874 Re: Der WII-Copter ( Selbstbau-Projekt )

Verfasst: 01.05.2012 18:31:59
von Jingej
mein minitri hat auch P8 und wiegt 270g mit akku :O

#10875 Re: Der WII-Copter ( Selbstbau-Projekt )

Verfasst: 01.05.2012 18:45:16
von speedy
Ich hab gerade mal meinen R16 Scan auf Summensignal umgebaut.

Allerdings ist wohl bei der "Einfachvariante" das Signal dann am Ausgang invertiert und nicht ganz so stark. Das mit dem "nicht ganz so stark" ist vermutlich vernachlässigbar.

Aber das invertierte Signal - hat jemand schonmal in der Software das Eingangssignal vom Empfänger invertiert ? Sollte ja in der Theorie einfach möglich sein, nur habe ich mich in der Praxis noch nicht damit beschäftigt ... man könnte auch noch nen Transistor ranbasteln, aber wozu mir den Aufwand machen, wenn man doch den Source hat. :oops:


MFG
speedy