![]() | tdse-tf_3-02Controlador PID para derretidor de miel con control local via botones y remoto via WiFi |
| Mode | Name | Size |
| d--------- | firmware-nucleo | . |
| d--------- | img | . |
| -rw-r--r-- | .gitmodules | 3L |
| -rw-r--r-- | MEMORIA.md | 1222L |
| -rw-r--r-- | README.md | 252L |
| m--------- | firmware-remote-controller @ 8d75352 |
Trabajo practico final
Taller de sistemas embebidos (TA134) - FIUBA
Martin Klöckner - mklockner@fi.uba.ar
Un derretidor eléctrico de miel es un equipo diseñado para elevar la temperatura de la miel de una forma controlada, con el fin de reducir la viscosidad y facilitar la manipulación de la misma en diferentes procesos, como el envasado, filtrado, bombeo, etc. En la figura 1 se muestra un ejemplo de un derretidor de miel convencional y al que apunta el proyecto al reemplazar el controlador incluido, un termostato bimetalico, por un sistema más sofisticado digital.
Figura 1: Derretidor de miel convencional
El objetivo del proyecto entonces, es diseñar e implementar el controlador de un derretidor eléctrico de miel para tambores que ya se comercializa actualmente, de manera de obtener un control mas preciso de la temperatura y ampliar las funcionalidades del mismo, como ser el control remoto, la temporización programada, o el ajuste mediante curvas de temperatura de acuerdo a diferentes situaciones.
Si bien no se encontraron proyectos históricos similares en la materia (sistemas embebidos FIUBA) en cuanto a algo tan especifico como un controlador de un derretidor de miel, si se encontraron proyectos similares en cuanto a controlar la temperatura de un sistema, como por ejemplo de un horno eléctrico para gastronomía o un horno eléctrico para componentes SMD.
En cuando a alternativas que cumplan con los objetivos de ampliar las funcionalidades del derretidor de miel, se tuvo en cuenta diseñar un temporizador que, manteniendo el controlador de temperatura ya incluido en el derretidor, permita el control remoto y la activación en determinados momentos del día o durante intervalos específicos. Esta idea no fue descartada, ya que el sistema final incluye todas las funcionalidades de esta idea, si no mas bien ampliada obteniendo así la idea final, es decir, esta idea considerada de temporizador es una versión "reducida" en cuanto a funcionalidades de la idea final de hacer un controlador más completo.
La necesidad de realizar este proyecto es que a nivel nacional, e incluso a nivel internacional, no se encuentra un producto con características similares. La mayoría de los derretidores de miel que se encuentran en el mercado (como el que se muestra en la figura 1) ofrecen un control muy rudimentario, y no permiten controlar parámetros mas allá de la temperatura. Es por esto que además del control de temperatura, se propone los requisitos que se detallan en la tabla 1 a continuación.
| ID | Requisito | Descripción detallada | | -: | :-------------------------- | :------------------------------------------------------------------------------------------------------------------------------------- | | 1 | Control a través de botones | El usuario debe poder establecer y modificar parámetros del sistema a través de botones | | 2 | Control remoto | El usuario debe poder establecer y modificar parámetros del dispositivo de manera remota | | 3 | Programación de ciclos | El usuario debe poder programar ciclos de derretido para que inicien a una hora y día específicos | | 4 | Curvas de Temperatura | El usuario debe poder definir y guardar perfiles de calentamiento | | 5 | Display | El sistema debe tener un display y luces indicadoras para transmitir el estado actual o cambios de estado | | 6 | Luces indicadoras | El sistema debe tener luces indicadoras para transmitir el estado actual o cambios de estado | | 7 | Alarma sonora | El sistema debe tener una alarma sonora para transmitir el estado actual o cambios de estado | | 8 | Monitoreo en tiempo real | El sistema debe mostrar el estado actual de operación en el display y en la interfaz remota | | 9 | Conectividad | El sistema debe poder conectarse a redes Wi-Fi para comunicarse de manera remota | | 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) | | 11 | Limite de temperatura | El sistema debe tener un límite de temperatura máximo el cual nunca debe ser superado | | 12 | Persistencia de parámetros | El sistema debe recordar los últimos parámetros establecidos por el usuario, incluso si se desenergiza | | 13 | Reloj de tiempo real | El sistema debe poder llevar cuenta del tiempo real, incluso si se desenergiza |
Tabla 1: Requisitos del proyecto
A continuación se definen los modos de operación del sistema.
En este modo el derretidor ya ha sido energizado hace tiempo y se encuentra operando el calefactor, censando la temperatura y controlando la misma de acuerdo a los parámetros configurados por el usuario. La información se muestra tanto en pantalla como en la interfaz remota.
En este modo el derretidor ya ha sido energizado hace tiempo pero no se encuentra operando el calefactor, en caso de que pase un largo período de tiempo y no haya un ciclo programado que comience pronto el sistema deshabilitará algunas características, como la luz de fondo del display o que disminuya la velocidad de reloj del microcontrolador, esto para consumir menos energía.
Este modo se utiliza durante las transiciones, como puede ser que se haya energizado el sistema hace poco tiempo y aun se estén inicializando características, como la interfaz remota.
Este modo solo se llega si ha ocurrido una falla en el sistema, se encienden luces indicadoras y se muestra el código de error por pantalla o a través de la interfaz remota.
Este modo se utiliza para calibrar la temperatura real del calefactor con la leída por el sistema a través el sensor de temperatura. El sistema ya haya sido energizado hace tiempo y se muestra un menú en pantalla para establecer la temperatura actual del calefactor.
A continuación en las tablas 2, 3, 4, 5 y 6 se ejemplifican algunos casos de uso del derretidor de miel para cada uno de los modos de operación del sistema.
| Elemento | Definición |
|---|---|
| Disparador | Se quiere detener un ciclo de derretido de miel de manera remota |
| Precondiciones | El sistema está en modo normal operando el calefactor |
| 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 |
| 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 |
Tabla 2: Caso de uso modo normal
| Elemento | Definición |
|---|---|
| Disparador | Se desea programar un ciclo de derretido para una hora y fecha especifica |
| Precondiciones | El sistema está en modo reposo operando el calefactor |
| 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 |
| 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 |
Tabla 3: Caso de uso modo reposo
| Elemento | Definición |
|---|---|
| Disparador | El sistema se energiza |
| Precondiciones | El sistema se encontraba apagado, desenergizado |
| 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 |
| Flujos alternativos | Si no se encuentra una red Wi-Fi disponible se pasa a modo falla indicando el error |
Tabla 4: Caso de uso modo transición
| Elemento | Definición |
|---|---|
| Disparador | No se detecta una medición de temperatura o resulta en una medición absurda |
| Precondiciones | El sistema se encontraba en modo normal operando el calefactor |
| 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 |
| 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 |
Tabla 5: Caso de uso modo falla
| Elemento | Definición |
|---|---|
| Disparador | El usuario selecciona en el menú o a través de la interfaz remota la opción de calibrar el sensor |
| Precondiciones | El sistema se encuentra en modo reposo por al menor 30 minutos |
| 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 |
| Flujos alternativos | El usuario decide cancelar la calibración del sensor, se vuelve al modo previo |
Tabla 6: Caso de uso modo calibración
En la figura 2 se muestra el diagrama en bloques del proyecto en el que se aprecian los principales componentes simplificados del sistema y la interfaz que utilizan para intercambiar información. Los bloques en verde simbolizan las salidas del sistema, como la interfaz de usuario mediante display o el control de temperatura en sí del derretidor, en amarillo las entradas del sistema, como los botones o el sensor de temperatura; en rojo se simboliza el bloque de procesamiento, de esta forma se muestra claramente entradas, procesamiento y salidas. El modulo de acceso remoto se simboliza con un color distinto ya que este hace a la vez de entrada y salida.
Figura 2: Diagrama de bloques del proyecto
El control de temperatura es un bloque genérico controlado por la placa núcleo de acuerdo a la lectura del sensor de temperatura, a modo de simplificar el prototipo se modela el derretidor de miel mediante un resistor de alta potencia con un valor de impedancia similar al del derretidor.
Para la implementación del prototipo del sistema se tienen en cuenta los componentes que se enumeran a continuación:
Como se mencionó previamente el derretidor de miel se puede modelar mediante un resistor de valor de impedancia similar ya que este se muestra como una carga resistiva pura (por el modo de generar calor mediante un resistor) es por esto que a modo de realizar el prototipo se elije un MOSFET para controlar mediante una señal PWM la potencia que se entrega al resistor y de esta forma controlar la temperatura a la que se encuentra el mismo.
En la tabla 7 se detalla el estado de implementación de cada uno de los requisitos del proyecto, los cuales ya han sido descriptos en la tabla 1. El estado puede ser: "ya implementado", "a implementar" y "no se implementará", y se asignan los colores verde, amarillo y rojo para cada estado, respectivamente.
El requisito 4 no se implementará por restricciones de tiempo. Es decir, en el corto plazo no se implementará pero no se descarta la idea para una futura iteración del proyecto.
| ID | Requisito | Estado | | -: | :-------------------------- | :-------------------- | | 1 | Control a través de botones | 🟢 Implementado | | 2 | Control remoto | 🟡 A implementar | | 3 | Programación de ciclos | 🟢 A implementar | | 4 | Curvas de Temperatura | 🔴 No se implementará | | 5 | Display | 🟢 Implementado | | 6 | Luces indicadoras | 🟢 A implementar | | 7 | Alarma sonora | 🟢 Implementado | | 8 | Monitoreo en tiempo real | 🟢 Implementado | | 9 | Conectividad | 🟡 A implementar | | 10 | Registro de temperatura | 🟡 A implementar | | 11 | Limite de temperatura | 🟢 Implementado | | 12 | Persistencia de parámetros | 🟢 Implementado | | 13 | Reloj de tiempo real | 🟢 Implementado |
Tabla 7: Estado de implementación de requisitos del proyecto