Skip to main content

Diagnostic dans l'application

le PROFINET Le contrôleur est équipé d'un tampon interne pour les données de diagnostic. Cette "base de données d'observation" est constamment mise à jour en arrière-plan (transparent pour l'utilisateur) par les alarmes envoyées par les appareils et par les services acycliques d'établissement de la connexion. De cette manière, avec un délai minimum, l'état de diagnostic réel de tous les appareils est reflété dans l'application hôte et peut y être évalué à tout moment. Alternativement ou en plus, l'application peut recevoir les alarmes individuelles (CommFB.RALARM) ou relire les données de diagnostic (CommFB.RDREC).

L'API de la ProfinetCommun et CommFB bibliothèques décrites ici est identique pour les CODESYS PROFINET pile ainsi que la solution CIFX. Cependant, les services individuels ne sont pas entièrement mis en œuvre par la solution CIFX (voir fiche technique). Pour obtenir des exemples de code, consultez la documentation de la bibliothèque des blocs fonctionnels répertoriés ci-dessous.

Bloc fonctionnel de l'appareil

Pour chaque PROFINET Appareil dans l'arborescence des appareils, un bloc fonction est créé qui fournit des informations de base sur l'état de connexion ou de configuration de l'appareil. Par exemple, pour demander des entrées de diagnostic ou pour une configuration de module différente.

_pnio_img_device_fb.png

De la même manière, une instance de bloc fonction est également créée pour que le contrôleur fournisse des informations sur l'état de fonctionnement du PROFINET Manette.

Pour plus d'informations, consultez : IoDrvProfinet.ProfinetController et IoDrvProfinet.PNSlave

Statut de fournisseur et de consommateur

Ces informations d'état sont toujours transmises avec les données d'E/S. Il peut être ajouté au CODESYS Mappage E/S du module respectif.

Alarmes

Les alarmes envoyées par PROFINET Les appareils peuvent être reçus au moyen du CommFB.RALARM bloc fonctionnel. Pour un exemple de code pour l'évaluation des informations, consultez la documentation de la bibliothèque pour ProfinetCommon.DiagnosisDataReader.

État de l'appareil et du sous-module

En plus de l'accès direct aux sorties du bloc fonctionnel de l'appareil, il y a aussi la possibilité d'utiliser le ProfinetCommon.DeviceIterator POU pour parcourir tous les appareils conçus pour un contrôleur.

De la même manière, le ProfinetCommon.SubmoduleIterator POU est utilisé pour itérer les sous-modules configurés pour un PROFINET Dispositif et d'évaluation de l'individu ProfinetCommon.SubmoduleState.

Tampon de diagnostic (diagnostic shadowing)

Avec le ProfinetCommon.DiagnosisDataBuffer POU, les données mises en mémoire tampon localement dans la « Shadowing Database » du contrôleur peuvent être appelées.

Alternativement, le ProfinetCommon.GetSubmodulelDiagnosis() La fonction pourrait également être utilisée pour interroger toutes les entrées de diagnostic mises en mémoire tampon pour un seul sous-module.

Codes d'erreur et textes de diagnostic

Le numérique PROFINET codes d'erreur (ErrorCode et ExtErrorCode) peut être appelé au moyen des fonctions et blocs fonctionnels mentionnés ci-dessus. Si les descriptions textuelles correspondantes sont requises dans une application (par exemple, pour être affichées dans une visualisation), ces descriptions textuelles doivent alors être téléchargées séparément. Pour plus d'informations, voir : Commande : AjouterPROFINETRessources de diagnostic.