El sistema fue desarrollado alrededor de una placa STM32 Nucleo F446RE programada en lenguaje C utilizando STM32CubeIDE y FreeRTOS, permitiendo ejecutar múltiples tareas concurrentes para control ambiental, lectura de sensores, interfaz de usuario y comunicación a distancia.
La incubadora regula automáticamente temperatura y humedad utilizando un sensor DHT11. A partir de estas mediciones, implementando una histéresis segun la etapa de incubación, una máquina de estados regula los parametros accionando:
Además se realiza una rotación automática de los huevos mediante un motor DC. Para verificar el funcionamiento del mismo se implementó un encoder capaz de detectar pulsos por revolución.
El sistema contempla múltiples casos de prioridad y alarma implementados en ControlTask.
La interfaz local está compuesta por un display LCD 16x2 con comunicación I2C y un encoder rotativo KY-040 utilizado para navegar por un menú. Desde esta interfaz es posible:
El sistema también incorpora conectividad inalámbrica mediante un ESP32-C3 Super Mini encargado de enviar alertas a través de un bot de Telegram.
Además del desarrollo de software embebido, se diseñó un PCB para la adaptación y distribución de alimentación, y la interconexión entre los distintos módulos electrónicos del sistema.
También se diseñó un gabinete, con el espacio de incubación en sí y para contener la electrónica del dispositivo.
Acceso al codigo fuente, diseños 3D y documentacion se puede encontrar en el siguiente repositorio.