Introduzione
In questo progetto realizzeremo una bussola digitale utilizzando un sensore magnetometro (HMC5883L).
La bussola digitale permette di determinare la direzione rispetto al Nord magnetico, proprio come una bussola tradizionale.
Questo tipo di sistema è utilizzato in:
Alla fine del progetto avremo costruito una bussola in grado di indicare:
In questo progetto realizzeremo una bussola digitale utilizzando un sensore magnetometro (HMC5883L).
La bussola digitale permette di determinare la direzione rispetto al Nord magnetico, proprio come una bussola tradizionale.
Questo tipo di sistema è utilizzato in:
- smartphone
- GPS
- droni
- robot
Alla fine del progetto avremo costruito una bussola in grado di indicare:
- Nord
- Sud
- Est
- Ovest
Materiale necessario
🧰 Non hai ancora i componenti?
👉 Kit Arduino consigliato:
https://amzn.to/4b3dxjW
📘 Scopri i miei libri:
https://amzn.to/4rfzjXE
- Arduino Uno (o compatibile)
- Sensore HMC5883L
- Breadboard
- Cavi jumper
🧰 Non hai ancora i componenti?
👉 Kit Arduino consigliato:
https://amzn.to/4b3dxjW
📘 Scopri i miei libri:
https://amzn.to/4rfzjXE
Schema di collegamento
Sensore HMC5883L (I2C)
Collegamenti:
Sensore HMC5883L (I2C)
Collegamenti:
- VCC → 5V Arduino
- GND → GND Arduino
- SDA → A4 Arduino
- SCL → A5 Arduino
Librerie necessarie
Per questo progetto è necessario installare alcune librerie nell'IDE di Arduino.
Librerie richieste:
Come installare le librerieApri l'IDE di Arduino e vai su:
Sketch → Include Library → Manage Libraries
Installa:
La libreria Wire è già inclusa.
Per questo progetto è necessario installare alcune librerie nell'IDE di Arduino.
Librerie richieste:
- Wire
- HMC5883L
Come installare le librerieApri l'IDE di Arduino e vai su:
Sketch → Include Library → Manage Libraries
Installa:
- HMC5883L
La libreria Wire è già inclusa.
Codice Arduino
Progetto 79 - Bussola digitale
Come funziona il programma
Il sensore HMC5883L misura il campo magnetico terrestre.
Arduino legge i valori sui due assi principali:
Con la funzione:
atan2(y, x)
calcoliamo l’angolo rispetto al Nord.
Il valore viene convertito in gradi (0–360).
In base all’angolo Arduino determina la direzione:
Il sensore HMC5883L misura il campo magnetico terrestre.
Arduino legge i valori sui due assi principali:
- X
- Y
Con la funzione:
atan2(y, x)
calcoliamo l’angolo rispetto al Nord.
Il valore viene convertito in gradi (0–360).
In base all’angolo Arduino determina la direzione:
- Nord
- Est
- Sud
- Ovest
Varianti possibili
Bussola con display OLED
Mostrare direzione e angolo su display.
Bussola per robot
Utilizzare la direzione per orientare un robot.
Sistema GPS + bussola
Integrare con modulo GPS per navigazione completa.
Bussola con display OLED
Mostrare direzione e angolo su display.
Bussola per robot
Utilizzare la direzione per orientare un robot.
Sistema GPS + bussola
Integrare con modulo GPS per navigazione completa.