====== 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.\\ {{:tma:plcnext_base_1_6_1.png?400|}} \\ ===== 3. Datalogger Natif ===== Il faut vérifier que l'onglet Data Logger Sessions est bien vide : \\ {{:tma:data_logger_session.png}} \\ ===== 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) : * Vérifier que le buffer StrTextEMAIL est vide * Vérifier que le "DataRec" est en "closing connection" * Si le "DataRec" est vide, écrire 'test' dans le buffer strTextEMAIL et vérifier que le mail s'envoie correctement ("DataRec en "closing connection" à la fin de l'envoie) {{:tma:mails.png}} \\ 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 : \\ {{:tma:pooling.png}} \\ ===== 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 : {{:tma:calendrier.png}} \\ ==== 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 \\ {{:tma:script.png}} \\ ==== 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 : \\ {{:tma:avance_ptr.png}} \\ ==== 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 [[tma:pv:memory_log_pdl_engie|Memory log pdl engie]] {{tag>Engie arret_chien_de_garde AXCF2152 AXCF1152 AXCF3152 PDL cdg PLCNext pooling MemoryLog RAM PTR Sequencement}}