LEZIONE 22

Una cosa da notare è che, Arduino permette la connessione con dispositivi I2C senza l'uso di librerie secondarie.
Per la bussola è stata usata una libreria proprietaria, solo a livello didattico, perchè era possibile connettersi alla bussola nello stesso modo in cui si dialoga con il giroscopio, ma con la libreria tutto risulta più facile, soprattutto per un principiante.

Potete trovare in rete una libreria per la connessione e la gestione del modulo MPU-6050 che vi permette di avere delle potenzialità maggiori.
Questo perchè, i dati prelevati dal modulo sono definiti grezzi, perchè non sono l'accelerazione o l'inclinazione del modulo, ma i loro valori angolari.
Questi valori angolari devono essere convertiti in inclinazione o accelerazione con opportuni calcoli matematici.

Oltretutto questi valori sono relativi a settaggi standard che sono:
Fondo scala di 2g per l'accelerometro
250°/s per il giroscopio
Settando valori differenti si devono cambiare i calcoli matematici.

Visto che questo tutorial è finalizzato a principianti e la scheda Arduino non ha una potenza di calcolo molto elevata, ho deciso di rimandare la conversione al software che riceve i dati.
Di solito questo software è installato su Pc, Smartphone o Tablet, quindi dispositivi con potenze di calcolo maggiori.
Alla scheda Arduino, lascio il semplice compito di prelevare ed inviare i dati così come sono.

Il giroscopio e l'accelerometro, possono essere molto utili in situazioni difficili, dove ci serve sapere costantemente la posizione e l'inclinazione del robot.
Se l'inclinazione è di 45 gradi (positivi o negativi) ed i motori sono fermi, ma abbiamo un accellerazione anteriore o posteriore, vuol dire che il robot sta scivolando (indietro o in avanti).
Se l'accelerazione è aumentata repentivamente o diminuita repentivamente da fermo è perchè c'è stato un urto (anteriore o posteriore).
E così via per altre mille possibilità.

Come vedete, sono informazioni aggiuntive molto utili per il nostro robot.

LEZIONE23
LEZIONE21