Cause

L'erreur 0x80040202 apparaît dans l'application OPC Client (ibaPDA ; pendant les contrôles d'application) lorsqu'elle ne reçoit pas de rappel du serveur OPC.


Symptômes

Lorsqu'une application client OPC n'est pas en mesure de recevoir des rappels d'un serveur OPC, les utilisateurs remarquent au moins deux symptômes :

1. L'application client OPC ne parvient pas à créer un groupe OPC.

2. L'application Client OPC ne sera pas en mesure d'afficher les mises à jour de données. Au lieu de cela, les valeurs des données resteront inchangées.


Dans le ibaPDA IO-manager vous pourrez vous connecter au serveur OPC et ajouter des signaux, cependant pendant l'application de la configuration vous recevrez l'erreur DCOM 0x80040202.

 

Contexte

OPC prend en charge un mécanisme de rapport par exception (RBX) par lequel le serveur OPC envoie des mises à jour de données au client OPC (tel qu'une IHM, un Historian, un APC, un ERP, etc.) chaque fois que les données changent (également connu sous le nom de "sur changement de données"). La terminologie OPC désigne ce mécanisme par le terme "abonnement". Les serveurs OPC peuvent réaliser des mises à jour par abonnement en utilisant des rappels asynchrones. En d'autres termes, lorsque le serveur OPC détecte un changement dans les données, il "rappelle" immédiatement le client avec la mise à jour des données. Il s'agit d'un mécanisme asynchrone car le client OPC ne sait pas quand le serveur OPC enverra les données. Cependant, si vous ne définissez pas correctement les paramètres de sécurité, ces mises à jour de données échoueront. Les applications du client OPC indiquent généralement cet échec en attribuant la valeur "Bad" à la qualité d'un élément.


Les rappels obligent un serveur OPC à établir activement une connexion avec un client OPC. Dans un sens, le serveur OPC devient un client et le client devient un serveur.


ibaPDA n'utilise que des connexions asynchrones.


Test

Un test simple pour déterminer si un rappel échoue ou non consiste à forcer le client OPC à émettre une "Synchronous Cache Read" (lecture synchrone du cache) ou une "Synchronous Device Read" (lecture synchrone de l'appareil). Si l'une ou l'autre de ces opérations renvoie des valeurs de qualité "bonne", l'absence de mise à jour des données est probablement due au fait que le serveur OPC est incapable d'envoyer des rappels à l'application du client OPC.


Il est probable que vous ayez besoin d'autres outils tiers pour effectuer ce test, qui peut être configuré dans Matricon OPC Explorer. Par défaut, l'explorateur OPC utilise le mode de lecture Async :


Solution

Donnez à la machine ibaPDA les mêmes droits qu'à un serveur OPC. Voir l'annexe, ou consulter le manuel iba OPC.