Tabla de contenido:

Control de movimiento con Raspberry Pi y LIS3DHTR, acelerómetro de 3 ejes, usando Python: 6 pasos
Control de movimiento con Raspberry Pi y LIS3DHTR, acelerómetro de 3 ejes, usando Python: 6 pasos

Video: Control de movimiento con Raspberry Pi y LIS3DHTR, acelerómetro de 3 ejes, usando Python: 6 pasos

Video: Control de movimiento con Raspberry Pi y LIS3DHTR, acelerómetro de 3 ejes, usando Python: 6 pasos
Video: Raspberry Pi LIS3DHTR 3-Axis Accelerometer Python Tutorial 2024, Mes de julio
Anonim
Image
Image
Hardware básico que requerimos
Hardware básico que requerimos

La belleza nos rodea, pero por lo general, necesitamos caminar por un jardín para conocerla. - Rumi

Como el grupo educado que parecemos ser, invertimos la gran mayoría de nuestra energía trabajando antes que nuestras computadoras y teléfonos celulares. Por lo tanto, con frecuencia dejamos que nuestro bienestar tome el relevo secundario, sin encontrar nunca una oportunidad ideal para ir al gimnasio o una clase de fitness y, por regla general, optamos por la comida rápida en lugar de opciones mucho más beneficiosas. La noticia alentadora es que si todo lo que necesita es algo de ayuda con el mantenimiento de registros o para monitorear su avance, puede utilizar la innovación actual para fabricar algún dispositivo que les ayude a ustedes mismos.

La tecnología se está desarrollando rápidamente. Constantemente, nos enteramos de alguna nueva innovación que cambiará el mundo y la forma en que aprendemos en él. Cuando te gustan las PC, la codificación y los robots o simplemente te gusta jugar, hay una bendición tecnológica ahí fuera. Raspberry Pi, la micro computadora Linux de placa única, se dedica a mejorar la forma en que aprendes con la tecnología innovadora, pero también es la clave para mejorar el aprendizaje educativo en todo el mundo. Entonces, ¿cuáles son los posibles resultados de lo que podemos hacer si tenemos una Raspberry Pi y un acelerómetro de 3 ejes cerca? ¿Qué tal si encontramos esto? En esta tarea, verificaremos la aceleración en 3 ejes perpendiculares, X, Y y Z utilizando Raspberry Pi y LIS3DHTR, un acelerómetro de 3 ejes. Así que deberíamos ver en este viaje para crear un sistema para verificar la aceleración tridimensional o G-Force.

Paso 1: Hardware básico que requerimos

Hardware básico que requerimos
Hardware básico que requerimos
Hardware básico que requerimos
Hardware básico que requerimos

Los problemas fueron menores para nosotros, ya que tenemos una gran cantidad de cosas para trabajar. En cualquier caso, sabemos lo problemático que es para otros amasar la parte correcta en un tiempo inmaculado desde el lugar útil y eso se defiende prestando poca atención a cada centavo. Entonces te ayudaríamos. Siga lo que se acompaña para obtener una lista completa de piezas.

1. Raspberry Pi

El paso inicial fue conseguir una placa Raspberry Pi. La Raspberry Pi es una PC basada en Linux de placa única. Esta pequeña PC tiene un gran impacto en la potencia informática, utilizada como parte de las actividades de los dispositivos y operaciones sencillas como hojas de cálculo, preparación de palabras, escaneo web y correo electrónico y juegos.

2. Escudo I2C para Raspberry Pi

La principal preocupación de la Raspberry Pi es realmente un puerto I²C. Entonces, para eso, el conector TOUTPI2 I²C le da la sensación de usar Rasp Pi con CUALQUIERA de los dispositivos I²C. Está disponible en DCUBE Store

3. Acelerómetro de 3 ejes, LIS3DHTR

El LIS3DH es un acelerómetro lineal de tres ejes de alto rendimiento y ultra baja potencia perteneciente a la familia “nano”, con salida estándar de interfaz serie digital I2C / SPI. Adquirimos este sensor de DCUBE Store

4. Cable de conexión

Adquirimos el cable de conexión I2C de DCUBE Store

5. Cable micro USB

¡El más pequeño desconcertado, pero más estricto en la medida en que necesita energía es el Raspberry Pi! La forma más sencilla de hacerlo es mediante el uso del cable Micro USB.

6. El acceso web es una necesidad

¡Los niños de INTERNET NUNCA duermen

Consiga su Raspberry Pi asociado con un cable Ethernet (LAN) y conéctelo a su enrutador de red. Optativo, busque un conector WiFi y utilice uno de los puertos USB para acceder al sistema remoto. ¡Es una decisión entusiasta, simple, pequeña y de mala calidad!

7. Cable HDMI / Acceso remoto

La Raspberry Pi tiene un puerto HDMI que puede conectar específicamente a una pantalla o televisor con un cable HDMI. Optativa, puede utilizar SSH para asociarse con su Raspberry Pi desde una PC con Linux o Macintosh desde la terminal. Del mismo modo, PuTTY, un emulador de terminal gratuito y de código abierto, suena como una alternativa decente.

Paso 2: Conexión del hardware

Conexión del hardware
Conexión del hardware
Conexión del hardware
Conexión del hardware
Conexión del hardware
Conexión del hardware

Haz el circuito de acuerdo con el esquema que aparece. Dibuja un diagrama y sigue el esquema con precisión. La imaginación es más importante que el conocimiento.

Conexión de Raspberry Pi y I2C Shield

Por encima de todo, tome la Raspberry Pi y ubique el escudo I2C en ella. Presione el Shield con delicadeza sobre los pines GPIO de Pi y terminamos con esta progresión tan simple como un pastel (ver el complemento).

Conexión del sensor y Raspberry Pi

Tome el sensor y la interfaz del cable I2C con él. Para el funcionamiento apropiado de este cable, recuerde que la salida I2C SIEMPRE se asocia con la entrada I2C. Lo mismo debe tomarse después para la Raspberry Pi con el escudo I2C montado sobre los pines GPIO.

Apoyamos el uso del cable I2C, ya que niega la necesidad de examinar los pines, la fijación y la incomodidad provocada incluso por el más pequeño error. Con este cable de conexión y juego fundamental, puede presentar, intercambiar dispositivos o agregar más dispositivos a una aplicación de manera efectiva. Esto facilita el peso de trabajo hasta un nivel significativo.

Nota: El cable marrón debe seguir de manera confiable la conexión de tierra (GND) entre la salida de un dispositivo y la entrada de otro dispositivo

La red web es clave

Para que nuestro esfuerzo sea un éxito, necesitamos una asociación de Internet para nuestra Raspberry Pi. Para esto, tiene opciones como conectar un cable Ethernet (LAN) con la red doméstica. Además, como alternativa, sea como sea, un curso de adaptación es utilizar un conector USB WiFi. Como regla para esto, necesita un controlador para que funcione. Así que inclínate hacia el que tiene Linux en la descripción.

Fuente de alimentación

Enchufe el cable Micro USB en el conector de alimentación de Raspberry Pi. Golpea y estamos listos.

Conexión a la pantalla

Podemos tener el cable HDMI asociado a otra pantalla. En algunos casos, debe acceder a una Raspberry Pi sin conectarla a una pantalla o es posible que deba ver algunos datos de ella desde otro lugar. Es posible que existan enfoques innovadores y financieramente inteligentes para hacerlo. Uno de ellos está utilizando -SSH (inicio de sesión remoto desde la línea de comandos). También puede utilizar el software PUTTY para eso. Estos son para usuarios avanzados. Entonces los detalles no se incluyen aquí.

Paso 3: codificación Python para Raspberry Pi

Codificación Python para Raspberry Pi
Codificación Python para Raspberry Pi

El código Python para Raspberry Pi y el sensor LIS3DHTR está disponible en nuestro GithubRepository.

Antes de continuar con el código, asegúrese de leer las reglas proporcionadas en el archivo Léame y configure su Raspberry Pi de acuerdo con ellas. Solo será un respiro por un momento para hacer todas las cosas consideradas.

Un acelerómetro es un dispositivo electromecánico que mide las fuerzas de aceleración. Estos poderes pueden ser estáticos, similares a la fuerza constante de la gravedad que tira de sus pies, o pueden ser alterables, provocados por el movimiento o la vibración del acelerómetro.

El acompañante es el código de Python y puede clonar y ajustar el código de cualquier forma que desee.

# Distribuido con una licencia de libre albedrío. # Úselo de la forma que desee, lucrativa o gratuita, siempre que se ajuste a las licencias de sus obras asociadas. # LIS3DHTR # Este código está diseñado para funcionar con el mini módulo LIS3DHTR_I2CS I2C disponible en dcubestore.com # https://dcubestore.com/product/lis3dhtr-3-axis-accelerometer-digital-output-motion-sensor-i%C2 % Mini-módulo B2c /

importar smbus

tiempo de importación

# Obtener bus I2C

bus = smbus. SMBus (1)

# Dirección LIS3DHTR, 0x18 (24)

# Seleccionar registro de control1, 0x20 (32) # 0x27 (39) Modo encendido, selección de velocidad de datos = 10 Hz # X, Y, eje Z habilitado bus.write_byte_data (0x18, 0x20, 0x27) # Dirección LIS3DHTR, 0x18 (24) # Seleccionar registro de control 4, 0x23 (35) # 0x00 (00) Actualización continua, selección de escala completa = +/- 2G bus.write_byte_data (0x18, 0x23, 0x00)

tiempo. de sueño (0.5)

# Dirección LIS3DHTR, 0x18 (24)

# Leer datos de 0x28 (40), 2 bytes # X-Axis LSB, X-Axis MSB data0 = bus.read_byte_data (0x18, 0x28) data1 = bus.read_byte_data (0x18, 0x29)

# Convierte los datos

xAccl = data1 * 256 + data0 si xAccl> 32767: xAccl - = 65536

# Dirección LIS3DHTR, 0x18 (24)

# Leer datos de 0x2A (42), 2 bytes # LSB del eje Y, MSB del eje Y data0 = bus.read_byte_data (0x18, 0x2A) data1 = bus.read_byte_data (0x18, 0x2B)

# Convierte los datos

yAccl = data1 * 256 + data0 si yAccl> 32767: yAccl - = 65536

# Dirección LIS3DHTR, 0x18 (24)

# Leer datos de 0x2C (44), 2 bytes # Z-Axis LSB, Z-Axis MSB data0 = bus.read_byte_data (0x18, 0x2C) data1 = bus.read_byte_data (0x18, 0x2D)

# Convierte los datos

zAccl = data1 * 256 + data0 si zAccl> 32767: zAccl - = 65536

# Salida de datos a la pantalla

print "Aceleración en el eje X:% d"% xAccl print "Aceleración en el eje Y:% d"% yAccl print "Aceleración en el eje Z:% d"% zAccl

Paso 4: la viabilidad del código

La viabilidad del código
La viabilidad del código

Descargue (o git pull) el código de Github y ábralo en la Raspberry Pi.

Ejecute los comandos para compilar y cargar el código en el terminal y vea el rendimiento en la pantalla. Tomando después de un par de minutos, demostrará cada uno de los parámetros. Como consecuencia de garantizar que todo funcione sin esfuerzo, puedes llevar este desafío a una empresa más destacada.

Paso 5: Aplicaciones y características

Fabricado por STMicroelectronics, el LIS3DHTR tiene escalas completas seleccionables dinámicamente por el usuario de ± 2g / ± 4g / ± 8g / ± 16g y es capaz de medir aceleraciones con velocidades de datos de salida de 1Hz a 5kHz. El LIS3DHTR es apropiado para funciones activadas por movimiento y detección de caída libre. Cuantifica la aceleración estática de la gravedad en aplicaciones de detección de inclinación y, además, la aceleración dinámica que se avecina debido al movimiento o los golpes. Otras aplicaciones incluyen reconocimiento de clic / doble clic, ahorro de energía inteligente para dispositivos de mano, podómetro, orientación de pantalla, dispositivos de entrada para juegos y realidad virtual, reconocimiento y registro de impactos y monitoreo y compensación de vibraciones.

Paso 6: Conclusión

Confiar en esta empresa estimula la experimentación adicional. Este sensor I2C es extraordinariamente adaptable, modesto y disponible. Dado que es un marco impermanente en un grado asombroso, hay formas interesantes de expandir esta tarea e incluso mejorarla.

Por ejemplo, puede comenzar con la idea de un podómetro usando LIS3DHTR y Raspberry Pi. En la tarea anterior, hemos utilizado cálculos fundamentales. La aceleración puede ser el parámetro relevante para analizar la regla de una marcha. Puede comprobar los tres componentes del movimiento de un individuo que son hacia adelante (balanceo, X), lateral (cabeceo, Y) y vertical (eje de guiñada, Z). Se registra un patrón típico de los 3 ejes. Al menos 1 eje tendrá valores de aceleración periódica relativamente grandes. Así que la dirección de los picos y un algoritmo son esenciales. Teniendo en cuenta el parámetro de pasos (filtro digital, detección de picos, ventana de tiempo, etc.) de este algoritmo, puede reconocer y contar pasos, así como medir la distancia, la velocidad y, en cierta medida, las calorías quemadas. Por lo tanto, podría utilizar este sensor de varias maneras que pueda considerar. ¡Confiamos en que les guste a todos! Intentaremos hacer una versión funcional de este podómetro más temprano que tarde, la configuración, el código, la parte que calcula los medios para separar caminar y correr y las calorías quemadas.

Para su consuelo, tenemos un video interesante en YouTube que puede ayudarlo en su examen. Confiar en que esta empresa motiva una mayor exploración. ¡Continúa reflexionando! Recuerde estar atento a que aparezcan más constantemente.

Recomendado: