Čtení dat z akcelerometru MPU6050

...

Moderátor: Mods_senior

Uživatelský avatar
zezr
Level 4.5
Level 4.5
Příspěvky: 1852
Registrován: říjen 10
Pohlaví: Muž
Stav:
Offline

Čtení dat z akcelerometru MPU6050

Příspěvekod zezr » 08 dub 2019 19:59

Ahoj,
Mám za úkol zjistit úhel natočení z akcelerometru/gyroskopu MPU 6050. To není nijak veliký problém. Ovšem když čidlem škubu v osách tak i přes, to že se úhel natočení nemění, se čtený úhel natočení mění. Mohl by mi někdo poradit jakým způsobem mám k problému přistoupit?
Programuji v pythonu pro raspberry pi 3+
V ustáleném stavu a když není škubnutí nijak drastické to funguje dobře.

Kód: Vybrat vše

   ax = (sensor.get_accel_data()["x"])  # údaje akcelerometru
    ay = (sensor.get_accel_data()["y"]) 
    az = (sensor.get_accel_data()["z"]) 

    grx = (sensor.get_gyro_data()["x"]) # údaje gyroskopu
    gry = (sensor.get_gyro_data()["y"])
    grz = (sensor.get_gyro_data()["z"])

    arx = 57.29 * (math.atan2(-ay, -az) + math.pi) #přepočet na úhel
    ary = 57.29 * (math.atan2(-ax, -az) + math.pi)
    arz = 57.29 * (math.atan2(-ay, -ax) + math.pi)

    AngleX = (0.96 * arx) + (0.04 * grx); # korekce pomocí jakéhosi filtru z internetu
    AngleY = (0.96 * ary) + (0.04 * gry);
    AngleZ = (0.96 * arz) + (0.04 * grz);

Děkuji
Svět ztrácí genie. Einstein umřel ,Mozart umřel a mě je taky nějak špatně!

CPU: Ryzen 5 3600 , MB: Asus Crosshair VI EXTREME, GPU: MSI ARMOR GTX 1070 Ti , Ram: Cruicial 32GB @3733MHz Zdroj: CX 550M
HDD: Segate 7200.14 2TB SSD: OCZ-ARC100 256GB, Kingston A1000 512GB

Reklama
Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7360
Registrován: prosinec 10
Pohlaví: Muž
Stav:
Offline

Re: Čtení dat z akcelerometru MPU6050

Příspěvekod faraon » 09 dub 2019 04:19

Změní se úhel úplně, nebo se vrátí na původní hodnotu?
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)

Uživatelský avatar
zezr
Level 4.5
Level 4.5
Příspěvky: 1852
Registrován: říjen 10
Pohlaví: Muž
Stav:
Offline

Re: Čtení dat z akcelerometru MPU6050

Příspěvekod zezr » 09 dub 2019 14:20

po ustálení se opět vrátí na správnou hodnotu. Problém je že já ten úhel čtu 100x za vteřinu
Svět ztrácí genie. Einstein umřel ,Mozart umřel a mě je taky nějak špatně!

CPU: Ryzen 5 3600 , MB: Asus Crosshair VI EXTREME, GPU: MSI ARMOR GTX 1070 Ti , Ram: Cruicial 32GB @3733MHz Zdroj: CX 550M
HDD: Segate 7200.14 2TB SSD: OCZ-ARC100 256GB, Kingston A1000 512GB

Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7360
Registrován: prosinec 10
Pohlaví: Muž
Stav:
Offline

Re: Čtení dat z akcelerometru MPU6050

Příspěvekod faraon » 09 dub 2019 20:27

To stavíš kolibříka v životní velikosti? O jak velký úhel se ta hračka otočí za setinu sekundy? :shock:

Zkus se inspirovat třeba v ošetření zákmitů tlačítka, a informovat o změně tepve když přečteš aspoň tři (téměř) shodné údaje po sobě.

Jeden podobný pokus: https://www.root.cz/clanky/stavime-kvadrokopteru-3-digital-motion-processor-na-mpu-6050/
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)


Zpět na “Vše ostatní (sw)”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 3 hosti