Tabla de contenido:
- Paso 1: Hardware necesario:
- Paso 2: Conexión de hardware:
- Paso 3: Código para la medición de la aceleración:
- Paso 4: Aplicaciones:
Video: Medición de la aceleración con H3LIS331DL y fotón de partículas: 4 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:41
H3LIS331DL, es un acelerómetro lineal de 3 ejes de bajo consumo y alto rendimiento perteneciente a la familia “nano”, con interfaz serie digital I²C. H3LIS331DL tiene escalas completas seleccionables por el usuario de ± 100g / ± 200g / ± 400g y es capaz de medir aceleraciones con velocidades de datos de salida de 0,5 Hz a 1 kHz. Se garantiza que el H3LIS331DL funcionará en un rango de temperatura extendido de -40 ° C a +85 ° C.
En este tutorial vamos a demostrar la interfaz de H3LIS331DL con fotones de partículas.
Paso 1: Hardware necesario:
Los materiales que necesitamos para lograr nuestro objetivo incluyen los siguientes componentes de hardware:
1. H3LIS331DL
2. Fotón de partículas
3. Cable I2C
4. Escudo I2C para fotones de partículas
Paso 2: Conexión de hardware:
La sección de conexión de hardware básicamente explica las conexiones de cableado necesarias entre el sensor y el fotón de partículas. Asegurar las conexiones correctas es la necesidad básica al trabajar en cualquier sistema para obtener la salida deseada. Entonces, las conexiones requeridas son las siguientes:
El H3LIS331DL funcionará sobre I2C. Aquí está el diagrama de cableado de ejemplo, que demuestra cómo cablear cada interfaz del sensor.
Fuera de la caja, la placa está configurada para una interfaz I2C, por lo que recomendamos usar esta conexión si, por lo demás, es agnóstico. ¡Todo lo que necesitas son cuatro cables!
Solo se requieren cuatro conexiones Vcc, Gnd, SCL y pines SDA y estos se conectan con la ayuda del cable I2C.
Estas conexiones se muestran en las imágenes de arriba.
Paso 3: Código para la medición de la aceleración:
Comencemos ahora con el código de partículas.
Mientras usamos el módulo sensor con el arduino, incluimos la biblioteca application.hy spark_wiring_i2c.h. La biblioteca "application.h" y spark_wiring_i2c.h contiene las funciones que facilitan la comunicación i2c entre el sensor y la partícula.
El código de partículas completo se proporciona a continuación para comodidad del usuario:
#incluir
#incluir
// La dirección H3LIS331DL I2C es 0x18 (24)
#define Addr 0x18
int xAccl = 0, yAccl = 0, zAccl = 0;
configuración vacía ()
{
// Establecer variable
Particle.variable ("dispositivo i2c", "H3LIS331DL");
Particle.variable ("xAccl", xAccl);
Particle.variable ("yAccl", yAccl);
Particle.variable ("zAccl", zAccl);
// Inicializar la comunicación I2C como MASTER
Wire.begin ();
// Inicializar la comunicación en serie, configurar la velocidad en baudios = 9600
Serial.begin (9600);
// Iniciar transmisión I2C
Wire.beginTransmission (Addr);
// Seleccionar registro de control 1
Wire.write (0x20);
// Habilita los ejes X, Y, Z, modo de encendido, velocidad de salida de datos 50Hz
Wire.write (0x27);
// Detener la transmisión I2C
Wire.endTransmission ();
// Iniciar transmisión I2C
Wire.beginTransmission (Addr);
// Seleccionar registro de control 4
Wire.write (0x23);
// Establecer escala completa, +/- 100g, actualización continua
Wire.write (0x00);
// Detener la transmisión I2C
Wire.endTransmission ();
retraso (300);
}
bucle vacío ()
{
datos int sin firmar [6];
para (int i = 0; i <6; i ++)
{
// Iniciar transmisión I2C
Wire.beginTransmission (Addr);
// Seleccionar registro de datos
Wire.write ((40 + i));
// Detener la transmisión I2C
Wire.endTransmission ();
// Solicitar 1 byte de datos
Wire.requestFrom (Dirección, 1);
// Leer 6 bytes de datos
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
si (Cable disponible () == 1)
{
datos = Wire.read ();
}
retraso (300);
}
// Convertir los datos
int xAccl = ((datos [1] * 256) + datos [0]);
si (xAccl> 32767)
{
xAccl - = 65536;
}
int yAccl = ((datos [3] * 256) + datos [2]);
si (yAccl> 32767)
{
yAccl - = 65536;
}
int zAccl = ((datos [5] * 256) + datos [4]);
si (zAccl> 32767)
{
zAccl - = 65536;
}
// Salida de datos al tablero
Particle.publish ("La aceleración en el eje X es:", String (xAccl));
Particle.publish ("La aceleración en el eje Y es:", String (yAccl));
Particle.publish ("La aceleración en el eje Z es:", String (zAccl));
retraso (300);
}
La función Particle.variable () crea las variables para almacenar la salida del sensor y la función Particle.publish () muestra la salida en el tablero del sitio.
La salida del sensor se muestra en la imagen de arriba para su referencia.
Paso 4: Aplicaciones:
Acelerómetros como H3LIS331DL encuentran su aplicación principalmente en los juegos y en el cambio de perfil de pantalla. Este módulo de sensor también se emplea en el sistema avanzado de administración de energía para aplicaciones móviles. H3LIS331DL es un sensor de aceleración digital triaxial que se incorpora con un controlador de interrupción activada por movimiento inteligente en el chip.
Recomendado:
Medición de la aceleración con ADXL345 y fotón de partículas: 4 pasos
Medición de la aceleración usando ADXL345 y Particle Photon: El ADXL345 es un acelerómetro de 3 ejes pequeño, delgado y de ultra baja potencia con medición de alta resolución (13 bits) de hasta ± 16 g. Los datos de salida digital están formateados como un complemento de dos de 16 bits y se puede acceder a ellos a través de la interfaz digital I2 C. Mide el
Medición de campo magnético con HMC5883 y fotón de partículas: 4 pasos
Medición de campo magnético con HMC5883 y fotón de partículas: El HMC5883 es una brújula digital diseñada para detección magnética de campo bajo. Este dispositivo tiene un amplio rango de campo magnético de +/- 8 Oe y una tasa de salida de 160 Hz. El sensor HMC5883 incluye controladores de correa de desmagnetización automática, cancelación de compensación y
Medición de la aceleración con H3LIS331DL y Arduino Nano: 4 pasos
Medición de la aceleración con H3LIS331DL y Arduino Nano: H3LIS331DL, es un acelerómetro lineal de 3 ejes de bajo consumo y alto rendimiento perteneciente a la familia “nano”, con interfaz serie digital I²C. H3LIS331DL tiene escalas completas seleccionables por el usuario de ± 100g / ± 200g / ± 400g y es capaz de medir aceleraciones w
Medición de la aceleración con H3LIS331DL y Raspberry Pi: 4 pasos
Medición de la aceleración mediante H3LIS331DL y Raspberry Pi: H3LIS331DL, es un acelerómetro lineal de 3 ejes de bajo consumo y alto rendimiento perteneciente a la familia “nano”, con interfaz serie I²C digital. H3LIS331DL tiene escalas completas seleccionables por el usuario de ± 100g / ± 200g / ± 400g y es capaz de medir aceleraciones w
Medición de aceleración con BMA250 y fotón de partículas: 4 pasos
Medición de aceleración con BMA250 y Particle Photon: BMA250 es un acelerómetro de 3 ejes pequeño, delgado y de ultra baja potencia con medición de alta resolución (13 bits) de hasta ± 16 g. Los datos de salida digital están formateados como complemento a dos de 16 bits y se puede acceder a ellos a través de la interfaz digital I2C. Mide la estática