tdse-tf_3-02

Controlador PID para derretidor de miel con control local via botones y remoto via WiFi
Index Commits Files Refs Submodules README
ModeNameSize
d---------firmware-nucleo.
d---------img.
-rw-r--r--.gitmodules3L
-rw-r--r--MEMORIA.md1222L
-rw-r--r--README.md252L
m---------firmware-remote-controller @ 8d75352

Controlador de derretidor de miel

Trabajo practico final
Taller de sistemas embebidos (TA134) - FIUBA

Martin Klöckner - mklockner@fi.uba.ar

Índice

  1. Introducción
  2. Proyectos similares y alternativas
  3. Requisitos
  4. Modos de operación
  5. Casos de uso
  6. Diagrama en bloques
  7. Especificaciones
  8. Informe de avances

Introducción

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.

Proyectos similares y alternativas

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.

Requisitos

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

Modos de operación

A continuación se definen los modos de operación del sistema.

Modo normal

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.

Modo reposo

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.

Modo transición

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.

Modo falla

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.

Modo calibración

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.

Casos de uso

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

Diagrama en bloques

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.

Especificaciones

Para la implementación del prototipo del sistema se tienen en cuenta los componentes que se enumeran a continuación:

  1. Placa NUCLEO F103RB
  2. Sensor digital de temperatura con integrado DS18B20
  3. Modulo Wi-Fi ESP01
  4. Pulsadores tact switch
  5. Display LCD 16x2 con interfaz I2C
  6. Controlador de temperatura mediante señal PWM
  7. Resistor de alta potencia para modelar el derretidor de miel
  8. Buzzer de 12mm
  9. Modulo RTC interno

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.

Informe de avances

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