Nota
Ciao, benvenuto nella Comunità di appassionati di SunFounder Raspberry Pi & Arduino & ESP32 su Facebook! Approfondisci le tue conoscenze su Raspberry Pi, Arduino e ESP32 insieme ad altri entusiasti.
Perché unirsi?
Supporto esperto: Risolvi problemi post-vendita e sfide tecniche con l’aiuto della nostra community e del nostro team.
Impara & Condividi: Condividi suggerimenti e tutorial per accrescere le tue competenze.
Anteprime esclusive: Ottieni accesso anticipato ai nuovi prodotti e alle anteprime.
Sconti speciali: Approfitta di sconti esclusivi sui nostri ultimi prodotti.
Promozioni festive e giveaway: Partecipa a promozioni stagionali e giveaway.
👉 Pronto a esplorare e creare con noi? Clicca [qui] e unisciti subito!
Lezione 05: Modulo Giroscopio e Accelerometro (MPU6050)
In questa lezione imparerai a utilizzare il Raspberry Pi Pico W con il modulo MPU6050, che integra un giroscopio e un accelerometro. Scoprirai come collegare il sensore al Pico W e leggere i dati relativi all’accelerazione e alla rotazione utilizzando MicroPython. La lezione ti guiderà nella scrittura di uno script per visualizzare continuamente i valori X, Y e Z di accelerometro e giroscopio.
Componenti necessari
Per questo progetto, abbiamo bisogno dei seguenti componenti.
È decisamente comodo acquistare un kit completo. Ecco il link:
Nome |
ELEMENTI IN QUESTO KIT |
LINK |
---|---|---|
Kit Sensori Universali per Maker |
94 |
Puoi anche acquistarli separatamente dai link sottostanti.
Introduzione ai Componenti |
Link per l’acquisto |
---|---|
Raspberry Pi Pico W |
|
Cablaggio

Codice
Nota
Apri il file
05_mpu6050_module.py
nel percorsouniversal-maker-sensor-kit-main/pico/Lesson_05_MPU6050_Module
oppure copia questo codice in Thonny, poi clicca su «Run Current Script» o premi F5 per eseguirlo. Per tutorial dettagliati, fai riferimento a Apri ed Esegui Codice Direttamente.Per il corretto funzionamento sono necessari i file
imu.py
evector3d.py
. Verifica che siano stati caricati su Pico W. Consulta il tutorial dettagliato in Caricare le Librerie su Pico.Non dimenticare di selezionare l’interprete «MicroPython (Raspberry Pi Pico)» nell’angolo in basso a destra.
# Importa le librerie
from imu import MPU6050
from machine import I2C, Pin
import time
# Inizializza I2C per MPU6050
i2c = I2C(1, sda=Pin(20), scl=Pin(21), freq=400000) # Bus I2C 1, SDA pin 20, SCL pin 21, 400kHz
# Crea oggetto MPU6050
mpu = MPU6050(i2c)
# Ciclo principale per leggere e stampare i dati del sensore
while True:
# Stampa i dati dell'accelerometro (x, y, z)
print("-" * 50)
print("x: %s, y: %s, z: %s" % (mpu.accel.x, mpu.accel.y, mpu.accel.z))
time.sleep(0.1)
# Stampa i dati del giroscopio (x, y, z)
print("X: %s, Y: %s, Y: %s" % (mpu.gyro.x, mpu.gyro.y, mpu.gyro.z))
time.sleep(0.1)
# Ritardo tra le letture
time.sleep(0.5)
Analisi del Codice
Importazione delle Librerie e Inizializzazione I2C
Il codice inizia importando le librerie necessarie. La libreria
imu
viene utilizzata per leggere i dati dal sensore MPU6050, mentremachine
consente il controllo delle funzioni hardware del Raspberry Pi Pico W. La comunicazione I2C è configurata usando i pin SDA e SCL dedicati.Per maggiori informazioni sulla libreria
imu
, visita micropython-IMU/micropython-mpu9x50.from imu import MPU6050 from machine import I2C, Pin import time i2c = I2C(1, sda=Pin(20), scl=Pin(21), freq=400000)
Creazione dell’Oggetto MPU6050
Viene creato un oggetto MPU6050 passando l’interfaccia I2C inizializzata. Questo oggetto consente l’accesso ai dati del sensore.
mpu = MPU6050(i2c)
Lettura e Stampa dei Dati del Sensore in un Ciclo
Il codice entra quindi in un ciclo infinito dove legge e stampa continuamente i dati di accelerometro e giroscopio. Il comando
time.sleep
viene usato per introdurre un ritardo tra le letture successive.while True: print("-" * 50) print("x: %s, y: %s, z: %s" % (mpu.accel.x, mpu.accel.y, mpu.accel.z)) time.sleep(0.1) print("X: %s, Y: %s, Y: %s" % (mpu.gyro.x, mpu.gyro.y, mpu.gyro.z)) time.sleep(0.1) time.sleep(0.5)