1 <img src="img/logofiuba.png" width="100%"> 2 3 # Controlador de derretidor de miel 4 5 Trabajo practico final 6 Taller de sistemas embebidos (TA134) - FIUBA 7 8 Martin Klöckner - [mklockner@fi.uba.ar](mailto:mklockner@fi.uba.ar) 9 10 ## Índice 11 12 1. [Introducción](#introducción) 13 2. [Proyectos similares y alternativas](#proyectos-similares-y-alternativas) 14 3. [Requisitos](#requisitos) 15 4. [Modos de operación](#modos-de-operación) 16 5. [Casos de uso](#casos-de-uso) 17 6. [Diagrama en bloques](#diagrama-en-bloques) 18 7. [Especificaciones](#especificaciones) 19 8. [Informe de avances](#informe-de-avances) 20 21 ## Introducción 22 23 Un derretidor eléctrico de miel es un equipo diseñado para elevar la temperatura 24 de la miel de una forma controlada, con el fin de reducir la viscosidad y 25 facilitar la manipulación de la misma en diferentes procesos, como el envasado, 26 filtrado, bombeo, etc. En la figura 1 se muestra un ejemplo de un derretidor de 27 miel convencional y al que apunta el proyecto al reemplazar el controlador 28 incluido, un termostato bimetalico, por un sistema más sofisticado digital. 29 30 <img style="padding: 10px" src="img/derretidor_convencional.png" width="100%"> 31 <p align="center"><em>Figura 1: Derretidor de miel convencional</em></p> 32 33 El objetivo del proyecto entonces, es diseñar e implementar el controlador de un 34 derretidor eléctrico de miel para tambores que ya se comercializa actualmente, 35 de manera de obtener un control mas preciso de la temperatura y ampliar las 36 funcionalidades del mismo, como ser el control remoto, la temporización 37 programada, o el ajuste mediante curvas de temperatura de acuerdo a diferentes 38 situaciones. 39 40 ## Proyectos similares y alternativas 41 42 Si bien no se encontraron proyectos históricos similares en la materia (sistemas 43 embebidos FIUBA) en cuanto a algo tan especifico como un controlador de un 44 derretidor de miel, si se encontraron proyectos similares en cuanto a controlar 45 la temperatura de un sistema, como por ejemplo de un [horno eléctrico para 46 gastronomía](https://docs.google.com/document/d/1ypnhOz-Gx_ZRbwiI6vEn4dvr7_YqNVnpy5sfgalQAoA/edit?tab=t.0) 47 o un [horno eléctrico para componentes 48 SMD](https://docs.google.com/document/d/1rQf3P1D7NSb7egpnlkKMTvL_rzy9PuMcMBPcu7NxmQw/edit?tab=t.0). 49 50 En cuando a alternativas que cumplan con los objetivos de ampliar las 51 funcionalidades del derretidor de miel, se tuvo en cuenta diseñar un 52 temporizador que, manteniendo el controlador de temperatura ya incluido en el 53 derretidor, permita el control remoto y la activación en determinados momentos 54 del día o durante intervalos específicos. Esta idea no fue descartada, ya que 55 el sistema final incluye todas las funcionalidades de esta idea, si no mas bien 56 ampliada obteniendo así la idea final, es decir, esta idea considerada de 57 temporizador es una versión "reducida" en cuanto a funcionalidades de la idea 58 final de hacer un controlador más completo. 59 60 ## Requisitos 61 62 La necesidad de realizar este proyecto es que a nivel nacional, e incluso a 63 nivel internacional, no se encuentra un producto con características similares. 64 La mayoría de los derretidores de miel que se encuentran en el mercado (como el 65 que se muestra en la figura 1) ofrecen un control muy rudimentario, y no 66 permiten controlar parámetros mas allá de la temperatura. Es por esto que además 67 del control de temperatura, se propone los requisitos que se detallan en la 68 tabla 1 a continuación. 69 70 | ID | Requisito | Descripción detallada | 71 | -: | :-------------------------- | :------------------------------------------------------------------------------------------------------------------------------------- | 72 | 1 | Control a través de botones | El usuario debe poder establecer y modificar parámetros del sistema a través de botones | 73 | 2 | Control remoto | El usuario debe poder establecer y modificar parámetros del dispositivo de manera remota | 74 | 3 | Programación de ciclos | El usuario debe poder programar ciclos de derretido para que inicien a una hora y día específicos | 75 | 4 | Curvas de Temperatura | El usuario debe poder definir y guardar perfiles de calentamiento | 76 | 5 | Display | El sistema debe tener un display y luces indicadoras para transmitir el estado actual o cambios de estado | 77 | 6 | Luces indicadoras | El sistema debe tener luces indicadoras para transmitir el estado actual o cambios de estado | 78 | 7 | Alarma sonora | El sistema debe tener una alarma sonora para transmitir el estado actual o cambios de estado | 79 | 8 | Monitoreo en tiempo real | El sistema debe mostrar el estado actual de operación en el display y en la interfaz remota | 80 | 9 | Conectividad | El sistema debe poder conectarse a redes Wi-Fi para comunicarse de manera remota | 81 | 10 | Registro de temperatura | El sistema debe almacenar un registro de temperatura y tiempo para cada ciclo de derretido (inicio, fin, picos máximos de temperatura) | 82 | 11 | Limite de temperatura | El sistema debe tener un límite de temperatura máximo el cual nunca debe ser superado | 83 | 12 | Persistencia de parámetros | El sistema debe recordar los últimos parámetros establecidos por el usuario, incluso si se desenergiza | 84 | 13 | Reloj de tiempo real | El sistema debe poder llevar cuenta del tiempo real, incluso si se desenergiza | 85 86 <p align="center"><em>Tabla 1: Requisitos del proyecto</em></p> 87 88 ## Modos de operación 89 90 A continuación se definen los modos de operación del sistema. 91 92 ### Modo normal 93 94 En este modo el derretidor ya ha sido energizado hace tiempo y se encuentra 95 operando el calefactor, censando la temperatura y controlando la misma de 96 acuerdo a los parámetros configurados por el usuario. La información se muestra 97 tanto en pantalla como en la interfaz remota. 98 99 ### Modo reposo 100 101 En este modo el derretidor ya ha sido energizado hace tiempo pero no se 102 encuentra operando el calefactor, en caso de que pase un largo período de 103 tiempo y no haya un ciclo programado que comience pronto el sistema 104 deshabilitará algunas características, como la luz de fondo del display o que 105 disminuya la velocidad de reloj del microcontrolador, esto para consumir menos 106 energía. 107 108 ### Modo transición 109 110 Este modo se utiliza durante las transiciones, como puede ser que se haya 111 energizado el sistema hace poco tiempo y aun se estén inicializando 112 características, como la interfaz remota. 113 114 ### Modo falla 115 116 Este modo solo se llega si ha ocurrido una falla en el sistema, se encienden 117 luces indicadoras y se muestra el código de error por pantalla o a través de la 118 interfaz remota. 119 120 ### Modo calibración 121 122 Este modo se utiliza para calibrar la temperatura real del calefactor con la 123 leída por el sistema a través el sensor de temperatura. El sistema ya haya sido 124 energizado hace tiempo y se muestra un menú en pantalla para establecer la 125 temperatura actual del calefactor. 126 127 128 ## Casos de uso 129 130 A continuación en las tablas 2, 3, 4, 5 y 6 se ejemplifican algunos casos de 131 uso del derretidor de miel para cada uno de los modos de operación del sistema. 132 133 | Elemento | Definición | 134 | :------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | 135 | Disparador | Se quiere detener un ciclo de derretido de miel de manera remota | 136 | Precondiciones | El sistema está en modo normal operando el calefactor | 137 | Flujo principal | El usuario interactúa con la interfaz remota seleccionando la opción detener calefactor, se detiene el calefactor y se cambia a modo de operación en reposo | 138 | Flujos alternativos | Se pierde la conexión con el sistema, en caso de ocurrir previo a seleccionar la opción el sistema sigue operando en modo normal, se reintenta la conexión con el usuario | 139 140 <p align="center"><em>Tabla 2: Caso de uso modo normal</em></p> 141 142 | Elemento | Definición | 143 | :------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | 144 | Disparador | Se desea programar un ciclo de derretido para una hora y fecha especifica | 145 | Precondiciones | El sistema está en modo reposo operando el calefactor | 146 | Flujo principal | El usuario interactúa con la interfaz remota seleccionando la opción programar ciclo, elije entre las opciones disponibles y guarda la configuración. Llegado el momento definido por el usuario se cambia a modo de operación normal, enciendo el calefactor | 147 | Flujos alternativos | En caso de que se pierda la energía previo a iniciar el ciclo, luego de que se vuelva a energizar el sistema y vuelva a modo reposo (si no hay fallas) el ciclo configurado permanece guardado porque los parámetros se guardan en memoria no volátil, llegado el momento configurado por el ciclo se cambia a modo normal encendiendo el calefactor | 148 149 <p align="center"><em>Tabla 3: Caso de uso modo reposo</em></p> 150 151 | Elemento | Definición | 152 | :------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | 153 | Disparador | El sistema se energiza | 154 | Precondiciones | El sistema se encontraba apagado, desenergizado | 155 | Flujo principal | El sistema inicializa todos los bloques, se comprueba que no haya ciclos de derretido predefinidos para el momento actual, en caso de que los haya se pasa a modo normal, si no los hay se pasa a modo reposo | 156 | Flujos alternativos | Si no se encuentra una red Wi-Fi disponible se pasa a modo falla indicando el error | 157 158 <p align="center"><em>Tabla 4: Caso de uso modo transición</em></p> 159 160 | Elemento | Definición | 161 | :------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | 162 | Disparador | No se detecta una medición de temperatura o resulta en una medición absurda | 163 | Precondiciones | El sistema se encontraba en modo normal operando el calefactor | 164 | Flujo principal | Se notifica en pantalla, con indicadores y a través de la interfaz remota que se ha detenido la operación del calefactor por falla en sensor | 165 | Flujos alternativos | El usuario reconoce la falla y presiona un botón que permite verificar nuevamente la medición del sensor en caso de que sea correcto y los parámetros estén en valores normales se vuelve a la operación previa | 166 167 <p align="center"><em>Tabla 5: Caso de uso modo falla</em></p> 168 169 170 | Elemento | Definición | 171 | :------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | 172 | Disparador | El usuario selecciona en el menú o a través de la interfaz remota la opción de calibrar el sensor | 173 | Precondiciones | El sistema se encuentra en modo reposo por al menor 30 minutos | 174 | Flujo principal | Se notifica en pantalla, con indicadores y a través de la interfaz remota que se encuentra en modo calibración y se debe ingresar la temperatura actual del sensor | 175 | Flujos alternativos | El usuario decide cancelar la calibración del sensor, se vuelve al modo previo | 176 177 <p align="center"><em>Tabla 6: Caso de uso modo calibración</em></p> 178 179 180 ## Diagrama en bloques 181 182 En la figura 2 se muestra el diagrama en bloques del proyecto en el que se 183 aprecian los principales componentes *simplificados* del sistema y la interfaz 184 que utilizan para intercambiar información. Los bloques en verde simbolizan las 185 salidas del sistema, como la interfaz de usuario mediante display o el control 186 de temperatura en sí del derretidor, en amarillo las entradas del sistema, como 187 los botones o el sensor de temperatura; en rojo se simboliza el bloque de 188 procesamiento, de esta forma se muestra claramente entradas, procesamiento y 189 salidas. El modulo de acceso remoto se simboliza con un color distinto ya que 190 este hace a la vez de entrada y salida. 191 192 <div align="center"> 193 <img style="padding: 10px" align=center src="img/diagrama_de_bloques.png" width="85%"> 194 <p><em>Figura 2: Diagrama de bloques del proyecto</em></p> 195 </div> 196 197 El control de temperatura es un bloque genérico controlado por la placa núcleo 198 de acuerdo a la lectura del sensor de temperatura, a modo de simplificar el 199 prototipo se modela el derretidor de miel mediante un resistor de alta 200 potencia con un valor de impedancia similar al del derretidor. 201 202 ## Especificaciones 203 204 Para la implementación del prototipo del sistema se tienen en cuenta los 205 componentes que se enumeran a continuación: 206 207 1. Placa NUCLEO F103RB 208 2. Sensor digital de temperatura con integrado DS18B20 209 3. Modulo Wi-Fi ESP01 210 4. Pulsadores tact switch 211 5. Display LCD 16x2 con interfaz I2C 212 6. Controlador de temperatura mediante señal PWM 213 7. Resistor de alta potencia para modelar el derretidor de miel 214 8. Buzzer de 12mm 215 9. Modulo RTC interno 216 217 Como se mencionó previamente el derretidor de miel se puede modelar mediante un 218 resistor de valor de impedancia similar ya que este se muestra como una carga 219 resistiva pura (por el modo de generar calor mediante un resistor) es por esto 220 que a modo de realizar el prototipo se elije un MOSFET para controlar mediante 221 una señal PWM la potencia que se entrega al resistor y de esta forma controlar 222 la temperatura a la que se encuentra el mismo. 223 224 ## Informe de avances 225 226 En la tabla 7 se detalla el estado de implementación de cada uno de los 227 requisitos del proyecto, los cuales ya han sido descriptos en la tabla 1. El 228 estado puede ser: "ya implementado", "a implementar" y "no se implementará", y 229 se asignan los colores verde, amarillo y rojo para cada estado, respectivamente. 230 231 El requisito 4 no se implementará por restricciones de tiempo. Es decir, en el 232 corto plazo no se implementará pero no se descarta la idea para una futura 233 iteración del proyecto. 234 235 | ID | Requisito | Estado | 236 | -: | :-------------------------- | :-------------------- | 237 | 1 | Control a través de botones | 🟢 Implementado | 238 | 2 | Control remoto | 🟡 A implementar | 239 | 3 | Programación de ciclos | 🟢 A implementar | 240 | 4 | Curvas de Temperatura | 🔴 No se implementará | 241 | 5 | Display | 🟢 Implementado | 242 | 6 | Luces indicadoras | 🟢 A implementar | 243 | 7 | Alarma sonora | 🟢 Implementado | 244 | 8 | Monitoreo en tiempo real | 🟢 Implementado | 245 | 9 | Conectividad | 🟡 A implementar | 246 | 10 | Registro de temperatura | 🟡 A implementar | 247 | 11 | Limite de temperatura | 🟢 Implementado | 248 | 12 | Persistencia de parámetros | 🟢 Implementado | 249 | 13 | Reloj de tiempo real | 🟢 Implementado | 250 251 <p align="center"><em>Tabla 7: Estado de implementación de requisitos del proyecto</em></p> 252
