PvMonit – Monitoring de mon installation photovoltaïque autonome

Cet article fait suite à la réalisation de mon installation électrique solaire autonome. Je suis très content de celle-ci, seulement j’ai un grand besoin de maîtrise, et ne pas savoir tout ce qui se passait dans ces petites boîtes bleues me taraudait… Il fallait que je monitor. Coup de chance, les appareils Victron que j’ai installés peuvent se connecter à un ordinateur avec les câbles VE Direct USB.

En bon libriste que je suis, j’ai vite découvert OpenEnergyMonitor project. J’ai failli craquer pour un emonPi – Solar PV mais ça ne correspondait pas complètement à mes contraintes. J’ai donc pris mes petits doigts et j’ai pondu PvMonit.

PvMonit C’est quoi ?

PvMonit c’est donc un petit logiciel de monitoring photovoltaïque pour matériel Victron compatible Ve.direct (USB), particulièrement adapté pour les installations autonomes. Il permet une vue « en direct » et un export de l’historique vers emoncms (une branche d’OpenEnergyMonitor project).

Exemple d’usage de PvMonit (le mien) : je dispose d’un RaspberryPi (mini ordinateur qui ne consomme que ~3W), mes appareils Victron (MPTT, BMV) sont connectés avec des câbles VE.Direct USB. PvMonit est installé sur ce RaspberryPi et me permet :

  • D’afficher les informations en temps réel sur une page web (local)
    • Une copie de cette page est faite toutes les heures (si la connexion internet est allumée) et est accessible ici : http://demo.zici.fr/PvMonit/
  • De collecter les données toutes les X minutes et les expédier vers emoncms quand internet est là (le wifi n’étant pas toujours allumé)

Des images :

Installation de PvMonit

Le matériel

Il vous faudra pour suivre ce tuto :

  • Un ordinateur faible consommation configuré sous Debian ou un dérivé type Ubuntu/Raspbian (j’ai fait un article sur l’installation de mon Raspberry PI) 68€ (d’occasion avec coque, ventilateur, carte SD)
  • Les câbles Ve.Direct USB connectés à vos appareils 30€ (x3 car 3 appareils à connecter)
  • En option :
    • Une sonde de température USB pour contrôler la température du local où vivent les batteries. J’utilise « thermomètre USB TEMPer » qui coûte entre 5 et 20€, (ils en parlent ici)
    • Une pince ampèremètre USB pour contrôler la consommation de l’habitat. J’utilise la Aviosys 8870 à 27€ quand même, mais il ne semble pas y avoir beaucoup de concurrence pour ce type de produit… (j’en parle ici)

Voici le schéma de mon installation avec le câblage pour PvMonit incorporé :

pvmonit-cablage

Et voilà dans la vraie vie :

Le logiciel : Installation de PvMonit

Requis

  • Linux (le tutoriel ci-dessous est prévu pour Debian/Rasbian/Ubuntu like)
  • PHP (5.5-5.6 recomended)
  • Lighttpd/Apache (ou autre serveur web)
  • Perl
  • Python

Installation

PvMonit dispose de deux fonctions dissociées et indépendantes que je vais distinguer :

  • Interface en temps réel
  • Export vers emoncms

Il y a bien sûr une base commune :

La base / le socle

Installation de PvMonit via le dépôt git et de ses dépendances :

Vous pouvez maintenant éditer le fichier config.php à votre guise !

Test du script vedirect.py : branchez un appareil Victron avec un Câble Ve.Direct USB et voici un exemple de ce que vous devriez obtenir (Ici un MPTT BlueSolare branché sur le ttyUS0)

Pour comprendre chaque valeur, téléchargez la documentation Victron VE Direct Protocol documentation : https://www.victronenergy.fr/support-and-downloads/whitepapers

Interface web en temps réel

Installation des dépendances :

Configuration du serveur http, avec le fichier /etc/lighttpd/lighttpd.conf :

On applique la configuration :

On ajoute ensuite la possibilité à l’utilisateur exécutant lighttpd de lancer les script avec sudo sans mot de passe :

Lancer la commande :

Ajouter la ligne suivante :

C’est terminé, vous pouvez vous connecter sur votre IP local pour joindre votre serveur web :

Export vers emoncms

Connectez-vous à votre interface emoncms hébergée ou créez un compte sur emoncms.org et rendez-vous sur la page « Input api » https://emoncms.org/input/api :

emoncms_api

Récupérez la valeur « Accès en écriture » et ajoutez-la dans le fichier de configuration Pvmonit /opt/PvMonit/config.php :

Création d’un utilisateur dédié avec pouvoir restreint

Installation des dépendances :

On ajoute ensuite la possibilité à l’utilisateur exécutant l’export de lancer les scripts avec sudo sans mot de passe :

Lancer la commande :

Ajouter la ligne suivante :

Test de collecte :

Test d’envoi des données :

Mettre les scripts en tâche planifiée

Ajouter :

Je n’explique pas ici comment configurer emoncms, les flux pour obtenir de beaux dashboard, je vous laisse lire la documentation

Voici, pour exemple, mon dashboard : http://emoncms.mercereau.info/dashboard/view?id=1

Sonde température (option)

J’utilise la sonde thermomètre USB TEMPer, cette sonde fonctionne avec le logiciel temperv14 qui est plutôt simple à installer

Test de la sonde :

Ajout de celle-ci dans le fichier /opt/PvMonit/config.php :

Autres documentations à propos de cette sonde :

