MPU-6050 este prima componentă integrată de procesare a mișcării cu 6 axe din lume, care integrează un giroscop cu 3 axe, accelerometru cu 3 axe și un procesor de mișcare digitală scalabil (DMP).Scopul utilizării acestuia este de a obține unghiul de înclinare al obiectului care trebuie măsurat (cum ar fi un quadcopter, o mașină de echilibrare) pe axele x, y și z, adică unghiul de pas, unghiul de rulare și unghiul de yaw.Am citit cele șase date ale MPU-6050 (valoarea anunțului de accelerare cu trei axe și valoarea AD cu viteză unghiulară cu trei axe) prin interfața I2C.După procesarea fuziunii posturilor, pot fi calculate unghiurile de pitch, rulou și yaw.Ca referință direcțională pentru valorile de măsurare, definiția direcției de coordonate a senzorului este așa cum se arată în figura de mai jos, care urmează principiul sistemului de coordonate din dreapta (adică degetul mare indică direcția pozitivă a X-Axa, degetul arătător indică direcția pozitivă a axei y, iar degetul mijlociu indică direcția pozitivă a axei z).
Cu autobuzul său dedicat cu senzor I2C, MPU-6050 este capabil să primească intrarea direct de la o busolă externă cu 3 axe, oferind o ieșire completă cu 9 axe MotionFusion ™.Elimină problema discrepanței dintre giroscopul combinat și cronologia acceleratorului și reduce semnificativ spațiul de ambalare în comparație cu soluțiile cu mai multe componente.Când este conectat la un magnetometru cu trei axe, MPU-60X0 este capabil să furnizeze o ieșire completă de fuziune a mișcării cu 9 axe în principalul său port I2C sau SPI (rețineți că portul SPI este disponibil doar pe MPU-6000).
• MPU-3300
• MPU-6000
• MPU-6500
Producătorul MPU-6050 este TDK.După ce cei doi fondatori ai TDK, Dr. Yogoro Kato și Takei Takei, au inventat Ferrita în Tokyo, au fondat Tokyo Denkikagaku Kogyo K.K.În 1935. Ca marcă globală a industriei electronice, TDK a menținut întotdeauna o poziție dominantă în domeniile materiilor prime electronice și ale componentelor electronice.Portofoliul de produse cuprinzător și bazat pe inovație al TDK acoperă componente pasive, cum ar fi condensatoare ceramice, condensatoare electrolitice de aluminiu, condensatoare de film, produse magnetice, componente de înaltă frecvență, dispozitive piezoelectrice și de protecție, precum și senzori și sisteme de senzori (cum ar fi temperatura și presiunea,, presiune,Senzori magnetici și MEMS), etc. În plus, TDK oferă, de asemenea, surse de alimentare și dispozitive energetice, capete magnetice și alte produse.Brandurile sale de produse includ TDK, EPCOS, Invensense, Micronas, Tronics și TDK-Lambda.
Printre ele, SCL și SDA sunt interfețele IIC conectate la MCU, iar MCU controlează MPU-6050 prin această interfață IIC.Există, de asemenea, o interfață IIC, și anume AUX_CL și AUX_DA.Această interfață poate fi utilizată pentru a conecta dispozitive sclave externe, cum ar fi senzorii magnetici, pentru a forma un senzor cu nouă axe.VLogic este tensiunea portului IO.Acest pin poate suporta minimum 1,8V.De obicei, îl conectăm direct la VDD.AD0 este pinul de control al adresei interfeței IIC sclave (conectat la MCU).Acest pin controlează cel mai mic bit al adresei IIC.Dacă este conectată la GND, adresa IIC a MPU-6050 este 0x68;Dacă este conectat la VDD, este 0x69.Vă rugăm să rețineți că adresa de aici nu include cel mai mic bit de transmisie a datelor (cel mai mic bit este utilizat pentru a reprezenta operațiunile de citire și scriere).Pe mWBalancedStc15, AD0 este conectat la GND, astfel încât adresa IIC a MPU-6050 este 0x68 (excluzând cel mai mic bit).
MPU-6050 folosește IIC pentru a comunica cu STC15, deci trebuie să inițializăm liniile de date SDA și SCL conectate la MPU-6050 mai întâi.
Această etapă restabilește toate registrele din MPU-6050 la valorile lor implicite, care se realizează prin scrierea 1 la bitul 7 din registrul de gestionare a puterii 1 (0x6b).După resetare, registrul de gestionare a puterii 1 va fi restaurat la valoarea implicită (0x40), iar acest registru trebuie ulterior setat la 0x00 pentru a trezi MPU-6050 și pentru a-l pune într-o stare de lucru normală.
În această etapă, am setat intervalul la scară completă (FSR) al celor doi senzori prin registrul de configurare a giroscopului (0x1b) și, respectiv, registrul de configurare a senzorului de accelerație (0x1c).De obicei, am setat gama pe scară largă a giroscopului la ± 2000DPS și intervalul pe scară largă a accelerometrului la ± 2G.
Aici, trebuie să configuram și următorii parametri: Opriți întreruperea, dezactivați interfața AUX I2C, dezactivați FIFO, setați rata de eșantionare a giroscopului și configurați filtrul digital cu trecere scăzută (DLPF).Deoarece nu folosim întreruperi pentru a citi datele din acest capitol, funcția de întrerupere trebuie să fie dezactivată.În același timp, întrucât nu folosim interfața aux i2c pentru a conecta alți senzori externi, trebuie să închidem și această interfață.Aceste funcții pot fi controlate prin Registrul de activare a întreruperii (0x38) și registrul de control al utilizatorului (0x6a).MPU-6050 poate utiliza FIFO pentru a stoca datele senzorului, dar nu le-am folosit în acest capitol, astfel încât toate canalele FIFO trebuie să fie închise.Acest lucru poate fi controlat prin registrul de activare FIFO (0x23).În mod implicit, valoarea acestui registru este 0 (adică FIFO este dezactivată), astfel încât să putem utiliza valoarea implicită direct.Rata de eșantionare a giroscopului este controlată de Registrul de divizor de rată de eșantionare (0x19).În mod normal, stabilim această rată de eșantionare la 50. Configurația filtrului digital de trecere scăzută (DLPF) este finalizată prin registrul de configurare (0x1a).În general, vom seta DLPF la jumătate din lățimea de bandă pentru a echilibra precizia datelor și viteza de răspuns.
Setarea sursei de ceas a sistemului depinde de registrul de gestionare a puterii 1 (0x6b), unde cei mai mici trei biți ai acestui registru determină selecția sursei de ceas.În mod implicit, acești trei biți sunt setați la 0, ceea ce înseamnă că sistemul folosește oscilatorul intern de 8MHz RC ca sursă de ceas.Cu toate acestea, pentru a îmbunătăți precizia ceasului, de multe ori o setăm la 1 și selectăm PLL-ul giroscopului axei X ca sursă de ceas.În plus, activarea senzorului de viteză unghiulară și a senzorului de accelerație este, de asemenea, un pas important în procesul de inițializare.Ambele operații sunt implementate prin intermediul Power Management Register 2 (0x6c).Pur și simplu setați bitul corespunzător la 0 pentru a activa senzorul corespunzător.După finalizarea etapelor de mai sus, MPU-6050 poate introduce starea normală de lucru.Aceste registre care nu sunt setate în mod special vor adopta valorile implicite presetate de către sistem.
Senzorul este echipat cu un giro în interior, care va rămâne întotdeauna paralel cu direcția inițială datorită efectului giroscopic.Prin urmare, putem calcula direcția și unghiul de rotație detectând abaterea giro -ului din direcția inițială.
Un senzor de accelerometru este un dispozitiv care poate măsura accelerația și funcționează pe baza principiului efectului piezoelectric.În timpul accelerației, senzorul măsoară forța inerțială aplicată blocului de masă și apoi calculează valoarea de accelerație folosind a doua lege a lui Newton.
DMP este un modul de prelucrare a datelor din cipul MPU6050 care are un algoritm de filtrare Kalman încorporat pentru achiziționarea de date de la senzorii de giroscop și accelerometru și procesarea cuaternilor de ieșire.Această caracteristică reduce foarte mult volumul de muncă al microprocesorului periferic și evită procesul de filtrare și de fuziune a datelor.
Note:
Quaterns: Quaterns -urile sunt simple numere de supercomplex.Numerele complexe sunt compuse din numere reale, plus unitatea imaginară I, unde i^2 = -1.
• Jucării
• Receptor și jocuri portabile
• Controlere de jocuri bazate pe mișcare
• Tehnologia BlurFree ™ (pentru stabilizarea imaginii video/în continuare)
• Tehnologia AirSign ™ (pentru securitate/autentificare)
• Recunoașterea gesturilor Instantgesture ™ IG ™
• Senzori purtabili pentru sănătate, fitness și sport
• Joc și cadru de aplicație activat în mișcare
• Tehnologia MotionCommand ™ (pentru scurte mici gesturi)
• Servicii bazate pe locație, puncte de interes și socoteală moarte
• Telecomande 3D pentru DTV-uri conectate la internet și cutii set-top, șoareci 3D
• Tehnologia TouchAnywhere ™ (pentru controlul/navigarea aplicației UI „fără atingere”)
Putem lua următoarele modalități de a reduce zgomotul MPU-6050:
Utilizați senzori calibrați: calibrarea accelerometrului și giroscopului MPU-6050 poate elimina prejudecățile și eroarea senzorilor înșiși, reducând astfel efectul zgomotului.Procesul de calibrare constă de obicei din două etape: calibrarea statică și calibrarea mișcării.
Proces de filtrare hardware: Adăugarea condensatoarelor de filtrare la linia de alimentare a MPU-6050 poate reduce impactul zgomotului de alimentare asupra senzorului.Între timp, în timpul aspectului PCB, ar trebui să încercăm să menținem MPU-6050 departe de sursele potențiale de interferență, cum ar fi liniile de semnal de înaltă frecvență și componentele de mare putere.
Procesarea filtrării software: După colectarea datelor brute de la MPU-6050, putem adăuga o legătură de filtrare a software-ului pentru a prelucra datele inițiale pentru a elimina interferența indusă de zgomot.Metodele de filtrare a software -ului utilizate în mod obișnuit includ filtrarea medie, filtrarea mediană, filtrarea Kalman și așa mai departe.
Utilizați un filtru intern cu trecere scăzută: MPU-6050 are un filtru digital integrat digital integrat, care poate fi utilizat pentru a reduce zgomotul de înaltă frecvență prin setarea frecvenței sale de întrerupere.Mai exact, putem seta frecvența de întrerupere a filtrului digital modificând registrul de configurare al MPU-6050 pentru a elimina zgomotul de înaltă frecvență cauzat de eșantionarea A/D.
MPU-6050 este un accelerometru cu șase axe și un senzor de giroscop care poate fi utilizat pentru a măsura mișcarea și atitudinea obiectelor.Calculul traiectoriei de mișcare bazat pe MPU-6050 poate fi realizat prin următorii pași:
Primul pas este să citiți datele senzorului.Trebuie să citim datele accelerometrului și giroscopului de la senzorii MPU-6050 folosind drivere și funcții de bibliotecă adecvate.Aceste date sunt de obicei ieșite într -un format digital, astfel încât sunt necesare unele lucrări de conversie și calibrare pentru a le converti în măsurători reale în unitățile fizice.
Al doilea pas este calcularea accelerației.În primul rând, trebuie să procesăm datele de la accelerometru pentru a obține accelerarea obiectului în fiecare axă.Ulterior, pentru a calcula viteza și deplasarea obiectului în fiecare axă, trebuie să integrăm datele de accelerație.Tehnicile de integrare numerică, cum ar fi metoda lui Euler sau metoda lunger-kutta, sunt adesea utilizate în acest proces pentru a asigura exactitatea calculelor de deplasare.
Al treilea pas este calcularea vitezei unghiulare.Folosind datele de giroscop, se poate calcula viteza unghiulară a obiectului în fiecare axă.Din nou, aceste date trebuie calibrate și convertite pentru a obține viteza unghiulară în unitățile fizice reale.
Al patrulea pas este calcularea rotației.Prin integrarea datelor de viteză unghiulară, se poate calcula unghiul de rotație al obiectului în fiecare axă.Acest lucru se poate face folosind tehnici de integrare numerică, cum ar fi metoda lui Euler sau metoda Longe-Kutta pentru a calcula unghiul.
Al cincilea pas este îmbinarea datelor.Combinăm datele de la accelerometre și giroscopuri pentru a obține informații complete de atitudine și poziție ale obiectului.Acest lucru se poate face folosind algoritmi precum Solver de atitudine bazat pe cuaternion sau Euler Angle Solver.
Al șaselea pas este vizualizarea rezultatelor.Conversăm traiectoria de mișcare a obiectului calculat într -un set de puncte dintr -un sistem de coordonate 3D și îl afișăm folosind instrumente de vizualizare adecvate pentru o înțelegere mai intuitivă a traiectoriei de mișcare a obiectului și a schimbărilor de atitudine.
Rezultatele dobândite au arătat o precizie suficientă mai mică de 1 % și fiabilitate, asigurând dimensiunea corespunzătoare a arborelui elevatorului și standardele ridicate ale industriei de ascensoare.
Pentru a citi registrele interne MPU6050, maestrul trimite o condiție de pornire, urmată de adresa sclavului I2C și un bit de scriere, apoi adresa de registru care va fi citită.
În ceea ce privește sănătatea purtabilă, dispozitivele de urmărire a fitnessului.În drone și quadcoptere, MPU6050 este utilizat pentru controlul poziției.Folosit în controlul brațului robotizat.Dispozitive de control a gesturilor de mână.
Blocul de senzori IMU MPU6050 citește datele de la senzorul MPU-6050 care este conectat la hardware.Blocul iese de accelerare, viteză unghiulară și temperatură de -a lungul axelor senzorului.
Acesta este procesorul de bord al MPU6050 care combină datele provenite de la accelerometru și giroscop.DMP este cheia utilizării MPU6050 și este explicată în detaliu mai târziu.Ca și în cazul tuturor microprocesoarelor, DMP are nevoie de firmware pentru a rula.
Vă rugăm să trimiteți o întrebare, vom răspunde imediat.
pe 2024/09/3
pe 2024/09/3
pe 1970/01/1 3108
pe 1970/01/1 2672
pe 0400/11/15 2209
pe 1970/01/1 2182
pe 1970/01/1 1802
pe 1970/01/1 1774
pe 1970/01/1 1728
pe 1970/01/1 1673
pe 1970/01/1 1670
pe 5600/11/15 1632