Le module relais de puissance fait office de serveur Modbus. À ce titre, il répond aux requêtes envoyées par un client. Il n'initie jamais de requête de sa propre initiative.
Connexion et alimentation
Pouvoir
L'eGauge PRM3 peut être alimenté via le port USB-A ou le port 4 broches avec un adaptateur secteur 5 V/500 mA. N'utilisez qu'une seule de ces méthodes pour alimenter le PRM3.
Communication
Le PRM3 utilise le port à 4 broches pour la communication série Modbus RTU RS-485.
Registres Modbus
Tous les registres sont des registres de maintien. Ils peuvent être lus avec « Lire les registres de maintien » (code de fonction 0x03) et écrits avec « Écrire dans un registre » (code de fonction 0x06). Le PRM3 utilise un adressage de base 0.
| Adresse | Taille | Nom | Taper | Description |
| 0 | 1 | paramètre RS-485 | Entier non signé de 16 bits | Code de débit en bauds (bits 0 à 7) et parité (bits 8 à 15) * |
| 1 | 1 | Numéro d'unité | Entier non signé de 16 bits | Numéro d'unité Modbus (1–247) |
| 2 | 1 | Masque relais | Entier non signé de 16 bits | État du relais. En écriture, si le bit ( n -1) est activé, le relais n est fermé, sinon il est ouvert. En lecture, si le bit ( n -1) est activé, le relais n est fermé, sinon il est ouvert. |
| 3 | 1 | Ensemble de relais | Entier non signé de 16 bits | Fermeture des relais. En écriture, si le bit ( n -1) est activé, le relais n est fermé ; sinon, il reste inchangé. En lecture, si le bit ( n -1) est activé, le relais n est fermé ; sinon, il est ouvert. |
| 4 | 1 | Relais dégagé | Entier non signé de 16 bits | Relais ouverts. En écriture, si le bit ( n -1) est activé, le relais n est ouvert ; sinon, il reste inchangé. En lecture, si le bit ( n -1) est activé, le relais n est fermé ; sinon, il est ouvert. |
| 100 | 2 | Écriture EEPROM | Entier non signé de 32 bits | Nombre de fois où l'EEPROM a été écrite. |
| 102 | 2 | Relais 1 compte | Entier non signé de 32 bits | Compteur de commutation du relais 1. |
| 104 | 2 | Relais 2 | Entier non signé de 32 bits | Compteur de relais 2. |
| 106 | 2 | Relais 3 temps | Entier non signé de 32 bits | Compteur de relais 3. |
| 108 | 1 | Durée d'ouverture minimale | Entier non signé de 16 bits | Durée minimale (en secondes) pendant laquelle un relais reste ouvert. |
| 109 | 1 | Durée minimale de fermeture | Entier non signé de 16 bits | Durée minimale (en secondes) pendant laquelle un relais reste fermé. |
Registre des paramètres RS-485 *
Le registre de paramètres RS-485 permet d'accéder au débit binaire et à la parité RS-485.
Les huit bits de poids fort définissent la parité, comme indiqué ci-dessous. Notez que la valeur numérique correspond à la valeur décimale du code ASCII, et non à une valeur binaire .
| Code ASCII | Valeur (décimal) | Mode de parité |
| n | 110 | pas de parité |
| e | 101 | même parité |
| o | 111 | parité impaire |
Les huit bits de poids faible définissent le débit binaire comme indiqué ci-dessous :
| Valeur (décimal) | débit en bauds |
| 1 | 9600 bps |
| 2 | 19200 bps |
| 4 | 38400 bps |
| 6 | 57600 bps |
| 12 | 115200 bps |
Par exemple, une valeur de 0x6506 indiquerait 57600 bps et une parité paire.
Numéro d'unité
Le registre « Numéro d’unité » définit le numéro d’unité Modbus sous lequel l’appareil répond. Par défaut, cette valeur est 1, mais elle peut être définie sur n’importe quel nombre compris entre 1 et 247.
Commandes de relais
- Pour plus d'informations sur l'utilisation des masques pour contrôler les relais, consultez cet article.
Les registres « Masque de relais », « Configuration des relais » et « Effacement des relais » permettent d’accéder aux relais.
Ils renvoient tous la même valeur lorsqu'ils sont lus : dans la valeur renvoyée, si le bit ( n − 1) est défini, cela signifie que le relais n est fermé et s'il est effacé, cela signifie que le relais est ouvert.
Lorsqu'elles sont écrites , les trois registres ont un comportement différent : « Masque de relais » configure tous les relais selon la valeur écrite. Autrement dit, si le bit ( n − 1) est activé, le relais n est fermé ; sinon, il est ouvert. En revanche, écrire « Relais activé » ne ferme que les relais dont le bit correspondant est activé. De même, écrire « Relais désactivé » n'ouvre que les relais dont le bit correspondant est activé.
Bloc SunSpec
Le module de relais de puissance fournit également un bloc d'adresses permettant l'identification du dispositif conformément à la norme SunSpec.
Comme SunSpec ne propose pas de modèle standardisé pour les contrôleurs de relais, le seul bloc de modèle fourni est le modèle commun (SunSpec DID 0x0001), comme illustré ci-dessous. Ce bloc permet d'identifier l'appareil par son fabricant et son nom de modèle.
| Adresse | Taille | Nom | Taper | Description |
| 40000 | 2 | SunSpec_ID | Entier non signé de 32 bits | Valeur = 0x53756e53 ("SunS"). |
| 40002 | 1 | SunSpec_DID | Entier non signé de 16 bits | Valeur = 0x0001 (Bloc de modèle commun) |
| 40003 | 1 | Longueur SunSpec | Entier non signé de 16 bits | Valeur = 65 (Longueur du bloc). |
| 40004 | 16 | Fabricant | chaîne de 32 bits | Fabricant « eGauge ». |
| 40020 | 16 | Modèle | chaîne de 32 bits | Nom du modèle (ex. : « PRM3 »). |
| 40036 | 8 | Options | chaîne de 16 bits | Options installées. |
| 40044 | 8 | Version | chaîne de 16 bits | Version du produit (ex. : « 1.00 »). |
| 40052 | 16 | Numéro de série | chaîne de 32 bits | Numéro de série (ex. : « 3N013453 »). |
| 40068 | 1 | Adresse du périphérique | Entier non signé de 16 bits | Numéro d'unité Modbus. |
| 40069 | 1 | SunSpec_DID | Entier non signé de 16 bits | Valeur = 0xffff (Marqueur de fin). |
| 40070 | 1 | Longueur SunSpec | Entier non signé de 16 bits | Valeur = 0x0000. |
Exemple typique de câblage RS-485

Connexion au PRM3 via Windows
Développez la section ci-dessous pour obtenir des informations sur la connexion au PRM3 depuis un PC Windows à l'aide d'un simulateur de maître Modbus. Les exemples fournis sont donnés à titre indicatif.
Accéder à PRM3 depuis Windows
- eGauge Systems ne teste ni ne garantit la sécurité ou l'exactitude des logiciels tiers.
Repérez le port COM du PRM3
Étape 1 : Ouvrez le Gestionnaire de périphériques, ce qui peut se faire en ouvrant le menu Démarrer, en tapant « Gestionnaire de périphériques » et en cliquant sur « Ouvrir » :

Étape 2 : Développez la section « Ports (COM et LPT) » :

Si vous avez plusieurs entrées « Périphérique série USB », vous pouvez débrancher l’eGauge PRM3, puis le rebrancher pour voir quel port COM apparaît lorsqu’il est connecté.
Utilisation de QModMaster pour communiquer avec le relais
Étape 1 : Installez et ouvrez le simulateur maître Modbus QModMaster.
Étape 2 : Cliquez sur Options et « Modbus RTU… » pour configurer la connexion Modbus :

Étape 3 : Modifiez le numéro de port COM et les autres paramètres si nécessaire, puis appuyez sur OK. Les paramètres RS-485 par défaut pour l’eGauge PRM 3 sont : 19 200 bauds, 8 bits de données, 1 bit d’arrêt, sans parité.

Étape 4 : Ouvrez à nouveau le menu Options, accédez à Paramètres et modifiez l’adresse de base en lui attribuant la valeur 0.
Attention ! L’utilisation d’une « adresse de base » incorrecte entraînera la lecture ou l’écriture sur un registre dont l’adresse est inférieure ou supérieure à celle du registre prévu !

Étape 5 : Assurez-vous que le mode Modbus est réglé sur RTU et cliquez sur le bouton « connecter » dans la barre d’outils située sous les menus « Options » et « Commandes » :

Étape 6 : Tout d'abord, nous allons régler le masque du relais sur 6 (110) pour ouvrir le relais 1 et fermer les relais 2 et 3.
- Vérifiez que l'adresse de l'esclave (numéro d'unité) est correctement configurée. Par défaut, PRM3 est configuré sur 1.
- Choisissez « Écrire dans un seul registre (0x06) ».
- Définir l'adresse de départ 2 (format décimal).
- Choisissez « Bin » (binaire) pour le format des données, cela facilite l'utilisation des masques.
Dans la case, saisissez « 110 » et cliquez en dehors de la zone de saisie du nombre pour l'enregistrer. - Cliquez sur le bouton « Lecture/Écriture » situé à côté du bouton de connexion.
Après l'envoi, le nombre de « Paquets » (texte bleu en bas) devrait augmenter.

Étape 7 : Relisez le registre pour confirmer que le masque a été configuré. Modifiez le code de fonction en « Lecture des registres de maintien (0x03) » et assurez-vous que le « Nombre de registres » est défini sur 1 (car il s’agit d’une valeur 16 bits) et le format des données sur « Bin ». Cliquez à nouveau sur le bouton Lecture/Écriture ; les paquets devraient s’incrémenter. La case devrait toujours afficher « 110 », ce qui signifie que le relais 1 est ouvert et que les relais 2 et 3 sont fermés.

Étape 8 : Activons le relais 1 et laissons les relais 2 et 3 tels quels. Nous utiliserons pour cela le registre « Configuration des relais » (adresse 3). Modifiez l’« Adresse de départ » à 3, le code de fonction à « Écriture dans un seul registre » et remplacez 110 par 001 dans la zone de texte (les zéros non significatifs ne sont pas nécessaires). Ceci indique au PRM3 de fermer le relais 1 et de laisser les relais 2 et 3 dans leur état actuel. Appuyez sur Lecture/Écriture et notez l’incrémentation du paquet.

Étape 9 : Enfin, nous allons lire l’état actuel du masque du relais. Modifiez le code de fonction en « Lecture des registres de maintien » et cliquez sur le bouton « Lecture/Écriture ». Vous pouvez lire n’importe quel registre du relais pour obtenir son masque actuel. Notez l’augmentation du nombre de paquets. La zone de texte ci-dessous affiche les données reçues : 111, ce qui indique que les 3 relais sont fermés.
