Nueva tarifa eléctrica tres tramos. Calcula tu factura con Nodered e influxDB y REE

Nueva tarifa eléctrica tres tramos. Calcula tu factura con Nodered e influxDB y REE

Entradas recientes

En el capítulo de hoy aprendemos a como utilizar los datos nuevos de la nueva tarifa de 3 tramos con la API de la Red Eléctrica Española. Vamos a ver como introducir los precios dentro de Influxdb gracias a NodeRed

Aquí disponeis del flow de nodered:

[{"id":"ea309d53.9aca9","type":"tab","label":"Red Electrica Española","disabled":false,"info":""},{"id":"a9a5e252.831bd","type":"inject","z":"ea309d53.9aca9","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":120,"y":60,"wires":[["b4745549.54fca8"]]},{"id":"b4745549.54fca8","type":"http request","z":"ea309d53.9aca9","name":"","method":"GET","ret":"obj","paytoqs":"ignore","url":"https://api.esios.ree.es/archives/70/download_json?locale=es","tls":"","persist":false,"proxy":"","authType":"","x":290,"y":60,"wires":[["4cf088a6.060e88"]]},{"id":"4cf088a6.060e88","type":"function","z":"ea309d53.9aca9","name":"Guardar Variable precios energia","func":"temporal=global.get(\"energia_ree\");\nif(temporal===undefined){\n    temporal={};\n}\n\ntemporal[msg.payload.PVPC[0].Dia]=msg.payload;\n\nglobal.set(\"energia_ree\",temporal);\n\n\nreturn msg\n","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":540,"y":60,"wires":[[]]},{"id":"5bc9108.6df11f","type":"mqtt in","z":"ea309d53.9aca9","name":"","topic":"/energia/total","qos":"2","datatype":"auto","broker":"8c0d0ea.2879af","nl":false,"rap":true,"rh":0,"x":120,"y":140,"wires":[["c6ed6122.81404"]]},{"id":"c6ed6122.81404","type":"function","z":"ea309d53.9aca9","name":"guardar energia a base de datos","func":"var potencia, exportado,importado;\n\nenergia_ree=global.get(\"energia_ree\");\nif(energia_ree===undefined){\n    error_en_ree=true;\n}\nelse{\n    error_en_ree=false;\n}\n\npotencia=parseFloat(msg.payload);\n\nif(potencia>0){\n    //importando energia\n    importado=potencia;\n    exportado=0;\n}\nelse{\n    importado=0;\n    exportado=potencia*(-1);\n}\n\n\nfecha = new Date();\n\nhora= fecha.getHours();\nanyo=fecha.getFullYear();\nmes=(\"0\"+(fecha.getMonth()+1)).slice(-2);\ndia=(\"0\"+fecha.getDate()).slice(-2);\nfecha_final=dia+\"/\"+mes+\"/\"+anyo;\n\n\n\nif(error_en_ree==true){\n    pcb=0;\n    cym=0;\n    generado=0.049;\n}\nelse{\n    pcb=parseFloat(energia_ree[fecha_final].PVPC[hora].PCB)/1000;\n    cym=parseFloat(energia_ree[fecha_final].PVPC[hora].CYM)/1000;\n    generado=0.049;\n}\n\n\n\n\n\nsalida = {\n    \"potencia\": potencia,\n    \"importado\": importado,\n    \"exportado\": exportado,\n    \"pvpc_cym\": cym,\n    \"pvpc_pcb\": pcb,\n    \"pvpc_generado\": generado\n}\n\n\nmsg.payload=salida\n\nreturn msg","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":370,"y":140,"wires":[["baf5657e.745ea8"]]},{"id":"baf5657e.745ea8","type":"influxdb out","z":"ea309d53.9aca9","influxdb":"9cf8af75.dedfd","name":"","measurement":"energia_y_precios","precision":"","retentionPolicy":"","database":"database","precisionV18FluxV20":"ms","retentionPolicyV18Flux":"","org":"organisation","bucket":"bucket","x":700,"y":140,"wires":[]},{"id":"8c0d0ea.2879af","type":"mqtt-broker","name":"","broker":"192.168.1.16","port":"1883","clientid":"","usetls":false,"compatmode":false,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""},{"id":"9cf8af75.dedfd","type":"influxdb","hostname":"raspberry.local","port":"8086","protocol":"http","database":"MiCasa","name":"Conexion BBDD","usetls":false,"tls":"","influxdbVersion":"1.x","url":"http://localhost:8086","rejectUnauthorized":true}]

Aquí tenéis la lista de los componentes necesarios para montar tu propia instalación:

¡También te  pueden interesar estos otros vídeos!

Instala el software en la raspberry

Una introducción a NodeRed