Mleon escribió: ↑11 May 2019, 01:19
Mleon escribió: ↑09 Mar 2019, 14:12
Mleon escribió: ↑23 Feb 2019, 23:26
CAPITULO 3 - DEFINIENDO RELES Y SUS CONDICIONES ON/OFF
CAPITULO 4 - CONTROL DE EXCEDENTES
CAPITULO 5 - CAPACIDADES GRAFICAS
CAPITULO 6 - USO DE TELEGRAM
En el Brico PVControl+ estuvimos Nikitto y yo viendo opciones para que la Rpi pudiera mandar mensajes (email, Whatsapp...)
Finalmente nos decidimos por usar Telegram por tener varias ventajas:
- Permite usar tanto Movil como PC
- Tiene la posibilidad de crearse y usar un BOT lo que nos permitirá "chatear" con la RPi y por ejm perdile cosas (mándame información, ejecuta el comando tal, etc)
- No necesita IP publica, por lo que se puede usar con datos tipo SIM de movil
Una vez creada la cuenta en Telegram y creado el BOT lo primero que hicimos fue que PVControl+ mandara mensajes periódicos con la información relevante de la FV
A) Mensajes Periódicos
Creamos el programa fvbot_msg.py que se ejecuta desde crontab con la frecuencia que queramos (por defecto cada hora) y nos manda este tipo de información
Telegram_1.JPG
Como se ve, en mi caso se manda cada 30 minutos y nos da información de Vbat,Ibat, Kwh, Temperaturas, estado de relés etc
Para mi esta funcionalidad es bastante útil, dado que podemos ver de un vistazo rápido la situación y evolución del sistema FV en el día
Lógicamente cada cual puede editar el archivo fvbot_msg.py y adaptar la información que quiera que le llegue
Tras el tema de mandar mensajes periódicos, no metimos con el BOT de Telegram, para así poder mandar comandos / recibir información, de la misma forma que se chatea en Whatsapp con alguien pero en este caso "Chateando" con PVControl+
A) Chatear con PVControl+
Para ello se creo un programa llamado fvbot.py y se configuró como servicio para que esté continuamente funcionando
Su misión es estar siempre a la "escucha" y procesar los mensajes que le mandemos
Por tanto lo primero es definir que comandos va a procesar
Nikitto y yo nos inventamos una sintaxis de comandos de este tipo:
- El mensaje debe empezar por #
Lo primero fue implementar algún tipo de ayuda o recordatorio de los comandos disponibles.... lo hicimos con el comando
#?
Telegram_2.JPG
Como se ve, a fecha actual, hay varios tipo de comandos implementados
#i : Nos manda el mismo tipo de información de los mensajes periódicos....pero cuando se lo pidamos
Telegram_3.JPG
#r: Nos da con mas detalle la situación de los relés y ademas nos da una ayuda delos comandos asociados a los relés que se aceptan (apagarlo, encenderlo, ponerlo en modo programación....)
Telegram_4.JPG
Así por ejm si queremos encender o apagar el rele 338 sería:
Telegram_5.JPG
Es verdad que PVControl+ permite cambiar el estado de los reles desde la web, pero esta forma es la que yo mas uso dado que es rápido y además te queda el histórico de los comandos que mandas
#p : Nos sirve para actualizar los valores de configuración que tenemos en la tabla parámetros de la Base de Datos
Telegram_6.JPG
Por ejm nos sirve para actualizar el SOC del sistema si vemos que esta algo desfasado
#h : Dado que tanto Nikitto como yo tenemos un hibrido tipo Voltronic Axpert, implementamos poder mandarle comandos al Híbrido
Para ello simplemente se pone el comando a mandar empezando por #h
Telegram_7.JPG
Como se ve, si se manda un comando que el Híbrido no reconoce, el Híbrido nos manda la respuesta NAKss
Implementamos otra sintaxis con los comandos empezando por /... con la idea de usar la funcionalidad tipo pulsar botones... reconozco que yo la uso poco, por lo que no tengo claro que funcione al 100%
Telegram_8.JPG
Creo que es todo.. si alguien se le ocurre alguna funcionalidad adicional para usar el BOT que avise
Próximo ........ CAPITULO 7 - USANDO MQTT