Nota
Ciao e benvenuto nella Community Facebook degli appassionati di SunFounder Raspberry Pi, Arduino ed ESP32! Approfondisci la tua esperienza con Raspberry Pi, Arduino ed ESP32 insieme a una community di appassionati come te.
Perché unirsi?
Supporto Esperto: Risolvi problemi post-vendita e sfide tecniche grazie all’aiuto della nostra community e del nostro team.
Impara e Condividi: Scambia consigli e tutorial per migliorare le tue competenze.
Anteprime Esclusive: Accedi in anticipo a novità sui prodotti e contenuti in anteprima.
Sconti Speciali: Goditi sconti esclusivi sui nostri prodotti più recenti.
Promozioni Festive e Giveaway: Partecipa a promozioni e giveaway durante le festività.
👉 Pronto a esplorare e creare insieme a noi? Clicca su [qui] e unisciti subito!
Lezione 05: Modulo Giroscopio & Accelerometro (MPU6050)
In questa lezione imparerai a utilizzare il sensore MPU6050 con un Arduino per misurare accelerazione, rotazione e temperatura. Vedremo come inizializzare il sensore, impostarne i parametri e leggere i dati da visualizzare sul monitor seriale. Questo progetto offre un’esperienza pratica con i sensori di movimento e la loro integrazione con Arduino, ideale per chi vuole addentrarsi nel mondo dell’elettronica e della gestione dei dati dei sensori.
Componenti Necessari
Per questo progetto sono necessari i seguenti componenti.
È sicuramente pratico acquistare un kit completo. Ecco il link:
Nome |
CONTENUTO DEL KIT |
LINK |
---|---|---|
Universal Maker Sensor Kit |
94 |
Puoi anche acquistare i componenti singolarmente dai link qui sotto.
Descrizione dei Componenti |
Link per l’acquisto |
---|---|
Arduino UNO R3 o R4 |
|
Collegamenti

Codice
Nota
Per installare la libreria, apri il Library Manager di Arduino, cerca «Adafruit MPU6050» e installala.
Analisi del Codice
Il codice inizia includendo le librerie necessarie e creando un oggetto per il sensore MPU6050. Vengono utilizzate le librerie Adafruit_MPU6050, Adafruit_Sensor e Wire. La libreria
Adafruit_MPU6050
consente di interagire con il sensore e ottenere dati su accelerazione, rotazione e temperatura. La libreriaAdafruit_Sensor
fornisce un’interfaccia comune per diversi tipi di sensori, mentreWire
è utilizzata per la comunicazione I2C, necessaria per dialogare con l’MPU6050.Nota
Per installare la libreria, apri il Library Manager di Arduino, cerca «Adafruit MPU6050» e installala.
#include <Adafruit_MPU6050.h> #include <Adafruit_Sensor.h> #include <Wire.h> Adafruit_MPU6050 mpu;
La funzione
setup()
inizializza la comunicazione seriale e verifica se il sensore viene rilevato. Se non viene trovato, l’Arduino entra in un ciclo infinito con un messaggio di errore. Se il sensore è rilevato correttamente, vengono impostati i range dell’accelerometro e del giroscopio e la banda del filtro, seguiti da un breve ritardo per garantire la stabilità.void setup(void) { // Inizializza la comunicazione seriale Serial.begin(9600); // Verifica la presenza del sensore MPU6050 if (!mpu.begin()) { Serial.println("Failed to find MPU6050 chip"); while (1) { delay(10); } } Serial.println("MPU6050 Found!"); // Imposta il range dell’accelerometro a ±8G mpu.setAccelerometerRange(MPU6050_RANGE_8_G); // Imposta il range del giroscopio a ±500 deg/s mpu.setGyroRange(MPU6050_RANGE_500_DEG); // Imposta la banda del filtro a 21 Hz mpu.setFilterBandwidth(MPU6050_BAND_21_HZ); // Aggiunge un ritardo per stabilizzare delay(100); }
Nella funzione
loop()
, il programma crea degli eventi per memorizzare le letture del sensore e poi li recupera. I valori di accelerazione, rotazione e temperatura vengono quindi stampati nel monitor seriale.void loop() { // Ottieni i nuovi eventi del sensore con i dati rilevati sensors_event_t a, g, temp; mpu.getEvent(&a, &g, &temp); // Stampa i valori di accelerazione, rotazione e temperatura // ... // Aggiungi un ritardo per non sovraccaricare il monitor seriale delay(1000); }