Bonjour Mr. le visiteur, si vous lisez ceci, cela signifie que vous n'êtes pas enregistré. Cliquez ici pour vous inscrire en quelques étapes simples, vous pourrez profiter de toutes les fonctionnalités de notre Forum. Vous pourrez évidemment nous faire partager vos connaissances avec nous ! et voir les images ou vidéos postées


Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Ma Borne DIY ETEK EKEPC2-S
#1
Bonjour

J'ouvre ce post pour vous présenter ma petite borne de charge basé sur un contrôleur : ETEK EKEPC2-S   Cool


C'est une borne de recharge 32A Monophasé (évolutive* en Tri) AC pour Véhicule électrique .
*Evolutive : Nécessite le remplacement du contacteur, l'ajout de borne, le changement du cable d'alim et des protections en amont 

J'ai choisi d'utiliser une prise Type 2 avec verrouillage (J'aime pas les câbles qui pendent)

Cette borne est constitué de : 
  • 1x Coffret Etanche IDE 178M 9 Modules 
  • 1x Contrôleur ETEK : EKEPC2-S
  • 1x Contacteur de Puissance 63A Bipolaire ETEK : EKMF6320 (17€)
  • 1x Afficheur Digital D52-2066 (17€)
  • 1x Prise Type 2 
  • 1x Verrou (Lock #21€) 
  • 1x Disjoncteur C2A Schneider Acti9 A9P54602 (Protection du Module ETEK + Afficheur)
  • 1x Presse Etoupe (Diam .. ) pour le câble d'alimentation
  • 1x Presse Etoupe (Diam .. ) pour le Tore de courant et éventuellement la liaison réseau si Filaire
  • 1x Module ELFIN RS485 EE11A (Ethernet) ou EW11A (WIFI)
  • 1xBorne WAGO 2210-1304 Bleu
  • 1xBorne WAGO 2210-1301 Grise
  • 1xBorne WAGO 2210-1307 Vert/Jaune
  • 1xPlaque de Finition Orange WAGO 2010-1392
  • 5xButée WAGO 249-116
  • 1xBorne WAGO 2002-1404 Bleu
  • 1xBorne WAGO 2002-1401 Grise
  • 1xBorne WAGO 2002-1407 Ver/Jaune
  • 1xPlaque de Finition  WAGO 2002-1492

Option : 
  • 1x Afficheur ETEK (LCD SCREEN #21€) , pas sur la photo mais j'en ai que je mettrais pour faire quelques test au début.
  • 1x Tore de Courant pour la fonction DLB (DLB CT #24€) , le capteur est relié via du 2.5² vers le tore qui est sur l'arrivée principale. 
    Note : Si le cable du Tore doit être rallongé, mieux vaut étamer le 2.5², car un embout pour fil souple rentre dans la borne, mais on ne peut plus serrer la vis. Devil

Protection en Amont:

J'ai choisi de mettre le disjoncteur et l'inter différentiel dans mon tableau principal qui se trouve a 6m de la borne.


Voici quelques photo du coffret en cours de finalisation :
  • Préparation du perçage de la Prise T2 sur la face avant
  • Mise en place de la prise T2
  • Ajout d'un rail pour des borne WAGO
  • Mise en place des éléments sur le rail principal
  • Mise sous tension
  • Les protections en amont
  • Le Tore 100A pour la fonction DLB (Note pour Info c'est un tore qui s'ouvre, il peut donc s'insérer sans devoir ouvrir le circuit)
jlm aime ce post


Pièces jointes Image(s)
                                   
Répondre
#2
Lightbulb 
Partie 2 : Module ELFIN EW11A ou EW10A  Surprised

Je suis issue du mon industriel, donc le Modbus, je pratique depuis un petit moment, de nos jours il y a de plus en plus de produit sur le marché a des prix défiant toutes concurrence, alors qu'avant ca coutait un bras. 

Le contrôleur ETEK dispose d'une liaison RS485, qui nous permet ensuite d'établir une liaison via du Modbus-RTU (Liaison 2Fils+0V)
Le contrôleur ETEK peut sortir du 5V

Pour établir la liaison entre le contrôleur et l'installation réseau , on va utiliser un petit Module Elfin-EW11A WIFI-RS485 ou Elfin-EE11A Ethernet-RS485.

J'ai fait mes test avec un module EW11A sur mon bureau, mais maintenant que ma borne est en place, la liaison WIFI avec le module n'étant pas assez bonne je suis passé provisoirement avec un EE11A qui utilise donc un cable réseau RJ45

A noter que l'on peut trouver les modules Elfin sur Alieexpress sous la forme de kit :
-Avec un Connecteur
-Avec un Cable
-Avec support pour montage mural et/ou Rail-Din

Voici des liens pour :
le module EE11A (Actuellement a 14€ environ avec le cable et le support)
Le module EW11A (Actuellement a 17€ environ avec le cable et le support et l'antenne)

    /    

Cablage : 
C'est pas compliqué : On relie la borne A du Module Elfin sur le A du Controleur Etek, B sur B, VCC sur le 5V, et le GND a la Terre (0V)

Mise sous Tension: 
On met sous tension et on doit voir un peu de vie du coté des LED.

Configuration du Module Elfin:
Qui dit Modbus RTU, dit liaison série, du coup j'ai regardé comment installé et configurer le module elfin sur mon PC. 
La joie des port serie, (DB9/DB25, COM1...) que certains jeune ne connaissent peu etre pas   Laughing

A noter : En sortie d'usine le module est configuré pour du Modbus RTU

Option 1: Modbus RTU
Spoiler : Je vous conseille de passer directement a l'option 2, je ne devais pas avoir les idées clair pour tenter cette voie, (la faut aux anti-inflammatoires qui ont bon dos) et j'ai perdu un peu de temps en la suivant.

Comme je voulais tester ca sur mon PC sous Windows 11, cette piste implique d'installer les outil Elfin, I.O.T Service  (300Mo a téléchargé sur un serveur qui doit être branché sur un modeme 56k  [Image: tongueout.gif] )
Le 1er problème c'est que sous Windows 11 il faut désactiver l'isolation du noyau car les drivers ne sont pas signés. Ca nécessite un Redemarrage du PC.
Le 2nd : C'est que je ne sais pas réactiver l'isolation du noyau pour le moment  Devil , il va falloir désinstaller le soft en question et les driver je pense.

IOT Service permet la configuration du module depuis Windows, mais il permet surtout la création d'un Port Serie Virtuel, ils utilisent un driver d'une solution commerciale, le drv en question est un peu vieux je pense d'ou les problemes avec Windows, j'ai idée aussi qu'il n'ont pas du le payer... ?

Voici un exemple d'IOT: 
   


Option 2: Modbus TCP
Le module est capable de répondre a du Modbus TCP puis de le transformé en RTU
Ce mode est du coup plus simple a mettre en oeuvre, car plus besoin de driver coté PC ou autre.

On va d'abord se connecter sur l'interface WEB du module. Il faut connaitre son adresse IP.
Si vous avez un routeur, connecter vous sur l'interface Web de votre routeur et cherchez apres son adresse IP :

Sinon il a des petit soft Advanced IP Scanner qui permet de scanner les IP sur des plages.

Reglage de Base: 
Changement du Mot de passe, et changement du nom du module si besoin (Ca permet de facilité la reconnaissance sur le réseau quand on en a plusieurs)
   

Conseil : Changer le mot de passe pour éviter de laisser admin/admin  Devil

Reglage des paramètres du Porte Serie
   

Reglage des paramètres pour le Modbus TCP:
   

Reboot :
Certains réglages s'appliquent tout de suite et d'autre non, je pense que la partie TCP necessite un reboot
Soit on débranche, soit on est féneant et on fait ca depuis son fauteuil :
   

Test :
Du coup maintenant on peut utiliser n'importe quel soft capable de dialoguer en Modbus TCP.

Si jamais vous voulez interroger tous les registre en même temps, il faut prendre en considération des petites choses :
Le contrôleur ETEK est un peu limité : Il ne répondra pas a des question sur plus 41 Registres en une fois
Il faut donc 2 questions :
  • Question 1 : Adresse 86, Quantité 40
  • Question 2 : Adresse 126, Quantité 41

Si vous utilisez un soft comme Modscan/OpenModscan, il faut ajouter +1 a l'adresse (C'est un truc de vieux ca  Shutup )
   

On peut bien sur aussi utiliser Mthings, j'en ai parlé un peu sur le post de JLM ici 
jlm aime ce post


Pièces jointes Image(s)
   
Répondre
#3
Partie 3 : Node-RED / Modbus / MQTT  [Image: bomb.gif]

EDIT : Il y a quelque capture qui ne sont plus au totalement au gout du jour (La partie Read CSV File a été légèrement modifié, passage du chemin et du nom de fichier en variable par exemple, mais au fond rien de bien méchant)

Mon Introduction :
Je suis issue du monde industriel, je programme habituellement sur automate, j'ai aussi quelque programme a mon actif VB6 ou VB.NET pour le boulot, mais je débute sur HA/NodeRED/MQTT 

Pour info je programme actuellement le plus sous Codesys sur des automates WAGO ou aussi sur Raspberry.
Codesys est un outil de programmation développer par une société allemande et qui vend ensuite son outil a des marques industriel. 

L'avantage de cet outil, c'est qu'il est adopté par plusieurs constructeurs, et que l'on est pas dépaysé lorsque l'on bascule d'un automate a un autre qui utilise Codesys. 
Codesys utilise plusieurs langage : Grafcet/Ladder (Langage Contact)/CFC/FBD (Sorte de Bloc de fonction a la NodeRED  Mad ), et aussi du S.T (Langage Structuré : issue du Pascal)

A noter que de nos jours, de plus en plus d'automate tourne sur des bases linux, ce qui permet aux farbiquants de proposer autre choses a leur client : NodeRED/MQTT peuvent parfois remplacer le Codesys traditionnel par exemple.

Mon installation domotique :
Je sais plus si j'en ai parlé mais mon installation domotique contient :
  • Du KNX (Gestion Eclairage, VR, Meteo, Prise Commandé / PC avec suivi conso
  • Un Automate WAGO (Forcément Kiss )
  • Un superviseur Home Assistant qui tournent sous Proxmox (Pour le moment le Minimum Syndical)
  • PV 
  • Chaudiere en Modbus RTU
  • Gestion Cuve EDP
  • ...


Node-RED:
Je suis en train de regarder comment intégrer ma borne ETEK dans mon install, étant en convalescence je prend un peu de temps pour ca histoire d'apprendre un peu.

Comme j'aime bien faire autrement et que je ne veux pas être lié a HA (on sait jamais) , j'ai envie de procéder comme ca :
  • Communication : Controleur ETEK en Modbus TCP via un module Elfin EE11A ou EW11A
  • La liaison modbus sera gérer sous Node-RED (Node-RED est installé dans un container LXC sous Proxmox, il est donc indépendant de HA)
  • La table de valeur que je veux remonter sera stocker dans MQTT
  • L'ecriture d'un registre pour une Commande ou un Réglage dans le module ETEK se fera uniquement sur Changement d'état
  • L'intégration dans HA se fera en créant un Device MQTT

Je n'ai pas choisi le truc le plus simple pour débuté (enfin avec le cahier des charges que je me suis imposé), 

A la base le programe de Lecture/Ecriture Modbus/MQTT pourrait être très simple.
Mais ... il y a un mais.

Lorsqu'on lit les valeurs sur le Modbus, si ensuite on les publies sur MQTT, derrière vue que l'on est abonné a un Topic qu'on veut aussi pouvoir écrire, on recoit une notif , si je ferme les yeux, du coup ca déclenche une écriture sur le modbus dans mon device.   Devil

Et ca il faut clairement éviter. Car on ne sait pas comment le Device va gérer ca.
Si il est intelligent et que la valeur ne change pas il ne fera rien.
Dans le pire des cas ca fait une ecriture, et une écriture dans de la mémoire non volatile, suivant le type de mémoire et bien on peut rapidement cramer une puce. 
Certains fabriquants s'en sont déjà mordus les doigts.


Du coup il faut que je j'implémente un système d'ecriture "OnChange", je dois donc mémoriser la dernière valeur, et la comparer avec celle que je viens de recevoir.
Sur le papier c'est pas compliqué quand on connait bien un langage de prog, mais là je débute avec Node-RED et c'est pas forcément le truc le plus simple a faire pour débuter...

Du coup je me pose la question aussi de mon Publish vers MQTT, je peux éventuellement faire aussi pareil, un Publish OnChange ou un mix [OnChange ou OnDelay], a voir.

Mon Flow et composé de plusieurs partie : 
Config : Ca me permet de régler quelques variables :
  • iUnitID (Du Controleur ETEK)
  • sBaseTopic : Le Nom du Topic de base dans MQTT
  • bEnableAutoRepeat : Permet de faire un seul Cycle a la fois (Util pour la mise au point)
  • iNumberOfPool : Le nom de Pool (Nb de groupe de question a gérer)

   
Sélection Manuel de Pool a Utiliser :
   

Debut du Cycle : Lecture des Fichiers CSV
J'ai crée 2 fichiers CSV qui contiennent la table de registre du module ETEK.
Les 2 Fichiers sont lu, puis stocker des 2 tableaux variables au niveau du flow.

   

Je mettrais en lien le fichier Google Sheet que j'ai utilisé.

Le fichier contient des lignes de ce type : 

Code :
SR141_Current_working_status
SW109_Max_Output_Charger_PWM

XX140_Software_version
94_kWH_meter_power_address

Une ligne correspond a un Registre, donc un futur Topic coté MQTT
Une ligne est constitué de :
  • 2 Caractères (SR,SW)
  • Le N° du Registre
  • Le Nom du Registre

Les 2 1er Caractère reconnu est interpretté dans le flow sont :
  • SR : Single Read : Lecture Registre 16Bits
  • SW: Single Write : Ecriture Registre 16Bits
  • XX: Pour un registre que je ne veux 
  • Rien : Pour un registre dont je n'ai pas décidé si j'allais le traiter ou pas.

Lecture de Toute la Table du Controleur ETEK : Routine Lancé en continu si AutoRepeat=True
Ce cycle commence a la fin du Cycle de lecture des fichier CSV ou Manuellement

J'ai mis des commentaires dans toutes les fonctions, au final je me retrouve avec pas mal de JS  Gross .
  • La Fonction 1 : Permet definir les Bonne Adresses a envoyer au module Modbus Flex Getter
  • La Fonction 2 : Recupere le Résultat de la Requete Modbus, stocke ou non les valeur recu et les envoie ou non sur MQTT après avoir généré un topic.

Au passage je stocke
-les valeurs lu dans un dossier : "stat"
-les valeurs qui sont ecrites dans MQTT dans un dossier : "cmnd"
Ca facilite la gestion des écritures :

Exemple : HA envoie une commande sur \MonDeviceETEK\cmnd\SW80_CommandeStart
Je la recoi sous NodeRED, je envoie ensuite un Modbus Write sur le registre 80, On obtient alors ensuite si tout va bien une Mise a jour du status
sur le prochain cycle de lecture.
  • La Fonction 3 : Active le pool suivant et lance le cycle suivant

   

Modbus Write OnChange : A la reception d'un Publish depuis MQTT

Dans ce bloc, une seul fonction qui décode le message MQTT
Je vérifie si le message recu doit etre surveillé (SW)
Si j'ai déjà stocké une valeur, si oui alors je la compare. 
J'envoie une écriture sur le Modbus TCP uniquement si la valeur est différente de la précédente.

   

Le Flux Complet v6: [MAJ 25/08/24]
   

Changelog
v6 25/08/24 :
  • Le Nom et le Chemin des 2 Fichiers de Pool sont maintenant en variable dans Config
  • Le/Les Topics MQTT sont dans des variables d'environment du Flow
  • Je json du Flux a été posté.
  • Les 2 Fichiers CSV qui contiennent la Table de registre a intérroger

TODO List :
  • Mise en place du Mode Heure Creuse/Charge Instantanée/Arrêt 
  • Interfaçage avec info Linky
  • Reflexion sur la mise en forme des valeurs : Est-ce que je fais ca ici ou dans HA

Ce flux necessite : 
  • node-red-contrib-config
  • node-red-contrib-modbus
  • node-red-contrib-string

Pour le Faire Fonctionner, ne pas oublier de configurer :
-Noeud Config
-Environment Variable du Flow
-Le Serveur MQTT (Publish et Subscrib)
-Les 2 Fonctions Modbus Flex Getter & Write

Voici les Variables a Configurer :
   
jlm aime ce post


Pièces jointes
.zip   TableEKEPC2 - Pool.zip (Taille : 1.22 Ko / Téléchargements : 70)
.json   EKEPC2v6.json (Taille : 27.04 Ko / Téléchargements : 30)
Répondre
#4
Partie 4 : MQTT

On va parler un peu de MQTT au cas ou.
Si quelqu'un arrive ici sans trop connaitre.

Si vous voulez savoir ce que c'est, je vous laisse voir votre ami Google.  Laughing

MQTT Install
On peut installer et faire tourner MQTT de plusieurs maniere :
  • Directement sous HA
  • Sur une autre machine Linux (Raspberry etc...)
  • Sous Docker
  • Sous LXC

Comme je virtualise tout, et que je n'aime pas trop les choses qui sont intégrés/imbriqués entre elle, j'ai choisi de séparer MQTT de Home Assistant.
  • Mon HA tourne dans une Machine Virtuelle sous Proxmox
  • Mon Node-RED tourne dans un container LXC
  • Mon MQTT tourne lui aussi dans un container LXC

Pourquoi LXC plutôt que Docker, because je maitrise pas du tout docker pour le moment  Laughing 
Les 2 choix ont des avantages et des inconvénients de toute facon. Il n'y a pas de bon ou de mauvais choix, on le fait en fonction de nos affinité déjà.

MQTT Test : 

Pour tester si tout fonctionne correctement on peut utiliser MQTT Explorer

C'est gratuit et dispo sous Windows/Mac/Linux

La 1ere fois on saisi les renseignement du serveur MQTT : IP / Username / Password.

   

Une fois connecté, si on le Flow Node-RED tourne ou que l'on lance un cycle manuellement, les différent Topic vont se créer et ensuite se mettre a jour.
   

Sur la partie droite on faire un publish, après avoir sélectionné le bon topic ou après l'avoir saisi.
Attention a bien choisir le bon format : raw, xml ou json.
Dans mon cas je ne traitre que raw.

On peut donc tester des envois de commande ou s'assurer les topics sont bien Mis a jour par le flow node-red.
jlm aime ce post
Répondre
#5
Partie 5 : MQTT et Home Assistant

Installation/Configuration de MQTT dans HA
En fonction du choix on peut donc choisir de faire tourner MQTT de plusieurs manieres, au niveau de HA cela se traduit par : 
  • Installation du Brocker : Si on veut installer et exécuter le Brocker MQTT dans HA il faut aller dans Parametre/Module Complementaire , sinon on l'install ailleurs sur un Rpi, dans un Docker, ou un CT LXC.
   
  • Ajout de L'intégration : On va ensuite ajouter l'integration MQTT dans Paramètre/Appareil et Service.
    Puis on va configurer MQTT en lui spécifiant l'adresse IP du serveur MQTT, le username et le password défini lors de l'installationBien sur L'adresse IP sera différente suivant l'endroit ou MQTT aura été installé.

On peut voir ici que HA tourne sur une IP et que MQTT est sur une autre IP.
   
jlm aime ce post
Répondre
#6
Partie 6 : Creation du Device dans HA (via MQTT) Surprised

Dès le départ, je mettais fixé comme objectif de créer un device dans Home Assistant, après la borne de charge c'est bien un appareil ? Mad

Heureusement que j'ai jetter un oeil la dessus dès le début, car visiblement cette opération est pas si simple  Surprised

C'est en partie pour ca que j'ai opté pour la solution MQTT.
Car avec MQTT il est possible de créer un device.

Il y a plusieurs methode :
  • Via un fichier YAML
  • Via un system d'autodécouverte

Pour le moment j'ai testé le YAML.

Voici ce que ca donne sur un de mes 1er test :
   


Le Fichier YAML de test :
Code :
mqtt:
  sensor:
    - name: Courant Charge
      state_topic: "MQTT/ChargeurETEKv1/stat/CourantDeCharge"
      unique_id: "EKEPC2-S1_Courant_Charge"
      device_class: current
      unit_of_measurement: "A"
      #unique_id: "hp_1231232_ts_on"
      device:
        name: "ChargeurETEKv1"
        manufacturer: "ETEK"
        model: "EKEPC2-S"
        identifiers: "EKEPC2-S1"
    - name: Status du Chargeur
      state_topic: "MQTT/ChargeurETEKv1/stat/Status"
      unique_id: "EKEPC2-S1_Status_du_Chargeur"
      device:
        identifiers: "EKEPC2-S1"
  switch:
    - name: Lancement Charge
      command_topic: "MQTT/ChargeurETEKv1/cmnd/CmdStartStop"
      state_topic: "MQTT/ChargeurETEKv1/stat/EtatDeLaCharge"
      unique_id: "EKEPC2-S1_Lancement_Charge"
      icon: mdi:ev-station
      payload_on: "1"
      payload_off: "2"
      state_on: "1"
      state_off: "2"
      retain: true
      device:
        identifiers: "EKEPC2-S1"

Mon 1er test Sous HA :
   

Kissing Angel Surprised Smile Blushing Laughing Mad
jlm aime ce post
Répondre
#7
Partie 7 : Reserve



Je pense que j'aurais fini après ca  Laughing
jlm aime ce post
Répondre
#8
Question :

Actuellement il y a un truc que me gache la vie , c'est l'icone de mon device.  Gross
Alors oui il n'apparait peu-etre que là, mais ca me gène, est-ce que quelqu'un a une idée pour le changer  Mad

Kissing Angel Surprised Smile Blushing Laughing Mad Tongueout


   
jlm aime ce post
Répondre
#9
Alors pour l'icône je n'en ai pas la moindre idée. Vu que c'est une création MQTT il indique donc que cela vient de mqtt. Je sens que tu vas chercher et trouver moyen de changer cet icône.

Sinon,  quel tutoriel !
J'ai pu prendre le temps ce matin de le lire avec plaisir.
Je te remercie de l'avoir pris pour le fabriquer.
Super travail.
En effet on sent l'automaticien en arrière plan.

Comme tu le souligne,  on est pas du tout obligé de passer par HA pour faire fonctionner cette borne de recharge.
C'est juste logique par contre lorsque l'on utilise déjà HA pour gérer sa maison.

Concernant l'alimentation du Elfin, j'ai pour ma part utilisé une petite alimentation séparée, cela me rassurait plus que celle du etek.

Concernant les données de l'écran LCD, elles sont chez moi assez pauvre. Certainement dû au fait que j'ai la version 1 du module Etek ?!

Si tu peux à l'occasion mettre une photo de ce que le tient affiche histoire de comparer.

De mon côté je vais monter un mini ecran oled dans le boîtier où je vais afficher les données qu'il me manquent. Je vais mettre à jour mon autre post avec ce nouvel écran.

Je constate que ce sujet intéresse pas mal de personnes et je te remercie d'avoir donné ton retour d'expérience.  Je pense que nos bornes n'ont rien à envie par rapport aux modèles bien plus chères. Il nous manque juste la certification Angel
Jean-Luc
Répondre
#10
Merci

Citation :Concernant l'alimentation du Elfin, j'ai pour ma part utilisé une petite alimentation séparée, cela me rassurait plus que celle du etek.
Alors ma reflexion c'est la suivante : Vue que la voiture charge a l'exterieur, on sait jamais ce qu'il peut se passer en cas d'intemperie prb surtension, orage ...

  1. Si liaison Filaire Ethernet + Alim Externe : Je dois protéger le Cable Reseau + L'alim, dans mon cas une alim 24 est bien dispo a proximité, mais elle sert pour l'automate industriel entre autre.
  2. Si liaison Wifi et Alim via Module ETEK : Je ne dois rien protéger de plus.

Le protection Parafoudre du TD Principal etant sufisament proche pour servir en cas de probleme.


Sinon j'ai mis a jour mon post NodeRED.  Surprised

Le flux a été légèrement ajusté, je l'ai posté ainsi que les fichier CSV qui me servent a interrogé le contrôleur.

Je suis en train maintenant de regarder la partie Home Assistant, mais comme je découvre ... et que je pars de loin c'est pas gagné...

Je me pose aussi une question :
Est-ce que je mettrais pas en forme les valeurs coté NodeRED plutot que de me faire Shutup coté HA  Mad
D'un coté je peux faire ca facilement et rapidement sous NodeRED
De l'autre il y a HA et les Templates que je ne maitrise pas encore et qui risque de me prendre encore pas mal de temps.


Si je fais ca dans NodeRED , je peut le faire de plusieurs façon :
  • Soit je le fais en mode Bourin : Des conditions en dur dans une fonction (Lecture + Ecriture) , si R102 alors , Multiplication / X pour avoir la valeur.
  • Soit je le fais en mode plus sérieux, et je met le facteur de conversion dans le fichier CSV, mais ca va me demander encore qq heures ... 
    Comme il faut aussi que j'avance sur d'autre projet  ,piorité a la 1ere solution Tired )

L'avantage en faisant ca dans NodeRED c'est que la valeur sera directement exploitable n'importe ou, même si je n'utilise pas HA...


TODO List 25/08/24:
  • Mise en place du Mode Heure Creuse/Charge Instantanée/Arrêt 
  • Interfaçage avec info Compteur Linky (pour la partie HC)
  • Réflexion sur la mise en forme des valeurs : Est-ce que je fais ca dans Node-RED ou dans HA (Template je suppose)
  • Optimisation de ma Fct 2 : Actuellement j'ai publie chaque valeur une par une de manière asynchrone via un node.send , il y a peut être mieux ? 
jlm aime ce post
Répondre
#11
Petit Update de mon Flow  Blushing

La v7 [28/08/24
  • Correction de qq petits bugs  Angel
  • Mise a l'echelle des valeur dans NodeRED (Les Valeurs dans MQTT et HA sont donc directement interprétable)  Surprised
  • Mise en place du Mode Heure Creuse (Basé sur des Horaires)
  • Mise en place d'un Mode de Charge Auto/Manu , ChargeAuto en HC ou HC/HP

La Charge est fonctionnelle, les données remonte bien sur MQTT sur le controleur pour l'ecriture et donc sur HA

Probleme
J'ai pour le moment un problème avec la fonction DLB quand j'utilise le Tore d'ETEK 100A/5A, rien ne se passe, aucune valeur lu sur les registres

Je vais faire un autre essai avec un autre controleur, par contre si c'est le CT je n'en ai pas d'autre.
A noter : que le CT est un modèle ouvrable, le prb c'est qu'il vibre pas mal quand il y du courant si les 2 entre fers ne sont pas collé pil poil, le clips plastique ne semble pas faire assez de pression.
Avec un colson c'est un peu mieux mais c'est pas top.

J'ai essayé avec le Tore dans mon tableau avec une rallonge en 2.5² souple dans un 1er temps, avec le tore dans le 2 sens.
Ensuite j'ai essayé avec le Tore directement dans la tableau de ma borne avec le CT sur un fil de la prise T2 juste pour voir idem. RAS  Devil

TODO List 28/08/24:
  • [New] Ajout d'un Mode Manuel pour lancer une Charge (BP Virtuel sur HA et/ou BP Physique sur la Borne)
  • [New] Gestion des Erreur sur Comm Modbus (Si liaison Modbus coupé, la comm ne redémarre pas actuellement vue ma facon de faire actuel)
  • [New] Gestion des Erreur de Comm MQTT (Est-ce qu'il y a qq a faire)
  • [New] Gestion des Erreur sur Deploy : Voir si il y a moyen de faire qq de plus propre pour pas générer des Erreur
  • [New] Intercepter les Erreur Catch ?
  • Interfaçage avec info Compteur Linky (pour la partie HC)
  • Optimisation de ma Fct 2 : Actuellement j'ai publie chaque valeur une par une de manière asynchrone via un node.send , il y a peut être mieux ? 

   
   


Pièces jointes
.json   EKEPC2v7.json (Taille : 44.97 Ko / Téléchargements : 27)
Répondre
#12
Penses tu qu'il soit possible d'ouvrir le boîtier pour vérifier qu'il y a qcq chose derrière la borne du DLB.
Que une CT soit en panne, ça me semble presque impossible. Mais bon, pas assez d'expérience de mon coté dans le temps.

Pour la gestion des erreurs, dans mon flow, tu as dû voir, j'ai utilisé le nœud "catch". Maintenant comme je ne suis pas du tout développeur, je l'ai utilisé à ma manière.

Pour ce qui est d’éteindre la borne via le registre, je n'ai pas besoin de cette fonction, donc ce n'est pas important de mon coté.

Sinon, tu fais un superbe boulot !

Ce soir si j'ai le temps, je poste une petite vidéo sur une extension importante de ma Wallbox.
Jean-Luc
Répondre
#13
(28-08-2024, 11:38 AM)jlm a écrit : Penses tu qu'il soit possible d'ouvrir le boîtier pour vérifier qu'il y a qcq chose derrière la borne du DLB.
Que une CT soit en panne, ça me semble presque impossible. Mais bon, pas assez d'expérience de mon coté dans le temps.
J'avais déjà regardé. Ca me tente un peu, mais je vais attendre de faire encore qq essais.
Le boitier est fermé avec 2 rivets qui semble être traversant sur la largeur, du coup si on les fais sauter on ne pourra plus le fermer correctement.

(28-08-2024, 11:38 AM)jlm a écrit : Pour la gestion des erreurs, dans mon flow, tu as dû voir, j'ai utilisé le nœud "catch". Maintenant comme je ne suis pas du tout développeur, je l'ai utilisé à ma manière.
Oui j'ai vu, faut que je l'apprivoise

J'ai fait une modif qui semble fonctionner.
Pour le moment je ne me sers pas encore du Catch, mais j'ai revu mon systeme de Pooling (d'enchainement des nouveaux messages)
Avant c'était une réponse recu qui me déclencher un nouveau cycle , sauf que si pas de réponse a cause d'une erreur, il n'y a plus rien qui sort du Noeud...
N'etant pas aussi alaise que face a des lignes de prog ... j'ai revu un peu mon flux.

Je déclenche en permanence, mais ce déclenchement est actif uniquement si mes fichier CSV sont lu.



Citation :Sinon, tu fais un superbe boulot !
Merci


Pour en revenir a ton doute sur la fonction DLB , si je regarde la citation de bisnoi :
https://domosimple.eu/forum/thread-255-p...ml#pid4912
(25-01-2024, 11:57 PM)bishnoi a écrit : au départ charge à 10A, puis je la descend à 7A, la monte à 14A.
mon disjoncteur d'abonné est à 15A, alors je met le DLB à 17A. Cette fonction dynamique est incluse dans ce module EVSE, il suffit de lui brancher un CT (TI) 100/5A pris autour du general.
J'allume un radiateur de 1000W, on voit qu'il sample pour trouver un puissance vers les 17A et le disjoncteur d'abonné ne saute pas.

Avec la video que tu as posté pour lui : https://domosimple.eu/forum/thread-255-p...ml#pid4894

Je pense qu'il n'y a pas photo ?
Répondre
#14
Citation :Pour en revenir a ton doute sur la fonction DLB , si je regarde la citation de bisnoi :
https://domosimple.eu/forum/thread-255-p...ml#pid4912
(25.01.2024, 23:57)bishnoi a écrit : a écrit :au départ charge à 10A, puis je la descend à 7A, la monte à 14A.
mon disjoncteur d'abonné est à 15A, alors je met le DLB à 17A. Cette fonction dynamique est incluse dans ce module EVSE, il suffit de lui brancher un CT (TI) 100/5A pris autour du general.
J'allume un radiateur de 1000W, on voit qu'il sample pour trouver un puissance vers les 17A et le disjoncteur d'abonné ne saute pas.

Avec la video que tu as posté pour lui : https://domosimple.eu/forum/thread-255-p...ml#pid4894

Je pense qu'il n'y a pas photo ?


oui en effet, a moins qu'il nous ait fait un montage vidéo Tongueout
On va attendre qu'il revienne de vacances depuis sa cabane au fond de la forêt
bishnoi aime ce post
Jean-Luc
Répondre
#15
Bon alors voici quelques news.

J'ai donc 2 controleur sous la main :
-Le 1er en version 313
-Le 2nd en version 1005

1er Point :
Sur le 1er la fonction DLB ne fonctionne pas.
Sur le 2nd, j'ai remarqué que le registre 146 n'etait pas stable avec la fonction DLB activé , il y a donc du bruit sur l'entrée.
Si je desactive la fonction DLB, le registre ne bouge plus

2nd Point :
Comme l'indique la doc on peut utiliser des compteur Modbus normalement, en spécifiant l'adresse du mot que le Controleur doit interroger, les compteur devront avoir l'adresse 01 et 02
Celui sur l'adresse 02 renvera le courant dans l'install

Avec le 1er controleur : RAS rien ne se passe.
Avec le 2nd controleur : dès que l'on regle le registre 96, le module commence a interroger le compteur.
Le prb c'est que du coup il ne communique plus, comme je le pensais (ou comme je le craignais) il ne peut être que Maite ou Esclace mais pas les 2, enfin j'ai pas trouvé comment faire pour le moment.


Bon là du coup je suis bloqué car j'ai vois pas comment Reseter le bidule... Surprised

Si qq a une idée Mad
Répondre
#16
aïe aïe, de mon coté c'est mort niveau idée
Jean-Luc
Répondre
#17
Bon les essais continuent :

J'ai réussi a récupérer la main sur mon module. Blushing

Lorsqu'on lui spécifie une adresse dans le registre 96 (Ca doit être le cas pour ceux de 90 a 95), il se met a bombarder le compteur de courant de question sur l'adresse Modbus #02 sur le registre Modbus que l'on a défini dans le registre 96.

Le problème c'est que du coup il ne répond plus au requete de lecture (Fct :03) Shutup

Par contre il accepte encore les demande d'ecriture Thumbsup , il suffit donc d'ecrire 65535 dans le registre pour qu'il arrete de causer.
Il se remet du coup a répondre tout de suite aux requete de lecture.

Ce fonctionnement est indépendant du switch DLB ou de la valeur du registre R114.


Je vais donc intervertir mes 2 contrôleurs et pour poursuivre mes tests avec la fonction DLB.


J'ai posé qq question a ETEK pour en savoir plus sur les différences de version entre controleur, la fonction DLB qui est pas active sur la 1ere version (finalement tu avais peu être en partie raison jlm  Mad ), et pour savoir si on il y a moyen de faire les : Interrogation du module en meme temps qu'il interroge le compteur de courant.

Mais bon dans un 1er temps je pense que la solution du Tore va être plus simple.

Il faudrait juste que j'en trouve un autre plus fiable peut être.

Restera a voir comment le calibrer ... et trouver un modele compatible, il en existe avec ou sans resistance intégré, mais bon je connais pas du tout le sujet, je ne m'y étais jamais trop intéressé.

Le problème de ce tore c'est qu'il est bruillant quand il y a 32A qui passe a cause de la fermeture du tore qui ne doit pas être pile poil.
Répondre
#18
c'est clair que avec un rapport de 1/5 (de mémoire) cela fait tout de même 6 Ampères sur le câble.
La théorie sur les convertisseur à voir sur ce site si jamais

7000 Watts en entrée ça fait rêver tout de même.

Pendant que tu y es avec ETEK, peux tu leur demander si il y a moyen de modifier les valeurs affichées sur leur écran LCD via des registres ?
Ce serait un vrai plus !

De plus Ils pourraient intégrer un client (voir serveur) MQTT qui va lire les valeurs que l'on souhaite afficher de notre coté
Bon après on aurait plus besoin de Modbus remarque  Mad

As-tu de ton coté plus d'informations pertinentes sur l'écran avec ta version de FW plus récente ?
Jean-Luc
Répondre
#19
Au passage, bon j'ai un peu nettoyer sommairement les entrefers du tore (a mes doigt tout gras Shutup ) avant de le fermer , mais lors des 2 ou 3 essais que j'ai fait le tor était silencieux....

De la a dire que sur l'autre module il n'y a rien de branché ... drole de coincidence quand même, car je l'ai mis dans les 2 sens pour voir si la mesure changeait et il n'a jamais branché. Surprised

Par contre il faut que je regarde pour le calibrer avec le registre 104.
Je sais pas quelle est le ratio qu'il y a sur le registre 146, est-ce qu'on lit bien des Ampères avec un ration de 0.01 ?
Répondre
#20
de retour !
wooah, quel beau travail !

le CT doit être DBKCT24 100A/5A, il n'a pas de sens...

la valeur remonte bien dans le registre 146
extrait du fichier config yaml, pour l'instant pas encore nodered :
  - name: live CT sur le général
      unit_of_measurement: A
      address: 146
      slave: 255
      scan_interval: 1
      precision: 2
      scale: 0.0172
      unique_id: EVSE live CT DLB
     
    - name: EVSE live PWM out
      unit_of_measurement: A
      address: 152
      slave: 255
      scan_interval: 1
      scale: 0.006
      unique_id: EVSE live PWM out %
   
    - name: EVSE max DLB
      unit_of_measurement: A
      address: 102
      slave: 255
      data_type: uint16
      scale: 0.01
      scan_interval: 1
      input_type: holding
      unique_id: evse2_max_dlb
     
    - name: EVSE max PWM
      address: 109
      slave: 255
      scan_interval: 1
      scale: 0.006
      precision: 0
      data_type: uint16
      input_type: holding
      unique_id: evse2_max_pwm
jlm aime ce post


Pièces jointes Image(s)
   
Répondre
#21
(31-08-2024, 09:52 AM)bishnoi a écrit : de retour !
wooah, quel beau travail !
Merci

(31-08-2024, 09:52 AM)bishnoi a écrit : le CT doit être DBKCT24 100A/5A, il n'a pas de sens...

la valeur remonte bien dans le registre 146
Oui j'ai bien ce modele.

De mon coté j'ai du mal avec la fonction DLB.

bishnoi : Comment as-tu déterminé le coef 0.0172 que tu appliques sur le R146 ?
As-tu changer le coéf du R104 qui sert a la calibration du tore : Ref. current AD value DLB current sampling calibration coefficient

En mesurant avec une pince ampéremetrique et avec la valeur 1270 je nobtient pas de valeur cohérente sur la mesure DLB


En fait je suis passé a 680 ce qui est 2 fois que le rapport d'origine  Mad

En faisant ca j'ai une bonne valeur qui est lu.

Par contre si j'active la fonction DLB, là c'est le début de la fin  Bomb , la sortie PWM sur le R152 fait le yoyo alors que le courant Max de l'installation R102 est suppérieur a la conso.

Par exemple : 45A defini sur R102 (Max DLB)
et Conso Real Time DLB : 32/35A

J'ai essayé de jour sur les param PID, mais ca ne veut rien savoir pour le moment...


Du coup j'ai préparé une boucle de regul dans NodeRED mais ca ne me plait pas trop car je sais pas si le controleur est capable d'encaisser des ecritures sur ce registre réguliere.

Ca ressemble a ca :
   
Le flow a été adapté pour évité d'ecrire sur le R109 des 2 cotés, du coup si la boucle PID est activé, je m'assure d'écrire sur le R109 que d'un seul coté.


J'ai pas encore fait les réglages de boucle, je testerais ce soir.

Je voulais pas encore mettre mon nez dans les dashboard NodeRED (faute de temps) mais je pense que je vais devoir m'y coller un peu pour la mise au point de ca.
bishnoi aime ce post
Répondre
#22
Tu veux faire les dashboard sur nodered ou sur lovelace de HA ?
Jean-Luc
Répondre
#23
(03-09-2024, 01:35 PM)jlm a écrit : Tu veux faire les dashboard sur nodered ou sur lovelace de HA ?
Pour la mise au point de la boucle je vais le dashboard sous NodeRED pour éviter de devoir envoyer ces valeurs sur HA.
Avec un graph de la boucle pour voir comment ca regul...

Toute facon je suis au même stade que ce soit sous HA ou sous NodeRED. Mais je sens que va me prendre des plombe avec HA. Tired (si je veux maitriser un minimum.)
Répondre
#24
Sous NR en effet c'est très rapide, sous NR dans HAOS faut juste trouver la bonne url.
J'ai mis la solution sur le forum HA, je pense que tu as déjà vu
Jean-Luc
Répondre
#25
J'ai pas eu le courage de tester hier soir, c'est reporté a ce soir pour la prochaine période d'Heure Creuse.

Effectivement les Dashboard NodeRED ont l'air assez simple a faire, pour ce que je veux ca va le faire.

Ce matin j'ai commencé a en préparer un ou 2 pour voir en vue du réglage de ma boucle PID.

Au passage je me suis mis a modifier le noeud : node-red-contrib-pid pour récupérer les reglages en sortie du noeud pour agir avec le dashboard.

Décidément je passe vraiment trop de temps sur ce truc.  Laughing

J'ai fait avec un fork sur Github a l'arrache, j'avais jamais fait, j'ai aussi installé le package directement depuis mon git du coup, c'est pratique, facile et rapide.

Au début j'étais partie sur les dashboard : node-red-dashboard
Mais je pense que ceux de flowfuse sont un peu mieux : @flowfuse/node-red-dashboard
Répondre
#26
C'est defacto devenu le standard sur NR. Dashboard V2.
De mon coté il me faudra y passer pour ma domotique NR qui est encore en V1
Jean-Luc
Répondre
#27
Je suis en train de me poser la question si je fais vraiment une régul fine en cas de besoin, ou si je fais plutot une sorte de délestage par palier.

Ca me donne ca pour le moment :
   

J'ai pas trouvé si il était possible de stoper un graph, un mode pause, pour analyser par exemple ?
Est-ce que l'axe des X bouge en fonction du temps de la machine ou dès qu'une valeur arrive, a la limite si c'est quand une valeur arrive je pourrais stopper les valeurs arrivant dans le graph (je réfléchi a voie haute là Mad )
Répondre
#28
DLB activé ou pas, le R146 remonte les ampères x100 du CT.
cable bonne section et pas trop long pour le CT.
le scale est donc 0.01
et je l'ai ajusté avec la pince ampère métrique.

le r102 =calibre disjoncteur abonné x100
et je peux choisir la puissance avec maxPWM r109
1000 correspond à 6A (6A à 32A)

quand j'approche le calibre du disjoncteur d'abonné, il réduit le pwm, mais fait un petit yoyo...

j'ai touché à tous les réglages possible, le yoyo devient plus grand !
Répondre
#29
Petit point sur les essais de la nuit (j'ai pas bcp dormi  Angel )

Calibration du Tore pour la lecture du Courant en Live :
Pour rappel j'ai calibré avec une pince la valeur de lecture en procédant comme ceci :
Lecture du Registre R146 (Real time current value of DLB function), Qui affiche le courant qui passe dans le tore , I=Val x 0.006
J'ai modifié le R104 (Ref. current AD value DLB current sampling calibration coefficient)
Valeur / Defaut = 1270
Valeur final = 675

Je pourrais peu être encore affiner un peu mais je suis pas loin.

Fonction DLB Interne
J'ai voulu refaire un test avec la fonction DLB intégré a mon controleur.
Resultat : Vraiment pas concluant, la sortie PWM oscille entre 32A et 6A toutes les secondes voir 2secondes, ne se stabilise jamais.

J'ai essayé plein de réglages possible sur la boucle : P / I / D , c'est comme ci les paramètres n'étaient pas utilisés.

   

Utilité des Registres Gear 1 a 6 :
Dans les registres du controleur il y a 6 "Gear" qui correspondent a des paliers de régulation.
Le 5 et 6 étaient a la même valeur 5333 (32A)

Si on modifie le 5, la regulation max l'utilise bien, mais le 6 n'est pas utilisé.

A moins que ce ne soit la correspondance avec les réglage du commutateur rotatif en facade ?

Test Boucle PID via Node-RED :

Après avoir débuggé qq bug, j'ai vite constaté que les résultats allez être très prométeur.

Je dois reprendre un peu ma facon de faire car il y a des trucs qui sont pas très propre.

J'ai commencé a réguler en prenant sur des valeurs de courant avec 2 chiffre après la virgule et j'ai vite obtenu
des courbes très douce et une régul au petit oignon  Surprised (Ce me change des régul de Centrale d'air que j'ai fait dans le passé par exemple)

En optant pour une regul avec un chiffre après la virgule on obtient un truc toujours stable mais avec un peu plus de créneaux forcément.


Quand je dis que j'ai fait des trucs pas très propres, c'est que j'ai fait ma régul sur des valeur de courant (Valeur sous forme d'entier avec un ou 2 chiffres après la virgule, pour ensuite reconvertir tout ca pour le controleur.

Donc je multiplie les valeurs / 0.006, j'arrondi puis je les divise par 0.006 pour ensuite les envoyer au controleur ...
Bref il y a mieux.
Mais c'était le plus simple dans un 1er temps histoire de valider le concept et histoire de travailler avec des valeurs lisible en debug dans le Flow.

Je vais voir pour travailler directement avec les valeurs modbus et appliquer les conversions uniquement pour l'affichage.

Voici la courbe avec une regul avec 2 chiffres après la virgule :
Au début quand on a que du ON/OFF : C'est avec I et D a 0, on joue que sur P
Ensuite on ajoute de l'intégrale et on ajuste éventuellement P
J'ai pas eu besoin pour le moment de mettre de la dérivée.
   

Avec un chiffre : C'est un peu moins précis, mais il y a un peu moins d'écriture Modbus.
   

J'ai fait mes test en même temps qu'une machine, il faudra que je refasse ca en live car c'est le cas typique de ce qui peut se produire la nuit.
Je vais voir pour monitorer la valeur de celle-ci pour l'afficher en même temps.

PS : Attention les couleurs des graph ne sont pas les même tout le temps, cela dépend a mon avi de la 1ere valeur recu.
Il faut que je regarde si je peux fixer ca en dur, ou sinon si je peux faire une ruse.


Donc là moi ma régulation utilise R109 (Le seuil Max de la sortie PWM) pour forcer la sortie PWM R152 a la valeur que je veux.

La partie PID du flow ressemble a ca actuellement :
   
jlm et bishnoi aiment ce post
Répondre
#30
J'ai amélioré mon graph, histoire d'avoir toujours les mêmes couleurs sur les mêmes lignes :
Il suffit d'avoir une fonction avec 4 sorties, ensuite on envoie sur chaque sorties :
le topic qui contient le label de la courbe et dans le payload la valeur.

   

Code :
if (bEnableGraph == true) {
    let msgline1 = {};
    let msgline2 = {};
    let msgline3 = {};
    let msgline4 = {};

    msgline1.payload = R146rounded;
    msgline2.payload = R109rounded;   
    msgline3.payload = R152rounded;
    msgline4.payload = R102rounded;

    msgline1.topic = "R146LiveA";
    msgline2.topic = "R109 (Sortie PWM)";   
    msgline3.topic = "R152LiveSortieETEK";
    msgline4.topic = "R102_I_Max_Maison";
    node.status({ fill: "green", shape: "dot", text: "bEnableGraph =" + bEnableGraph});
    return [msgline1, msgline2, msgline3, msgline4];
} else {
    node.status({ fill: "red", shape: "dot", text: "bEnableGraph =" + bEnableGraph});
    return [null, null, null, null];
}
C'est simple finalement (quand on sait comment faire  Laughing

Pour mettre en pause le graph il suffit de ne plus envoyer de valeur.

Je pense que je vais devoir adapter les paramètres de la boucle PID vue que les rapports de grandeur ont changés.

Il n'y a plus qu'a essayer ce soir, me reste encore 20% a remplir dans la voiture.
bishnoi et jlm aiment ce post
Répondre
#31
Hello

Voici la derniere version du flux (v10 du 06/09/24)

Les changements concerne la boucle PID :
   



Adaptation et Comportement de la regul :
J'ai donc adapté les réglages P et I
PS : Une fois les réglages trouvé, il ne faut pas oublier de les enregistrer dans le Noeud PID en dur.

J'ai pu voir comment la réaction de la régul quand on est juste au niveau de la conso par rapport a la consigne fixé.
J'avais la machine a laver en route.
On peut voir un dépassement pendant qq seconde puis la sortie du controleur baisse légérement.
Je pense que c'est pas trop mal

Il y a un léger décalage entre le moment ou R109 est modifié et l'action sur la sortie R152, je sais pas si c'est du a mes temps de cycle ou si c'est le controleur ETEK, mais c'est raisonnable.
PS : L'affichage du Dashboard est rafraichi par la sortie de la boucle PID qui est cadencé toute les seconde.

Voici le résultat :
   
En vert : Au début adaptation de la regul, on retire l'integral et on cherche un P qui fonctionne. Ensuite on ajoute de l'intégral
En Jaune : La machine a laver qui demarre


Note : J'ai fait correspondre la couleur des ligne avec la couleur des jauges et du slider pour améliorer la lisibilité Surprised


Au niveau MQTT ca donne ca :
   
J'ai mis les 2 fichiers pool correspondant

Il y a quelques valeurs que je pourrais retirer mais je n'exclue pas de me procurer un controleur plus recent si les chinois me repondent un jour.  Shutup
Là je pense que je suis allé trop loin dans mes questions du coup c'est silence radio ... bref pas cool  Tired


Les prochaines étapes :

1)Je vais faire tourner ce Flow tout seul
  • Soit je crée un nouveau container LXC sous Proxmox
  • Soit je lance une nouvelle instance qui lancerais que ce Flow
Le but c'est d'avoir un truc indépendant.

2)Fermeture du boitier
Le boitier de ma borne est encore ouvert, j'ai remplacé le module Elfin EE11A par un EW11A car j'ai étendu la courverture WIFI dans cette zone
Il me reste maintenant a rentrer le cable du TI, il faut que j'ajoute un PE pour y faire le cable

3)Ajout d'un BP pour lancement d'une charge manuel
4)Coupure du CP au lieu d'utiliser RemoteStartStop
Si la fonction RemoteStartStop fonctionne correctement, c'est génant je trouve le choix fait par ETEK de gerer ca comme un arret urgence !!!
Je vais donc je pense ajouter un relais

Du coup j'ai besoin :
  • 1x Entrée Digital
  • 1x Sortie Relais
Je peux utiliser mon automate WAGO qui est a proximité, mais vue que tout le dev a été fait sous NodeRED je pense qu'il serait préférable que je rend le truc indépendant

Je pourrais partir sur un truc comme ca, mais il me faudra du coup une alim 24V
Là soit je prend une alim depuis mon armoire existante, soit j'ajoute une petite alim dans la borne ce qui la rendrait indépendante.
Je pourrais alimenter le module ELFIN dessus vue que la version etendu (avec le A dans la ref) des modules accepte 24V

Ce module sur Rail DIN peut se piloter en modbus RS485 ou Ethernet, dans mon cas je le brancherais sur le RS485 avec le contoleur.

   
Ce module existe avec un ou 2 relais, si je prend le 2nd Relais, je pourrais m'en servir pour mettre hors tension l'afficheur que j'ai intégré dans la borne

Prix environ 20€ : Chez Aliexpress
jlm et bishnoi aiment ce post


Pièces jointes Image(s)
   

.json   EKEPC2v10.json (Taille : 84.46 Ko / Téléchargements : 31)
.zip   TableEKEPC2 - Pools.csv.zip (Taille : 1.22 Ko / Téléchargements : 83)
Répondre
#32
trop fort !
dans quel département es-tu ?0
Répondre
#33
Les chinois n'ont certainement jamais vu ce genre de développement sur leur boîtier.
Pour le flow une nouvelle instance me semble adaptée.
Un container Linux LXC juste pour faire tourner du nodejs c'est peut être un brin lourd
Jean-Luc
Répondre
#34
(06-09-2024, 05:52 PM)bishnoi a écrit : trop fort !
dans quel département es-tu ?0
59 d'ou le pseudo  Laughing



(06-09-2024, 07:06 PM)jlm a écrit : Les chinois n'ont certainement jamais vu ce genre de développement sur leur boîtier.
Pour le flow une nouvelle instance me semble adaptée.
Un container Linux LXC juste pour faire tourner du nodejs c'est peut être un brin lourd
Merci, oui effectivement je me suis laissé emporté dans mon élan, mes 1er pas dans NodeRED, il y a des truc que j'aime bien et d'autre un peu moins...
Idéalement il faudrait pouvoir modifier le soft dans le controleur pour y ajouter ou corriger qq trucs.


Actuellement NodeRED tourne dans un container LXC

Je ai déjà 2 un pour la prod et un pour des test, plus une instance sur mon PC Windows ...  Surprised



LXC c'est hyper léger et pas du tout lourd, l'idée c'est d'avoir des truc indépendants service / service.



De ce que j'ai pu voir il y a des avantages et des inconvenients a faire tourner plusieurs instance Nodered sur une meme machine vs avoir un autre NodeRED



Dans tous les cas l'idée :
  • C'est d'avoir le programme de la borne qui tourne seul
  • Pour ne pas être perturbé par un eventuel plantage lors d'une phase de dev pour autre chose
  • De ne pas avoir des coupures sur chaque deploy


Il y a plusieurs options :

  1. Un autre CT LXC pour ETEK 
    Les + : Séparation de tout, Independance des Bibliotheqe (Palettes), Facilité de Backup/Restore
    Les - : Ressource du LXC en plus
  2. Lancer une autre instance Node-RED en spécifiant le nom d'un Fichier json 
    Les + : Ressource 
    Les - : On partage les Palettes avec tous les Noeuds, J'ai pas encore regardé comment faire
  3. L'activation du mode Projet : Je sais pas si on peut en lancer plusieurs ?


Tien au passage j'ai reçu ca : (commande passé Je 29/08, recu Sa 07/09, c'est fou  Surprised )
   

J'en ai 2 : 
Je vais essayer de brancher le 1er sur mon automate dans un 1er temps
Ensuite je vais voir si j'arrive a le mettre sur le contrôleur ETEK pour comparer tout ca, en théorie je dois pas être loin niveau valeur de calibration.

Je vais me faire une 2nd borne, comme sur mon 2nd contrôleur l'entrée du TI ne fonctionne pas j'aurais besoin de récupérer la valeur depuis un autre endroit.
jlm aime ce post
Répondre
#35
Les TI ont été placé

J'ai une platine avec un Disjoncteur de Branchement et un compteur intermédiaire dans mon garage (le DB Enedis est sur la rue a 30m avec son Linky.)
J'ai placé les 2 TI deriere le DB comme ca , ca prend pas de place dans le tableau qui est en bordel  Shutup  car je refais pas mal de chose

Les 2x TI Bleu dans le fond en bas :
   

La platine refermé :
   

Les TI sont branchés sur des bornes WAGO spécial pour TI, ca permet :
-de mettre en court-circuit les TI si jamais il n'y a rien de branché au bout
-de prendre une mesure
-de relier un appareil de mesure definitif
   
Sur cette photo, 6 bornes qui forment 3xbloc pour 3xTI, les 2xTI a gauche sont cour-circuité, le TI de droite et branché sur le controleur ETEK, la borne est en position ouverte.

Car pour rappel il ne faut jamais mettre en place un TI sur un circuit actif sans brancher son secondaire car il peut y avoir des tensions très élevé au bout des fils.


J'ai pris qq mesure : (Mesure avec Multimetre en Courant AC sur les Bornes WAGO)

Pour un Courant de 5.6A mesuré avec a la pince ampèremétrique (Fluke)
I TI Etek = 0.2567A ce qui donnerais 5.134A
I TI Bleu = 0.2787A ce qui donnerais 5.574A : Le TI Bleu semble plus précis et réaliste par rapport a la mesure fait avec ma pince.

Même si j'ai pas pris les 2 mesures au même instant, le temps de brancher débrancher et basculer les bornes des TI, je n'ai pas vu la mesure de la pince descendre en dessous de 5.6A, ca oscillait entre 5.6 et 5.7A

Il y a donc un léger recalibrage a faire pour l'utiliser avec la borne Etek car effectivement les valeurs lu sont légèrement plus importante.

           

Il va falloir aussi que je réflechisse a la meilleur facon de calibrer tout mes TI, car pour le moment je fais ca sur une installation qui vie... même si je choisi un moment ou il n'y a personne, enfin presque, il peut y avoir un chat qui se leve et qui déclenche un eclairage, mais il y a les cycle de frigo/congelo, et toute la partie informatique qui tourne...

Idéalement il faudrait que je laisse brancher uniquement un radiateur ou une lampe... enfin il faudrait une charge résistive assez conséquente.




Accessoirement j'ai recu aussi ca :
   
Une petite platine basé sur un ESP avec 6 voies de mesures, reste a voir la précision. Je ferais un autre post la-dessus si ca interesse.
Le cout est actuellement 60$ avec 6 Tores, on peut aussi prendre la platine sans les Tores.
Pour le moment je l'ai simplement branché et configuré sur mon réseau pour voir si la connexion était OK.
PS : Commandé sur le site athom directement, envoyé depuis stock allemand, du coup pas de frais supplémentaire.
jlm aime ce post
Répondre
#36
Une petite MAJ du Flow (v11)

J'ai ajouté une page dans le Dashboard NodeRED pour faire la calibration de l'entrée du TI.

http://VotreIPNodeRED:1880/dashboard/ad

J'utilisais Mthings jusqu'à présent, mais c'est un peu lourd de faire l'aller/retour entre la mesure au tableau et le PC

Du coup on peut faire ca avec le Smartphone :
   
Le bouton Refresh sert a chargé la valeur dans la zone de Texte (Ca évite d'avoir un Refresh automatique pendant que l'on tape)
La sauvegarde se fait sur validation ou lorsque l'on quitte. (Perte de focus)
Sur mon telephone j'ai l'impression que seul la perte de focus fonctionne. J'ai pas approfondi.

La 1ere ligne R146 c'est la valeur brut sans aucune conversion
La 2nd ligne R146 c'est ... je vous laisse deviner  Laughing 

Dans NodeRED la modif ce situe la :
   
jlm et bishnoi aiment ce post


Pièces jointes
.json   EKEPC2v11.json (Taille : 89.98 Ko / Téléchargements : 17)
Répondre
#37
Suite :
Je viens de recevoir mes Module Relais Modbus. Surprised

Un petit essai sur le bureau via un Module Elwin RS485 WIFI, la comm fonctionne je pilote les sorties ... OK

Du coup je file sur la borne en vue de finir l'install :
-1er Prb : J'ai pris un module avec alim en 24V (étant issue du monde Industriel, je préfère), mais forcément j'ai plus d'alim sous la main. Devil
Il faudra que je cogite pour voir quelle solution je retiendrais au final... a moins que je ne trouve un module relais alimenté en 5V  Stop
Car il reste plus bcp de place dans le boitier.

-Je fais donc une alim provisoire depuis un tableau a proximité, je câble le bus RS485 avec le module ETEK, puis retour sur le PC

-2nd Prb : Plus de comm avec le module ETEK, mais la comm avec le nouveau module est OK, vérification des connexions, inversion des polarités dans le doute car j'en avais profité pour faire un câblage un peu plus propre, résultat rien a faire. Le module ETEK ne communique plus. Bomb

Je retire le module relais ca repart...  Mad Etrange.

Et là ... j'ai mes 2 fils qui se touchent dans ma tête ... j'ai laissé l'adresse 255 dans le controleur ETEK qui est une adresse de broadcast.

Bref je change l'adresse
Je remet tout ensemble et ca remarche ... ouf.


J'ai modifié NodeRED pour prendre en compte les sorties du relais :
DO1 : Cmd l'afficheur ON/OFF
DO2 : Ouvre ou Ferme le Fil CPP

Reste plus qu'a tester ce soir Thumbsup

Il me reste a prendre en charge un bouton sur une DI pour lancer une charge manuellement en journée.
Si je suis inspiré je pense que je vais aussi commander l'allumage de l'afficheur uniquement si une charge est lancé.

Voici une photo de la borne avec le boitier fermé :
   

Et celle-ci avec le Relais Modbus sur Rail DIN
   
jlm et bishnoi aiment ce post
Répondre
#38
Bon ba voilà ca fonctionne correctement :

DO1: (Relais1) = Commande Afficheur
DO2: (Relais2) = Coupure du CPP
  • En Heure Creuse DO2 est commandé et en dehors de la période on coupe.
  • Dès qu'un cable est détecté DO1 est commandé pour allumé l'afficheur*

Stop Pour le moment j'ai mis une détection sur un cable 32A (5333), car j'ai pas encore débranché

Dans la fonction : Gestion Charge v3
Code :
if (R142Cable==5333) {
    bCmdAfficheur=true;
}

EDIT : Sans Cable le registre contient 65535, j'ai du coup mis ca :
Code :
if (R142Cable!=65535) {
    bCmdAfficheur=true;
}

Il me reste plus qu'a me trouvé un petit bouton éléguant a mettre en facade pour démarrer une charge manuellement
Si je veux pousser, j'ai 2 entrée, un BP start, et un coup de poing pour un A.U !!!  Blushing

EDIT : J'ai des petits BP chez moi mais je les trouve un peu petit pour cette borne, j'ai pris du coup https://fr.aliexpress.com/item/100500647...pt=glo2fra en 22mm avec fil.

Ca devrait le faire.
Le voyant devrait pouvoir être piloté par une sortie du controleur ETEK

La suite dans 8jours (C'est pas a coté la chine quand même Shutup )
jlm et bishnoi aiment ce post


Pièces jointes
.json   EKEPC2v12 SlaveID11.json (Taille : 91.13 Ko / Téléchargements : 39)
Répondre
#39
Une Ferrari ta wallbox. Le coup de l'adresse modbus, presque un basique du coup. Comme pour une adresse Ip en fait.
Tu nous feras une demo filmée lorsque le bouton sera installé.
Ça va intéresser du monde
Jean-Luc
Répondre
#40
(18-09-2024, 10:16 PM)jlm a écrit : Le coup de l'adresse modbus, presque un basique du coup. Comme pour une adresse Ip en fait.
Ba oui c'est du basique quand on a les bases, sinon ca pourrais décourager qq de néophite, ca m'avais marqué et intrigué au tout début car c'était la 1er fois que j'avais un produit Modbus qui utilisait de base cette adresse.
Je l'avais changé d'ailleurs quand j'ai essayé de comprendre les différents mode de fonctionnement si on utilise des compteurs modbus,
entre ca ,les essais avec des nouveaux outils modbus (Mthings ...) , la découverte des modules elfin, il y avait pas mal de petit détail ou grain de sable qui pouvait se mettre qq part.

Et au final j'etais revenu sur cette fichu adresse 255 pour je ne sais quel raison.

(18-09-2024, 10:16 PM)jlm a écrit : Tu nous feras une demo filmée lorsque le bouton sera installé.
Ça va intéresser du monde
Je garantie rien, mais j'essaierais.
jlm aime ce post
Répondre
#41
Quoi de neuf aujourd'hui :
Tic-Tac ... les 8jours se sont écoulés, et devinez ce que j'ai trouvé dans ma BAL ?

Des beaux petits BP a voyant Surprised

BP + Led Testé, cable rallongé, monté dans le coffret, code Node-RED ajusté, tout est OK Thumbsup

J'ai câblé la LED sur le contrôleur ETEK, il me faudrait peu etre un relais supplémentaire pour la piloter individuellement. Surprised


Si je suis en heure creuse, un appuie sur BP active un mode Manuel, l'afficheur s'allume, le relais CPP monte
Un autre appuie arrete le mode manuel
Le passage en HC arret lui aussi le mode manuel.

Du coup pas besoin de sortir le téléphone en cas de besoin.

Je posterais le flow et des photos prochainement.

A+
bishnoi et jlm aiment ce post
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 5 visiteur(s)
[-]
Synthèse
Please login or register to use this functionality.

[-]
discussions récentes
cette borne à ce prix, c'est...
bon mon code pour gérer cette ...vavann — 01:43 AM
Ajout écran OLED sur ma Wallb...
Oulàààà, j'ai un peu la tête a...jlm — 10:17 PM
Modification paramètre wks pl...
Salut, Bon ben ça semble fo...gag — 12:49 AM
Ajout écran OLED sur ma Wallb...
esp32 BTserial pour elm327 fla...bishnoi — 08:55 PM
installation Smartphoton Add-...
Le coup du 1Gb, j'ai déjà vécu...jlm — 05:05 PM
retour Pylontech HS
Bonjour, Je confirme. Le chan...claude47 — 03:21 PM
installation Smartphoton Add-...
Bonjour Jean-Luc, . "Do...jeanserien — 03:06 PM
retour Pylontech HS
Bonjour, Les infos que tu don...ghis.dlm — 02:36 PM
installation Smartphoton Add-...
oulllahh  ça va pas être facil...jlm — 11:11 AM
Modification paramètre wks pl...
Bon ben en fait c'est pas si d...gag — 11:02 AM
surcharge pylontech us5000
salut ! oui pas de soucis pous...Le bieslois — 08:47 AM

[-]
Rechercher








(Advanced Search)

[-]
Who's Online
There are currently no members online.

[-]
goals
96.1% of the way to our goal of 7,000 posts!
Only 276 posts left to go!

[-]
Statistics
» Members: 625
» Latest member: robinmarzac56
» Forum threads: 713
» Forum posts: 6,719

Full Statistics

>