MPU-6050 è il primo componente di elaborazione del movimento a 6 assi integrato al mondo, che integra un giroscopio a 3 assi, un accelerometro a 3 assi e un processore di movimento digitale scalabile (DMP).Lo scopo di usarlo è quello di ottenere l'angolo di inclinazione dell'oggetto da misurare (come un quadricottero, un'auto di bilanciamento) sugli assi X, Y e Z, cioè l'angolo di pitch, l'angolo di rollio e l'angolo di imbardata.Leggiamo i sei dati dell'MPU-6050 (valore AD di accelerazione a tre assi e valore AD di velocità angolare a tre assi) attraverso l'interfaccia I2C.Dopo l'elaborazione della fusione della postura, è possibile calcolare gli angoli del tono, del rotolo e dell'imbardatura.Come riferimento direzionale per i valori di misurazione, la definizione della direzione delle coordinate del sensore è come mostrata nella figura seguente, che segue il principio del sistema di coordinate per la mano destra (cioè il pollice destro punta alla direzione positiva di X-Asse, il dito indice indica la direzione positiva dell'asse Y e il dito medio punta alla direzione positiva dell'asse z).
Con il suo bus di sensore I2C dedicato, MPU-6050 è in grado di ricevere input direttamente da una bussola esterna a 3 assi, fornendo un'uscita MotionFusion ™ a 9 assi completi.Elimina il problema di discrepanza tra il giroscopio combinato e la sequenza temporale dell'acceleratore e riduce significativamente lo spazio di imballaggio rispetto alle soluzioni multi-componenti.Se collegato a un magnetometro a tre assi, MPU-60x0 è in grado di fornire un'uscita di fusione di movimento a 9 assi completi alla sua porta I2C o SPI principale (si noti che la porta SPI è disponibile solo su MPU-6000).
• MPU-3300
• MPU-6000
• MPU-6500
Il produttore di MPU-6050 è TDK.Dopo i due fondatori di TDK, il Dr. Yogoro Kato e Takei Takei, hanno inventato Ferrite a Tokyo, hanno fondato Tokyo Denkikagaku Kogyo K.K.Nel 1935. Come marchio globale del settore elettronico, TDK ha sempre mantenuto una posizione dominante nei campi di materie prime elettroniche e componenti elettronici.Il portafoglio di prodotti completo e guidato dall'innovazione di TDK copre componenti passivi come condensatori ceramici, condensatori elettrolitici in alluminio, condensatori di film, prodotti magnetici, componenti ad alta frequenza, dispositivi piezoelettrici e di protezione, nonché sistemi di sensori e sensori (come la temperatura e la pressione,Sensori magnetici e MEMS), ecc. Inoltre, TDK fornisce anche alimentatori e dispositivi energetici, teste magnetiche e altri prodotti.I suoi marchi di prodotti includono TDK, EPCOS, Invensense, Micronas, Tronics e TDK-Lambda.
Tra questi, SCL e SDA sono le interfacce IIC collegate all'MCU e l'MCU controlla MPU-6050 attraverso questa interfaccia IIC.C'è anche un'interfaccia IIC, vale a dire Aux_Cl e Aux_DA.Questa interfaccia può essere utilizzata per collegare dispositivi slave esterni, come i sensori magnetici, per formare un sensore a nove assi.Vlogic è la tensione della porta IO.Questo pin può supportare un minimo di 1,8 V.Di solito lo colleghiamo direttamente a VDD.AD0 è il pin di controllo dell'indirizzo dell'interfaccia Slave IIC (connessa all'MCU).Questo pin controlla il bit più basso dell'indirizzo IIC.Se è collegato a GND, l'indirizzo IIC di MPU-6050 è 0x68;Se è collegato a VDD, è 0x69.Si noti che l'indirizzo qui non include il bit più basso di trasmissione dei dati (il bit più basso viene utilizzato per rappresentare le operazioni di lettura e scrittura).Sul MWBabAlcedStc15, AD0 è collegato a GND, quindi l'indirizzo IIC dell'MPU-6050 è 0x68 (escluso il bit più basso).
MPU-6050 utilizza IIC per comunicare con STC15, quindi dobbiamo inizializzare prima le linee di dati SDA e SCL collegate a MPU-6050.
Questo passaggio ripristina tutti i registri all'interno dell'MPU-6050 ai loro valori predefiniti, che si ottiene scrivendo da 1 a Bit 7 del registro di gestione dell'alimentazione 1 (0x6b).Dopo il ripristino, il registro di gestione dell'alimentazione 1 verrà ripristinato al valore predefinito (0x40) e questo registro deve essere successivamente impostato su 0x00 per svegliare l'MPU-6050 e metterlo in uno stato di lavoro normale.
In questo passaggio, impostiamo l'intervallo su vasta scala (FSR) dei due sensori attraverso il registro di configurazione del giroscopio (0x1b) e il registro di configurazione del sensore di accelerazione (0x1c) rispettivamente.In genere, abbiamo impostato l'intervallo su vasta scala del giroscopio a ± 2000 dps e l'intervallo su vasta scala dell'accelerometro a ± 2G.
Qui, dobbiamo anche configurare i seguenti parametri: disattivare gli interrupt, disabilitare l'interfaccia AUX I2C, disabilitare FIFO, impostare la velocità di campionamento del giroscopio e configurare il filtro a basso costo digitale (DLPF).Poiché non utilizziamo gli interrupt per leggere i dati in questo capitolo, la funzione di interruzione deve essere disattivata.Allo stesso tempo, poiché non stiamo usando l'interfaccia AUX I2C per collegare altri sensori esterni, dobbiamo anche chiudere questa interfaccia.Queste funzioni possono essere controllate tramite il registro abilita interrupt (0x38) e il registro di controllo dell'utente (0x6a).MPU-6050 può utilizzare FIFO per archiviare i dati dei sensori, ma non li abbiamo utilizzati in questo capitolo, quindi tutti i canali FIFO devono essere chiusi.Questo può essere controllato tramite il registro abilita FIFO (0x23).Per impostazione predefinita, il valore di questo registro è 0 (cioè FIFO è disabilitato), quindi possiamo utilizzare direttamente il valore predefinito.La velocità di campionamento del giroscopio è controllata dal registro del divisore della velocità di campionamento (0x19).Normalmente, abbiamo impostato questa velocità di campionamento su 50. La configurazione del filtro passa-basso digitale (DLPF) è completata tramite il registro di configurazione (0x1a).In generale, imposteremo DLPF su metà della larghezza di banda per bilanciare l'accuratezza dei dati e la velocità di risposta.
L'impostazione dell'origine dell'orologio di sistema dipende dal registro di gestione dell'alimentazione 1 (0x6b), in cui i tre bit più bassi di questo registro determinano la selezione della sorgente di clock.Per impostazione predefinita, questi tre bit sono impostati su 0, il che significa che il sistema utilizza l'oscillatore RC 8MHz interno come sorgente di clock.Tuttavia, al fine di migliorare l'accuratezza dell'orologio, spesso lo impostiamo su 1 e selezioniamo il PLL del giroscopio dell'asse X come sorgente di clock.Inoltre, abilitare il sensore di velocità angolare e il sensore di accelerazione è anche un passo importante nel processo di inizializzazione.Entrambe le operazioni sono implementate tramite Power Management Register 2 (0x6C).Basta impostare il bit corrispondente su 0 per attivare il sensore corrispondente.Dopo aver completato i passaggi precedenti, MPU-6050 può immettere il normale stato di lavoro.Tali registri che non sono appositamente impostati adotteranno i valori predefiniti predefiniti dal sistema.
Il sensore è dotato di un giroscopio all'interno, che rimarrà sempre parallelo alla direzione iniziale a causa dell'effetto giroscopico.Pertanto, possiamo calcolare la direzione e l'angolo di rotazione rilevando la deviazione del giroscopio dalla direzione iniziale.
Un sensore di accelerometro è un dispositivo in grado di misurare l'accelerazione e funziona in base al principio dell'effetto piezoelettrico.Durante l'accelerazione, il sensore misura la forza inerziale applicata al blocco di massa e quindi calcola il valore di accelerazione utilizzando la seconda legge di Newton.
Il DMP è un modulo di elaborazione dei dati nel chip MPU6050 che ha un algoritmo di filtraggio Kalman integrato per l'acquisizione di dati dai sensori del giroscopio e dell'accelerometro e l'elaborazione dei quaternioni di uscita.Questa funzione riduce notevolmente il carico di lavoro del microprocessore periferico ed evita il noioso processo di filtraggio e fusione dei dati.
Note:
Quaternioni: i quaternioni sono semplici numeri supercomplex.I numeri complessi sono composti da numeri reali più l'unità immaginaria I, dove i^2 = -1.
• Giocattoli
• Handset e giochi portatili
• Controller di gioco basati sul movimento
• Tecnologia Blurfree ™ (per la stabilizzazione di immagini video/fissa)
• Tecnologia AirSign ™ (per sicurezza/autenticazione)
• Riconoscimento dei gesti IG ™ InstantGesture ™
• Sensori indossabili per salute, fitness e sport
• Framework di giochi e applicazioni abilitati per il movimento
• Tecnologia MotionCommand ™ (per le scorte di gesti)
• Servizi basati sulla posizione, punti di interesse e resa dei conti morti
• Controlli remoti 3D per DTV connessi a Internet e caselle di set-top, topi 3D
• Tecnologia Touchanywhere ™ (per il controllo/navigazione delle applicazioni dell'interfaccia utente "No Touch")
Possiamo prendere i seguenti modi per ridurre il rumore di MPU-6050:
Usa sensori calibrati: calibrazione dell'accelerometro e del giroscopio dell'MPU-6050 può eliminare la distorsione e l'errore dei sensori stessi, riducendo così l'effetto del rumore.Il processo di calibrazione di solito è costituito da due fasi: calibrazione statica e calibrazione del movimento.
Processo di filtraggio dell'hardware: l'aggiunta di condensatori di filtri alla linea di alimentazione di MPU-6050 può ridurre l'impatto del rumore dell'alimentazione sul sensore.Nel frattempo, durante il layout del PCB, dovremmo cercare di tenere MPU-6050 lontano da potenziali fonti di interferenza, come linee di segnale ad alta frequenza e componenti ad alta potenza.
Elaborazione del filtraggio del software: dopo aver raccolto i dati grezzi da MPU-6050, possiamo aggiungere un collegamento di filtraggio software per pre-elaborare i dati iniziali per eliminare l'interferenza indotta dal rumore.I metodi di filtraggio software comunemente utilizzati includono filtraggio medio, filtraggio mediano, filtraggio Kalman e così via.
Utilizzare un filtro a basso passaggio interno: MPU-6050 ha un filtro a basso passaggio digitale integrato interno, che può essere utilizzato per ridurre il rumore ad alta frequenza impostando la frequenza di taglio.In particolare, possiamo impostare la frequenza di taglio del filtro digitale modificando il registro di configurazione dell'MPU-6050 per eliminare il rumore ad alta frequenza causato dal campionamento A/D.
L'MPU-6050 è un accelerometro a sei assi e un sensore di giroscopio che può essere utilizzato per misurare il movimento e l'atteggiamento degli oggetti.Il calcolo della traiettoria del movimento basato su MPU-6050 può essere realizzato dai seguenti passaggi:
Il primo passo è leggere i dati del sensore.Dobbiamo leggere i dati dell'accelerometro e del giroscopio dai sensori MPU-6050 utilizzando driver e funzioni di libreria appropriate.Questi dati vengono generalmente emettiti in un formato digitale, quindi sono necessari alcuni lavori di conversione e calibrazione per convertirli in misurazioni effettive nelle unità fisiche.
Il secondo passo è calcolare l'accelerazione.Innanzitutto, dobbiamo elaborare i dati dall'accelerometro per derivare l'accelerazione dell'oggetto in ciascun asse.Successivamente, al fine di calcolare la velocità e lo spostamento dell'oggetto in ciascun asse, dobbiamo integrare i dati di accelerazione.Le tecniche di integrazione numerica, come il metodo di Euler o il metodo Lunger-Kutta, sono spesso utilizzate in questo processo per garantire l'accuratezza dei calcoli di spostamento.
Il terzo passo è calcolare la velocità angolare.Utilizzando i dati del giroscopio, è possibile calcolare la velocità angolare dell'oggetto in ciascun asse.Ancora una volta, questi dati devono essere calibrati e convertiti per ottenere la velocità angolare in unità fisiche reali.
Il quarto passo è calcolare la rotazione.Integrando i dati di velocità angolare, è possibile calcolare l'angolo di rotazione dell'oggetto in ciascun asse.Questo può essere fatto utilizzando tecniche di integrazione numerica come il metodo di Euler o il metodo Longe-Kutta per calcolare l'angolo.
Il quinto passo è unire i dati.Combiniamo i dati da accelerometri e giroscopi per ottenere informazioni complete di atteggiamento e posizione dell'oggetto.Questo può essere fatto utilizzando algoritmi come il solutore di atteggiamento basato su quaternion o il solutore di angoli di eulero.
Il sesto passo è visualizzare i risultati.Convertiamo la traiettoria del movimento dell'oggetto calcolato in un insieme di punti in un sistema di coordinate 3D e la visualizziamo utilizzando strumenti di visualizzazione appropriati per una comprensione più intuitiva della traiettoria del movimento dell'oggetto e dei cambiamenti di atteggiamento.
I risultati acquisiti hanno mostrato una precisione sufficiente di meno dell'1 % e affidabilità, assicurando il corretto dimensione dell'albero dell'ascensore e gli elevati standard del settore dell'ascensore.
Per leggere i registri interni MPU6050, il Master invia una condizione di inizio, seguita dall'indirizzo slave I2C e un bit di scrittura, quindi dall'indirizzo del registro che verrà letto.
In dispositivi indossabili per la salute, i dispositivi di tracciamento del fitness.Nei droni e nei quadranti, MPU6050 viene utilizzato per il controllo di posizione.Utilizzato nel controllo del braccio robotico.Dispositivi di controllo dei gesti manuali.
Il blocco sensore IMU MPU6050 legge i dati dal sensore MPU-6050 collegato all'hardware.L'accelerazione del blocco emette l'accelerazione, la velocità angolare e la temperatura lungo gli assi del sensore.
Questo è il processore di bordo di MPU6050 che combina i dati provenienti dall'accelerometro e dal giroscopio.Il DMP è la chiave per utilizzare l'MPU6050 ed è spiegato in dettaglio in seguito.Come per tutti i microprocessori, il DMP necessita del firmware per eseguire.
Si prega di inviare una richiesta, risponderemo immediatamente.
su 03/09/2024
su 03/09/2024
su 01/01/1970 3108
su 01/01/1970 2672
su 15/11/0400 2211
su 01/01/1970 2182
su 01/01/1970 1802
su 01/01/1970 1774
su 01/01/1970 1728
su 01/01/1970 1676
su 01/01/1970 1670
su 15/11/5600 1632