{"id":3495,"date":"2025-03-03T19:30:48","date_gmt":"2025-03-03T18:30:48","guid":{"rendered":"https:\/\/domo.rem81.com\/?p=3495"},"modified":"2026-01-15T17:24:28","modified_gmt":"2026-01-15T16:24:28","slug":"photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-3-prevision-de-la-production-solaire","status":"publish","type":"post","link":"https:\/\/domo.rem81.com\/index.php\/2025\/03\/03\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-3-prevision-de-la-production-solaire\/","title":{"rendered":"Photovoltaique-Gestion de mon Syst\u00e8me Solaire Victron avec Node-RED : Partie 3 &#8211; Pr\u00e9vision de la Production Solaire (obsol\u00e8te)"},"content":{"rendered":"\n\n\n\n<h1 class=\"wp-block-heading\">Update:<\/h1>\n\n\n\n<p>Voir mon nouvel article sur le sujet: <\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-domo-rem-81 wp-block-embed-domo-rem-81\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"14EJq1pzeI\"><a href=\"https:\/\/domo.rem81.com\/index.php\/2026\/01\/12\/ha-integrer-et-superviser-un-systeme-victron-dans-home-assistant-configuration-mqtt-v2026\/\">HA-Int\u00e9grer et superviser un syst\u00e8me Victron dans Home Assistant : Configuration MQTT -V2026<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; visibility: hidden;\" title=\"\u00ab\u00a0HA-Int\u00e9grer et superviser un syst\u00e8me Victron dans Home Assistant : Configuration MQTT -V2026\u00a0\u00bb &#8212; Domo Rem81\" src=\"https:\/\/domo.rem81.com\/index.php\/2026\/01\/12\/ha-integrer-et-superviser-un-systeme-victron-dans-home-assistant-configuration-mqtt-v2026\/embed\/#?secret=11hLa0Z2I7#?secret=14EJq1pzeI\" data-secret=\"14EJq1pzeI\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<h1 class=\"wp-block-heading\">Intro<\/h1>\n\n\n\n<p>Sur mon blog domo.rem81.com, je partage mes projets domotiques pour rendre ma maison plus intelligente et \u00e9conome. Apr\u00e8s avoir pr\u00e9sent\u00e9 le flow \u00ab\u00a0<a href=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-1-collecte-des-donnees\/\" data-type=\"link\" data-id=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-1-collecte-des-donnees\/\" target=\"_blank\" rel=\"noreferrer noopener\">Communs<\/a>\u00a0\u00bb pour la collecte des donn\u00e9es g\u00e9n\u00e9rales et le flow \u00ab\u00a0<a href=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-2-gestion-des-batteries\/\" data-type=\"link\" data-id=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-2-gestion-des-batteries\/\" target=\"_blank\" rel=\"noreferrer noopener\">Batteries<\/a>\u00a0\u00bb pour la gestion de ma batterie, je vous pr\u00e9sente aujourd\u2019hui un troisi\u00e8me flow Node-RED, nomm\u00e9 \u00ab\u00a0Pr\u00e9vision production solaire\u00a0\u00bb. Ce flow r\u00e9cup\u00e8re les pr\u00e9visions de production photovolta\u00efque (PV) via l\u2019API VRM de Victron, les traite, et les publie via MQTT pour une int\u00e9gration avec Home Assistant. Ces pr\u00e9visions me permettent d\u2019anticiper ma production d\u2019\u00e9nergie et d\u2019optimiser mes automatisations.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Objectif du flow<\/h1>\n\n\n\n<p>Ce flow \u00ab\u00a0Pr\u00e9vision production solaire\u00a0\u00bb a pour but de r\u00e9cup\u00e9rer les pr\u00e9visions de production PV pour mon onduleur PV et mon contr\u00f4leur MPPT1 via le portail VRM (Victron Remote Management), de calculer une pr\u00e9vision totale, et de publier ces donn\u00e9es via MQTT. Les pr\u00e9visions sont mises \u00e0 jour toutes les heures, me permettant de planifier ma consommation d\u2019\u00e9nergie en fonction de la production attendue.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Le flow Node-RED<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">Code json<\/h2>\n\n\n\n<p>Vous pouvez copier\/coller le fichier .json en Annexe.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Visualisation du flow :<\/h2>\n\n\n\n<p>Voici une capture d\u2019\u00e9cran de mon flow \u00ab\u00a0Pr\u00e9vision production solaire\u00a0\u00bb dans Node-RED, o\u00f9 vous pouvez voir la disposition des n\u0153uds et le flux des donn\u00e9es entre eux :<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"474\" src=\"https:\/\/domo.rem81.com\/wp-content\/uploads\/2025\/03\/image-17-1024x474.png\" alt=\"\" class=\"wp-image-3497\" srcset=\"https:\/\/domo.rem81.com\/wp-content\/uploads\/2025\/03\/image-17-1024x474.png 1024w, https:\/\/domo.rem81.com\/wp-content\/uploads\/2025\/03\/image-17-300x139.png 300w, https:\/\/domo.rem81.com\/wp-content\/uploads\/2025\/03\/image-17-768x356.png 768w, https:\/\/domo.rem81.com\/wp-content\/uploads\/2025\/03\/image-17.png 1069w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Cette capture montre les sous-flux principaux : la r\u00e9cup\u00e9ration des pr\u00e9visions pour l\u2019onduleur PV et le MPPT1 (n\u0153uds <code>vrm-api<\/code>), la conversion des donn\u00e9es (n\u0153uds <code>function<\/code> nomm\u00e9s \u00ab\u00a0Convert et Arrondi\u00a0\u00bb), le calcul de la pr\u00e9vision totale (n\u0153ud <code>function<\/code> nomm\u00e9 \u00ab\u00a0Somme des deux\u00a0\u00bb), et les publications MQTT (n\u0153uds <code>mqtt out<\/code>).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Analyse du flow :<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>D\u00e9clenchement p\u00e9riodique<\/strong> :<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Un n\u0153ud <code>inject<\/code> d\u00e9clenche une action toutes les heures (3600 secondes), avec un d\u00e9marrage initial apr\u00e8s 30 secondes. Cela permet de mettre \u00e0 jour les pr\u00e9visions r\u00e9guli\u00e8rement.<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Pr\u00e9vision de l\u2019onduleur PV<\/strong> :<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Un n\u0153ud <code>vrm-api<\/code> r\u00e9cup\u00e8re la pr\u00e9vision de production de l\u2019onduleur PV (<code>vrm_pv_inverter_yield_fc<\/code>) via l\u2019API VRM pour mon site (ID 223181).<\/li>\n\n\n\n<li>La valeur est extraite, convertie de Wh \u00e0 kWh, arrondie, et publi\u00e9e sur le topic <code>mp2\/prediction\/prod_onduleur<\/code>.<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Pr\u00e9vision du MPPT1<\/strong> :<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Un autre n\u0153ud <code>vrm-api<\/code> r\u00e9cup\u00e8re la pr\u00e9vision de production du MPPT1 (<code>vrm_pv_charger_yield_fc<\/code>).<\/li>\n\n\n\n<li>La valeur est extraite, convertie de Wh \u00e0 kWh, arrondie, et publi\u00e9e sur le topic <code>mp2\/prediction\/prod_mppt1<\/code>.<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Pr\u00e9vision totale<\/strong> :<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Un n\u0153ud <code>function<\/code> additionne les deux pr\u00e9visions (onduleur PV et MPPT1), convertit le total en kWh, et arrondit.<\/li>\n\n\n\n<li>Le r\u00e9sultat est publi\u00e9 sur le topic <code>mp2\/prediction\/prod_total<\/code> avec un QoS de 2 et un message conserv\u00e9 (<code>retain: true<\/code>), et envoy\u00e9 \u00e0 un autre flow via un n\u0153ud <code>link out<\/code>.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">D\u00e9tails techniques :<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Conversion de Wh \u00e0 kWh<\/strong> : Les scripts suivants convertissent les pr\u00e9visions de Wh \u00e0 kWh et arrondissent :<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>  let p = flow.get('previmo'); \/\/ ou 'previmppt1' pour le MPPT1\n  var sum = 0;\n  sum = (p \/ 1000).toFixed(0); \/\/ Conversion en kWh et arrondi\n  msg.payload = (sum);\n  return &#091;msg];<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Calcul de la pr\u00e9vision totale<\/strong> : Le script suivant additionne les deux pr\u00e9visions :<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>  let p = flow.get('previmo');\n  let c = flow.get('previmppt1');\n  var sum = 0;\n  sum = ((p + c) \/ 1000).toFixed(0); \/\/ Somme et conversion en kWh\n  msg.payload = (sum);\n  return &#091;msg];<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Brokers MQTT<\/strong> : Les donn\u00e9es sont publi\u00e9es via le broker \u00ab\u00a0MQTTHA\u00a0\u00bb (<code>192.168.0.37:1883<\/code>) pour une int\u00e9gration avec Home Assistant.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Interactions avec les flows \u00ab\u00a0Communs\u00a0\u00bb et \u00ab\u00a0Batteries\u00a0\u00bb :<\/h2>\n\n\n\n<p>Ce flow est compl\u00e9mentaire aux flows pr\u00e9c\u00e9dents :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Le flow \u00ab\u00a0<a href=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-1-collecte-des-donnees\/\" data-type=\"link\" data-id=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-1-collecte-des-donnees\/\" target=\"_blank\" rel=\"noreferrer noopener\">Communs<\/a>\u00a0\u00bb fournit les donn\u00e9es en temps r\u00e9el de la production PV (<code>mp2\/multiplus2\/prod_totale<\/code>), que je peux comparer avec les pr\u00e9visions de ce flow.<\/li>\n\n\n\n<li>Le flow \u00ab\u00a0<a href=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-2-gestion-des-batteries\/\" data-type=\"link\" data-id=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-2-gestion-des-batteries\/\" target=\"_blank\" rel=\"noreferrer noopener\">Batteries<\/a>\u00a0\u00bb fournit l\u2019\u00e9tat de charge (SOC) de ma batterie (<code>mp2\/batteries\/soc<\/code>), que je peux utiliser avec les pr\u00e9visions pour planifier des automatisations, comme charger la batterie en cas de faible production pr\u00e9vue.<\/li>\n\n\n\n<li>Un n\u0153ud <code>link out<\/code> (<code>out_prod_total<\/code>) envoie la pr\u00e9vision totale \u00e0 un autre flow (non d\u00e9taill\u00e9 ici), probablement pour des automatisations ou des alertes.<\/li>\n<\/ul>\n\n\n\n<h1 class=\"wp-block-heading\">Int\u00e9gration avec Home Assistant<\/h1>\n\n\n\n<p>Ce flow envoie les pr\u00e9visions via MQTT \u00e0 Home Assistant (broker \u00e0 <code>192.168.0.37:1883<\/code>). Par exemple, le topic <code>mp2\/prediction\/prod_total<\/code> me permet d\u2019afficher la production PV pr\u00e9vue pour la journ\u00e9e dans un tableau de bord, ce qui m\u2019aide \u00e0 anticiper ma consommation ou \u00e0 planifier des charges.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Pourquoi Node-RED ?<\/h1>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Simplicit\u00e9<\/strong> : Je peux interroger l\u2019API VRM et traiter les donn\u00e9es sans \u00e9crire de code complexe.<\/li>\n\n\n\n<li><strong>Flexibilit\u00e9<\/strong> : Les n\u0153uds VRM s\u2019int\u00e8grent parfaitement avec MQTT et Home Assistant.<\/li>\n\n\n\n<li><strong>Visuel<\/strong> : L\u2019interface de Node-RED me permet de voir clairement le flux des donn\u00e9es.<\/li>\n<\/ul>\n\n\n\n<h1 class=\"wp-block-heading\">Palettes Utilis\u00e9es<\/h1>\n\n\n\n<p>Pour reproduire ce flow, vous aurez besoin d\u2019installer les palettes suivantes dans Node-RED :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>node-red-contrib-victron<\/strong> : Fournit les n\u0153uds pour interagir avec les syst\u00e8mes Victron Energy, y compris le n\u0153ud <code>vrm-api<\/code> pour les pr\u00e9visions. Installez-la via le gestionnaire de palettes de Node-RED ou avec la commande :<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>  npm install node-red-contrib-victron<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>node-red-node-mqtt<\/strong> : Fournit les n\u0153uds MQTT (<code>mqtt out<\/code>, <code>mqtt-broker<\/code>). Cette palette est g\u00e9n\u00e9ralement incluse par d\u00e9faut dans Node-RED, mais si elle est absente, vous pouvez l\u2019installer avec :<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>  npm install node-red-node-mqtt<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>N\u0153uds de base (Core)<\/strong> : Les n\u0153uds comme <code>inject<\/code>, <code>debug<\/code>, <code>function<\/code>, <code>change<\/code>, <code>comment<\/code>, et <code>link out<\/code> sont inclus par d\u00e9faut dans Node-RED.<\/li>\n<\/ul>\n\n\n\n<p><strong>Note<\/strong> : Pour utiliser le n\u0153ud <code>vrm-api<\/code>, vous devez configurer une connexion au portail VRM avec un jeton API valide (obtenu depuis votre compte VRM).<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Conclusion<\/h1>\n\n\n\n<p>Ce flow \u00ab\u00a0Pr\u00e9vision production solaire\u00a0\u00bb compl\u00e8te mon syst\u00e8me de gestion d\u2019\u00e9nergie solaire avec Victron Energy en me fournissant des pr\u00e9visions de production PV. Combin\u00e9 aux flows \u00ab\u00a0Communs\u00a0\u00bb et \u00ab\u00a0Batteries\u00a0\u00bb, il me permet d\u2019avoir une vue d\u2019ensemble de ma production actuelle et future, essentielle pour optimiser ma consommation et mes automatisations. Dans un prochain article, je partagerai d\u2019autres flows, comme \u00ab\u00a0Gestion des charges programm\u00e9es\u00a0\u00bb, pour montrer comment j\u2019utilise ces donn\u00e9es pour automatiser ma maison. Si vous avez un syst\u00e8me Victron ou utilisez Node-RED, ce projet pourrait vous inspirer. Des questions ou des id\u00e9es ? Laissez un commentaire sur domo.rem81.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Liste des publications en lien avec cet article:<\/h1>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-1-collecte-des-donnees\/\" data-type=\"link\" data-id=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-1-collecte-des-donnees\/\" target=\"_blank\" rel=\"noreferrer noopener\">Partie 1: Collecte des donn\u00e9es<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-2-gestion-des-batteries\/\" data-type=\"link\" data-id=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-2-gestion-des-batteries\/\" target=\"_blank\" rel=\"noreferrer noopener\">Partie 2: Gestion des batteries<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-3-prevision-de-la-production-solaire\/\" data-type=\"link\" data-id=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-3-prevision-de-la-production-solaire\/\" target=\"_blank\" rel=\"noreferrer noopener\">Partie 3: Pr\u00e9vision de la production solaire<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-4-calcul-du-niveau-de-charge-batterie\/\" data-type=\"link\" data-id=\"https:\/\/domo.rem81.com\/index.php\/2025\/03\/27\/photovoltaique-gestion-de-mon-systeme-solaire-victron-avec-node-red-partie-4-calcul-du-niveau-de-charge-batterie\/\" target=\"_blank\" rel=\"noreferrer noopener\">Partie 4: Calcul du Niveau de charge batterie<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/domo.rem81.com\/index.php\/2025\/04\/07\/ha-integrer-et-superviser-un-systeme-victron-dans-home-assistant-configuration-mqtt-modbus-et-automatisation-vers-node-red\/\" data-type=\"link\" data-id=\"https:\/\/domo.rem81.com\/index.php\/2025\/04\/07\/ha-integrer-et-superviser-un-systeme-victron-dans-home-assistant-configuration-mqtt-modbus-et-automatisation-vers-node-red\/\" target=\"_blank\" rel=\"noreferrer noopener\">HA-Int\u00e9grer et superviser un syst\u00e8me Victron dans Home Assistant<\/a><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Annexe: Code Json<\/h1>\n\n\n\n<pre class=\"wp-block-code\"><code>&#091;\n    {\n        \"id\": \"2955345bfd5612a1\",\n        \"type\": \"tab\",\n        \"label\": \"Prevision production solaire\",\n        \"disabled\": false,\n        \"info\": \"\",\n        \"env\": &#091;]\n    },\n    {\n        \"id\": \"36c89ae65ba3a77f\",\n        \"type\": \"vrm-api\",\n        \"z\": \"2955345bfd5612a1\",\n        \"vrm\": \"88310ce625b06ec6\",\n        \"name\": \"production PV inverter\",\n        \"idSite\": \"223181\",\n        \"installations\": \"stats\",\n        \"attribute\": \"vrm_pv_inverter_yield_fc\",\n        \"stats_interval\": \"days\",\n        \"stats_start\": \"0\",\n        \"stats_end\": \"86400\",\n        \"verbose\": false,\n        \"x\": 140,\n        \"y\": 140,\n        \"wires\": &#091;\n            &#091;\n                \"ce1f0fbcebdff6f0\"\n            ]\n        ]\n    },\n    {\n        \"id\": \"6979d1aeb87544f0\",\n        \"type\": \"debug\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"debug 1\",\n        \"active\": true,\n        \"tosidebar\": true,\n        \"console\": false,\n        \"tostatus\": true,\n        \"complete\": \"payload\",\n        \"targetType\": \"msg\",\n        \"statusVal\": \"payload\",\n        \"statusType\": \"auto\",\n        \"x\": 540,\n        \"y\": 80,\n        \"wires\": &#091;]\n    },\n    {\n        \"id\": \"1dca4ea24c4642db\",\n        \"type\": \"inject\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"\",\n        \"props\": &#091;\n            {\n                \"p\": \"payload\"\n            },\n            {\n                \"p\": \"topic\",\n                \"vt\": \"str\"\n            }\n        ],\n        \"repeat\": \"3600\",\n        \"crontab\": \"\",\n        \"once\": true,\n        \"onceDelay\": \"30\",\n        \"topic\": \"\",\n        \"payload\": \"\",\n        \"payloadType\": \"date\",\n        \"x\": 110,\n        \"y\": 320,\n        \"wires\": &#091;\n            &#091;\n                \"e65bd001b5bac48d\",\n                \"36c89ae65ba3a77f\"\n            ]\n        ]\n    },\n    {\n        \"id\": \"ce1f0fbcebdff6f0\",\n        \"type\": \"change\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"Extrac Previ MO\",\n        \"rules\": &#091;\n            {\n                \"t\": \"set\",\n                \"p\": \"previmo\",\n                \"pt\": \"flow\",\n                \"to\": \"payload&#091;\\\"totals\\\"]&#091;\\\"vrm_pv_inverter_yield_fc\\\"]\",\n                \"tot\": \"msg\"\n            }\n        ],\n        \"action\": \"\",\n        \"property\": \"\",\n        \"from\": \"\",\n        \"to\": \"\",\n        \"reg\": false,\n        \"x\": 340,\n        \"y\": 140,\n        \"wires\": &#091;\n            &#091;\n                \"d17c8b59cf0651c2\",\n                \"a234285b07af8d7e\",\n                \"6979d1aeb87544f0\"\n            ]\n        ]\n    },\n    {\n        \"id\": \"57d48a7eda9ece0c\",\n        \"type\": \"debug\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"Previ MO\",\n        \"active\": true,\n        \"tosidebar\": true,\n        \"console\": false,\n        \"tostatus\": true,\n        \"complete\": \"payload\",\n        \"targetType\": \"msg\",\n        \"statusVal\": \"payload\",\n        \"statusType\": \"auto\",\n        \"x\": 940,\n        \"y\": 140,\n        \"wires\": &#091;]\n    },\n    {\n        \"id\": \"a95d3adb1422d8aa\",\n        \"type\": \"mqtt out\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"Previ. prod. MO\",\n        \"topic\": \"mp2\/prediction\/prod_onduleur\",\n        \"qos\": \"\",\n        \"retain\": \"\",\n        \"respTopic\": \"\",\n        \"contentType\": \"\",\n        \"userProps\": \"\",\n        \"correl\": \"\",\n        \"expiry\": \"\",\n        \"broker\": \"a89b02435258ed38\",\n        \"x\": 780,\n        \"y\": 160,\n        \"wires\": &#091;]\n    },\n    {\n        \"id\": \"e65bd001b5bac48d\",\n        \"type\": \"vrm-api\",\n        \"z\": \"2955345bfd5612a1\",\n        \"vrm\": \"88310ce625b06ec6\",\n        \"name\": \"Production MPPT1\",\n        \"idSite\": \"223181\",\n        \"installations\": \"stats\",\n        \"attribute\": \"vrm_pv_charger_yield_fc\",\n        \"stats_interval\": \"days\",\n        \"stats_start\": \"0\",\n        \"stats_end\": \"86400\",\n        \"verbose\": false,\n        \"x\": 130,\n        \"y\": 240,\n        \"wires\": &#091;\n            &#091;\n                \"2c61edb84c53d946\"\n            ]\n        ]\n    },\n    {\n        \"id\": \"29b7e4c45b1b6946\",\n        \"type\": \"debug\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"Previ MPPT1\",\n        \"active\": true,\n        \"tosidebar\": true,\n        \"console\": false,\n        \"tostatus\": true,\n        \"complete\": \"payload\",\n        \"targetType\": \"msg\",\n        \"statusVal\": \"payload\",\n        \"statusType\": \"auto\",\n        \"x\": 970,\n        \"y\": 240,\n        \"wires\": &#091;]\n    },\n    {\n        \"id\": \"2c61edb84c53d946\",\n        \"type\": \"change\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"Extrac Previ MPPT1\",\n        \"rules\": &#091;\n            {\n                \"t\": \"set\",\n                \"p\": \"previmppt1\",\n                \"pt\": \"flow\",\n                \"to\": \"payload&#091;\\\"records\\\"]&#091;\\\"vrm_pv_charger_yield_fc\\\"]&#091;0]&#091;1]\",\n                \"tot\": \"msg\"\n            }\n        ],\n        \"action\": \"\",\n        \"property\": \"\",\n        \"from\": \"\",\n        \"to\": \"\",\n        \"reg\": false,\n        \"x\": 360,\n        \"y\": 240,\n        \"wires\": &#091;\n            &#091;\n                \"908239da70cb99f4\",\n                \"a234285b07af8d7e\",\n                \"5a3fa930636a955a\"\n            ]\n        ]\n    },\n    {\n        \"id\": \"5a3fa930636a955a\",\n        \"type\": \"debug\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"debug 5\",\n        \"active\": true,\n        \"tosidebar\": true,\n        \"console\": false,\n        \"tostatus\": true,\n        \"complete\": \"payload\",\n        \"targetType\": \"msg\",\n        \"statusVal\": \"payload\",\n        \"statusType\": \"auto\",\n        \"x\": 320,\n        \"y\": 320,\n        \"wires\": &#091;]\n    },\n    {\n        \"id\": \"c02172de44eb3d7e\",\n        \"type\": \"mqtt out\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"Predi. prod. MPPT1\",\n        \"topic\": \"mp2\/prediction\/prod_mppt1\",\n        \"qos\": \"\",\n        \"retain\": \"\",\n        \"respTopic\": \"\",\n        \"contentType\": \"\",\n        \"userProps\": \"\",\n        \"correl\": \"\",\n        \"expiry\": \"\",\n        \"broker\": \"a89b02435258ed38\",\n        \"x\": 790,\n        \"y\": 240,\n        \"wires\": &#091;]\n    },\n    {\n        \"id\": \"d7196b1374d9bb8c\",\n        \"type\": \"debug\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"Previ Total\",\n        \"active\": true,\n        \"tosidebar\": true,\n        \"console\": false,\n        \"tostatus\": true,\n        \"complete\": \"true\",\n        \"targetType\": \"full\",\n        \"statusVal\": \"mo\",\n        \"statusType\": \"auto\",\n        \"x\": 890,\n        \"y\": 420,\n        \"wires\": &#091;]\n    },\n    {\n        \"id\": \"7fb429cb111076e4\",\n        \"type\": \"mqtt out\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"Prediction prod total\",\n        \"topic\": \"mp2\/prediction\/prod_total\",\n        \"qos\": \"2\",\n        \"retain\": \"true\",\n        \"respTopic\": \"\",\n        \"contentType\": \"\",\n        \"userProps\": \"\",\n        \"correl\": \"\",\n        \"expiry\": \"\",\n        \"broker\": \"a89b02435258ed38\",\n        \"x\": 900,\n        \"y\": 360,\n        \"wires\": &#091;]\n    },\n    {\n        \"id\": \"581108ee019398cd\",\n        \"type\": \"link out\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"out_prod_total\",\n        \"mode\": \"link\",\n        \"links\": &#091;\n            \"6713fa86a6f1eacd\"\n        ],\n        \"x\": 855,\n        \"y\": 480,\n        \"wires\": &#091;]\n    },\n    {\n        \"id\": \"3a3c787b4152e6e1\",\n        \"type\": \"comment\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"Estimation de la production PV\",\n        \"info\": \"\",\n        \"x\": 490,\n        \"y\": 40,\n        \"wires\": &#091;]\n    },\n    {\n        \"id\": \"a234285b07af8d7e\",\n        \"type\": \"function\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"Somme des deux\",\n        \"func\": \"let p = flow.get('previmo');\\nlet c = flow.get('previmppt1');\\nvar sum=0;\\n\\nsum = ((p+c)\/1000).toFixed(0);\\n\\nmsg.payload = (sum);\\nreturn &#091;msg]\\n\",\n        \"outputs\": 1,\n        \"timeout\": \"\",\n        \"noerr\": 0,\n        \"initialize\": \"\",\n        \"finalize\": \"\",\n        \"libs\": &#091;],\n        \"x\": 530,\n        \"y\": 400,\n        \"wires\": &#091;\n            &#091;\n                \"7fb429cb111076e4\",\n                \"d7196b1374d9bb8c\",\n                \"581108ee019398cd\"\n            ]\n        ]\n    },\n    {\n        \"id\": \"d17c8b59cf0651c2\",\n        \"type\": \"function\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"Convert et Arrondi\",\n        \"func\": \"let p = flow.get('previmo')\\nvar sum=0;\\nsum = (p\/1000).toFixed(0);\\n\\nmsg.payload = (sum);\\nreturn &#091;msg]\\n\\n\\n\",\n        \"outputs\": 1,\n        \"timeout\": \"\",\n        \"noerr\": 0,\n        \"initialize\": \"\",\n        \"finalize\": \"\",\n        \"libs\": &#091;],\n        \"x\": 570,\n        \"y\": 140,\n        \"wires\": &#091;\n            &#091;\n                \"a95d3adb1422d8aa\",\n                \"57d48a7eda9ece0c\"\n            ]\n        ]\n    },\n    {\n        \"id\": \"908239da70cb99f4\",\n        \"type\": \"function\",\n        \"z\": \"2955345bfd5612a1\",\n        \"name\": \"Convert et Arrondi\",\n        \"func\": \"let p = flow.get('previmo')\\nvar sum=0;\\nsum = (p\/1000).toFixed(0);\\n\\nmsg.payload = (sum);\\nreturn &#091;msg]\\n\\n\\n\",\n        \"outputs\": 1,\n        \"timeout\": \"\",\n        \"noerr\": 0,\n        \"initialize\": \"\",\n        \"finalize\": \"\",\n        \"libs\": &#091;],\n        \"x\": 570,\n        \"y\": 240,\n        \"wires\": &#091;\n            &#091;\n                \"c02172de44eb3d7e\",\n                \"29b7e4c45b1b6946\"\n            ]\n        ]\n    },\n    {\n        \"id\": \"88310ce625b06ec6\",\n        \"type\": \"config-vrm-api\",\n        \"name\": \"vrm_remy\",\n        \"token\": \"882b24ed02ff97334557ecc6b4f5a7ba61042ac40a8a361a09c9b725fb146fd9\"\n    },\n    {\n        \"id\": \"a89b02435258ed38\",\n        \"type\": \"mqtt-broker\",\n        \"name\": \"MQTTHA\",\n        \"broker\": \"192.168.0.37\",\n        \"port\": \"1883\",\n        \"clientid\": \"\",\n        \"autoConnect\": true,\n        \"usetls\": false,\n        \"protocolVersion\": \"4\",\n        \"keepalive\": \"60\",\n        \"cleansession\": true,\n        \"birthTopic\": \"\",\n        \"birthQos\": \"0\",\n        \"birthPayload\": \"\",\n        \"birthMsg\": {},\n        \"closeTopic\": \"\",\n        \"closeQos\": \"0\",\n        \"closePayload\": \"\",\n        \"closeMsg\": {},\n        \"willTopic\": \"\",\n        \"willQos\": \"0\",\n        \"willPayload\": \"\",\n        \"willMsg\": {},\n        \"userProps\": \"\",\n        \"sessionExpiry\": \"\"\n    }\n]<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Update: Voir mon nouvel article sur le sujet: Intro Sur mon blog domo.rem81.com, je partage mes projets domotiques pour rendre ma maison plus intelligente et \u00e9conome. Apr\u00e8s avoir pr\u00e9sent\u00e9 le &hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,6],"tags":[65,64,66,63],"class_list":["post-3495","post","type-post","status-publish","format-standard","hentry","category-homeassistant","category-photovoltaique","tag-cerbogx","tag-multiplus2","tag-nodered","tag-victron"],"_links":{"self":[{"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/posts\/3495","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/comments?post=3495"}],"version-history":[{"count":7,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/posts\/3495\/revisions"}],"predecessor-version":[{"id":4284,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/posts\/3495\/revisions\/4284"}],"wp:attachment":[{"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/media?parent=3495"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/categories?post=3495"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/tags?post=3495"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}