commit e34d7b41eb34f2625b4544e2c8a1c5bc692b1397
parent ce6b6785cbe3ed8d234422c25e76a12717cadbc8
Author: Martin Klöckner <mjkloeckner@gmail.com>
Date: Sat, 6 Dec 2025 10:11:04 -0300
Merge pull request #1 from mjkloeckner/requisitos
Actualizar `README.md`: definición de requisitos y casos de uso
Diffstat:
4 files changed, 206 insertions(+), 5 deletions(-)
diff --git a/README.md b/README.md
@@ -1,8 +1,209 @@
-# Trabajo Practico Final
+ <img src="img/logofiuba.png" width="100%">
-Taller de Sistemas Embebidos (TA134) - FIUBA
+# Controlador de derretidor de miel
-## Integrantes
+Trabajo practico final
+Taller de sistemas embebidos (TA134) - FIUBA
+
+Martin Klöckner - [mklockner@fi.uba.ar](mailto:mklockner@fi.uba.ar)
+Sebastian Branda - [sbranda@fi.uba.ar](mailto:sbranda@fi.uba.ar)
-* Martin Klöckner - [mklockner@fi.uba.ar](mailto:mklockner@fi.uba.ar)
-* Sebastian Branda - [sbranda@fi.uba.ar](mailto:sbranda@fi.uba.ar)
+## 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 mediante termocupla capilar, por un sistema más sofisticado.
+
+<img style="padding: 10px" src="img/derretidor_convencional.png" width="100%">
+<p align="center"><em>Figura 1: Derretidor de miel convencional</em></p>
+
+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](https://docs.google.com/document/d/1ypnhOz-Gx_ZRbwiI6vEn4dvr7_YqNVnpy5sfgalQAoA/edit?tab=t.0)
+o un [horno eléctrico para componentes
+SMD](https://docs.google.com/document/d/1rQf3P1D7NSb7egpnlkKMTvL_rzy9PuMcMBPcu7NxmQw/edit?tab=t.0).
+
+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 |
+
+<p align="center"><em>Tabla 1: Requisitos del proyecto</em></p>
+
+## 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 |
+
+<p align="center"><em>Tabla 2: Caso de uso modo normal</em></p>
+
+| 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 |
+
+<p align="center"><em>Tabla 3: Caso de uso modo reposo</em></p>
+
+| 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 |
+
+<p align="center"><em>Tabla 4: Caso de uso modo transición</em></p>
+
+| 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 |
+
+<p align="center"><em>Tabla 5: Caso de uso modo falla</em></p>
+
+
+| 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 calibracion del sensor, se vuelve al modo previo |
+
+<p align="center"><em>Tabla 6: Caso de uso modo calibración</em></p>
+
+
+## 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. 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.
+
+<div align="center">
+ <img style="padding: 10px" align=center src="img/diagrama_de_bloques.png" width="85%">
+ <p><em>Figura 2: Diagrama de bloques del proyecto</em></p>
+</div>
+
+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
+prototipando 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 ESP8266
+4. Pulsadores tact switch
+5. Display LCD 16x2
+6. Controlador de temperatura mediante MOSFET y señal PWM
+7. Resistor cerámico de alta potencia para modelar el derretidor de miel
+8. Buzzer de 12mm
+
+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.
diff --git a/img/derretidor_convencional.png b/img/derretidor_convencional.png
Binary files differ.
diff --git a/img/diagrama_de_bloques.png b/img/diagrama_de_bloques.png
Binary files differ.
diff --git a/img/logofiuba.png b/img/logofiuba.png
Binary files differ.