Compteur Modbus TCP dans Home Assistant : guide de configuration
Intégrer un compteur d’énergie Modbus TCP à Home Assistant
Modbus TCP est l’un des moyens les plus rapides de connecter un compteur d’énergie à Home Assistant. Il fonctionne sur le réseau local, sans dépendre d’une connexion Internet, et convient au suivi de la puissance en temps réel, à l’automatisation des surplus solaires, au pilotage des charges et à l’Energy Dashboard de Home Assistant.
Tous les compteurs d’énergie IAMMETER actuels prennent en charge Modbus TCP. Deux méthodes permettent de les intégrer à Home Assistant :
- Intégration IAMMETER HACS Modbus — configuration dans l’interface, création automatique des entités et intervalle d’interrogation réglable.
- Intégration Modbus native de Home Assistant — configuration YAML donnant un contrôle direct sur les registres et les capteurs.
Ce guide présente leurs différences et vous aide à configurer la méthode adaptée.
HACS Modbus ou intégration Modbus native de Home Assistant ?
Les deux méthodes lisent les mêmes données Modbus TCP locales du compteur. La principale différence concerne la configuration des entités dans Home Assistant.
| Fonction | IAMMETER HACS Modbus | Modbus natif de Home Assistant |
|---|---|---|
| Configuration côté Home Assistant | Interface utilisateur | YAML |
| Configuration des registres | Créée par l’intégration | Définie manuellement |
| Intervalle d’interrogation | Réglable ; 3 secondes par défaut | Réglable pour chaque capteur |
| Métadonnées de l’Energy Dashboard | Incluses pour les entités d’énergie compatibles | À définir dans YAML |
| Découverte automatique/assistée | Installation assistée par SSDP | Non |
| Fonctionnement local | Oui | Oui |
| Utilisation simultanée d’IAMMETER Cloud | Oui | Oui |
| Solution conseillée | La plupart des utilisateurs de Home Assistant | Utilisateurs avancés et registres personnalisés |
Pour la plupart des utilisateurs, HACS Modbus est la solution la plus simple. Utilisez l’intégration Modbus native de Home Assistant si vous avez besoin d’une liste de registres, d’un nommage d’entités, d’une règle de mise à l’échelle ou d’un intervalle d’interrogation propres à chaque capteur.
Si des mises à jour rapides ne sont pas nécessaires, comparez les solutions HTTP et MQTT dans la présentation des méthodes d’intégration d’un compteur d’énergie à Home Assistant.
Avant de commencer
Vous avez besoin des éléments suivants :
- un compteur d’énergie IAMMETER connecté au même réseau local que Home Assistant ;
- l’adresse IP locale du compteur ;
- un accès au port TCP
502entre Home Assistant et le compteur ; - une version récente du firmware du compteur ;
- HACS si vous choisissez l’intégration IAMMETER HACS.
Il est recommandé de réserver l’adresse IP du compteur dans le routeur. Une adresse DHCP qui change est une cause fréquente d’indisponibilité d’une intégration Modbus qui fonctionnait auparavant.
Méthode 1 : configurer IAMMETER Modbus avec HACS
L’intégration IAMMETER HACS Modbus s’adresse aux utilisateurs qui veulent obtenir rapidement des données locales sans définir manuellement chaque registre dans YAML.
Étape 1 : installer l’intégration
- Ouvrez HACS dans Home Assistant.
- Recherchez IamMeter Modbus.
- Installez la dernière version.
- Redémarrez Home Assistant si cela vous est demandé.
Informations sur le projet et les versions :
Utilisez la dernière version disponible. Le réglage de l’intervalle d’interrogation est pris en charge par l’intégration mise à jour et transmis au DataUpdateCoordinator.
Étape 2 : ajouter le compteur dans Home Assistant
- Accédez à Paramètres → Appareils et services.
- Sélectionnez Ajouter une intégration.
- Recherchez IamMeter Modbus.
- Saisissez l’adresse IP du compteur et le port Modbus TCP.
- Sélectionnez le type de compteur ou la configuration de phases appropriée.
- Définissez l’intervalle d’interrogation ou conservez la valeur par défaut de 3 secondes.
- Validez le formulaire et vérifiez que l’appareil et ses entités ont été créés.
L’intégration crée un nombre d’entités différent selon qu’il s’agit d’un compteur monophasé, à deux canaux ou triphasé. Une liste d’entités plus courte ne signifie pas qu’un modèle monophasé est moins bien pris en charge par Home Assistant.
Étape 3 : vérifier les entités
Ouvrez l’appareil IAMMETER dans Paramètres → Appareils et services. Selon le modèle, les entités disponibles peuvent comprendre :
- la tension ;
- le courant ;
- la puissance active ;
- le facteur de puissance ;
- l’énergie importée ;
- l’énergie exportée ;
- la puissance ou l’énergie réactive lorsqu’elle est fournie par le compteur et le jeu de registres concernés.
Les entités d’énergie importée et exportée utilisent le kWh et comportent les métadonnées Home Assistant requises par l’Energy Dashboard.
Étape 4 : choisir un intervalle d’interrogation adapté
L’intervalle par défaut est de 3 secondes. Il constitue un bon point de départ pour les tableaux de bord en direct et les automatisations fondées sur la puissance.
Valeurs de départ conseillées :
| Usage | Intervalle d’interrogation conseillé |
|---|---|
| Commande d’un relais ou d’un surplus solaire en temps réel | 1 à 5 secondes |
| Tableau de bord de puissance en direct | 3 à 10 secondes |
| Suivi général de l’énergie | 10 à 30 secondes |
Un réglage d’une seconde correspond à une demande d’interrogation ; il ne garantit pas que chaque tableau de bord Home Assistant se rafraîchira visiblement toutes les secondes. La latence du réseau, le nombre de registres, la charge de l’enregistreur et le comportement de rafraîchissement de l’interface ont également un effet.
Évitez une interrogation inutilement intensive. Pour la plupart des automatisations, une mise à jour stable toutes les 2 à 5 secondes est plus utile que l’intervalle le plus court possible.
Méthode 2 : utiliser l’intégration Modbus native de Home Assistant
Home Assistant comprend une intégration Modbus standard. Cette méthode fonctionne entièrement en local et ne nécessite pas HACS, mais la connexion et les capteurs doivent être définis dans YAML.
L’exemple suivant lit la tension et la puissance active d’un compteur monophasé :
modbus:
- name: iammeter_hub
type: tcp
host: 192.168.1.6
port: 502
sensors:
- name: IAMMETER Voltage
slave: 1
address: 0
input_type: holding
data_type: uint16
scale: 0.01
precision: 1
unit_of_measurement: V
device_class: voltage
state_class: measurement
scan_interval: 5
- name: IAMMETER Active Power
slave: 1
address: 2
input_type: holding
data_type: int32
unit_of_measurement: W
device_class: power
state_class: measurement
scan_interval: 5
Remplacez 192.168.1.6 par l’adresse IP réelle du compteur. Consultez la table de registres applicable avant d’ajouter d’autres capteurs :
Registres Modbus IAMMETER courants
Les adresses suivantes illustrent les blocs de phases standard utilisés par les compteurs IAMMETER courants. La documentation actuelle des registres reste toujours la référence officielle.
| Mesure | Phase A / monophasé | Phase B | Phase C | Type de données |
|---|---|---|---|---|
| Tension | 0 | 10 | 20 | uint16 |
| Courant | 1 | 11 | 21 | uint16 |
| Puissance active | 2 | 12 | 22 | int32 |
| Énergie importée | 4 | 14 | 24 | uint32 |
| Énergie exportée | 6 | 16 | 26 | uint32 |
Utilisez l’échelle, la précision et l’ordre des mots documentés pour chaque registre. Ne déduisez pas l’échelle de l’énergie à partir de l’exemple de tension.
Après avoir modifié YAML :
- lancez la vérification de la configuration de Home Assistant ;
- redémarrez Home Assistant ;
- ouvrez Outils de développement → États ;
- vérifiez que les valeurs et unités des nouvelles entités sont plausibles.
Ajouter l’énergie importée et exportée à l’Energy Dashboard
L’Energy Dashboard de Home Assistant exige des entités d’énergie cumulée, et non une puissance instantanée.
Pour un capteur d’énergie Modbus configuré manuellement, ajoutez les métadonnées appropriées :
unit_of_measurement: kWh
device_class: energy
state_class: total_increasing
Accédez ensuite à Paramètres → Tableaux de bord → Énergie. Sélectionnez l’entité d’énergie importée comme consommation du réseau et l’entité d’énergie exportée comme retour vers le réseau.
Ne choisissez pas une entité de puissance active exprimée en watts dans un champ d’énergie de l’Energy Dashboard. La puissance indique le débit instantané ; les kWh importés et exportés représentent l’énergie cumulée.
Modèles IAMMETER compatibles
Tous les compteurs d’énergie IAMMETER actuels prennent en charge HACS Modbus et l’intégration Modbus native de Home Assistant.
| Modèle | Configuration du compteur | Remarque pour Home Assistant |
|---|---|---|
| WEM3080 | Monophasé | Jeu d’entités monophasées |
| WEM2067 | Deux canaux pour les installations monophasées | Deux canaux de mesure |
| WEM3080T | Triphasé | Trois phases/groupes d’entités |
| WEM3050T | Triphasé ou split-phase | Trois canaux de mesure |
| WEM3080TD | Triphasé à trois fils et câblages spéciaux | Interpréter les entités selon le mode de câblage |
| WEM3046T / WEM3046TE | Entrée pour TC externe 5 A | Appliquer le rapport du TC externe |
Les WEM3046T et WEM3046TE mesurent la sortie secondaire 5 A d’un transformateur de courant externe. Pour obtenir le courant, la puissance et l’énergie réels côté primaire, il faut appliquer le bon rapport de TC. Il s’agit d’une caractéristique de ce système de mesure avec TC 5 A, et non d’une limitation de compatibilité avec Home Assistant ou Modbus.
Modbus et IAMMETER Cloud peuvent-ils fonctionner simultanément ?
Oui. Home Assistant lit Modbus TCP localement tandis que le compteur peut continuer à envoyer ses données à IAMMETER Cloud. Il n’est pas nécessaire de passer le compteur en mode d’envoi MQTT pour utiliser Modbus.
Vous disposez ainsi de deux vues complémentaires :
- des données locales rapides et des automatisations dans Home Assistant ;
- des rapports à long terme, l’analyse du coût de l’électricité, l’analyse solaire et l’accès à distance dans IAMMETER Cloud.
Éviter plusieurs clients Modbus à haute fréquence
Le modèle de déploiement le plus sûr consiste à utiliser un seul client d’interrogation Modbus TCP actif par compteur. Ne configurez pas Home Assistant, Node-RED, un automate et un autre enregistreur pour interroger indépendamment le même compteur à haute fréquence.
Si plusieurs systèmes ont besoin des mêmes mesures en direct, laissez un seul système lire Modbus et redistribuer les données, ou utilisez une architecture MQTT dans laquelle plusieurs consommateurs s’abonnent à un broker.
Dépannage
Home Assistant ne peut pas se connecter au port 502
- Vérifiez que Home Assistant et le compteur se trouvent sur le même réseau accessible.
- Vérifiez l’adresse IP du compteur et réservez-la dans le routeur.
- Vérifiez que le port TCP
502n’est pas bloqué par un pare-feu ou une règle de VLAN. - Assurez-vous qu’un autre client Modbus ne maintient pas la connexion ou ne la rouvre pas continuellement.
Les entités sont indisponibles ou les valeurs ne changent pas
- Vérifiez le type de compteur ou la configuration de phases sélectionné dans l’intégration HACS.
- Avec YAML, vérifiez l’identifiant d’esclave, l’adresse du registre, le type de données, l’échelle et l’ordre des mots.
- Augmentez temporairement l’intervalle d’interrogation afin d’écarter une fréquence excessive.
- Redémarrez l’intégration après une modification de l’adresse IP du compteur.
Les valeurs sont anormalement élevées ou faibles
- Vérifiez l’échelle et le type de données du registre.
- Pour les WEM3046T/WEM3046TE, vérifiez le rapport du TC externe.
- Vérifiez que l’entité correspond à la phase ou au canal de mesure attendu.
Les entités d’énergie n’apparaissent pas dans l’Energy Dashboard
- Utilisez l’énergie cumulée importée/exportée en kWh.
- Vérifiez
device_class: energy. - Vérifiez
state_class: total_increasing. - N’utilisez pas une entité de puissance exprimée en watts.
Créer des automatisations à partir des données de puissance en temps réel
Une fois les entités Modbus opérationnelles, Home Assistant peut utiliser la puissance active ou la puissance exportée vers le réseau pour piloter d’autres appareils. Vous pouvez notamment :
- commander un relais à partir des données de puissance Modbus en temps réel ;
- charger un véhicule électrique lorsque l’export solaire dépasse un seuil ;
- chauffer de l’eau avec le surplus solaire disponible ;
- avertir l’utilisateur lorsque la demande du logement dépasse une limite ;
- réduire une charge pilotable avant d’importer de l’électricité coûteuse en période de pointe.
Le guide d’intégration doit d’abord permettre d’obtenir des données fiables. N’ajoutez la logique de commande qu’après avoir vérifié la convention de signe, les unités, l’intervalle de mise à jour et le comportement en cas d’indisponibilité du compteur.