Commit 7380401a authored by Sebastián Fernández's avatar Sebastián Fernández

agregando documentos MD

parent 7b460db9
# Medidor UV-C
## Requerimientos funcionales
### Para prototipo 0
- medir radiación
- reportar radiación instantanea
- reportar tiempo faltante para terminar desinfección
- señalización visual y sonora de fin desinfección
- detectar presencia de bandeja con máscaras
- No controla el encendido de los tubos.
Interfaz con el usuario:
- switch para indicar presencia de bandeja con máscaras
- leb blanco que enciende y apaga y buzzer para indicar fin de tiempo de desinfección
- si se usa display 7 segmentos:
- en una parte muestra información indicando si no hay bandeja o la cuenta regresiva
- en otra parte se muestra la radiación instantanea
- si se usa un diplay tipo matriz de puntos
- en una fila muestra información indicando si no hay bandeja o la cuenta regresiva
- en otra fila se muestra la radiación instantanea
## Diagrama flujo prototipo 0
```
0. POWER_UP
Mide radiación
Disp_power: <potencia_medida>
Disp_remain: <apagado>
-> Bandeja no presente: 1
1. NO_LOAD_PRESENT
Mide radiación (mW/cm2)
Disp_power: <potencia_medida>
Disp_remain: <apagado>
-> Insertan bandeja: 2
2. DOSE_CALCULATION
Tiempo dosis (s) = Dosis_objetivo (mJ/cm2) / radiación medida (mW/cm2)
Disp_power: <potencia_medida>
Disp_remain: <apagado>
-> Pasa a 3
3. DOSE_APPLY
Cuenta regresiva de tiempo transcurrido
Disp_power: <potencia_medida>
Disp_remain: <cuenta_regresiva>
-> Sacan bandeja : 1
-> Cuenta llega a 0 : 4
4. DOSE_END
Alarma sonora y visual.
Disp_power: <potencia_medida>
Disp_remain: <alterna entre 0000 y 8888>
-> Sacan bandeja: 1
```
### Para versión con leds
- Rele para encender luces solo cuando hay máscaras
## Protocolo de calibración
## Digrama de bloques
## Hardware
### Caja
### Plataforma
Prime prototipo: ESP-WROOM-32 con WiFi
Para producción: Arduino mini
### Sensor UV
#### Sensores que existen en Uruguay.
Interfaz analógico: ML8511 **No hay stock**
https://www.robotec.com.uy/productos/S168
Interfaz digital: VEML6075 **No hay stock**
https://www.robotec.com.uy/productos/S281
#### Opciones a nivel mundial
#### Módulos
Modulo analógico con sensor GUVA-S12SD (UV-A y UV-B) (USD 6.5)
https://www.digikey.com/product-detail/en/adafruit-industries-llc/1918/1528-1468-ND/5761250
#### Sensores
SMD (8.78)
https://www.digikey.com/product-detail/en/genicom-co-ltd/GUVC-S10GD/2096-GUVC-S10GDCT-ND/10475469
Amplificador para sensores: (USD 0.29)
https://www.digikey.com/product-detail/en/microchip-technology/MCP6241T-E-OT/MCP6241T-E-OTCT-ND/1979750
### Display
### Sensores de bandeja
Magneticos para evitar roturas mecánicas.
https://articulo.mercadolibre.com.uy/MLU-444040526-sensores-magneticos-para-puertas-ventanas-o-portones-_JM?quantity=1#position=2&type=item&tracking_id=e96d47ce-e028-47d7-acd5-4289fe7948e9
## Otros proyectos
HYJEIA WIRELESS DOSIMETER:
https://hackerfarm.jp/projects/hyjeia-an-open-source-decontamination-system/hyjeia-wireless-dosimeter/
NUKEMETER
https://hackerfarm.jp/2020/03/nukemeter/
# Control de cámara de desinfección con UV-C
## Introducción
En el marco de la pandemia COVID-19 la Universidad de la República abordó diferentes proyectos, uno de ellos fue la construcción de una cámara de desinfección de máscaras N95 mediante radiación UV.
En este repositorio se encuentra la documentación y fuentes del equipo electrónico encargado de medir la radiación dentro de la cámara y controlar el encendido de las fuentes de radiación UVC. Este equipo es el encargado de supervizar la presencia de la bandeja con máscaras y el estado de las puertas para operar el equipo en forma segura. Presenta al usuario una interfaz consistente en un botón, el cual permite iniciar un ciclo de desinfección o apagar sirena de aviso al finar el ciclo y leds bicolor, display y un buzzer que brindan información operativa.
![Diagrama general](design/diagramas/diagrama_elementos.png)
## Organización repositorio
URL para clonar repositorio: https://gitlab.fing.edu.uy/desinfeccion_uv/medidor_uv.git
El respositorio se encuentra organizado en las siguientes carpetas:
- **circuit**
- circuit.md: Archivo markdown con notas específicas sobre electrónica.
- sensor_uv:
- archivos KiCad con esquemático y placa
- bom: Lista de materiales con código Digikey de los componentes
- print_out: PDF con esquemático, layout de placa y placa para imprimir en plapel transfer para fabicación artesanal.
- uv_meter:
- archivos KiCad con esquemático y placa
- bom: Lista de materiales con código Digikey de los componentes
- print_out: PDF con esquemático, layout de placa y placa para imprimir en plapel transfer para fabicación artesanal.
- **compras**
- facturas de las compras realizadas
- **design**
- design.md: Archivo markdown con notas específicas sobre decisiones de diseño.
- diagramas: diagramas de bloques y conexionado de componentes.
- recursos:
- fotos: fotos de diferentes componenntes y etapas de armado
- prototipo_mecanico: planos y fotos de referencia de parte mecánica
- **hojas_datos**
- Hojas de datos de los componentes más relevantes
- **releases**
- Archivos zip con contenido de release de este repositorio en momentos relevantes.
- **sw**
- sw.md: Archivo markdown con notas específicas sobre software.
- uv_meter_arduino: sw que implementa funcionalidades necesarias para la operación del equipo.
- uv_meter_setup_arduino: sw que implementa funcionalidades necesarias para la puesta en marcha durante montaje del equipo.
## Releases
### 2020-07-13
Release inicial de documentación y fuentes. Cierre de etapa de prototipado con 2 equipos funcionando. Uno de ellos con sensor UVC y display de 2 lineas, el otro sin sensor UVC y display 7 segmentos.
Versión de electrónica uv meter: 1.2
Versión de electrónica uv sensor: 1.2
Versión de sw: 1.0
Problemas conocidos:
- al grabar ciclos de funcionamiento y tiempo encendido en eeprom, el programa puede fallar. Se deshabilita para esta versión.
Futuras mejoras:
- incorporar en el sw funcionalidades de monitores de caida abrupta de radiación durante funcionamiento (falla en tubos)
- una vez estabilizado el diseño electrónico, pasar todo a componentes SMD para reducir tamaño y utilizar un solo conector para todas las señales y alimentación.
\ No newline at end of file
# Control de cámara de desinfección con UV-C
# Electrónica
El diseño esta realizado utilizando el software KiCad y para estas primeras versiones se optó por utilizar componentes de fácil acceso en plaza en Uruguay (salvo sensor UVC y op.amp. para condicionamiento de señal).
En las sub-carpetas se encuentran los esquemáticos, circuitos impresos y lista de materiales. Se incluyen códigos del proveedor en Uruguay Eneka e internacional DigiKey.
## uv_meter
Es la placa que contiene el microcontrolador Arduino, acondicionamiento de señales de sensores, buzzer, relé para manejo de alumentación de fuente UVC y display.
En la versión inicial se utilizó un display 7 segmentos de 8 dígitos, pero luego se optó por el uso de un display que permite 2 filas de texto y se controla mediante I2C.
![Diagrama conexiones](https://gitlab.fing.edu.uy/desinfeccion_uv/medidor_uv/-/raw/master/design/diagramas/diagrama_conexiones.png)
## uv_sensor
Es la placa que contiene el sensor UV-C. Entra a uno de los canales ADC del microcontrolador Arduino.
\ No newline at end of file
# Control de cámara de desinfección con UV-C
# Notas diseño
## Requerimientos funcionales
### Para prototipo 1
- medir radiación
- reportar radiación instantanea
- reportar tiempo faltante para terminar desinfección
- señalización visual y sonora de fin desinfección
- detectar presencia de bandeja con máscaras
- controla el encendido de los tubos.
Interfaz con el usuario:
- switch para indicar inicio de operación y reconocimiento de mensajes de error.
- led bicolor (rojo y verde) para indicar etapa en la que esta el equipo y alertar de errores.
- buzzer: sirenas para dar realimentación sonora de errores, posición correcta de bandeja, fin de desinfección.
- display de 2 filas para reporta radiación, tiempo faltante, errores y mensajes operativos.
## Decisiones de diseño
## Diagrama general y de conexiones
![Diagrama general](https://gitlab.fing.edu.uy/desinfeccion_uv/medidor_uv/-/raw/master/design/diagramas/diagrama_elementos.png)
![Diagrama conexiones](https://gitlab.fing.edu.uy/desinfeccion_uv/medidor_uv/-/raw/master/design/diagramas/diagrama_conexiones.png)
## Otros proyectos
HYJEIA WIRELESS DOSIMETER:
https://hackerfarm.jp/projects/hyjeia-an-open-source-decontamination-system/hyjeia-wireless-dosimeter/
NUKEMETER
https://hackerfarm.jp/2020/03/nukemeter/
# Control de cámara de desinfección con UV-C
# Software
El software se estructura en 2 partes, uv_meter_setup_arduino y uv_meter_arduino.
**uv_meter_setup_arduino** es utilizado durante el montaje y permite probar los diferentes sensores, leds, buzzer y rele de control de alimentación de fuente UVC. Además es utilizado para inicializar los valores en memoria EEPROM que son utilizados por la aplicación principal uv_meter_arduino.
**uv_meter_arduino** es el sw que controla la operativa en funcionamiento normal del equipo.
## uv_meter_setup_arduino
Una vez cargado el firmware, se debe abrir una terminal de comunicación serie a 115200bps.
Comandos
- ayuda : h
- leer valores eeprom : e
- sensor uvc presente : u,presencia
- guardar lectura ADC : p,lectura_raw_adc
- tiempo de encendido : t,minutos
- ciclos de encendido : c,ciclos
- calibracion scale : g,scale
- calibracion offset : o,offset
- lectura medida UVC : m
- led verde : v,estado (1 encendido. 0 apagado)
- led rojo : r,estado (1 encendido. 0 apagado)
- buzzer : b,estado (1 encendido. 0 apagado)
- relay : a,estado (1 cerrado. 0 abierto)
- estado sensores : s
## uv_meter_arduino
El flujo de funcionamiento puede verse en el documento: flujo_programa.pdf
Luego de un reset, el sw envia por el puerto serie el contenido de la eeprom y la versión de sw.
## Datos en eeprom
|dato|dirección|tipo dato |Observacion |
|----|---------|----------|------------|
|ADD_UVC_SENSOR_PRESENT | 0 | Entero |1 is sensor present, 0 if not present|
|ADD_ADC_RAW_DEF | 4 | Flotante | default lectura ADC |
|ADD_ADC_RAW | 8 | Flotante | ultima lectura ADC |
|ADD_ON_TIME | 12 | Flotante | minutos fuente UVC encendida |
|ADD_ON_CYCLE | 16 | Flotante | cliclos UVC encendida |
|ADD_CAL_G | 20 | Flotante | escala ADC a potencia |
|ADD_CAL_O | 24 | Flotante | offset ADC a potencia |
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment