Configuration des compteurs Modbus

Modèle de compteur standard

Le protocole Modbus permet au Gateway de venir lire un ou plusieurs registres de données spécifiques dans un compteur compatible.

En général, les compteurs électriques sont munis d'un port de communication RS485-Modbus, tandis que les compteurs de chauffage et d'eau communiquent via Mbus.

Plusieurs modèles de compteurs Modbus sont enregistrés dans le portail Climkit tels que les Eastron, Inepro, Schneider, ABB etc.

En sélectionnant le bon modèle, le Gateway va automatiquement lire les registres correspondants.

Paramètres Modbus

Par défaut, le Gateway lit les compteurs et autres appareils Modbus avec les paramètres suivants :

  • Baudrate: 9600
  • Parity: None
  • Data Size: 8 bit
  • Stop bits: 1 bit

Il s'agit également de la configuration par défaut des compteurs Eastron SDM630M.

Le baudrate et la parité peuvent être modifiées dans le compteur directement via son interface.

D'autres modèles comme l'Inepro PRO380 et le Polier MTR80LMOD ont une configuration de parité par défaut différente :

  • Parity: EVEN

Si l'on garde ces valeurs par défaut il faut les insérer dans les paramètres additionnels du compteur sur le portail en ligne Climkit :

On entre E pour EVEN et N pour NONE.

parity

E

Autres modèles (configuration avancée)

Dans le cas de l'utilisation d'un compteur dont le modèle n'est pas répertorié, on peut paramétrer manuellement les registres à lire et préciser de quel type de données il s'agit.

Sélectionner le modèle generic_modbus et éditer les paramètres additionnels.

Paramètres à définir

Voici la liste des paramètres à définir. Les paramètres marqués par * sont obligatoires.

*reg <int>: numéro de registre à lire depuis le compteur.

*unit <str>: unité des données lues (ex. 'L1_v').

size <int>: taille des données (1, 2, 4, 8). La valeur par défaut est 1 pour Int16 ou Float16.

factor <float>: multiplie les données par le facteur (ex. 0.001 pour convertir Wh en kWh) (float). La valeur par défaut est 1.

pause <float>: temps d'attente après la lecture des données d'un registre. Par défaut 0.3 pour les compteurs TCP et 0 pour les compteurs série.

function_code : code de fonction Modbus Serial. Habituellement 3 ou 4. Par défaut 3.

round <int> : Nombre de chiffres après la virgule décimale. Par défaut 2.

swap_words <bool or 1 or 0 >: inverse l'ordre des registres si la taille > 1.
Unit

Le paramètre unit définit le type de donnée lu.

Pour un compteur électrique les unités sont en_im (énergie importée) et en_ex (énergie exportée).

Pour un compteur thermique : heat_energy_kwh, cold_energy_kwh, flow_temp, return_temp, diff_temp, power_kw, vol_flow_m3_h, vol_m3

Pour un compteur d'eau : vol_m3

Reg

Le paramètre reg définit la position en décimal du registre Modbus à lire. Se référer à la documentation du compteur ou de l'appareil.

Voici un exemple pour un compteur thermique où l'on relève les index d'énergie chaleur et froid.

reg

[{'unit': 'heat_energy_kwh', 'reg': 2544, 'size': 2, 'factor': 0.001}, {'unit': 'cold_energy_kwh', 'reg': 2546, 'size': 2, 'factor': 0.001}]

Voici un exemple pour un compteur électrique (type: electricity) pour lequel on lit uniquement le registre d'énergie importée en kWh.

reg

[{'unit': 'en_im', 'reg': 1050, 'size': 2, 'swap_words': True}]

Comment avons-nous fait ?

Configuration des écrans d'affichage

Traitement des données de comptage

Contact