Sommario:
Video: MPU6050-Accelerometro + Nozioni di base sul sensore giroscopico: 3 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
L'MPU6050 è un sensore molto utile.
L'mpu 6050 è un'IMU: un'unità di misura inerziale (IMU) è un dispositivo elettronico che misura e riporta la forza specifica di un corpo, la velocità angolare e talvolta l'orientamento del corpo, utilizzando una combinazione di accelerometri e giroscopi.
È un dispositivo a 6 assi
3 dell'asse possono misurare l'accelerazione e gli altri 3 sono per le misurazioni dell'accelerazione angolare.
Utilizzando l'accelerazione e l'accelerazione angolare è possibile ottenere una stima abbastanza accurata dell'angolo
In questo tutorial esploreremo come possiamo usare l'MPU6050 con una libreria per rendere le cose molto più semplici.
Forniture
- Scheda Arduino
- MPU6050
- Ponticelli
- tagliere
Passaggio 1: completare il circuito
Il sensore utilizza un protocollo noto come I2c per comunicare con Arduino per inviargli i valori.
Il pin A4 viene utilizzato per l'orologio seriale SCL e deve essere collegato a SCL del sensore e, A5 alla linea dati seriale SDA.
Il Vcc è collegato a 5v e il Gnd è collegato a massa
Passaggio 2: codifica
#include #include
Prima di iniziare, questa libreria non è stata scritta da me, penso solo che sia la più semplice e adoro usarla.
Questi sono i file di intestazione ^^, wire.h è usato per stabilire una comunicazione i2c
MPU6050 mpu6050 (cavo);
qui chiamiamo il nostro giroscopio, o creiamo un oggetto per coloro che hanno familiarità con gli OOP.
void setup() {
Serial.begin(9600); Wire.begin(); mpu6050.begin(); mpu6050.calcGyroOffsets(true); }
Inizialmente calcoliamo gli offset poiché tutte le letture dell'angolo saranno rispetto all'orientamento iniziale.
ciclo vuoto() {
mpu6050.update(); Serial.print("angleX: "); Serial.print(mpu6050.getAngleX()); Serial.print("\tangleY: "); Serial.print(mpu6050.getAngleY()); Serial.print("\tangleZ: "); Serial.println(mpu6050.getAngleZ()); }
Ognuno ci dà la misura dell'angolo.
Passaggio 3: altre funzioni
La libreria contiene altre funzioni
Come:
mpu6050.getTemp()//dà la temperatura (non molto precisa)
mpu6050.getAccX()//Accelerazione lineare in direzione X
(funzioni simili sono mpu6050.getAccY(), mpu6050.getAccZ())
mpu6050.getGyroX()//Accelerazione angolare attorno all'asse x
(funzioni simili sono mpu6050.getGyroY(), mpu6050.getGyroZ())
Consigliato:
Nozioni di base sul volo in aereo RC: 13 passaggi
Nozioni di base sul volo in aereo RC: Ciao a tutti, oggi esamineremo le basi su come pilotare un aereo RC su un simulatore ed evitare di far schiantare il vostro modello sul campo. Qualche tempo fa, ho spiegato come ho il mio FlySky FS -i6X controller collegato a un simulatore RC, quindi ora vorremo
Nozioni di base sul sensore di umidità: 3 passaggi
Nozioni di base sui sensori di umidità: questo è un tutorial di base su come utilizzare il modulo sensore DHT 11 con una scheda Arduino
Nozioni di base sul software di ricamo digitale Sewart: 4 passaggi
Nozioni di base sul software di ricamo digitale Sewart: l'utilizzo del software di ricamo digitale può sembrare intimidatorio e frustrante all'inizio, ma con un po' di pratica e pazienza e questa guida SUPER pratica, diventerai un maestro in pochissimo tempo. Questa guida si concentrerà sull'utilizzo del software, SewArt Embroidery Digitalize
Nozioni di base sul frullatore: 7 passaggi
Nozioni di base di Blender: Ciao a tutti! Ho escogitato un nuovo tutorial che copre le basi del software gratuito di modellazione 3D BLENDER 3D. Beh, molti di voi potrebbero pensare che io stia parlando del frullatore che usate in cucina, ma questo è molto meglio. Ti fa
Nozioni di base sul terminale Linux: 3 passaggi
Nozioni di base sul terminale Linux: quando ho installato Linux per la prima volta, stavo guardando tra le applicazioni e mi sono imbattuto nel terminale. Il terminale sarà l'obiettivo principale di questo istruibile. Mentre il terminale può essere utilizzato per fare grandi cose, queste grandi cose possono essere buone o cattive. F