Raspberry: sismografo con gy521, display e live plot

Quando si verifica un sisma le onde si propagano su tutta la Terra e vengono registrate da strumenti detti sismografi. Un sismografo è formato da una massa con un pennino, oscillante in una direzione, che scrive su un rullo di carta rotante solidale con il suolo, lasciando una traccia detta sismogramma. Poiché le onde possono arrivare da diverse direzioni, occorrono almeno tre sismografi in grado di registrare le oscillazioni secondo le tre direzioni dello spazio.

Attraverso il sismogramma possiamo ricavare parecchie notizie utili riguardo al terremoto.

In questo articolo vedremo come collegare al Raspberry un GY521 con chip MPU-60500 e leggerne i dati su un grafico che si aggiorna in tempo reale. Sulle porte dati SDA ed SCL, non deve essere posta nessuna resistenza in nessun pin del dispositivo.

Cosa è il GY521

Il sensore GY-521 è sviluppato dalla società InvenSense  e contiene al suo interno accelerometri e giroscopi MEMS (Micro Electro-Mechanical System). Inoltre contiene anche un convertitore analogico digitale a 16 bit per ogni canale.

Per tal motivo rileva contemporaneamente l’inerzia sugli assi x,y e z. Per interfacciarsi con Arduino il sensore utilizza una connessione I2C-bus.

I sensori IMU sono composti da due o più componenti. Tra questi vi è l’accelerometro, il giroscopio, il magnetometro ed l’altimetro.

Il sensore GY-521 è in grado di fornire ben 6 valori come output. Tre di questi saranno ricavati dall’accelerometro e 3 dal giroscopio. Accelerometro e giroscopio, sono entrambi contenuti all’interno di un singolo chip.

Cosa è un’accelerometro e un giroscopio? Per non appesantire troppo l’articolo per chi fosse interessato vi rimando a un mio vecchio articolo : Arduino: come funziona il modulo GY-521

Se non hai tanta voglia di leggere l’articolo puoi sempre vedere il video presente sul nostro canale youtube:

Materiale da utilizzare:

Accelerometro MPU-6050 (GY-521)
mde

Diagramma di collegamento:

sismografo

Configurazione hardware/software

Configurazione Gy521

Dichiariamo i driver, aprire il file:

ed aggiungere le seguenti righe:

Riavviare il sistema.

Controllare che non vi siano problemi (per esempio sia vuota) o blocchi sulla blacklist.

Installare I2C-tools:

successivamente eseguire la scansione delle periferiche sul bus I2C, a seconda della versione della scheda:

sudo i2cdetect -y 0
sudo i2cdetect -y 1

su schermo comparirà la  mappa degli indirizzi, il dispositivo in questione dovrebbe stare in posizione 68.

Installare il modulo SMBUS:


Configurazione per la realizzazione del grafico

Per il grafico utilizzeremo la libreria matplotlib.

Cos’è un MatPlotLib? E’ un modulo aggiuntivo del linguaggio python con un insieme di funzioni grafiche per rappresentare i dati su diagrammi cartesiani 2D o 3D. Il sito ufficiale di MatPlotLib è matplotlib.org.

Questa libreria contiene diverse funzioni dedicate alla rappresentazione grafica.

Le principali funzioni sono le seguenti:

  • plt.plot disegna il grafico in base a un insieme di dati di riferimento.
  • plt.xlabel indica l’unità di misura X sulle ascisse
  • plt.ylabel indica l’unità di misura Y sulle ordinate
  • plt.legend() indica la posizione e le caratteristiche della legenda
  • plt.show() mostra la rappresentazione grafica

Installiamo la libreria:

Codice

Abbiamo tutti gli strumenti, ora mettiamoci e apriamo il nostro editor di codice preferito e programmiamo!

Avviamo il codice e vediamo come funziona il nostro piccolo sismografo diy

Ecco i risultati del nostro sismografo

sismografo

Simone Candido è un ragazzo appassionato del mondo tech nella sua totalità. Simone ama immedesimarsi in nuove esperienze, la sua filosofia si basa sulla irrefrenabile voglia di ampliare a 360° le sue conoscenze abbracciando tutti i campi del sapere, in quanto ritiene che il sapere umano sia il connubio perfetto tra cultura umanistica e scientifica.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.