jueves, 23 de abril de 2020

Diseño de la estrategia de control de actuadores

Algo que diferencia al proyecto de AR_CODEX del resto de BMV automatizados de Guatemala es el hecho de tener un lazo cerrado de control. La siguiente imagen es un bosquejo de la arquitectura final para el firmware que se implementará, en donde los bloques negros son las distintas funciones del microcontrolador encargado del sistema de control. 


A) Módulo de sensores 


Este módulo es el encargado de recibir todos los datos enviados por el microcontrolador que maneja los sensores colocados en el BMV. Todos estos datos se recibirán por medio del protocolo de comunicación serial I2C (Inter-Integrated Circuit). La configuración del microcontrolador que llevará los ADCs que recibirán la toma de datos directamente de los sensores estará configurado como maestro y, el módulo de sensores, estará configurado como esclavo. Este módulo es el encargado de guardar la información dentro de la memoria FIFO (First In First Out). Dentro de este módulo se pueden alcanzar 100 muestras por ciclo de respiración a 25 respiraciones/minuto, el tiempo que le toma a una persona realizar una inspiración son 0.6 seg como tasa de muestreo para obtener datos y poder controlar.


B) Módulo de control


Es el encargado de controlar los motores y la válvula en función de la información recibida de los sensores almacenada en memorias FIFO. El módulo de control cuenta con un sistema de control integral proporcional y derivativo (PID) capaz de predecir el comportamiento de la válvula y los motores, regulando la velocidad y presión de los mismos. Este módulo se encarga comunicar los otros dos microcontroladores encargados de la toma de datos y el control de la interfaz gráfica usuario. También es el encargado de controlar al resto de módulos para el funcionamiento completo de todo el dispositivo, es el encargado de procesar toda la información adquirida del módulo de sensores. Toma absolutamente todas las decisiones del dispositivo electrónico por medio de la información recopilada por los sensores encargados de leer las variables y sus niveles de interés. Dentro de este módulo se hacen cálculos de flujo hacia volumen total.

C) Módulo de comunicación para los drivers de los motores paso a paso (Stepper)


Este módulo es el encargado de tomar las instrucciones del módulo de control, convertirla en códigos binarios y transmitirla a los drivers que controlan los motores Stepper NEMA 17. Los drivers A4948 son los utilizados para controlar los motores y poder suministrar la potencia que estos requieren para el funcionamiento del respirador. Los motores mencionados son los encargados de generar el movimiento mecánico para presionar al BMV y suministrar el aire necesario al paciente. El MOSFET de la válvula disponible tiene como objetivo que la respiración tenga una pendiente constante, volumen / tiempo = flujo.

D) Módulo Buffer y Alarma


Este módulo es el encargado de guardar todos los registros binarios adquiridos por los sensores físicos, ingresa por medio de un bus de datos a una memoria FIFO, donde captura e interpreta la información. Este módulo tiene programado varios Triggers, encargados de avisar al módulo principal y al usuario final si uno de los sensores está recibiendo lecturas anormales, por ejemplo, si el nivel de estrés es muy alto el sensor toma esta información y el módulo activa una alarma para que se corrija alguna operación y alertar al médico.

E) Módulo comunicación para la interfaz gráfica de usuario (GUI)


Este módulo es el encargado de enviar la información a desplegar en la interfaz gráfica para que el usuario final, en este caso el médico a cargo, pueda ver las variables de frecuencia respiratoria, volumen y presión. Éste módulo se comunica por medio del protocolo de comunicación serial I2C con otro microcontrolador específicamente programado para desplegar la interfaz gráfica. Este módulo estará configurado como maestro y los drivers serán los esclavos.
      

También se muestra el desarrollo del Hardware Watchdog para que se pueda interactuar con un tercer microcontrolador, el cual se puede programar posteriormente.                                          

#Guatemala #OpenSource #AR_CODEX

No hay comentarios:

Publicar un comentario