Mi sono interessato agli accelerometri ADXL345 (dopo un po' di esperienza con ADXL335) per la caratteristica di poter generare interrupt e quindi di poter usare il segnale come trigger per svegliare una Arduino in modalita' sleep.
Per risparmiare (un bel po') mi sono preso dei moduli su Aliexpress
Usando la libreria ADXL345 di Adafruit i risultati sono i seguenti
------------------------------------
Sensor: ADXL345
Driver Ver: 1
Unique ID: 12345
Max Value: -156.91 m/s^2
Min Value: 156.91 m/s^2
Resolution: 0.04 m/s^2
------------------------------------
Data Rate: 100 Hz
Range: +/- 16 g
X: -3.53 Y: 0.51 Z: 16.08 m/s^2
X: -3.53 Y: 0.51 Z: 16.16 m/s^2
X: -3.53 Y: 0.47 Z: 16.16 m/s^2
X: -3.53 Y: 0.51 Z: 16.12 m/s^2
---------------------------------------
Ovviamente c'e' qualcosa che non torna
Utilizzando lo script a questo link per visualizzare i dati raw si ha per
Z=g X=-12;Y=-1;Z=51 (X=0g,Y=0g)
Z=-g X=-11;Y=-5;Z=-17 (X=0g,Y=0g)
Y=g X=-13; Y=-35; Z=23 (X=0g,Z=0g)
Y=-g X=-12; Y=31; Z=21 (X=0g,Z=0g)
X=g X=-46; Y= -2; Z=16 (Z=0g,Y=0g)
X=-g X=21; Y=-3; Z=17 (Z=0g,Y=0g)
Quindi
X varia da -46 a +21 con un valore centrale di 12
Y varia da -35 a +31 con un valore centrale circa -3
Z varia da -17 a +51 con un valore centrale di circa 17
ci sono un paio di problemi
il primo e' chiaramente che ogni misura ha un offset sensibilmente fuori dallo zero sui tre assi e ciascuno con una propria retta di calibrazione (questo puo' essere corretto con il calcolo)
Il secondo problema e' che i valori riportati hanno una dinamica troppo limitata (dovrebbero essere dell'ordine del centinaio di unita', non della decina) con un fondo scala a +/- 16g. Cio' comporta che il valore di conversione da digital number ad accelerazione e' completamente sbagliato (dovrebbe essere 1DN = 0.004g)
Come riportato anche da questo post, sono segnalati dei moduli ADXL345 su ecommerce cinesi che sono semplicemente dei falsi e lontani dalle prestazioni del componente originale BOSCH
lunedì 22 agosto 2016
Iscriviti a:
Commenti sul post (Atom)
Dockerizza Flask
Un esempio semplice per inserire in un container Docker una applicazione Flask Partiamo da una semplice applicazione che ha un file app.py ...
-
In questo post viene indicato come creare uno scatterplot dinamico basato da dati ripresi da un file csv (nel dettaglio il file csv e' c...
-
Questo post e' a seguito di quanto gia' visto nella precedente prova Lo scopo e' sempre il solito: creare un sistema che permet...
-
La scheda ESP32-2432S028R monta un Esp Dev Module con uno schermo TFT a driver ILI9341 di 320x240 pixels 16 bit colore.Il sito di riferiment...
Nessun commento:
Posta un commento