Taula de continguts:
- Pas 1: maquinari necessari:
- Pas 2: connexió de maquinari:
- Pas 3: Codi de mesura de l’acceleració:
- Pas 4: aplicacions:
Vídeo: Mesura de l’acceleració mitjançant ADXL345 i fotó de partícules: 4 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:11
L’ADXL345 és un acceleròmetre de 3 eixos petit, prim i ultralleuger, de 3 eixos, amb una resolució d’alta resolució (13 bits) de fins a ± 16 g. Les dades de sortida digital es formaten com a complement de dos bits de 16 bits i són accessibles a través de la interfície digital I2 C. Mesura l’acceleració estàtica de la gravetat en aplicacions de detecció d’inclinació, així com l’acceleració dinàmica resultant del moviment o xoc. La seva alta resolució (3,9 mg / LSB) permet mesurar canvis d’inclinació inferiors a 1,0 °.
En aquest tutorial s'ha il·lustrat la interfície del mòdul del sensor ADXL345 amb el fotó de partícules. Per llegir els valors d’acceleració, hem utilitzat partícules amb un adaptador I2c, que fa que la connexió al mòdul del sensor sigui més fàcil i fiable.
Pas 1: maquinari necessari:
Els materials que necessitem per assolir el nostre objectiu inclouen els components de maquinari següents:
1. ADXL345
2. Fotó de partícules
3. Cable I2C
4. Escut I2C per a fotons de partícules
Pas 2: connexió de maquinari:
La secció de connexió de maquinari explica bàsicament les connexions de cablejat necessàries entre el sensor i el fotó de partícules. Garantir connexions correctes és la necessitat bàsica mentre es treballa en qualsevol sistema per a la sortida desitjada. Per tant, les connexions necessàries són les següents:
L'ADXL345 funcionarà sobre I2C. Aquí teniu un exemple de diagrama de cablejat, que demostra com connectar cada interfície del sensor.
Fora de la caixa, el tauler està configurat per a una interfície I2C, per tant, us recomanem que utilitzeu aquesta connexió si no sou agnòstic.
Tot el que necessiteu són quatre cables. Només es necessiten quatre connexions pins Vcc, Gnd, SCL i SDA i es connecten amb l'ajut del cable I2C.
Aquestes connexions es mostren a les imatges anteriors.
Pas 3: Codi de mesura de l’acceleració:
Comencem ara pel codi de partícules.
Mentre s’utilitza el mòdul de sensor amb la partícula, incloem la biblioteca application.h i spark_wiring_i2c.h. La biblioteca "application.h" i spark_wiring_i2c.h conté les funcions que faciliten la comunicació i2c entre el sensor i la partícula.
A continuació es proporciona tot el codi de partícules per a la comoditat de l'usuari:
#incloure
#incloure
// L’adreça I2C ADXL345 és 0x53 (83)
#define Addr 0x53
int xAccl = 0, yAccl = 0, zAccl = 0;
configuració nul·la ()
{
// Estableix la variable
Particle.variable ("i2cdevice", "ADXL345");
Particle.variable ("xAccl", xAccl);
Particle.variable ("yAccl", yAccl);
Particle.variable ("zAccl", zAccl);
// Inicialitzar la comunicació I2C com a MASTER
Wire.begin ();
// Inicialitzar la comunicació en sèrie, establir la velocitat de transmissió = 9600
Serial.begin (9600);
// Inicieu la transmissió I2C
Wire.beginTransmission (Addr);
// Seleccioneu el registre de taxa d'amplada de banda
Wire.write (0x2C);
// Selecciona la velocitat de dades de sortida = 100 Hz
Wire.write (0x0A);
// Atura la transmissió I2C
Wire.endTransmission ();
// Inicieu la transmissió I2C
Wire.beginTransmission (Addr);
// Seleccioneu el registre de control de potència
Wire.write (0x2D);
// Selecciona la desactivació de la suspensió automàtica
Wire.write (0x08);
// Atura la transmissió I2C
Wire.endTransmission ();
// Inicieu la transmissió I2C
Wire.beginTransmission (Addr);
// Seleccioneu el registre de format de dades
Wire.write (0x31);
// Selecciona resolució completa, +/- 2g
Wire.write (0x08);
// Finalitzar la transmissió I2C
Wire.endTransmission ();
retard (300);
}
bucle buit ()
{
dades int sense signar [6];
per a (int i = 0; i <6; i ++)
{
// Inicieu la transmissió I2C
Wire.beginTransmission (Addr);
// Selecciona el registre de dades
Wire.write ((50 + i));
// Atura la transmissió I2C
Wire.endTransmission ();
// Sol·liciteu 1 byte de dades des del dispositiu
Wire.requestFrom (Addr, 1);
// Llegiu 6 bytes de dades
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
if (Wire.available () == 1)
{
dades = Wire.read ();
}
retard (300);
}
// Converteix les dades a 10 bits
int xAccl = (((dades [1] i 0x03) * 256) + dades [0]);
if (xAccl> 511)
{
xAccl - = 1024;
}
int yAccl = (((dades [3] i 0x03) * 256) + dades [2]);
if (yAccl> 511)
{
yAccl - = 1024;
}
int zAccl = (((dades [5] i 0x03) * 256) + dades [4]);
if (zAccl> 511)
{
zAccl - = 1024;
}
// Data de sortida al tauler
Particle.publish ("L'acceleració a l'eix X és:", String (xAccl));
Particle.publish ("L'acceleració a l'eix Y és:", String (yAccl));
Particle.publish ("L'acceleració a l'eix Z és:", String (zAccl));
}
La funció Particle.variable () crea les variables per emmagatzemar la sortida del sensor i la funció Particle.publish () mostra la sortida al tauler del lloc.
La sortida del sensor es mostra a la imatge superior per a la vostra referència.
Pas 4: aplicacions:
L'ADXL345 és un acceleròmetre de 3 eixos petit, prim i de poca potència, que es pot utilitzar en telèfons mòbils, instrumentació mèdica, etc.
Recomanat:
Mesura de l’acceleració mitjançant H3LIS331DL i Arduino Nano: 4 passos
Mesura de l’acceleració mitjançant H3LIS331DL i Arduino Nano: H3LIS331DL, és un acceleròmetre lineal de 3 eixos d’alt rendiment de baixa potència que pertany a la família “nano”, amb interfície sèrie I²C digital. H3LIS331DL té una escala completa seleccionable per l'usuari de ± 100g / ± 200g / ± 400g i és capaç de mesurar acceleracions w
Mesura de l’acceleració mitjançant H3LIS331DL i fotó de partícules: 4 passos
Mesura de l'acceleració mitjançant H3LIS331DL i el fotó de partícules: H3LIS331DL, és un acceleròmetre lineal de 3 eixos d'alt rendiment de baixa potència que pertany a la família "nano", amb interfície sèrie I²C digital. H3LIS331DL té una escala completa seleccionable per l'usuari de ± 100g / ± 200g / ± 400g i és capaç de mesurar acceleracions w
Mesura de l’acceleració mitjançant ADXL345 i Raspberry Pi: 4 passos
Mesura de l’acceleració mitjançant ADXL345 i Raspberry Pi: l’ADXL345 és un acceleròmetre de 3 eixos petit, prim i ultralleuger, amb una resolució alta (13 bits) de fins a ± 16 g. Les dades de sortida digital es formaten com a complement de dos bits de 16 bits i són accessibles a través de la interfície digital I2 C. Mesura el
Mesura de l’acceleració mitjançant ADXL345 i Arduino Nano: 4 passos
Mesura de l’acceleració mitjançant ADXL345 i Arduino Nano: l’ADXL345 és un acceleròmetre de 3 eixos petit, prim i de poca potència, amb un mesurament d’alta resolució (13 bits) de fins a ± 16 g. Les dades de sortida digital es formaten com a complement de dos bits de 16 bits i són accessibles a través de la interfície digital I2 C. Mesura el
Mesura de l’acceleració mitjançant BMA250 i fotó de partícules: 4 passos
Mesurament de l’acceleració mitjançant BMA250 i fotó de partícules: BMA250 és un acceleròmetre de 3 eixos petit, prim i de poca potència, amb un mesurament d’alta resolució (13 bits) de fins a ± 16 g. Les dades de sortida digital es formaten com a complement de dos bits de 16 bits i són accessibles a través de la interfície digital I2C. Mesura l'estàtic