Relais de protection P14D - commander un disjoncteur par la liaison série [RESOLU]

Partie du forum pour tout ce qui concerne les automates industriels B&R, Beckhoff, Phoenix Contact etc...
Répondre
Laurent
Générateur de blocs fonctions
Générateur de blocs fonctions
Messages : 124
Enregistré le : 20 oct. 2015, 11:16
Localisation : Oise et Ile-de-France / France

Relais de protection P14D - commander un disjoncteur par la liaison série [RESOLU]

Message par Laurent »

Bonjour,

faute de mieux, je poste ici, mais ça concerne la communication avec un relais de protection haute tension, pas vraiment un automate "autre".

Je suis en train de modifier un programme API (un Quantum, mais peu importe) pour communiquer en MODBUS avec un relais de protection P14D, le genre d'équipement qui assure la protection des réseaux électriques haute tension.
La lecture des registres d'entrées MODBUS fonctionne impec : je peux lire les mesures qui m'intéresse, l'état des entrées logiques, tout bien.

Je dois aussi piloter l'ouverture et la fermeture du disjoncteur, et c'est là que ça se gâte.
J'ai un peu de documentation, un fichier Excel qui détaille la fonction associée à chaque registre MODBUS.
Dans ce fichier, on trouve un registre dédié au pilotage du disjoncteur : 4x00021, la valeur 1 commande l'ouverture, la valeur 2 commande la fermeture.
Le requête MODBUS d'écriture part bien de l'API, et le relais P14D répond par un code d'exception, précisant 'illegal data address'.
D'après la doc, il se peut que ce soit à cause d'un niveau d'accès à définir pour la liaison série (Rear Port 1).
Et je ne trouve aucune info sur comment activer le bon niveau d'accès... sans compter qu'il peut y avoir d'autres conditions pour que ce relais accepte les commandes par liaison série.

Peut-être quelqu'un ici aurait déjà travaillé avec ces relais de protection, et aurait une bonne info à partager ?

--
Laurent
Laurent
Laurent
Générateur de blocs fonctions
Générateur de blocs fonctions
Messages : 124
Enregistré le : 20 oct. 2015, 11:16
Localisation : Oise et Ile-de-France / France

Re: Relais de protection P14D - commander un disjoncteur par la liaison série [RESOLU]

Message par Laurent »

Bonjour,

je marque ce sujet résolu, on y est arrivé.

Il faut bien envoyer le mot de passe pour passer le relais en niveau d'accès 3, acceptant les commandes.
Pour info, le mot de passe par défaut est 'AAAA' ; on peut l'envoyer en écrivant la valeur 16#4141 dans les registres 0 et 1.
Cela fait passer le relais en niveau d'accès 3, pour le port par lequel on a envoyé le mot de passe (et uniquement celui-ci !).
Le niveau d'accès reste actif tant qu'on communique avec le relais, même si on se contente de faire des requêtes de lecture ; les écritures se bloquent au delà d'un timer configurable dans le paramétrage du relais (de 1 à 30 minutes, 15 minutes par défaut).

On a eu une surprise avec un relais en particulier, qui semblait pourtant paramétré comme les autres : au lancement de la communication, les requêtes de lecture étaient bloquées aussi, le relais renvoyait un code d'exception 16#8402 (illegal data address).
Il fallait aussi envoyer le mot de passe pour faire des lectures…

Donc, pour piloter un disjoncteur via la communication avec un relais P14D en MODBUS RTU :
envoyer le mot de passe aux adresses décrites par la doc (la doc indique les adresses 4x00001 et 4x00002, comprendre les registres de sortie 0 et 1 dans la trame MODBUS),
là, on peut écrire dans le registre de commande (4x00021, soit le registre de sortie 20), la valeur 1 pour déclencher, la valeur 2 pour enclencher ; toute autre valeur est rejetée par un code d'exception 16#8403 'illegal data value',
Il faut encore gérer ces commandes dans le code embarqué dans le relais (le PSL, qui se programme en FBD), sinon les commandes resteraient inopérantes.

Bref, on s'est bien marré.
Laurent
Répondre