Sistemas de monitoreo climático en red
Se tiene una estación con un sistema redundante de medidas de temperatura y humedad, es decir, cuenta con un sistema principal (maestro) y un sistema de respaldo (esclavo).
Más información de las maquetas aquí
Descripción del problema
- El sistema maestro emitirá datos a la nube siempre que este pueda.
- Cómo medida de seguridad cuando la temperatura del sistema maestro supere un cierto valor (30°C), emitirá una señal de alerta “A” al sistema secundario via ZigBee (protocolo de comunicación) 3 veces con una espera entre mensajes de 3 segundos. Para identificar de manera visual que los sistemas estan en modo alerta, se mostrará un parpadeo en un led rojo (LR, 500ms encendido y 500ms apagado). Si el sistema maestro regresa a rangos normales (<27°C) enviará un mensajes “O” de OK al sistema esclavo para que este deje de enviar datos siguiendo la misma dinámicas, enviar 3 veces con una espera de 3 segundos.
- El sistema esclavo solo emitirá datos a la nube si recibe el mensaje de alerta “A” del maestro, y lo hará hasta recibir el OK “O”, en caso de recibir el OK, dejara de enviar datos.
Tarea
- Construir e implementar en Arduino, MEF o MEFs para cada uno de los dos sistemas (maestro y esclavo) de manera que se cumplan las condiciones presentadas.
Una posible solución
Propuesta MEF del esclavo
- ESLEEP : Estado del esclavo en espera
- EWARN : Estado del esclavo en alerta y emitiendo datos por el maestro o con el maestro
- ROFF : Estado del led rojo apagado
- RON : Estado del led rojo encendido
donde $p$ es la constante de tiempo del parpadeo (500 ms
), $msg$ es la variable donde se guarda el mensaje que llega del maestro, $tr$ es la variable de tiempo relativo para realizar el parpadeo, $P$ es la variable para controlar una MEF desde la otra, $LR$ es el LED Rojo.
Propuesta MEF del maestro
- EOK : Estado del maestro en estado ok, tomando y emitiendo datos
- EWARN : Estado del maestro en alerta, tomando y emitiendo datos
- ROFF : Estado del led rojo apagado
- RON : Estado del led rojo encendido
donde $p$ es la constante de tiempo del parpadeo (500 ms
), $tr$ es la variable de tiempo relativo para realizar el parpadeo, $P$ es la variable para controlar una MEF desde la otra, $LR$ es el LED Rojo, $LG$ es el LED Verde, $te$ tiempo entre emisiones, $e$ es la constante de tiempo entre emisiones (3000 ms
), $C$ es el contador del número de emisiones, $Tmax$ temperatura que generá alerta (30
), $Tmim$ temperatura que regresa el sistema a la normalidad (27
).