Tabla de contenido:
- Paso 1: Hardware necesario:
- Paso 2: Conexión de hardware:
- Paso 3: Código de Python para la medición de la aceleración:
- Paso 4: Aplicaciones:
Video: Medición de la aceleración con BMA250 y Raspberry Pi: 4 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:42
El BMA250 es un acelerómetro de 3 ejes pequeño, delgado y de potencia ultrabaja 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 aceleración estática de la gravedad en aplicaciones de detección de inclinación, así como la aceleración dinámica resultante de movimientos o golpes. Su alta resolución (3,9 mg / LSB) permite medir cambios de inclinación inferiores a 1,0 °.
En este tutorial vamos a medir la aceleración en los tres ejes perpendiculares usando BMA250 y Raspberry Pi. El sensor ha sido programado en lenguaje Python.
Paso 1: Hardware necesario:
Los materiales que necesitamos para lograr nuestro objetivo incluyen los siguientes componentes de hardware:
1. BMA250
2. Raspberry Pi
3. Cable I2C
4. Escudo I2C para Raspberry Pi
5. Cable Ethernet
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 la Raspberry Pi. 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 BMA250 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 de Python para la medición de la aceleración:
La ventaja de usar raspberry pi es que le brinda la flexibilidad del lenguaje de programación en el que desea programar la placa para conectar el sensor con ella. Aprovechando esta ventaja de esta placa, estamos demostrando aquí su programación en Python. Python es uno de los lenguajes de programación más sencillos con la sintaxis más sencilla. El código Python para BMA250 se puede descargar de nuestra comunidad de GitHub que es Dcube Store.
Además de para la facilidad de los usuarios, aquí también explicamos el código:
Como primer paso de la codificación, debe descargar la biblioteca SMBus en el caso de Python porque esta biblioteca admite las funciones utilizadas en el código. Entonces, para descargar la biblioteca puede visitar el siguiente enlace:
pypi.python.org/pypi/smbus-cffi/0.5.1
También puede copiar el código de trabajo desde aquí:
importar smbus
tiempo de importación
# Obtener busbus I2C = smbus. SMBus (1)
# Dirección BMA250, 0x18 (24)
# Seleccionar registro de selección de rango, 0x0F (15)
# 0x03 (03) Establecer rango = +/- 2gbus.write_byte_data (0x18, 0x0F, 0x03)
# Dirección BMA250, 0x18 (24) # Seleccionar registro de ancho de banda, 0x10 (16)
# 0x08 (08) Ancho de banda = 7.81 Hz bus.write_byte_data (0x18, 0x10, 0x08)
tiempo. de sueño (0.5)
# Dirección BMA250, 0x18 (24)
# Leer datos de 0x02 (02), 6 bytes
# LSB del eje X, MSB del eje X, LSB del eje Y, MSB del eje Y, LSB del eje Z, MSB del eje Z
datos = bus.read_i2c_block_data (0x18, 0x02, 6)
# Convierte los datos a 10 bits
xAccl = (datos [1] * 256 + (datos [0] y 0xC0)) / 64
si xAccl> 511:
xAccl - = 1024
yAccl = (datos [3] * 256 + (datos [2] y 0xC0)) / 64
si yAccl> 511:
yAccl - = 1024
zAccl = (datos [5] * 256 + (datos [4] y 0xC0)) / 64
si zAccl> 511:
zAccl - = 1024
# Salida de datos a la pantalla
imprimir "Aceleración en el eje X:% d"% xAccl
imprimir "Aceleración en el eje Y:% d"% yAccl
imprimir "Aceleración en el eje Z:% d"% zAccl
El código se ejecuta mediante el siguiente comando:
$> python BMA250.py gt; pitón BMA250.py
La salida del sensor se muestra en la imagen de arriba para referencia del usuario.
Paso 4: Aplicaciones:
Acelerómetros como BMA250 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. BMA250 es un sensor de aceleración digital triaxial que se incorpora con un controlador inteligente de interrupción activada por movimiento 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 la aceleración con ADXL345 y Raspberry Pi: 4 pasos
Medición de la aceleración con ADXL345 y Raspberry Pi: El ADXL345 es un acelerómetro de 3 ejes pequeño, delgado y de potencia ultrabaja 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 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 Arduino Nano: 4 pasos
Medición de aceleración con BMA250 y Arduino Nano: BMA250 es un acelerómetro de 3 ejes pequeño, delgado y de potencia ultrabaja 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
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