Pour faciliter l’interopérabilité entre applications, Microsoft a élaboré dans les années 80-90 des protocoles de communication client-serveur pour sa gamme de système d’exploitation Windows s'appuyant sur des interfaces d’échanges de données standardisées.
Le premier protocole apparu avec Windows 2.0 et OS/2 en 1987 fut le DDE (Dynamic Data Exchange), puis OLE (Object Linking and Embedding) dans sa première version en 1990. Plusieurs déclinaisons d'OLE ont été mis au point, jusqu’à l’OLE for Process Control (OPC) en 1995. Cette version est destinée à l’interopérabilité des systèmes industriels, devenant à ce jour l'un des protocoles d'échange entre applications le plus utilisé dans l’industrie.
S’appuyant sur ces protocoles, les fabricants d’automatisme et les éditeurs de logiciels de supervision ont pu ouvrir leurs solutions à des applications tierces en proposant des interfaces OPC ou DDE et ainsi permettre à celles-ci d'échanger de l’information.
Pour permettre à ALERT de s'ouvrir à d'autres applications métiers, nous avons intégré les interfaces client et serveur OPC pour répondre à différents besoins.
L'interface cliente permet l’acquisition de données, d’événements et d'alarmes sur des applications tierces disposant d'une interface serveur OPC. Elle permet également l'exploration automatique des données à surveiller.
L'interface serveur, quant à elle, met à disposition en temps réel l'état de différentes variables du logiciel (alarmes, informations système, ...) permettant ainsi à des application tierces ou à ALERT lui même de faire du monitoring sur l'état du système dans son ensemble.
Plusieurs normes OPC existent et ALERT intègre les suivantes :
Type liaison OPC | Mode de fonctionnement |
DA (Data Access) | Client/Serveur |
AE (Alarm and Events) | Client |
UA (Unified Architecture) | Client |
L'interface client DDE intégrée par défaut dans ALERT permet l'acquisition automatique de données proposées par toute application serveur DDE.
Le logiciel inclut également une interface serveur DDE capable de fournir en temps réel des informations sur la configuration de son état et de traiter des commandes type "ligne de commande".