Skip to main content

Diagnostic dans l'application

État CANopen

L'état CANopen d'un équipement peut être interrogé dans l'application de trois manières différentes :

  • GET_STATE bloc fonction (CAA CiA 405 bibliothèque)

  • <name in device tree>.CANopenState propriété (3S CANopenStack bibliothèque)

  • <name in device tree>.GetDeviceState méthode (Diagnostic de l'appareil CAA bibliothèque)

    La méthode ne renvoie pas un état CANopen, mais les informations indiquant si l'appareil est en cours d'exécution ou non. Une table de correspondance entre CANopenState et DEVICE_STATE se trouve dans la documentation de la bibliothèque de CANopenStack.

Le gestionnaire CANopen possède également des propriétés pour interroger si oui ou non tous les esclaves requis et facultatifs sont dans le OPERATIONAL Etat. Notez que ces propriétés ne sont définies qu'une seule fois après la phase de configuration si la condition s'applique. Si un esclave tombe ensuite en panne, ces propriétés restent définies en conséquence.

De plus, l'état CANopen peut également être défini à l'aide du bloc fonctionnel NMT (bibliothèque CAA CiA 405) ou la méthode <name in device tree>.SetCommunicationState (Diagnostic de l'appareil CAA bibliothèque).

État du noyau CANopen

Une interrogation de l'état du noyau CANopen peut être utilisée pour détecter une erreur de bus, une erreur de configuration ou une erreur de surveillance.

L'état peut être interrogé au moyen de la propriété <name of CANopen Manager in device tree>.KernelState ou le bloc fonction GET_CANOPEN_KERNEL_STATE (CAA CiA 405 bibliothèque).

Urgence

Vous pouvez recevoir des télégrammes d'urgence au moyen des blocs fonctionnels CIA405.

  • RECV_EMCY: Réception de toutes les urgences de tous les appareils du brin de bus

  • RECV_EMCY_DEV: Réception des urgences d'un appareil spécifique

Champ d'erreur et registre d'erreur prédéfinis

Les objets du répertoire d'objets d'un esclave peuvent être lus avec le SDO_READ4 et SDO_READ_DATA Blocs fonction CiA405.

Diagnostic de sécurité

Dans le cas de la sécurité, les blocs fonctionnels créés implicitement avec le préfixe "S_" fournissent des sorties correspondantes pour le diagnostic. Avec ces blocs fonctionnels, vous pouvez définir si la communication SRDO vers un esclave est active ou si l'état de sécurité a été atteint.

En outre, le bloc fonctionnel fournit également des entrées pour acquitter les erreurs d'un esclave individuel ainsi que pour désactiver temporairement la communication SRDO.

Pour plus d'informations, consultez : CANopenManagerSIL2 et CANRemoteDeviceSafe (FB)