- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 3 von 3

Thema: MPU6050 Fehler beim Auslesen der Werte

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1

    MPU6050 Fehler beim Auslesen der Werte

    Hallo Leute!

    Ich sitze nun seit längerem an einem Fehler, den ich selbst nicht mehr durchschaue... Vielleicht sieht ihn einer von euch.

    Aufbau: MPU6050 via I2C an einem ATMEGA1284P --> UART --> XBEE--> PC --> LabView

    Das auslesen aller achsen funktioniert soweit super nach einer Bibliothek von "Davide Gironi" --> Seite http://davidegironi.blogspot.de/2013...l#.VDsRtBa0Pwo

    Nur mir ist jetzt aufgefallen, dass ich immer fehler bei der ACC X Achse bekomme (BLAUE LINIE).

    Siehe Bild im Anhang!

    Anscheinened verliert der X Wert sich irgendwo nur ich finde es einfach nicht. Das Programm ist soweit auf alle möglichkeiten getestet. An LabView oder XBEE liegt es nicht.

    Hier ein paar Code Ausschnitte:

    Code:
    void mpu6050_init() {
    	#if MPU6050_I2CINIT == 1
    	//init I2C
    	i2c_init();
    	_delay_us(10);
    	#endif
    
    	//allow mpu6050 chip clocks to start up
    	_delay_ms(100);
    
    	//set sleep disabled
    	mpu6050_setSleepDisabled();
    	//wake up delay needed sleep disabled
    	_delay_ms(10);
    
    	//set clock source
    	//  it is highly recommended that the device be configured to use one of the gyroscopes (or an external clock source)
    	//  as the clock reference for improved stability
    	mpu6050_writeBits(MPU6050_RA_PWR_MGMT_1, MPU6050_PWR1_CLKSEL_BIT, MPU6050_PWR1_CLKSEL_LENGTH, MPU6050_CLOCK_PLL_XGYRO);
    	//set DLPF bandwidth to 42Hz
    	mpu6050_writeBits(MPU6050_RA_CONFIG, MPU6050_CFG_DLPF_CFG_BIT, MPU6050_CFG_DLPF_CFG_LENGTH, MPU6050_DLPF_BW_42);
        //set sampe rate
    	mpu6050_writeByte(MPU6050_RA_SMPLRT_DIV, 4); //1khz / (1 + 4) = 200Hz
    	//set gyro range
    	mpu6050_writeBits(MPU6050_RA_GYRO_CONFIG, MPU6050_GCONFIG_FS_SEL_BIT, MPU6050_GCONFIG_FS_SEL_LENGTH, MPU6050_GYRO_FS);
    	//set accel range
    	mpu6050_writeBits(MPU6050_RA_ACCEL_CONFIG, MPU6050_ACONFIG_AFS_SEL_BIT, MPU6050_ACONFIG_AFS_SEL_LENGTH, MPU6050_ACCEL_FS);
    
    }
    
    //can not accept many request if we alreay have getattitude requests
    /*
     * get raw data
     */
    void mpu6050_getRawData(int16_t* ax, int16_t* ay, int16_t* az, int16_t* gx, int16_t* gy, int16_t* gz) {
    	mpu6050_readBytes(MPU6050_RA_ACCEL_XOUT_H, 14, (uint8_t *)buffer);
    
        *ax = (((int16_t)buffer[0]) << 8) | buffer[1];
        *ay = (((int16_t)buffer[2]) << 8) | buffer[3];
        *az = (((int16_t)buffer[4]) << 8) | buffer[5];
        *gx = (((int16_t)buffer[8]) << 8) | buffer[9];
        *gy = (((int16_t)buffer[10]) << 8) | buffer[11];
        *gz = (((int16_t)buffer[12]) << 8) | buffer[13];
    }

    ax ist somit der Wert, der fehlerhaft ist.

    Bitte um Hilfe!

    Liebe Grüße
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken LabView.jpg  

Ähnliche Themen

  1. MPU6050 abfragen/auslesen
    Von Julian Werner im Forum Sensoren / Sensorik
    Antworten: 3
    Letzter Beitrag: 17.07.2014, 17:03
  2. Kompiling fehler bei der I2Cdevlib und MPU6050 Quellcode
    Von Phill IP im Forum Sensoren / Sensorik
    Antworten: 3
    Letzter Beitrag: 05.02.2013, 16:09
  3. Fehler beim Compilieren der Methoden der ServoLib
    Von Magelan1979 im Forum Robby RP6
    Antworten: 3
    Letzter Beitrag: 13.06.2010, 21:09
  4. RN-MotorControl - Auslesen der festeingestellten Werte
    Von Lurchi im Forum Schaltungen und Boards der Projektseite Mikrocontroller-Elektronik.de
    Antworten: 1
    Letzter Beitrag: 22.02.2010, 09:08
  5. Auslesen der BIOS-Werte (Temperatur etc) ?
    Von KsB im Forum PC-, Pocket PC, Tablet PC, Smartphone oder Notebook
    Antworten: 11
    Letzter Beitrag: 30.11.2008, 07:20

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad