Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial Internet of Things >> Incrustado

Diseño de un nivel de burbuja para invidentes

Este artículo describe el diseño completo de un nivel de burbuja para personas con discapacidad visual. Utiliza un acelerómetro ADXL312 para medir la fuerza gravitacional en los planos horizontal y vertical y hace sonar un timbre cuando el acelerómetro está exactamente horizontal o vertical.

También se puede usar como sensor de inclinación para nivelar, por ejemplo, remolques en aplicaciones automotrices donde el nivel de burbuja podría estar ubicado en un lugar alejado de la rueda jockey. También tiene usos como subcircuito en sistemas de estabilidad automotrices o drones.

Introducción

Amar Latif está causando revuelo en la escena culinaria del Reino Unido después de haber aparecido en Celebrity MasterChef . Sin embargo, Amar no solo es un buen cocinero, también dirige su propia compañía de viajes, es un orador motivacional, ha viajado por la mayor parte de América del Sur y también es una personalidad de la televisión. ¿No tienen fin los superpoderes de este hombre?

Lamentablemente, la hay. Amar es 95% ciego. A medida que la tecnología avanza y el mundo lucha por seguirle el ritmo, para las personas con discapacidad visual la batalla es aún más difícil. La mayoría de los avances tecnológicos requieren que pasemos más tiempo frente a una pantalla. Para las personas con discapacidad visual, el tiempo excesivo frente a la pantalla sigue siendo un "si sólo".

Si la tecnología se puede utilizar para enriquecer la vida de las personas con discapacidad visual, esto solo puede ser algo bueno. Dado que solo el 18% de la población ciega registrada es completamente ciega (o "ciega negra"), esto deja a la gran mayoría con al menos algo de vista, incluso si no pueden distinguir los detalles. Así nació la idea de un nivel de burbuja para ciegos.

Esquema del diseño

El diseño del sensor de inclinación se basó en el ADXL312, que es un acelerómetro de baja corriente que puede medir hasta ± 1,5 g en los ejes x, y, z con los datos leídos a través de un bus SPI. La pieza está disponible en un paquete de 5 mm × 5 mm y consume 0,1 μA en modo de espera. Mide una resolución de 10 bits, por lo que el ADXL312 puede detectar cambios tan bajos como ± 2,9 m g en cada eje. El ADXL312 almacena los datos gravitacionales para cada eje como un valor de complemento a dos hasta ± 511, que el microcontrolador lee y muestra en una pantalla LCD de una sola línea y 16 caracteres. La Figura 1 muestra los ejes de detección del ADXL312.

haga clic para ver la imagen en tamaño completo

Figura 1. Ejes de detección del ADXL312. (Fuente:Analog Devices)

La pieza tiene una lectura a escala completa de 1,5 g , por lo que una fuerza gravitacional de 1 g da una lectura 2 / 3 de esta. Por lo tanto, si el ADXL312 está exactamente nivelado, el registro del eje z debe leer 2 / 3 escala completa, mientras que los ejes xey deben leer cero. De manera similar, cuando el ADXL312 está perfectamente vertical, la lectura del eje x debe ser 2 / 3 escala completa, mientras que los ejes yyz deben leer cero. Si el ADXL312 comienza a inclinarse alejándose de cualquier eje, la lectura máxima comienza a disminuir mientras que la lectura en los otros ejes comienza a aumentar, de acuerdo con el seno del ángulo de inclinación.

Dentro del ADXL312

El ADXL312 es un sistema microelectromecánico (MEMS) que consta de una estructura micromaquinada de superficie de polisilicio construida sobre una oblea de silicio. Los resortes de polisilicio suspenden la estructura sobre la superficie de la oblea y brindan resistencia contra las fuerzas de aceleración.

Los dedos de silicona fijos se entrelazan con los dedos en una masa de prueba en movimiento para crear condensadores diferenciales cuyas características se pueden medir. La aceleración desvía el haz y desequilibra los condensadores diferenciales, lo que da como resultado una salida de sensor cuya amplitud es proporcional a la aceleración. La estructura se muestra en la Figura 2.

haz clic para ver la imagen a tamaño completo

Figura 2. El funcionamiento interno del ADXL312. (Fuente:Analog Devices)

El ADXL312 se puede direccionar usando I 2 C o SPI, y los datos x, y, z se almacenan en seis registros internos de 8 bits. También tiene muchas otras características que incluyen un FIFO de 32 niveles, dos interrupciones multifunción, registros de compensación, una autocomprobación mecánica y modos de suspensión automática.

El diseño del nivel de burbuja

El diagrama de circuito completo del sensor de inclinación se muestra en la Figura 3.

El ADXL312 tiene un voltaje de suministro máximo de 3.6 V, mientras que la pantalla LCD y el zumbador requieren 5 V, por lo que la entrada principal al circuito es de 5 V, y esto se regula mediante un regulador lineal de 3.3 V, 150 mA (ADP121) para alimenta el ADXL312, el microcontrolador y la memoria E2.

El puerto B, pin 2 (el pin CAL) en el microcontrolador es elevado por una resistencia de 10 kΩ. También tiene un jumper que permite conectarlo a tierra. Al inicio, el microcontrolador interroga el estado del pin CAL, y si el jumper tira de este pin hacia abajo, lee los registros x, y, z, resta estas lecturas de cero y luego carga el resultado en los registros de compensación en el interior. ADXL312 y también los almacena en la memoria externa E2, la 25AA040. El ADXL312 agrega automáticamente las lecturas de los registros de compensación a cualquier medición futura sin interacción del procesador, eliminando así las compensaciones calibradas.

Si se quita el puente, el pin CAL se eleva y se pasa por alto la rutina de calibración. Las lecturas de compensación se leen directamente desde la memoria E2 y se cargan en los registros de compensación del ADXL312. Por lo tanto, durante la fabricación, el nivel de burbuja se puede montar en una plantilla de calibración con el pin CAL en posición baja, el dispositivo se puede calibrar y los valores de compensación se almacenan en la memoria E2. Después de la calibración, se quita el puente y en los siguientes encendidos, se consulta la memoria E2 y se cargan las lecturas de compensación calibradas en los registros de compensación del ADXL312.

Luego, el software realiza ocho lecturas de cada eje, y los resultados se promedian y luego se muestran en la pantalla LCD de 16 caracteres. La pantalla se actualiza cada 100 ms.

haga clic para ver la imagen a tamaño completo

Figura 3. Esquema completo del nivel de burbuja para invidentes. (Fuente:Analog Devices)

La Figura 4 muestra que la máxima sensibilidad se logra cuando cada sensor está cerca de su lectura cero. Aquí es donde la pendiente de la onda sinusoidal es más pronunciada, dando así el cambio máximo en la lectura de gravedad para cualquier cambio en la inclinación.


Figura 4. Muestra el cambio sinusoidal de la fuerza g con el ángulo. (Fuente:Analog Devices)

Afortunadamente, el nivel de burbuja solo necesita medir la inclinación cuando cada sensor está perfectamente horizontal y la lectura del sensor es cercana a cero.

El software fue escrito para permitir que los ejes xyz se calibren a la vez. Es fácil colocar la pieza en una plataforma horizontal y calibrar el eje x del sensor de inclinación. Sin embargo, en este punto, el eje z experimentará una fuerza de 1 g , por lo que se debe tomar una lectura z, en comparación con el recuento de escala completa a 1 g y cualquier error cargado en el registro de compensación. Se puede lograr una calibración más precisa de cada eje del sensor de inclinación calibrando tanto en el plano horizontal como en el vertical, pero esto requiere una calibración de 2 etapas y una modificación del software.

La Tabla 1 muestra un ejemplo de datos en complemento a dos. Los números positivos siguen la notación binaria convencional. Los números negativos utilizan el bit más significativo (MSB) como bit de signo; por lo tanto, los números positivos tienen un MSB igual a cero y los números negativos tienen un MSB igual a 1.

Tabla 1. Un ejemplo de datos de complemento de dos

Decimal Binario +51101 1111 1111 + 100 0000 0001000 0000 0000-111 1111 1111-51110 0000 0001

El complemento a dos de un número positivo se puede encontrar invirtiendo todos los bits y luego sumando 1. Por lo tanto, el código cambia de 00 0000 0000 a 11 1111 1111 cuando se pasa de una cuenta de cero a una de –1.

El software lee los registros xyz y, si el valor de cualquiera de los registros es 0 o 1023 (11 1111 1111), establece el puerto B, bit 5 alto, que enciende el transistor Q1 y hace sonar el zumbador de 5 V. Cuando el sensor de inclinación está perfectamente horizontal, el eje x tiene una lectura de 0 o 1023 y cuando está perfectamente vertical, el eje z tiene una lectura de 0 o 1023. Solo cuando ambos registros no son iguales a 0 o 1023 el timbre deja de sonar.

Precisión y nuevos desarrollos

Considerando solo un eje, una lectura máxima de 1 g se alcanza cuando la gravedad actúa a lo largo de ese eje, y esta lectura se reduce a 0 g a medida que la pieza se inclina 90 ° como se muestra en la Figura 5.


Figura 5. Cálculo del ángulo de inclinación utilizando la lectura gravitacional. (Fuente:Analog Devices)

Por lo tanto, la fuerza gravitacional ejercida está dictada por la ecuación

donde Ø es el ángulo de inclinación medido con respecto a la horizontal. Si la pieza puede medir a una resolución de 2,9 m g , entonces puede resolverse en un ángulo de 0,17 °. Es difícil determinar una cifra para la precisión de un nivel de burbuja estándar, ya que la posición exacta de la burbuja es difícil de establecer. Sin embargo, según los experimentos, el extremo de un nivel de burbuja de 1,2 m puede moverse unos 3,2 mm (¡el ancho de dos PCB despoblados!) Antes de que la burbuja parezca descentrada. Esto equivale a un ángulo de aproximadamente 0,15 °, lo que indica que podemos reemplazar un nivel de burbuja con un sensor de inclinación electrónico con poca pérdida de resolución.

Si se requiere más precisión, el ADXL313 ofrece una resolución de 11 bits en una escala de 1 g. La interfaz y los conjuntos de registros son muy similares a los del ADXL312, por lo que el software no requiere muchas modificaciones. El ADXL355 ofrece un ruido considerablemente menor y una resolución más alta.

El ADXL312 tiene una densidad de ruido de 340 μ g / √Hz, y cuanto menor sea el ancho de banda, mejor será el ruido. El ancho de banda de la pieza es programable (de 3,125 Hz a 1600 Hz con un ajuste predeterminado de 50 Hz). Aunque reducir el ancho de banda mejora el ruido, esto también reducirá la tasa de actualización de la pantalla. Para este diseño, el ancho de banda se estableció en 6.25 Hz, lo que implica un ruido rms de 850 μ g . El ruido también se puede reducir tomando muchas más lecturas y promediando.

Una mejora adicional sería tener una lectura de LCD que muestre grados. Sin embargo, esto requiere el uso de funciones matemáticas en la biblioteca C si se van a incluir senos y cosenos en el software. Estas funciones ocupan demasiado espacio de código para un microcontrolador de gama baja. Se puede lograr una aproximación cercana a una función seno utilizando la expansión de la serie de Taylor, y esto debería ocupar considerablemente menos espacio de código.

Conclusión

El ADXL312 proporciona un sistema de medición de inclinación electrónico de bajo costo que es fácil de conectar a un microcontrolador de gama baja. El diseño descrito anteriormente ha demostrado que puede rivalizar con la precisión de los niveles de burbuja convencionales, pero con una interfaz electrónica. Esto permite que se utilice como un subsistema en diseños más grandes que necesitan medir la inclinación, como sistemas de nivelación de remolques, sistemas de control de estabilidad y drones.

Más importante aún, se puede utilizar para aumentar la independencia de las personas con discapacidad visual, y este texto muestra un diseño completo a nivel de sistema que incluye hardware, software y memoria no volátil, así como una salida de audio y visual.


Simon Bramble se graduó de la Universidad de Brunel en Londres en 1991 con un título en ingeniería eléctrica y electrónica, especializándose en electrónica analógica y energía. Ha dedicado su carrera a la electrónica analógica y ha trabajado en Linear Technology (ahora parte de Analog Devices). Puede ser contactado en [email protected] .

Contenidos relacionados:

Para obtener más información sobre Embedded, suscríbase al boletín informativo semanal por correo electrónico de Embedded.


Incrustado

  1. Diseño de un núcleo más flexible para la red de campus de varios gigabits
  2. Innodisk:Soluciones AIoT para el campo médico
  3. Defensa de los chips neuromórficos para la informática de IA
  4. Diseño de controles de motor para sistemas robóticos
  5. VISTA:Para ciegos
  6. ¿Cuáles son los errores comunes que se deben evitar al diseñar para la fabricación?
  7. El Mejor Nivel de Optimización y Organización en la Fábrica Inteligente
  8. El reto del método 5S para la industria 4.0
  9. ¡Gracias por los recuerdos!
  10. ¿Cuáles son las pautas importantes para el diseño de PCB aeroespaciales y de aviación? - Yo
  11. ¿Cuáles son las pautas importantes para el diseño de PCB aeroespaciales y de aviación?