Table des matières

Arrêt chien de garde automate *152

L'objectif de ce wiki est de répertorier toutes les actions pouvant empêcher l'arrêt Chien de garde des automates de la gamme PLCnext de Phoenix Contact (1152, 2152, 3152 ).
Si un automate de cette gamme fais des arrêts chien de garde régulièrement, veillez vérifier tous ces points :

1. Mettre à jour le firmware vers la version 2022.0.8 LTS

Les vieux firmware automates (<2022) causent des problèmes d'arrêt chien de garde, Phoenix contact nous recommande de passer tous les automates dans la version de firmware 2022.0.8 LTS.

2. Bibliothèque PlcNext Base

Phoenix contact nous recommande de passer en version de bibliothèque PlcNext Base 1.6.1 pour éviter les arrêt chien de garde.

3. Datalogger Natif

Il faut vérifier que l'onglet Data Logger Sessions est bien vide :

4. Envoie des mails

Il faut vérifier que l'envoie des mails fonctionne bien et qu'ils ne sont pas bloqués sur l'automate.
(L'automate peut planter en essayant de les envoyer en boucle et en faisant saturer la RAM de mails) :


Si aucunes de ces solutions ne fonctionne, les arrêts chien de garde sont probablement dues à une surcharge de l'automate.
Voici des solutions pour réduire la charge des automates sur les centrales Solaires

5. Passage en mode pooling

Il faut vérifier que tous les postes soient bien en mode pooling :

6. Séquencement de la lecture en OPC des PTRs

Ce qui cause de gros piques de surcharge de l'automate est de vouloir lire toutes les données de tous les PTRs en même temps et toutes les secondes.
Cette procédure permet de lire les PTRs une par un, ce qui réduit grandement la charge de l'automate.

1. créer un nouvel évènement dans le calendrier

Se connecter sur AVEVA et mettre en place la licence.
Créer un nouveau tag booléen :PC_TopMAJOPC_PTR
Aller dans l'onglet calendrier d'AVEVA et ajouter un évènement qui change l'état de ce bit toutes les secondes :

2. créer un nouveau script

Aller dans l'onglet task, puis dans Script.
Faire clique droit insérer, mettre en Description :
“Séquencement de la lecture OPC des PTRs”
Et bien mettre en Exécution le tag : PC_TopMAJOPC_PTR

3. Mise en oeuvre du script

A l'intérieur du script, vous pouvez copier coller le script ci-dessous :

'Variables disponible uniquement pour ce groupe peuvent être déclarés ici.

'Le code configuré ici est exécuté alors que la condition configuré dans le champ exécution est VRAI.
' Mise à jour pointeur table OPC à lire
' De tables de 2 à 10 concernées

$idxLectOPC = $idxLectOPC + 1
if $idxLectOPC < 2 then
$idxLectOPC = 2
ElseIf $idxLectOPC > 5 Then
$idxLectOPC = 2
end if

Select Case $idxLectOPC
Case 2
$TOP_MAJOPC_Feuil2 = not $TOP_MAJOPC_Feuil2
Case 3
$TOP_MAJOPC_Feuil3 = not $TOP_MAJOPC_Feuil3
Case 4
$TOP_MAJOPC_Feuil4 = not $TOP_MAJOPC_Feuil4
Case 5
$TOP_MAJOPC_Feuil5 = not $TOP_MAJOPC_Feuil5
End Select
$PC_TopMAJOPC_PTR=0

Il faut ensuite créer la variable idxLectOPC et autant de variables TOP_MAJOPC_Feuil que vous avez de PTRs sur votre site, en commençant par le chiffre 2.
Pensez bien à mettre autant de lignes dans le CASE que vous avez de PTRs également.

4. Modification du mode pooling avec les PTRs

Finalement, aller dans l'onglet avancé de la communication avec chaque PTRs et rentrer le tag TOP_MAJOPC_Feuil correspondant au numéro du PTR :

Si l'automate continue de faire des arrêts chien de garde réguliers malgré tous ces points,je vous conseil de mettre en place un suivi de la RAM sur l'automate et d'envoyer les logs de ce script à phoenix contact

⇒ Pour cela, vous pouvez suivre la procédure du wiki Memory log pdl engie