Pince ampèremétrique (option)

J’utilise la pince ampèremétrique USB Aviosys 8870 pour mesurer ma consommation électrique.

Le petit script perl (/opt/PvMonit/bin/ampermetre.pl) est très simple pour lire la pince ampèremétrique, qui sera branchée en USB et apparaîtra dans votre système sur le port /dev/ttyACM0

Celui-ci dépend de la librairie serialport :

Test : :

Ajout de celle-ci dans le fichier /opt/PvMonit/config.php :

Documentation

Voilà voilà, bon courage !

Installation électrique solaire autonome – Mise en œuvre

La concrétisation de l’étude (voir l’article Installation électrique solaire autonome – Étude), c’est la mise en œuvre.

Les supports

Lorsque j’ai fais ma terrasse en palettes, je me suis retrouvé avec beaucoup de bastaings, c’est ceux-ci qui m’ont servi à fabriquer les triangles de mes supports. L’écartement à été maintenu avec des planches provisoirement placées. Le résultat final n’est pas encore connu :-/ (j’ai pas terminé quoi)

Comme annoncé dans l’étude, l’inclinaison va être de 66° :

L’installation sera au sol, au départ je voulais fabriquer un support pour  optimiser l’angle d’inclinaison au plus pertinent selon ma localisation.  Après réflexion ça ne me semble pas pertinent. il faut que je mette l’inclinaison optimum pour le mois le moins ensoleillé, soit l’hiver. L’été je serai de toute façon en excédent de production […] Le résultat, pour moi, donne un angle de 66° au mois de janvier, qui est le pire des mois niveau ensoleillement (période ou l’inclinaison va donc être plus décisive). Je vais donc choisir cet angle de 66°

Le niveau a été fait avec un niveau à eau, les supports sont posés sur des cales de différentes hauteurs. Des piquets de bois enfoncés dans le sol à l’arrière des supports vont être solidarisés avec ceux-ci pour éviter le basculement par fort vent.

Mise à la terre

Chaque module photovoltaïque va être relié à la terre, je vais me servir de celle-ci pour mon réseau électrique. Si vous vous demandez à quoi sert la mise à la terre des panneaux, la réponse se trouve ici.

La boîte « local technique »

J’ai choisi de mettre une « boîte technique » au plus près des panneaux, de convertir le signal continu en alternatif afin d’éviter les pertes dues au courant continu ainsi que l’achat de grosses sections de câble coûteuses pour faire passer ce même courant continu. Cette solution a pour avantage de ne pas encombrer la yourte et d’offrir la possibilité de déporter la production d’électricité à distance raisonnable de la yourte (pratique si jamais celle-ci est ombragée parce qu’entourée d’arbres par exemple…).

Celle-ci doit être ventilée, isolée & étanche pour que la matériel conserve une durée de vie raisonnable. Selon ce site, il est préconisé de maintenir une température comprise entre 10 & 30° pour maximiser la durée de vie des batteries.

Image

Un petit mot sur la ventilation, deux trappes ont été prévues. La première côté Nord en bas pour l’entrée d’air (car le vent froid vient du Nord) La seconde en haut au Sud pour l’expulsion (aidée l’été par un ventilateur). La chaleur monte, elle sera donc naturellement guidée vers le haut  La grille Nord sera bouchée par l’intérieur l’hiver pour éviter tout risque de gel.

La pente de toit est mise plein ouest (vent dominant) et le débord de toit est de 20cm.

Cette boîte a été principalement construite avec de la récup’ :

  • Isolant liège en plaques de 4cm pour le toit : reste de la construction du planché de la yourte
  • Isolant liège en vrac 2,5cm pour les murs : les mêmes plaques de lièges émiettées (parce que je n’en avais plus suffisamment pour faire 4cm partout)
  • Isolant polystyrène pour le plancher : récupéré dans la poubelle d’un magasin d’électroménager (pile-poil 2,5cm…)
  • Plaque d’OSB pour les murs : des chutes récupérées dans la poubelle d’un menuisier
  • Tôle ondulée : récupérée dans la poubelle du même menuisier
  • 2 trappes de ventilation (10€) grillagées fin et profilées pour que la goûte d’eau reste à l’extérieur.
  • 1 ventilateur USB (9€) – j’avais un convertisseur 230/USB dans un coin
  • Un minuteur journalier analogique (7€)
  • De la visserie (<10€)
  • 2 Charnières (<10€)

Le ventilateur est un ventilateur USB (ça consomme peu) branché sur un adaptateur secteur pour simplifier la mise en œuvre. Il est lui même branché à un minuteur journalier analogique qui permet de couper le ventilateur la nuit et de l’allumer en journée. Ce dispositif sera débranché en hiver car pas nécessaire.

Installation / Câblage

Pour l’achat du matériel je suis passé par une petite entreprise proche de chez moi (airsol44) qui a été de bon conseil, qui a passé du temps à répondre à mes petites interrogations/inquiétudes et qui a eu la gentillesse de me préparer les câbles (sinon il faut acheter une grosse pince ou s’en faire prêter une…)

Voici le schéma de câblage :

schemacablageinstallationphotovoltaiqueautonomeyourteC’est parti :

C’est branché, tout s’est allumé normalement, il n’y avait plus qu’à connecter la yourte dessus et voilà, tchao le nucléaire !

dsc03588

D’ici quelques mois (certainement après l’hiver) je ferai un autre article pour faire des retours d’utilisation.