Sie sind auf Seite 1von 65

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Serveur OPC
applicom 3.7
un produit Woodhead Software & Electronics

Opc.doc
Copyright 2003 Woodhead Software & Electronics. Tous droits rservs.
http://www.applicom-int.com

04/09/2003

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Opc.doc

04/09/2003

TM

TM

Copyright 2003 Woodhead Software & Electronics. Tous droits rservs. Tous les produits applicom , Direct-Link , RJ-Lnxx ,
TM
SST sont des marques dposes de Woodhead Software & Electronics. Tous les autres noms de produits sont des marques
dposes de leurs fabricants respectifs.
http://www.applicom-int.com

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Table des matires


1.

Prsentation du serveur OPC .......................................................3


Contexte d'utilisation du serveur OPC ....................................................................3
Dmarrage du serveur OPC (local et distant) .........................................................5
Interface graphique du serveur OPC ......................................................................6

2.

Paramtrage du serveur OPC .......................................................7


Paramtres de base ................................................................................................7
Mode de paramtrage 'expert' ................................................................................7

3.

Principe daccs aux donnes......................................................8


Le ProgID ................................................................................................................9
Le browsing des ItemID.........................................................................................10
Gestion des groupes (OPC Group).......................................................................11
Mode d'accs aux donnes du serveur OPC........................................................13
Horodatage des donnes ......................................................................................14
Qualit des items...................................................................................................14
Limitation du nombre dI/O Items (SW1000ETH seulement) ................................15
Types de topic daccs aux variables ...................................................................17
Configuration des topics........................................................................................18

4.

Accs aux Variables images ou locales ....................................19


Paramtrage minimal dun topic "variable image" ou "variable locale".................21
Syntaxes des variables internes ...........................................................................21
Accs aux variables unitaires................................................................................24
Optimisation des requtes synchrones et asynchrones .......................................24
Utilisation du mode tableau ...................................................................................25
Utilisation du mode message ................................................................................26
Bit de mots ............................................................................................................27
Suffixe optionnels ..................................................................................................28
Descripteur standard pour laccs la data-base.................................................29
Descripteur standard daccs aux variables images.............................................31
Information de diagnostics et contrle ..................................................................32
Les noms symboliques..........................................................................................34

5.

Accs aux Variables images dun contrleur Logix 5000 ........37


Paramtrage dun topic "variable image" dun contrleur Logix 5000 ..................37
Syntaxes des variables internes ...........................................................................38
Optimisation des requtes synchrones et asynchrones .......................................38
Limitations .............................................................................................................39
Information de diagnostics et contrle ..................................................................39

6.

Accs aux paramtres des fonctions cycliques .......................41


Contrle des fonctions cycliques de PCCYC ........................................................41
Items lis un topic "fonction cyclique" ................................................................42

7.
Accs aux informations gnrales du serveur (Topic
"SYSTEME") ..................................................................................................45

Serveur OPC

Table des matires

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
8.

Accs au WatchDog et lentre TOR (Topics "CARDx") .......46

9.

Accs aux signaux modems (Topic "CHANx") .........................47

10.

Interface de Diagnostic ...............................................................48


Les requtes de communication ...........................................................................50
Optimisation de la communication ........................................................................50
Vue d'espionnage des items .................................................................................51
Vue des messages................................................................................................53

11.

Dveloppement d'un client OPC.................................................54


Contextes de dveloppement ...............................................................................54
Dveloppement d'un client en C et C++ ...............................................................55
Informations ncessaires au dveloppement .......................................................59

12.

Serveur OPC

Index .............................................................................................62

ii

Table des matires

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

1.

Prsentation du serveur OPC

Contexte d'utilisation du serveur OPC


Le package applicom inclut des interfaces logicielles de haut niveau, permettant de rendre
totalement transparent pour lutilisateur laccs aux donnes. Ces interfaces logicielles permettent
des applicatifs "client" de manipuler les donnes mises disposition par applicom sans se soucier
de la gestion daccs vers les interfaces applicom (ou vers lmulateur) et de loptimisation de la
communication.

OPC : Qu'est ce que c'est?


OPC est un standard de communication bas sur la technologie OLE/COM. Cette dernire
constitue le moyen dchange dinformations prconis par Microsoft entre applications MSWindows. Le modle COM est destin assurer une interoprabilit entre des composants
logiciels dvelopps de manire indpendante par des diteurs distincts. Cette interoprabilit est
indpendante des langages de dveloppement utiliss. COM peut tre considr comme un bus
logiciel assurant un rle de Plug And Play entre des modules logiciels.

OPC nest en fait que la spcification dun standard. Celui-ci dcrit lensemble des objets et de
leurs interfaces que tout serveur OPC devra implmenter de faon assurer une plus grande
interoprabilit entre des applications de contrle/commande/supervision, des quipements
industriels (API, capteurs, actionneurs) et des applications bureautiques de gestion. Pour plus
dinformations sur les spcifications OPC vous pouvez consulter le site de la fondation OPC
http://www.opcfoundation.org.

Serveur OPC

Prsentation du serveur OPC

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
Le serveur OPC

Le serveur OPC applicom est une application ("APP_OPC.EXE") pouvant sexcuter sous les
environnements Windows 32 bits et jouant le rle de serveur de donnes industrielles auprs de
toute application cliente OPC compatible avec les spcifications Custom Data Access 1.0A et 2.0.5

Il est donc aisment utilisable partir de tout logiciel intgrant de base une interface client OPC :
progiciels de supervision,
ActiveX de communication applicom
mais galement partir de dveloppements spcifiques
applications crites en C ou C++
Le serveur OPC peut tre utilis localement (depuis une application cliente situe sur la mme
machine) ou distance travers DCOM (depuis une application cliente situe sur une autre
machine connecte par le rseau).

Le serveur OPC fonctionne avec tous les protocoles supports sur les solutions applicom,
excepts Batibus et 3964 en messagerie libre.
Dans le cas des kits de dveloppement, certaines limitations lies la nature de votre protocole
peuvent intervenir. Nous consulter.

Note : Le serveur OPC applicom ne peut pas fonctionner simultanment avec le serveur
DDE/Suitelink applicom. Mais il peut cohabiter avec une application utilisant l'interface librairie
applicom "APPLICOM.DLL".

Voir galement:
Dans ce manuel
Dveloppement d'un client OPC
Dans la base de connaissance
Introduction DCOM avec un serveur OPC

Serveur OPC

Prsentation du serveur OPC

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Dmarrage du serveur OPC (local et distant)


Le dmarrage du serveur OPC ne ncessite aucune intervention manuelle sur le poste o est
localis le serveur. En effet, la technologie COM sous-jacente automatise le lancement lors de la
premire demande d'une application cliente.
Si le serveur est un serveur local, aucune configuration pralable du systme n'est
ncessaire. (sauf si le client est un service - voir Client OPC sous forme de service)
Si le serveur est un serveur distant (utilis travers DCOM), linstallation de certains
composants sera ncessaire sur le poste client. De plus, une configuration pralable du
systme devra tre effectue aussi bien sur le poste client que sur le poste serveur (voir
Introduction DCOM avec un serveur OPC)
Les composants ncessaires pourront tre installs :
Soit en effectuant une installation complte du produit applicom sur le poste client
Soit en installant le produit applicom Communication ActiveX Control

Voir galement:
Dans la base de connaissances
Introduction DCOM avec un serveur OPC
Client OPC sous forme de service

Serveur OPC

Prsentation du serveur OPC

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Interface graphique du serveur OPC


Par dfaut, le serveur OPC applicom ne possde pas dinterface graphique. Aprs son
lancement, la prsence du serveur est matrialise par une icne insre dans la barre de tches
(si les critres de scurit DCOM le permettent). Par dfaut cette icne ne possde pas de menu
contextuel. Cependant, celui-ci peut tre activ partir de la bote de configuration des paramtres
OPC, en validant l'option autoriser la vue de diagnostic du serveur. Ce menu vous permet alors,
par clic droit de la souris :
dafficher lenvironnement de diagnostic (Menu Diagnostic).
de fermer le serveur (Menu Quitter)

Voir galement:
Dans ce manuel
Interface de Diagnostic
Paramtres de base
Dans la base de connaissance
Client OPC sous forme de service

Serveur OPC

Prsentation du serveur OPC

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

2.

Paramtrage du serveur OPC

Paramtres de base
Tout le paramtrage ncessaire lutilisation du serveur OPC est ralis partir de la console
applicom, dans la vue de description de la configuration.

Attention : ces paramtres sont pris en compte au dmarrage du serveur OPC. Toute modification
devra donc donner lieu un redmarrage de ce dernier.

Voir galement :
dans la documentation :
Configuration : Paramtres du serveur OPC

Mode de paramtrage 'expert'


Un mode expert de paramtrage du serveur OPC devient disponible au sein de la console
applicom lorsque cette dernire est elle-mme commute en mode expert (voir renvoi
"Commande globale du menu Fichier"). Ce mode n'est utile que dans des cas prcis tels que la
ncessit :
d'utiliser des fonctionnalits avances et non courantes du produit
de modifier certains facteurs de temps

L'utilisation de ce mode de paramtrage devrait normalement tre conditionne par l'intervention de


notre support technique. Certains des paramtres pourraient en effet avoir de lourdes
consquences s'ils venaient tre mal positionns. Cependant, certaines des fonctionnalits
avances sont documentes dans la Base de connaissance (voir renvois).

Voir galement :
dans la documentation :
Configuration : Paramtres du serveur OPC
Mise en uvre : Commande globale du menu Fichier
dans la base de connaissance :
Validation et dvalidation du mode diagnostic

Serveur OPC

Paramtrage du serveur OPC

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

3.

Principe daccs aux donnes

La spcification OPC prvoit que l'application cliente rfrence une variable l'aide d'une chane
de caractres nomme ItemID. Dans le cas dapplicom, cette chane est la concatnation :

du chemin du priphrique contenant la variable


A partir de la version 3.1 du produit applicom, le chemin daccs la variable est reprsent
par un topic. En fonction du type de variable vise, ce nom de topic correspondra lun des
topics configurs:
de type variable image pour un accs dans un quipement distant.
de type variable locale pour un accs la zone de donne partage data-base
applicom.
de type "fonction cyclique" pour le contrle des fonctions cycliques. (
en Direct-Link )

Non support

Ou l'un des topics prdfinis:


le topic "SYSTEME" permettant d'accder des informations gnrales du serveur.
les topics "CARDx" (x de 1 8) permettant de piloter le watchdog et l'entree TOR
d'une interface applicom particulire. ( Non support en Direct-Link )
les topics "CHANx" (x de 0 31) permettant de piloter les signaux modem d'un canal
particulier. ( Non support en Direct-Link )

Serveur OPC

Principe daccs aux donnes

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

dune syntaxe dsignant la nature et ladresse de la variable


Pour les topics de type variable image ou variable locale, un item est le plus souvent un
lment de mmoire de type bit, octet, mot, flottant IEEE, message ASCII, etc... Cependant, le
serveur OPC met aussi votre disposition certains items rservs, utilisables uniquement
avec ces types de topic.

Pour les topics de type "fonction cyclique"( Non support en Direct-Link ), un Item est
reprsentatif d'un paramtre de la fonction cyclique correspondant au topic.

A chaque topic "prdfini", sont associs des items spcifiques.


Remarques :
Dans la chane rfrenant litem, le dlimiteur de champs par dfaut est le point .. En
cas de besoin, ce dlimiteur peut tre modifi dans le paramtrage du serveur OPC,

La spcification OPC prvoit galement la possibilit pour un client d'utiliser un


AccessPath. Le serveur applicom ne ncessite pas de l'utiliser. Cependant, si celui-ci n'est
pas vide, il sera concatn avec la chane ItemID fournie par le client pour fabriquer l'ItemID
utilis par le serveur. Par exemple, si le client fournit comme AccessPath la chane "TOPIC" et
comme itemID la chane "ITEM" le serveur utilisera la chane TOPIC.ITEM comme ItemID.

Une compatibilit avec les versions prcdentes est assure :


Pour accder des variables locales, le chemin pourra donc tre de la forme :
- Card1.Database

Pour accder des variables images, le chemin pourra tre de la forme :


- Card1.Channel0.EquipmentZ
Z reprsentant le numro de lquipement (configur dans la console applicom de 0 255)

Voir galement :
dans ce manuel :
Limitation du nombre dI/O Items (SW1000ETH seulement)
Types de topic daccs aux variables
Configuration des topics

Le ProgID
Lorsque vous tes utilisateur dun progiciel, lui-mme client OPC, le serveur OPC applicom est
identifi dans celui-ci laide de son ProgID (identificateur de programme) :

ProgID

Serveur OPC

APPLICOM.OPCServer.1 ;

Principe daccs aux donnes

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
Le browsing des ItemID

Le serveur OPC applicom supporte les capacits optionnelles de browsing (interface


IOPCBrowseServerAddressSpace). Elles permettent aux applications clientes d'effectuer une
recherche parmi les items disponibles de l'espace d'adressage du serveur OPC en fournissant une
liste classe d'itemID valides.

Lapplication client peut utiliser le browser de la faon suivante :

"OnLine" si la solution applicom est initialise.


"OffLine" si la solution applicom n'est pas initialise. Dans ce cas, le serveur OPC
reprend la configuration que le client a dfini dans la console applicom et considre cette
configuration comme son espace dadressage.
Attention : Pour les topics associs des quipements de type Logix5000 Messagerie
Logix5000 (OPC seulement) , aucune syntaxe lie au contrleur Logix5000 ne sera
retourne par le browser en mode OffLine.

Serveur OPC

10

Principe daccs aux donnes

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Gestion des groupes (OPC Group)


Les groupes constituent pour le client un moyen simple dorganisation des donnes auxquelles il
souhaite accder. Cette organisation est laisse entirement libre pour le client. Par consquent,
un groupe peut contenir des variables totalement htrognes collectes sur des quipements
diffrents.
Lorsque vous tes utilisateur dun progiciel, lui-mme client OPC, celui-ci gre gnralement les
groupes de donnes de faon totalement transparente et cache pour l'utilisateur. Si ce n'est pas le
cas, des lments importants sont cependant prendre en compte dans la cration des groupes :
cest au niveau du groupe que le client a la possibilit de rgler la priode de
rafrachissement. Toutes les donnes (OPC Items) contenues dans un mme groupe sont
donc imprativement scrutes par le serveur OPC la mme frquence.
le client a la possibilit dactiver ou de dsactiver un groupe, cest dire dautoriser ou
dinterdire les remontes de donnes vnementielles sur lensemble des donnes du groupe.
la gestion de la bande morte, telle qu'elle est prvue par la spcification OPC, seffectue
au niveau du groupe.

Attention :
Certains logiciels client fixent la priode de rafrachissement du groupe 0 (retour des informations
au plus vite). Il se peut dans certains cas (par exemple lorsque de grandes quantits de points
bougent simultanment ou lors de l'utilisation en DCOM), quune priode trs faible dgrade les
performances du systme en raison de limportance du flux dinformations circulant entre le serveur
et le client. Il est possible de modifier de faon externe la priode minimale du rafrachissement de
tous les groupes en modifiant le champ Priode de rafrachissement minimale des groupes.

Serveur OPC

11

Principe daccs aux donnes

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
Bande morte

Le client a la possibilit de spcifier pour un groupe une bande morte qui affectera lensemble des
items contenus dans le groupe. Ce paramtre indique le pourcentage minimum dvolution qui
provoquera lenvoi de la donne vers lapplication client. Il est apparu que tous les clients OPC ne
positionne pas ce paramtre de la mme faon. Cest pourquoi le serveur OPC applicom permet
par configuration de dfinir la plage utilis. Il peut donc tre compris selon ce choix entre :
0 et 100 (1% =1).
Ou entre 0 et 1 (1% = 0.01).
Cette bande morte influence uniquement le mode de remonte vnementielle de donnes

La notion mme de bande morte ncessite que la variable vise soit du type analogique et quelle
possde une valeur maximale et une valeur minimale permettant de calculer un pourcentage
dvolution. La remonte de la donne vers lapplication client sera effectue si :
valeur absolue(dernire valeur remonte- valeur courante) > pPercentDeadband *(valeur maxvaleur min)

La valeur min et valeur max dune donne est fixe, elle est dfinie par son type :

VT_UI1

de 0 255

VT_I1

de -128 127

VT_UI2

de 0 65535

VT_I2

de -32768 32767

VT_UI4

de 0 4294967295

VT_I4

de -2147483648 2147483647

VT_R4

de 3.4e+38 3.4e+38

VT_R8

De -1.79e+308 1.79e+308

Serveur OPC

12

Principe daccs aux donnes

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Mode d'accs aux donnes du serveur OPC


Pour accder aux donnes depuis un client OPC, la spcification prvoit trois mthodes :

Mthode

Commentaire

Evnementielle

Le client s'abonne sur un groupe afin d'tre averti de faon


vnementielle des changements intervenus sur les valeurs des
items. Seuls les points actifs du groupe ayant chang sont retourns
au client. La priode de rafrachissement du groupe fixe la dure
minimale entre deux envois de valeurs.

Synchrone

Le client demande explicitement la lecture ou l'criture d'un item. Le


client reste bloqu pendant le traitement de sa demande. La lecture
synchrone peut s'effectuer depuis deux sources distinctes :
Le device : les valeurs sont lues dans l'quipement physique.
Le cache : les valeurs sont lues dans le cache interne du serveur
OPC.

Asynchrone

Le client demande explicitement la lecture ou l'criture d'un item.


L'appel est non bloquant. Le rsultat de la lecture ou de l'criture
sera retourn ultrieurement. La lecture peut s'effectuer depuis deux
sources distinctes :
Le device : les valeurs sont lues dans l'quipement physique.
Le cache : les valeurs sont lues dans le cache interne du serveur
OPC.

Lorsque vous tes utilisateur dun progiciel, lui-mme client OPC, celui-ci gre gnralement le
mode d'accs aux donnes de faon totalement transparente et cache pour l'utilisateur. Si ce n'est
pas le cas, des lments importants sont cependant prendre en compte :
Le mode vnementiel gnre un trafic minimum entre le serveur et le client puisque
seules les variables ayant boug sont retournes. Il est donc le plus efficace des trois modes.
En mode asynchrone, si les demandes sont effectues plus rapidement que ne peut les
traiter le serveur, elles sont empiles. Si trop de requtes sont mises en attente, des
demandes peuvent tre refuses.
Les lectures dans le cache sont par dfinition plus rapides que les lectures effectues
dans l'quipement.

Serveur OPC

13

Principe daccs aux donnes

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
Horodatage des donnes

Avec le serveur OPC applicom, lhorodatage dune donne indique le temps correspondant au
dernier accs la variable par le serveur. Il nindique pas le dernier changement de valeur mais la
dernire obtention de la valeur. Ainsi, si lapplication client effectue deux lectures successives en
mode synchrone ou asynchrone sur une mme variable, lhorodatage retourn pourra tre diffrent
mme si la valeur na pas chang. Par contre, cette variable ne sera pas envoye au client par le
mode vnementiel puisque la valeur na pas volu.
Le serveur OPC optimise en dynamique l'acquisition des donnes en minimisant les accs aux
quipements distants :
une variable ne sera insre que dans une seule trame de communication, mme si cette
variable est demande par le client au sein de plusieurs groupes (chaque groupe pouvant
tre configur avec des priodes de rafrachissement diffrentes). Il en est de mme si
plusieurs applications client demandent la mme variable. La variable est alors rafrachie
en tenant compte de la priode minimale existante pour cette variable.
le serveur OPC regroupe toujours le maximum de variable dans une mme trame de
communication. Une telle trame peut donc contenir des items appartenant des groupes
possdant des priodes de rafrachissement diffrentes. C'est la priode minimale qui est
alors utilise.
Dans les deux cas prcdents, l'acquisition des donnes s'effectue avec la priode la plus basse
de tous les items concerns. La valeur d'horodatage sera en consquence mise jour la mme
frquence.

Qualit des items


A chaque item retourn vers le client sont associs une qualit et un horodatage.
Le tableau suivant indique les diffrentes qualits utilises par le serveur OPC applicom :
Qualit

Signification

Dc

Hexa

Bit

0x0000

0000 0000

La qualit du point est mauvaise. La valeur retourne n'est pas


exploitable.

20

0x0014

0001 0100

La qualit du point est mauvaise. La valeur retourne correspond la


dernire valeur connue de bonne qualit.

24

0x0018

0001 1000

La donne n'a pu tre lue ou crite suite un problme de


communication entre les quipements et le serveur. La valeur de la
donne retourne n'est pas exploitable.

64

0x0040

0100 0000

La qualit de la donne est incertaine. La valeur retourne n'est pas


exploitable.

192

0x00C0

1100 0000

La donne a t correctement lue et les conversions ventuelles ont pu


tre effectues.

Serveur OPC

14

Principe daccs aux donnes

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Limitation du nombre dI/O Items (SW1000ETH seulement)


En cas dutilisation du produit SW1000ETH, en correspondance avec votre commande produit, une
limitation dI/O Items utilisables par lensemble des applications clientes peut tre applique.
Les I/O Items sont des items visant des quipements distants. Ainsi, les items sur la database
applicom, ou les items du topic SYSTEME ne sont pas considrs comme des I/O Items. Dans le
cas dun item tableau, le nombre dI/O Items est gal au nombre de donnes unitaire du tableau.
Dans le cas dune chane, le nombre dI/O Items comptabilis est de 1.
Si la mme variable physique est accde par plusieurs applications clientes distinctes, un I/O item
est comptabilis pour chaque client. Lorsque la limite est atteinte, lajout de nouveaux items
(AddItem) est refus. Le dcompte total est un dcompte instantan. Une application peut donc
supprimer des I/O items pour en rajouter dautres.

Des items du topic SYSTEME vous permettent de rcuprer au niveau du client OPC les
indications importantes relatives la limitation du nombre des I/O Items. Il sagit des quatres items
suivants :
LIMIT_ALLOWED :

Nombre dI/O Items maximum utilisables

Ce nombre est directement li la limitation rclame lors du passage de votre


commande produit.

LIMIT_USED :

Nombre dI/O Items instantan

Cet item vous permet daccder au nombre dI/O Items utiliss cet instant
donn.

LIMIT_MAX_USED :

Nombre dI/O Items maximum

Cet item vous permet de connatre le nombre maximum atteint dI/O Items utiliss
par le serveur OPC depuis son lancement.

LIMIT_OVERFLOW :

Avertissement datteinte de limitation

Cet item peut prendre 3 valeurs :


0 : Le nombre dI/O Items maximum est rest infrieur 90% de la limite
autorise
1 : Le nombre dI/O Items maximum atteint 90% de la limite autorise
2 : Le nombre dI/O Items maximum dpass la limite autorise. Des
I/O Items nont pu tre ajouts dans le serveur.

Serveur OPC

15

Principe daccs aux donnes

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

De plus, la barre dtat de la fentre de diagnostic dOPC affiche les informations sur lutilisation
des I/O Items et sur ltat des dpassements.
Si le nombre dI/O Items maximum atteint est infrieur 90% de la limite autorise, la barre
dtat indique les informations de limitation sur un fond gris :

Si le nombre dI/O Items maximum atteint est suprieur 90% de la limite autorise, la barre
dtat indique les informations de limitation sur un fond orange :

De plus, un message indiquant cet tat est affich dans la vue des messages.

Si le nombre dI/O Items maximum atteint est suprieur la limite autorise, la barre dtat
indique les informations de limitation sur un fond rouge :

De plus, un message indiquant cet tat est affich dans la vue des messages.

Voir galement :
dans ce manuel :
Accs aux informations gnrales du serveur (Topic "SYSTEME")
dans la base de connaissance :
Validation et dvalidation du mode Diagnostic

Serveur OPC

16

Principe daccs aux donnes

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Types de topic daccs aux variables


Le serveur OPC utilise un nom arbitraire appel topic en tant que chemin daccs aux variables.
Diffrents types de topics sont disponibles :

Les Topics variable image et variable locale :


L'utilisateur attribue par configuration un nom significatif un quipement distant (variable
image) ou la base de donnes des interfaces (ou de lmulateur) applicom (variable
locale), et l'utilise en tant que topic pour accder ensuite aux variables internes de celui-ci
(par ex. DATA_BASE, AUT1...). Le nombre de topics configurables nest pas limit.
Vous pouvez dfinir plusieurs noms de topics pour un mme quipement.

Le Topics prdfinis :
Le serveur OPC reconnat un certain nombre de topics prdfinis :
le topic "SYSTEME", permettant daccder des informations gnrales du
serveur
les topics "CARDx" (x de 1 8) permettant daccder des fonctionnalits
rataches une interface applicom( Non support en Direct-Link )
les topics "CHANx" (x de 0 31) permettant daccder des fonctionnalits
rataches un canal particulier ( Non support en Direct-Link )

Le Topics Fonction cyclique : (

Non support en Direct-Link )

L'utilisateur attribue par configuration un nom significatif une fonction cyclique


configure laide de "PCCYC", et lutilise en tant que topic pour accder aux paramtres
de la fonction cyclique et pour modifier celle-ci volont.

Voir galement:
Dans ce manuel :
Accs aux Variables images ou locales
Dans la documentation :
Fonctionnalit : Database

Serveur OPC

17

Principe daccs aux donnes

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
Configuration des topics

Le serveur OPC utilise un nom arbitraire appel topic en tant que chemin daccs aux variables. La
configuration de ces topics sopre partir de la console applicom.

Vous pouvez accder la configuration de tous les topics (variable image, variable locale, fonction
cyclique) partir de la vue description de la configuration, en utilisant les nuds Topic
configuration.
Pour configurer le topic attribu un quipement connect au rseau de terrain (variable image),
vous pouvez galement :
Slectionner le nud Topic configuration directement situ sous lquipement concern
dans la zone vue protocole de la console applicom.
Lancer la commande Proprits ou double-cliquez sur le nud.

La configuration des topics vous permettra de modifier notamment le nom du topic, le commentaire
associ ainsi que des paramtres avancs tel que les longueurs maximum des trames et la gestion
des messages.

Voir galement:
Dans ce manuel :
Paramtrage minimal dun topic "variable image" ou "variable locale"
Dans la documentation :
Mise en uvre : configuration des topics

Serveur OPC

18

Principe daccs aux donnes

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

4.

Accs aux Variables images ou locales

Le serveur OPC met votre disposition deux principaux types de variables :


Les variables locales :
Ce sont les variables dune zone de donnes locales (data-base) maintenue en mmoire par les
interfaces ou lmulateur logiciel.

Domaines dutilisation :
Vous devrez imprativement accder ces variables dans le cas dun fonctionnement en
mode esclave ou serveur. En effet, le dialogue avec les quipements distants ne peut se
faire qu travers la data-base.
Cependant, dans le cas dun canal matre/client, lutilisateur peut prfrer configurer lui
mme ses trames de lecture (fonctions cycliques configures avec lutilitaire PCCYC) pour
accder un quipement distant ( Non support en Direct-Link ).
La data base constitue galement un moyen possible de partage de donnes entre
plusieurs applications cliente OPC

Avantages :
Le nombre minimum de topics est restreint (un seul topic par carte peut suffire).

Restrictions :
Dans le cas dun dialogue avec un quipement distant au travers dun canal matre/client, il
nest pas possible deffectuer une criture directement dans lquipement. Lcriture
seffectuera uniquement dans la data-base. Ce problme peut ventuellement tre
Non support en
contourn en utilisant des fonctions cycliques dcriture dclenches
Direct-Link .
De plus, vous devrez imprativement utiliser le Descripteur standard pour laccs la
Data-base. Lapplicatif ne pourra pas forcment utiliser des adresses identiques celles
des automates (mapping data-base).

Les variables images:


Ce sont les variables disponibles dans les quipement distants. Elles sont accessibles au travers
dun topic de type variable image.

Domaines dutilisation :
Elles sont accessibles en lecture et criture au travers des canaux Matres/clients des
solutions applicom.

Serveur OPC

19

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
Avantages :

Dans ce cas, des requtes de lecture sont automatiquement cres par le serveur en
fonction des besoins en variables dans les applications clients. Jusqu' 1024 trames
peuvent tre gnres par canal. Elles sont en permanence optimises pour minimiser la
communication.
Vous avez la possibilit de travailler avec des adresses et des syntaxes constructeurs. Une
criture est directement rpercute dans lquipement distant.

Restrictions :
Ce mode vous impose de dfinir autant de topics que dquipements distants.

Voir galement:
Dans ce manuel :
Paramtrage minimal dun topic "variable image" ou "variable locale"
Syntaxes des variables internes
Contrle des fonctions cycliques de PCCYC
Descripteur standard pour laccs la data-base
Dans la documentation :
Fonctionnalit : Database

Serveur OPC

20

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Paramtrage minimal dun topic "variable image" ou "variable locale"


Le simple fait davoir cr un topic et de lui avoir associ le chemin daccs auquel il correspond
(numro de carte, numro de canal et numro dquipement) suffit son utilisation dans lapplicatif
client. Pour la plupart des protocoles, chaque ajout dquipement donnera lieu la cration
automatique dun topic.
Tous les autres paramtres ncessiteront ventuellement une modification dans les cas suivants :
si vous utilisez certaines fonctionnalits particulires du produit (mode message ou
tableau, items personnaliss,).
si des options avances savrent ncessaires pour sadapter des protocoles ou des
types dquipements particuliers.

Voir galement:
Dans ce manuel :
Configuration des topics

Syntaxes des variables internes


La syntaxe de la variable correspond au nom de litem.

Cette dernire permet de dsigner la variable locale ou la variable image. Pour les variables
images, la syntaxe utiliser est lie au type dquipement vis. Un descripteur de syntaxe
appropri vous permet en effet dutiliser certains mnmoniques constructeur, rendant ainsi
linterfaage plus convivial.
Dans le cas de variables locales, vous devrez utiliser des mnmoniques applicom. Par
exemple, le mot de 16 bits situ ladresse 10 sera dsign par W10. Lensemble des
mnmoniques utilisables est dcrit dans le chapitre Descripteur standard pour laccs la
Data-base
Dans le cas des variables images, vous pourrez utiliser des mnmoniques semblables
aux syntaxes constructeur. Par exemple, sur un quipement Siemens Simatic S7, le mot
10 du DB1 sera identifi par DB1.DBW10. Le descripteur adapt lquipement vis est
dtermin de faon automatique par le logiciel applicom. Pour consulter les syntaxes
autorises par les diffrents descripteurs fournis pour votre protocole, reportez-vous au
tableau suivant.
Remarque avance :
Vous avez cependant la possibilit de forcer l'utilisation d'un autre descripteur (en gnral,
le descripteur standard, compos de syntaxes gnriques utilisables quel que soit le
protocole ou la messagerie. Ce descripteur peut tre positionn par le biais des options
avances). Attention cependant, le descripteur de syntaxes dtermine galement certaines
capacits doptimisation des requtes lies au type dquipement vis et au mapping des
donnes de cet quipement. Si vous changez le descripteur par dfaut, certaines
optimisations d'accs aux quipements se trouveront ainsi dvalides, au dtriment
possible des performances.

Serveur OPC

21

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
Type de protocole

Descripteur ditems

Nom du fichier
du descripteur

Cegelec sur TCP/IP

Alspa C80-35 et C80-75

ITEMCEGE.DLL

UniTe sur TCP/IP

Telemecanique TSX
Premium

ITEMTSX.DLL

Mitsubishi sur TCP/IP

Mitsubishi Serie A, Serie Q

ITEMMIT.DLL

GE Fanuc sur TCP/IP

Sries 90-30 et 90-70

ITEMSNPX.DLL

Alnet II TCP/IP (Altus) sur TCP/IP

ALNET II

ITEMALT.DLL

EtherNet/IP (Allen Bradley) sur TCP/IP

Allen-Bradley

ITEMAB.DLL

Equipement Sysmac C

Sysmac C

ITEMOMRO.DLL

Equipement Sysmac CS

Sysmac CS

ITEMOMRO.DLL

Equipement Sysmac CV

Sysmac CV

ITEMOMRO.DLL

Equipement Modicon

Modbus Modicon TSX

ITEMMOD.DLL

Equipement Telemecanique

Telemecanique TSX/PMX

ITEMTSX.DLL

Autres equipement

Modbus Gnrique

ITEMMDB.DLL

Messagerie S5/TF

Simatic S5 (Indus.
Ethernet)

ITEMIES5.DLL

Messagerie TI

Texas Instrument

ITEMTI.DLL

Messagerie S7

Siemens srie 7

ITEMS7.DLL

Equipement SMC

April-SMC

ITEMSMC.DLL

Equipement APRIL

April-srie 1000

ITEMPB.DLL

Autres quipements

Descripteur standard

ITEMSTD.DLL

Descripteur standard

ITEMSTD.DLL

Equipement APRIL

April-srie 1000

ITEMPB.DLL

Autres quipements

Tlmcanique TSX/PMX

ITEMTSX.DLL

3964/3964R, Matre-Client/Serveur

Siemens Simatic S5
(syntaxe allemande et
franaise and syntaxe
anglaise)

ITEMSIEM.DLL

Sucoma, Matre

Descripteur standard

ITEMSTD.DLL

Data Link, Matre

Otic Fischer&Porter
(DataLink)

ITEMOTIC.DLL

Kit4000

Descripteur standard

ITEMSTD.DLL

Siemens Simatic S5

ITEMSIEM.DLL

Omron sur TCP/IP

Modbus sur TCP/IP

Industrial Ethernet

Jbus RTU

Modbus RTU (solution hardware)


Uni-Telway

Profibus
Messagerie S5

Serveur OPC

22

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

(syntaxe allemande et
franaise et syntaxe
anglaise)
Messagerie MPI et S7

Descripteur automates
Siemens srie 7 pour MPI
et S7)

ITEMS7.DLL

Messagerie PROFIBUS DP

DP)

ITEMDP.DLL

Equipement APRIL

April-srie 1000)

ITEMAPRL.DLL

Autres equipements

Tlmcanique TSX/PMX
PLC)

ITEMTSX.DLL

Sysmac Way, Matre

Omron (Sysmac-Way))

ITEMOMRO.DLL

DF1

Allen-Bradley

ITEMAB.DLL

S-Bus, Matre

SAIA

ITEMSAIA.DLL

PPI, Matre

Siemens Simatic S7

ITEMS7.DLL

Equipement APRIL

April-srie 1000

ITEMAPRL.DLL

Autres equipements

Tlmcanique TSX/PMX
PLC

ITEMTSX.DLL

AS511 (prog. port), Matre

Siemens Simatic S5
(syntaxe allemande et
franaise et syntaxe
anglaise)

ITEMSIEM.DLL

TI-Dir, Matre

Texas Instrument

ITEMTI.DLL

SNP-X, Matre

GE-Fanuc

ITEMSNPX.DLL

InterBus-S G3, Matre

Descripteur standard

ITEMSTD.DLL

Equipement TSX QUANTUM

Modbus Modicon TSX

ITEMMOD.DLL

Equipement TSX PREMIUM

Tlmcanique TSX/PMX

ITEMTSX.DLL

Equipement Modicon 984

Modbus Modicon 984

ITEMMOD2.DLL

Equipement Modbus gnrique

Modbus gnrique

ITEMMDB.DLL

Equipement TSX QUANTUM

Modbus Modicon TSX

ITEMMOD.DLL

Equipement TSX PREMIUM

Tlmcanique TSX/PMX

ITEMTSX.DLL

Equipement Modicon 984

Modbus Modicon 984

ITEMMOD2.DLL

Equipement MODBUS gnrique

Modbus gnrique

ITEMMDB.DLL

Ethway

Fipway, Client/Serveur

Modbus Plus, Client/Serveur

Modbus ASCII pour solution hardware


Modbus RTU/ASCII pour SW1000SER

Voir galement:
Dans ce manuel :
Descripteur standard pour laccs la data-base
Principe daccs aux donnes

Serveur OPC

23

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Accs aux variables unitaires


Les variables unitaires dsignent les variables natives locales ou images. Elles peuvent tre des
types simples suivants :

bits (bit internes, bits dentre, bits de sortie)


octets (octets internes, octets dentre, octets de sortie)
mots (mots internes, mots dentre, mots de sortie)
mots doubles
mots flottants
certains objets spcifiques certains quipements
informations de diagnostic

Les syntaxes des variables internes utilisables dpendent du type dquipement vis.

Voir galement:
Dans ce manuel :
Syntaxes des variables internes

Optimisation des requtes synchrones et asynchrones


Lorsque l'application client veut effectuer une demande de lecture ou d'criture synchrone ou
asynchrone, elle appelle une des mthodes disponibles en passant en argument la liste des items
concerns par la requte (sauf dans le cas de IOPCAsyncIO::Refresh o tous les items du groupe
sont implicitement concerns). Le serveur OPC effectue une analyse pralable de cette liste de
manire optimiser le flux de communication ncessaire :

Dans le cas des mthodes de lecture, l'ensemble des items est scrut et ceux-ci sont
regroups de manire minimiser le nombre de requtes.
Dans le cas des critures, les mcanismes mis en uvre sont plus compliqus. En effet,
des variables pouvant tre crites par une mme requte doivent imprativement tre
contigus. De plus il est impratif de prserver l'ordre d'envoi des diffrents items. Le
serveur OPC pratique donc de la faon suivante :
il commence le parcours de la liste en partant du premier item.
pour chaque item suivant, il vrifie si celui-ci est d'adresse directement suprieure
l'item prcdent.
si l'item n'est pas associable avec le prcdent, il envoie la requte correspondant
aux items prcdents et continue l'exploration jusqu' la fin de la liste.
Exemple : L'application client souhaite crire trois mots et deux bits dans la data-base applicom
si la liste est ordonne ainsi :

Serveur OPC

W10
W11
W12

24

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

B20
B21
Dans ce cas, le serveur OPC satisfera la demande en effectuant seulement deux
requtes. Une d'criture de trois mots partir de l'adresse 10 et une autre
d'criture de deux bits partir de l'adresse 20

si la liste est ordonne ainsi :

B20
W12
W10
W11
B21

Dans ce cas, le serveur OPC satisfera la demande en effectuant quatre requtes.


criture du bit d'adresse 20
criture du mot d'adresse 12
criture de deux mots partir de l'adresse 10
criture du bit d'adresse 21
Il est donc de la responsabilit de l'application client d'ordonner les items de faon croissante et
contigu pour assurer les performances maximales.

Utilisation du mode tableau


Il est possible de regrouper les informations de mmes types et dadresses contigus dans un
mme item sous forme soit :
Dune chane ASCII de donnes spares par un dlimiteur configurable (voir chapitre
Configuration du mode tableau),
Dun tableau de donnes binaires

Pour le paramtrage li lutilisation du mode tableau, reportez vous au chapitre - Syntaxes des
variables internes.

Lemploi du mode tableau (ASCII ou binaire) seffectue en concatnant la syntaxe de la premire


variable une extension du type :
_n pour le mode tableau ou n rprsente le nombre de donnes.

Les syntaxes utilisables dpendent du type dquipement vis. Pour consulter les syntaxes
autorises par le descripteur choisi, reportez vous au chapitre - Configuration du mode tableau.

Attention !
Pour certains protocoles ou certaines messageries, les modes message et tableau ncessitent
quelques prcautions d'utilisation. En effet, certains protocoles offrent la possibilit dans la console
de configurer :
lalignement des donnes lors de la lecture de mots de 16 bits
et/ou
lalignement des donnes lors de la lecture de mots de 32 bits

Serveur OPC

25

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Ces paramtres agissent directement sur la faon dont sont remontes les donnes durant leur
lecture. Ils nagissent pas pour lcriture. Ainsi, dans le cas d'un alignement sur des adresses octets
lors de la lecture de mots de 16 bits ou d'un alignement sur des adresses octets ou mots lors de la
lecture de mot de 32 bits, l'criture continue de s'effectuer en adressage mot pour les mots 16 bits
et mots doubles pour les mots 32 bits. Avec le mode tableau, un item symbolisant par exemple un
tableau de mots (WOx_n) ne dsigne pas les mmes variables en criture qu'en lecture. Le mode
tableau ne pourra donc tre utilis qu'en lecture.

Voir galement:
Dans ce manuel :
Accs aux variables unitaires
Configuration du mode tableau et matrice
Principe de remonte des donnes sous forme ASCII

Configuration du mode tableau et matrice


La configuration du mode tableau seffectue par longlet Mode message et tableau de la
configuration des topics, accessible depuis la console applicom.

Voir galement:
Dans ce manuel :
Configuration des topics
Dans la documentation :
Configuration des topics : mode tableau et matrice

Principe de remonte des donnes sous forme ASCII


Exemples :
Item reprsentant une chane de donnes correspondant 4 mots partir du mot 0.
Syntaxe de litem : W0_4
Reprsentation des donnes :
Valeur ASCII
De W0

Dlimiteur

Valeur ASCII
de W1

Dlimiteur

Valeur ASCII
de W2

Dlimiteur

Valeur ASCII
de W3

Les applications clients traitent les donnes comme des chanes ASCII.

Utilisation du mode message


Le mode message permet d'changer jusqu 131 caractres ASCII en lecture et en criture entre
vos applications clients et les quipements. Une suite d'octets dans l'quipement peut tre
assimile une chane de caractres ASCII. Si la suite est localise dans les octets, le premier
octet correspond au premier caractre de la chane. Si la suite est localise dans les mots, le
premier caractre de cette chane peut tre localis sur les 8 bits de poids faibles ou les 8 bits de
poids forts du premier mot de cette suite. Vous devez dfinir la taille du tableau pouvant contenir
cette chane. Cette dfinition est ralise dans le nom de l'item. La taille de la chane de caractres
peut tre variable, sa valeur maximum tant bien sr celle de la table alloue pour les octets ou
deux fois la taille alloue pour les mots. La chane est sauvegarde dans cette table de l'adresse la
plus faible vers l'adresse la plus haute.

Serveur OPC

26

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Diffrents choix permettent de dfinir un ou plusieurs caractres d'arrt dans le cas de requtes de
lecture. La chane de caractres est tronque et le ou les caractres d'arrts dfinis sont intgrs
en fin de chane. Dans le cas d'une criture, ce ou ces caractres d'arrt sont intgrs dans le
message ASCII. Le caractre NULL(0) est prioritaire sur les caractres d'arrt de fin de message
configurs. il sera galement intgr implicitement au message.
Pour le paramtrage li lutilisation du mode message, reportez vous au chapitre Configuration du
mode message.
Les syntaxes utilisables dpendent du type dquipement vis. Pour consulter les syntaxes
autorises par le descripteur choisi, reportez vous au chapitre - Syntaxes des variables internes

Voir galement:
Dans ce manuel :
Configuration des topics
Syntaxes des variables internes
Dans la documentation :
Configuration des topics : mode message

Configuration du mode message


La configuration du mode message seffectue par longlet Mode message et tableau de la
configuration des topics, accessible depuis la console applicom.

Il vous permet notamment de configurer le Dlimiteur de fin de messages.


Voir galement:
Dans ce manuel :
Configuration des topics
Syntaxes des variables internes
Dans la documentation :
Configuration des topics : mode message

Bit de mots
Les diffrents descripteurs vous proposent parfois des syntaxes vous permettant daccder un bit
au sein dun octet, dun mot ou dun mot double (exemple Ox.b et Wx.b du descripteur standard)
mme lorsque le protocole ne propose pas cette fonctionnalit de faon native. Le serveur gnre
dans ce cas des trames doctets (ou de mots).
Les syntaxes utilisables dpendent du type dquipement vis. Pour consulter les syntaxes
autorises par le descripteur choisi, reportez vous au chapitre reportez vous au chapitre - Syntaxes
des variables internes.

Voir galement:
Dans ce manuel :
Syntaxes des variables internes

Serveur OPC

27

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
Suffixe optionnels

Ces suffixes permettent de personnaliser un item.

Reprsentation en valeur signe => item_S


Type de variables
OCTET
MOT 16 BITS

Syntaxe de litem

item_S

Exemple

O100_S
W100_S

item : Reprsente litem dune variable numrique simple.

Ce suffixe permet de traiter lextension de signe pour les valeurs octets (-128 +127) et les mots
de 16bits (de-32768 + 32767).
Sans ce suffixe ces grandeurs numriques sont de types non signs (de 0 255 pour les octets) et
(0 65535 pour les mots de 16bits).

Reprsentation en valeur BCD => item_B


Type de variables
OCTET
MOT 16 BITS
MOT DOUBLE 32
BITS

Syntaxe de litem

item_B

Exemple

O100_B
W100_B
D100_B

item : Reprsente litem dune variable numrique simple.

Ce suffixe permet de transcoder les donnes dun octet, mot ou mot double stock dans
lquipement comme une entit BCD de 1, 2 ou 4 octets non signs (dcimal digit) et les convertit
au format binaire.
Cette extension nest pas autorise dans le cas des chanes ou des matrices et elle sapplique en
lecture et en criture.

Croisement des octets => item_Xx

Ces suffixes permettent le croisement des octets composant une donne de type mot 16 bits, mot
double 32 bits ou mot flottant. Ils peuvent tre utiliss sur des donnes de type numrique simple,
sur lensemble des donnes dun tableau ou sur un objet.
Le tableau suivant prsente les diffrents types de croisement en fonction du suffixe et du type de
litem :

_X1

Serveur OPC

Mot 16 bits
O1 O2 -> O2 O1 (Croisement
des octets)

Double mot 32 bits / Flottant


O1 O2 O3 O4 -> O4 O3 O2 O1 (Croisement
des octets)

28

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
_X2

O1 O2 -> O2 O1 (Croisement
des octets)
_X3
O1 O2 -> O2 O1 (Croisement
des octets)

O1 O2 O3 O4 -> O3 O4 O1 O2 (Croisement des


mots)
O1 O2 O3 O4 -> O2 O1 O4 O3 (Croisement
des octets dans les mots)

Le croisement des octets, pour un item "variable locale", peut aussi se configurer directement dans
le topic. Lutilisation de ce suffixe est prioritaire par rapport la configuration pour le topic.

Descripteur standard pour laccs la data-base


Mode Unitaire

Mode Tableau

Bits

Bx

Bx_n

Octets

Ox

Ox_n

Bits dans des octets

Ox.b

Chane ASCII dans les octets


Mots

M_Ox_n
Wx

Bits dans des mots

Wx_n

Wx.b

Chane ASCII dans les mots

M_Wx_n

Mots doubles

Dx

Dx_n

Mots flottants

Fx

Fx_n

Voir galement:
Dans ce manuel :
Utilisation du mode tableau
Utilisation du mode message

- Bits => Bx (type : BIT)


x : Numro du premier bit (0 32767)
Exemple : B4

- Bits => Bx_n


x : Numro du premier bit (0 32767)
n : Nombre de bits.(2 128)
Exemple : B4_10

- Octets => Ox (type : OCTET)


x : Numro du premier octet (0 13999)
Exemple : O4

Serveur OPC

29

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
- Octets => Ox_n

x : Numro du premier octet (0 13999)


n : Nombre doctets (2 128)
Exemple : O4_10

- Bits dans des octets => Ox.b (type : BIT)


x : Numro du premier octet (0 13999)
b : Rang du bit dans loctet(0 7).
Exemple : O4.3

- Chane ASCII dans les octets => M_Ox_n (type : OCTET)


Pour plus d'information sur l'utilisation des chanes ASCII, vous pouvez consulter le chapitre
"Utilisation du mode message".

x : Numro du premier octet contenant la chane (0 13999).


n : Nombre doctets potentiels pouvant contenir la chane ASCII (1 131).
Exemple : M_O100_30

Dans lexemple la table doctets O100 O129 peut contenir la chane.

- Mots => Wx (type : MOT 16 bits)


x : Numro du premier mot (0 32767).
Exemple : W4

- Mots => Wx_n


x : Numro du premier mot (0 32767).
n : Nombre de mots(2 64).
Exemple : W4_10

Bits dans des mots => Wx.b


x : Numro du premier mot (0 32767).
b : Rang du bit dans le mot(0 15).

Serveur OPC

30

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
Exemple : W4.10

- Chane ASCII dans les mots => M_Wx_n (type : MOT 16 bits)
Pour plus d'information sur l'utilisation des chanes ASCII, vous pouvez consulter le chapitre
"Utilisation du mode message".

x : Numro du premier mot contenant la chane.


n : Nombre de mots potentiels pouvant contenir la chane ASCII (1 65).
Exemple : M_W100_30

Dans lexemple la table de mots W100 W129 peut contenir la chane.

- Mots doubles => Dx (type : MOT 32 bits)


x : Numro du premier mot double (0 32766).
Exemple : D4

- Mots doubles => Dx_n


x : Numro du premier mot double (0 32766).
n : Nombre de mots doubles.(2 64)
Exemple : D4_10

- Mots flottant => Fx (type : MOT 32 bits IEEE)


x : Numro du premier mot de32 bits IEEE(0 32766)
Exemple : F4

- Mots doubles => Fx_n


x : Numro du premier mot de32 bits IEEE(0 32766)
n : Nombre de mots doubles.
Exemple : F4_10

Descripteur standard daccs aux variables images


Dans le cas des variables images, vous pourrez utiliser des mnmoniques semblables aux syntaxes
constructeur. Par exemple, sur un quipement Siemens Simatic S7, le mot 10 du DB1 sera identifi par
DB1.DBW10. Le descripteur adapt lquipement vis est dtermin de faon automatique par le
logiciel.
Vous avez cependant la possibilit de forcer l'utilisation d'un autre descripteur (en gnral, le descripteur

Serveur OPC

31

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

standard, compos de syntaxes gnriques utilisables quel que soit le protocole ou la messagerie. Ce
descripteur peut tre positionn par le biais des options avances). Attention cependant, le descripteur de
syntaxes dtermine galement certaines capacits doptimisation des requtes lies au type
dquipement vis et au mapping des donnes de cet quipement. Si vous changez le descripteur par
dfaut, certaines optimisations d'accs aux quipements se trouveront ainsi dvalides, au dtriment
possible des performances.

Syntaxes du descripteur standard :


Mode unitaire

Mode tableau

Bits

Bx

Bx_n

Bits dentre

BIx

BIx_n

Bits de sortie

BOx

BOx_n

Octets

Ox

Ox_n

Octets dentre

OIx

OIx_n

Octets de sortie

OOx

OOx_n

Bits dans des octets

Ox.b

Chane ASCII dans les octets

M_Ox_n

Mots

Wx

Wx_n

Mots dentre

WIx

WIx_n

Mots de sortie

WOx

WOx_n

Bits dans des mots

Wx.b

Chane ASCII dans les mots

M_Wx_n

Mots doubles

Dx

Dx_n

Mots flottants

Fx

Fx_n

x : adresse de la donne. Doit tre calcule selon la formule prcise dans le manuel du protocole vis.
b : offset du bit dans loctet (de 0 7) ou dans le mot (0 15).
n : taille du tableau

Information de diagnostics et contrle

Status des quipements => STATUS


Type de variables

Syntaxe de litem

Exemple

MOT 16 BITS

STATUS
STATUS_READ
STATUS_WRITE

STATUS
STATUS_READ
STATUS_WRITE

MOT 16 BITS
MOT 16 BITS

Pour chaque Topic, vous pouvez lire un status local dcriture (STATUS_WRITE), un status local
de lecture (STATUS_READ) et un status recoupant les deux (STATUS). Ils vous donnent des
informations concernant les accs aux quipements. La valeur des Status peut voluer de 0
65535. Ci-dessous les principaux status sont rpertoris.

Serveur OPC

32

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Pour plus dinformations, veuillez consulter les manuels protocoles au chapitre Status de retour
des fonctions.

Valeurs courantes :
0 : Aucune erreur.
255 : cest la valeur initiale des items de status pour un topic tant quaucune transaction na t
effectue.
Pour les autres valeurs, rfrez-vous au manuel protocole.

Nombre de dfauts dadvise => ADVISE_FAILED


Permet daccder au nombre de dfauts dadvise survenus pour un Topic standard, cest dire le
nombre de points refuss par OPC en raison dune mauvaise syntaxe. Cette donne nest
accessible quen lecture.

Nombre derreurs dcriture => WRITE_ERROR


Permet daccder au nombre derreurs dcriture survenues pour un Topic standard. Cette
donne nest accessible quen lecture.

Nombre derreurs de lecture => READ_ERROR


Permet daccder au nombre derreurs de lecture survenues pour un Topic standard. Cette
donne nest accessible quen lecture.

Serveur OPC

33

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
Les noms symboliques

Le serveur OPC applicom, met votre disposition un moyen supplmentaire daccs aux
variables :

Les noms symboliques

Le but du nom symbolique est de remplacer le nom dune variable locale ou dune variable
image par un mot ayant un sens pour lutilisateur. Par exemple, Il est possible de remplacer la
syntaxe DB1.DBW10 par le mot Temprature, ce dernier tant beaucoup plus expressif pour un
utilisateur.

Fonctionnement

Serveur
Serveur
OPC
OPC
Fichier .CSV

Utilitaire de
Conversion

Fichier .SCY
Fichier .FEF

Fichier
Symbols.sym

Pour reconnatre un symbole, le serveur OPC se constitue des listes dassociations (symbole,
syntaxe). Celles-ci sont charges partir dun fichier Symbols.sym. Ce dernier est gnr laide
dun utilitaire de conversion permettant dimporter ces symboles soit depuis des fichiers provenant
doutils du march (exemple : PL7 junior de SCHNEIDER) , soit depuis des fichiers dun format
propritaire (.CSV).

Remarque : Le fichier SYMBOLS.SYM est prsent dans le rpertoire dinstallation du produit


applicom. Il est possible de le visualiser laide du bloc note afin de connatre lensemble des
symboles actuellement reconnus par le serveur OPC. Cependant, il ne faut en aucun cas le
modifier directement ou lutiliser dans lune de vos applications car son format est sujet
modifications. Si vous dsirez importer dautres formats de fichiers que ceux actuellement
proposs, consultez-nous.

Serveur OPC

34

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Cration dune nouvelle liste de noms symboliques


Pour attacher une nouvelle liste de noms symboliques un quipement, il faut importer ceux-ci au
pralable avec un utilitaire de conversion partir dun fichier :

propritaire au format .CSV,


Les fichiers CSV peuvent tre crs avec EXCEL ou avec le Bloc-notes. Ce sont des fichiers
texte utilisant le ; comme sparateur de champs. Ces fichiers ont le format suivant :
NomSymbolique1;Syntaxe1
NomSymbolique2;Syntaxe2
NomSymbolique3;Syntaxe3

La syntaxe correspond un mnmonique utilisable en fonction de lquipement vis. Ces


mnmoniques sont documents dans les diffrents manuels protocole.

au Format .SCY ou FEF (fichier dexportation des noms de symboles gnrs avec le
logiciel PL7 junior de SCHNEIDER),
Cette importation se fait au moyen de lutilitaire IMPSYMB. Celui-ci se prsente sous la forme
suivante :

La zone Type de Variable


La zone Type de Variable permet dindiquer quoi vont se rattacher les symboles qui vont tre lus
dans le fichier source (CSV, SCY, FEF). Les variables peuvent tre de type :
variables locales (donc attache la data-base). Il faut alors indiquer le numro de carte
sur laquelle se trouve la data-base,
variables images. Dans ce cas, il faut renseigner le numro de carte, de canal ainsi que le
numro dquipement sur lequel on dsire affecter les symboles.

Serveur OPC

35

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
Le bouton Ouvrir un fichier

Le bouton Ouvrir un fichier... affiche une bote de dialogue permettant de localiser et douvrir le
fichier de symboles. Attention, lextension du fichier dtermine sa faon dtre import. Si
lextension est .CSV le fichier est considr comme tant au format CSV dcrit plus haut, Si
lextension est .SCY ou FEF, le fichier est trait comme un fichier de symboles provenant du
logiciel PL7 junior.

La zone Si des symboles existent dj, que doit faire IMPSYMB ?


Cette zone permet de choisir le comportement de lutilitaire de conversion :
Supprimer les anciens symboles. : supprime avant limportation les symboles dj
existant sur lquipement vis.
Garder les symboles existant ; en cas de doublon supprimer lancien symbole
permet de garder lensemble des symboles. En cas de doublon le symbole actuellement dans
le fichier est supprim et le nouveau est insr.
Garder les symboles existant ; en cas de doublon ne pas insrer le nouveau permet
de garder lensemble des symboles. En cas de doublon le symbole le nouveau nest pas
insr.
Garder les symboles existant ; en cas de doublon demander lutilisateur permet de
garder lensemble des symboles. En cas de doublon lutilisateur est interrog.

le bouton Importer
Aprs avoir renseign les autres champs, le bouton Importer lance limportation des symboles et
leur insertion dans le fichier SYMBOLS.SYM.

Dsignation des noms symboliques dans OPC


Une fois limportation des noms symboliques effectue pour un quipement donn, lapplication
client rfrence un nom symbolique en effectuant la concatnation :

du chemin du priphrique contenant la variable


En utilisant un nom de topic configur
NomTopic.Symbols

Les syntaxes du type "CardX.Database.Symbols" et


"CardX.ChannelY.EquipmentZ.Symbols" sont galement supportes pour compatibilit.

dun nom de variable symbolique

Exemple de syntaxe : Card1.Channel0.Equipment1.Symbols.TEMPERATURE

Serveur OPC

36

Accs aux Variables images ou locales

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

5.

Accs aux Variables images dun contrleur


Logix 5000

Les variables images:


Ce terme dsigne les variables disponibles du ou des contrleur(s) Logix 5000 distant(s). Elles sont
accessibles au travers dun topic de type variable image. Vous devrez dfinir autant de topics que
dquipements distants.
Les variables images sont accessibles en lecture et en criture
Les requtes de lecture sont automatiquement cres par le serveur en fonction des besoins en
variables dans les applications clients. Jusqu' 1024 transactions peuvent tre gnres par canal.
Elles sont en permanence optimises pour minimiser la communication. Ces transactions
contiennent des tags directement dfinis au sein du contrleur Logix 5000 auquel vous accdez.
Les critures sont directement rpercutes dans lquipement distant.

Paramtrage dun topic "variable image" dun contrleur Logix 5000


Le simple fait dajouter un quipement de type Logix5000 - Messagerie Logix5000 (OPC
Seulement) cre un topic associ cet quipement et suffit son utilisation dans lapplicatif client.

Cependant, le topic contient le paramtre suivant sur lequel vous pouvez intervenir :
Optimiser laccs au champs dune structure
Si ce paramtre est coch et quun item reprsentant un champs dune structure de taille
infrieure ou gale 488 octets est demand par un client, le tag identifiant la structure
complte sera plac dans une transaction. Ainsi, si tout autre item reprsentant un champ
diffrent de cette mme structure est ajout, aucune modification de transaction ne sera
ncessaire. Si ce paramtre nest pas coch, chaque champs de la structure sera ajout
dans les transactions de faon indpendante.

Voir galement:
- dans ce manuel :
Configuration des topics

Serveur OPC

37

Accs aux Variables images dun contrleur Logix 5000

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Syntaxes des variables internes


Les syntaxes accessibles dans le serveur OPC applicom sont divisibles en deux catgories :
Les syntaxes obtenues directement par accs en ligne au contrleur Logix5000. Lors du
browsing des items, ces syntaxes sont regroupes sous un nud online plac en
dessous du nom du topic. (voir : Accs au donnes )
Les syntaxes de diagnostic et de contrle. celles-ci sont spcifiques au serveur OPC
applicom et sont situes lors du browsing directement sous le nom du topic. (voir :
Informations de diagnostic et contrle.)

Voir galement:
- dans ce manuel :
Information de diagnostics et contrle
- dans la documentation :
Manuel Allen-Bradley sur EtherNet/IP : Accs aux donnes

Optimisation des requtes synchrones et asynchrones


Lorsque l'application client veut effectuer une demande de lecture ou d'criture synchrone ou
asynchrone, elle appelle une des mthodes disponibles en passant en argument la liste des items
concerns par la requte (sauf dans le cas de IOPCAsyncIO::Refresh o tous les items du groupe
sont implicitement concerns). Le serveur OPC effectue une analyse pralable de cette liste de
manire optimiser le flux de communication ncessaire :

Dans le cas des mthodes de lecture, l'ensemble des items est scrut et ceux-ci sont
regroups de manire minimiser le nombre de requtes.
Dans le cas des critures, les mcanismes mis en uvre sont plus compliqus. En effet,
des variables pouvant tre crites par une mme requte doivent imprativement tre
contigus. De plus il est impratif de prserver l'ordre d'envoi des diffrents items. Le
serveur OPC pratique donc de la faon suivante :
il commence le parcours de la liste en partant du premier item.
pour chaque item suivant, il vrifie si celui-ci est d'adresse directement suprieure
l'item prcdent (valable uniquement pour des items de type tableau).
si l'item n'est pas associable avec le prcdent, il envoie la requte correspondant
aux items prcdents et continue l'exploration jusqu' la fin de la liste.
Voir galement :
- dans la documentation :
Manuel Allen-Bradley sur EtherNet/IP Optimisations en Lecture
Manuel Allen-Bradley sur EtherNet/IP Optimisations en Ecriture

Serveur OPC

38

Accs aux Variables images dun contrleur Logix 5000

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
Limitations

La solution applicom utilise avec le contrleur Logix5000 ne supporte pas les fonctionnalits
standards applicom suivantes :
Les extensions _B (format BCD)et _S (Forage en valeur signe)
Les extensions de syntaxes Bits de mots
Les noms symboliques
Les mcanismes de redondance entre 2 quipements

Information de diagnostics et contrle

Status des quipements => STATUS


Type de variables

Syntaxe de litem

Exemple

MOT 16 BITS

STATUS
STATUS_READ
STATUS_WRITE

STATUS
STATUS_READ
STATUS_WRITE

MOT 16 BITS
MOT 16 BITS

Pour chaque Topic, vous pouvez lire un status local dcriture (STATUS_WRITE), un status local
de lecture (STATUS_READ) et un status recoupant les deux (STATUS). Ils vous donnent des
informations concernant les accs aux quipements. La valeur des Status peut voluer de 0
65535. Ci-dessous les principaux status sont rpertoris.

Pour plus dinformations, veuillez consulter les manuels protocoles au chapitre Status de retour
des fonctions.

Valeurs courantes :
0 : Aucune erreur.
255 : cest la valeur initiale des items de status pour un topic tant quaucune transaction na t
effectue avec lmulateur.
Les autres valeurs reprsente une erreur. Consultez le manuel protocole associ pour connatre la
signification de la valeur

Nombre de dfauts dadvise => ADVISE_FAILED


Permet daccder au nombre de dfauts dadvise survenus pour un Topic standard, cest dire le
nombre de points refuss par OPC en raison dune mauvaise syntaxe. Cette donne nest
accessible quen lecture.

Serveur OPC

39

Accs aux Variables images dun contrleur Logix 5000

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Nombre derreurs dcriture => WRITE_ERROR


Permet daccder au nombre derreurs dcriture survenues pour un Topic standard. Cette
donne nest accessible quen lecture.

Nombre derreurs de lecture => READ_ERROR


Permet daccder au nombre derreurs de lecture survenues pour un Topic standard. Cette
donne nest accessible quen lecture.

Serveur OPC

40

Accs aux Variables images dun contrleur Logix 5000

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

6.
(

Accs aux paramtres des fonctions cycliques


Non support en Direct-Link )

Le configurateur de fonctions cycliques PCCYC vous permet de configurer jusqu 255 fonctions
cycliques par canal. Celles-ci sont charges sur la carte lors de linitialisation des interfaces
applicom et rapatrient ds lors des donnes des quipements vers la data-base applicom (ou
inversement) de manire priodique. Lutilisateur peut configurer des topics fonction cyclique,
chacun lui permettant de faire rfrence une de ces fonctions cycliques. Au travers de ces topics,
il sera possible de manipuler tous les paramtres affrents la fonction cyclique, au mme titre que
la fonction createcyc si vous utilisez la DLL applicom.

Le champ Priode de rafrachissement conserve la mme signification que pour les Topics
standards.

Voir galement:
Dans ce manuel :
Configuration des topics
Contrle des fonctions cycliques de PCCYC
Items lis un topic "fonction cyclique"
Dans la documentation :
Mise en uvre : configuration des topics

Contrle des fonctions cycliques de PCCYC


(

Non support en Direct-Link )

Les fonctions cycliques configures par loutil PCCYC peuvent tre contrles par :
Un topic fonction cyclique
Un couple Flag de commande Mot dtat

Le topic fonction cyclique :

Il vous permet daccder tous les paramtres dune fonction cyclique de PCCYC et deffectuer
ainsi une reconfiguration en dynamique grce aux items :
PERIOD
ACTIVE
EQUIPMENT

Serveur OPC

TYPE
DB_TYPE_VAR
NUMBER_VAR

41

EQUIP_ADDR
DB_ADDR
STATUS_ADDR

STATUS_FCYC
ACTIVE_ONE

Accs aux paramtres des fonctions cycliques

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Ces items vous permettent notamment de dmarrer, darrter, ou de nactiver quune seule fois la
fonction cyclique vise.
Le couple Flag de commande Mot dtat :
Les 128 premires fonctions cycliques de chaque canal de la carte peuvent tre dclenches.
Pour ce faire, une zone de 512 bits de Flag de commande et une zone de 512 mots Mot
dtat sont rserves dans la data-base applicom.
La zone des bits commence l'adresse 32200. La zone des mots commence l'adresse 32100.
Elles permettent de dmarrer, arrter, ou nactiver quune seule fois la fonction cyclique vise.
Cette mthode prsente lavantage de ne pas ncessiter la configuration dun topic
supplmentaire. Cest cette mthode qui devra tre utilise dans le cas des fonctions
dcritures dclenches (mission de variables locales vers un quipement distant),
La formule pour trouver l'adresse du flag de commande est :
32200 + numro de canal * 128 + numro de fonction
La formule pour trouver l'adresse du mot dtat est :
32100 + numro de canal * 128 + numro de fonction
Numr
o
De
Canal
0
1
2
3

Numro de
fonction
cyclique

Zone adresse
Mot dtat
dans data-base zone mots

1 128
1 128
1 128
1 128

32101 32228
32229 32356
32357 32484
32485 32612

Zone adresse
Flag de commande
dans data-base zone
bits
32201 32328
32329 32456
32457 32584
32585 32712

Exemple :
L'adresse du Flag de commande et du Mot dtat de la fonction numro 2 du canal 3 est gale
:
adresse bit = 32200 + 3 * 128 + 2

32586

adresse mot = 32100 + 3 * 128 + 2

32486

En positionnant un le bit flag de commande correspondant la fonction cyclique voulue, le


Serveur positionnera la fonction dans ltat dfini par la valeur du mot dtat :
mot dtat = 0 : Activation ponctuelle de la fonction cyclique (Une seule fois).
mot dtat = 1 : Dmarrage de la fonction cyclique.
mot dtat = 2 : Arrt de la fonction cyclique.

Items lis un topic "fonction cyclique"


(

Non support en Direct-Link )

Ces Items permettent daccder au diffrents paramtres dune fonction cyclique configure par le
configurateur de fonctions cycliques PCCYC, au travers du Topic fonction cyclique qui lui est
associ. Les items utilisables sont dcrits ci-dessous. La plupart correspondent un paramtre de
la fonction CREATECYC (indiqu en italique) de la DLL.
Pour connatre les valeurs possibles de chacun de ces paramtres, reportez-vous la fonction
CREATECYC du Manuel de rfrence librairie applicom.

Priode de rafraichissement

Serveur OPC

=> PERIOD

42

Accs aux paramtres des fonctions cycliques

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Paramtre per de la fonction applicom CREATECYC.


Cet item vous permet daccder la priode de la fonction cyclique. La valeur est un multiple de
100 ms.
Accessible en lecture / criture.

Activation / dsactivation

=> ACTIVE

Paramtre act de la fonction applicom CREATECYC.


Cet item vous permet dactiver (poke de la valeur 1) ou de desactiver (poke de la valeur 0) la
fonction cyclique.
Accessible en lecture / criture.

Numro dquipement cible

=> EQUIPMENT

Paramtre neq de la fonction applicom CREATECYC.


Cet item vous permet daccder au numro dquipement cible.
Accessible en lecture / criture.

Type dchange => TYPE


Paramtre typf de la fonction applicom CREATECYC.
Cet item vous permet daccder au type dchange.
Accessible en lecture / criture.

Type de variable dans data-base

=> DB_TYPE_VAR

Paramtre vardb de la fonction CREATECYC.


Cet item vous permet daccder au type de variable dans la data-base.
Accessible en lecture / criture.

Nombre de variable

=> NUMBER_VAR

Paramtre nb de la fonction applicom CREATECYC.


Cet item vous permet daccder au nombre de variable.
Accessible en lecture / criture.

Adresse variable dans lquipement

=> EQUIP_ADDR

Paramtre adreq de la fonction applicom CREATECYC.


Cet item vous permet daccder ladresse de la premire variable dans lquipement.
Accessible en lecture / criture.

Adresse variable dans data-base

=> DB_ADDR

Paramtre adrdb de la fonction applicom CREATECYC.


Cet item vous permet daccder ladresse de la premire variable dans la data-base.
Accessible en lecture / criture.

Serveur OPC

43

Accs aux paramtres des fonctions cycliques

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Adresse status dans data-base => STATUS_ADDR


Paramtre adrstat de la fonction applicom CREATECYC.
Cet item vous permet daccder ladresse de rangement du mot status dans la data-base.
Accessible en lecture / criture.

Status de la fonction cyclique => STATUS_FCYC


Cet item vous permet daccder au status de la fonction cyclique.
Accessible en lecture.

Activation ponctuelle

=> ACTIVE_ONE

Cet item vous permet dactiver ponctuellement (par poke de la valeur 1) la fonction cyclique.
Accessible en lecture / criture.
La valeur remonte lors dune lecture nest pas significative (toujours = 0).

Serveur OPC

44

Accs aux paramtres des fonctions cycliques

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

7.

Accs aux informations gnrales du serveur


(Topic "SYSTEME")

Ce topic prdfini permet daccder des informations gnrales du serveur. Il est utilisable avec
les items suivants :

Nombre de topics en cours

=> NB_TOPIC

Cet item vous permet daccder au nombre de topics accessibles.

Nombre de points en cours

=> NB_POINT

Cet item vous permet d'obtenir le nombre de points en communication.

Nombre dI/O Items maximum utilisable

=> LIMIT_ALLOWED (SW1000ETH seulement)

Ce nombre est directement li au code dinstallation qui vous a t dlivr.

Nombre dI/O Items instantan => LIMIT_USED (SW1000ETH seulement)


Cet item vous permet daccder au nombre dI/O Items utilis cet instant donn.

Nombre dI/O Items maximum => LIMIT_MAX_USED (SW1000ETH seulement)


Cet item vous permet de connatre le nombre maximum atteint dI/O Items utiliss par le
serveur OPC depuis son lancement.

Etat datteinte de limitation

=> LIMIT_OVERFLOW (SW1000ETH seulement)

Cet item peut prendre 3 valeurs :


0 : Le nombre dI/O Items maximum est rest infrieur 90% de la limite autorise
1 : Le nombre dI/O Items maximum atteint 90% de la limite autorise
2 : Le nombre dI/O Items maximum dpass la limite autorise. Des I/O Items
nont pu tre ajouts dans le serveur.

Voir galement:
Dans ce manuel :
Information de diagnostics et contrle
Limitation du nombre dI/O Items (SW1000ETH seulement)
Interface de Diagnostic

Serveur OPC

45

Accs aux informations gnrales du serveur (Topic "SYSTEME")

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

8.

Accs au WatchDog et lentre TOR (Topics


"CARDx")
Non support en Direct-Link )

Le x est le numro de carte applicom compris entre 1 et 8. Chacun de ces topics identifie une
carte applicom. Ils sont utilisables avec les items suivants :

Chien de garde => WATCHDOG


Un contact de chien de garde est la disposition de lutilisateur sur chaque interface applicom.
Ce contact peut tre forc ferm, ouvert ou rafrachi pour une priode donne. Cette fonction se
comporte comme un monostable.
Le contact se ferme sur une criture de cet item et retombe aprs le temps dfini dans la variable
WATCHDOG.
Ce monostable est automatiquement rarm chaque nouvelle criture. Si votre application
gnre des critures priodiques une frquence infrieure la valeur passe au cours de
lcriture, le contact reste ferm.

WATCHDOG = 0
WATCHDOG =-1
WATCHDOG >0 et !=-1

ouverture maintenue du contact


fermeture maintenue du contact
fermeture du contact durant cette valeur en secondes

Attention : Les accs sont en lecture/criture.


Si linterface applicom est quipe de Prom suprieure ou gale 3.2, la valeur de retour est le
nombre de seconde restant. Dans le cas contraire, la valeur remonte est sans signification
(toujours = 0).

Entre TOR

=> INPUT

Pour les interfaces quips dune entre TOR, Cet item vous permet de remonter le niveau de
celle-ci (0 ou 1)
Attention : Les accs sont en lecture seulement.

Serveur OPC

46

Accs au WatchDog et lentre TOR (Topics "CARDx")

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

9.
(

Accs aux signaux modems (Topic "CHANx")


Non support en Direct-Link )

Le x est un numro de canal applicom compris entre 0 et 31. Chacun de ces topics identifie un
canal. Ils sont utiliss pour la gestion des signaux modems avec les items suivants :

Signaux RS232 RTS et DTR

=> RTS_DTR

Cet item vous permet de positionner les signaux RTS et DTR.par une criture. Laccs se fait en
criture seulement. En lecture, cet item remonte la valeur 255 (non significative).

Poke de la valeur 0:

RTS =0 et DTR = 0

Poke de la valeur 1:

RTS =0 et DTR = 1

Poke de la valeur 2:

RTS =1 et DTR = 0

Poke de la valeur 3:

RTS =1 et DTR = 1

Signal RS232 CTS

=> CTS

Cet item vous permet daccder au signal CTS. Seule la lecture est autorise.

Signal RS232 DCD

=> DCD

Cet item vous permet daccder au signal DCD. Seule la lecture est autorise.

Serveur OPC

47

Accs aux signaux modems (Topic "CHANx")

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

10. Interface de Diagnostic


Pour accder l'interface de diagnostic, il convient au pralable de slectionner l'option Autoriser
la vue de diagnostic du serveur dans les paramtres du serveur OPC (voir renvoi ci-dessous).
Son affichage se fera par l'icne prsente dans la barre des tches de Windows au dmarrage du
serveur OPC.

Un double clic sur l'icne affiche l'environnement de diagnostic. Un clic avec le bouton droit de la
souris propose le menu permettant :
d'afficher la fentre de diagnostic. Menu Diagnostic
de fermer le serveur OPC. Menu Exit

L'interface de diagnostic nest utile que pour les phases de mise au point de votre application. Son
utilisation est consommatrice de ressources. Elle ne doit donc pas tre active durant les phases
dexploitation. L'interface de diagnostic permet :
de gnrer un fichier, exploitable par lapplication DumpLogger.exe , contenant des
informations sur les requtes de communication
de gnrer un fichier, exploitable par lapplication DumpLogger.exe , contenant des
informations sur loptimisation de la communication
d'espionner plus particulirement les vnements survenant sur un item
d'afficher des informations sur le droulement du serveur.

Serveur OPC

48

Interface de Diagnostic

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Description des commandes gnrales


Icne

Menu

Description

Diagnostic Communication Request

Diagnostic
communication

Optimisation

Gnre le fichier dumpOPC.xml dans le


rpertoire de configuration, exploitable par
lapplication DumpLogger.exe , contenant des
informations sur les requtes de communication
Ce bouton lance automatiquement lapplication
DumpLogger.exe et laffichage du fichier
dumpOPC.xml
Gnre le fichier dumpTopic.xml dans le
rpertoire de configuration, exploitable par
lapplication DumpLogger.exe , contenant des
informations sur loptimisation de la communication
Ce bouton lance automatiquement lapplication
DumpLogger.exe et laffichage du fichier
dumpTopic.xml

Diagnostic - Items Spy

Permet d'espionner une liste d'items.

Diagnostic - Output View None

Ferme la zone de messages.

Diagnostic - Output View Single

Affiche une zone o tous les messages sont crits


les uns aprs les autres quelque soit leur
provenance.

Diagnostic - Output View - Multiple

Affiche une zone de messages en les sparant par


types.

Diagnostic - Run VisuCyc

Dmarre l'application de visualisation des fonctions


cycliques VisuCyc. (Non disponible avec DirectLink)

? - About...

Affiche des informations sur le logiciel.

Voir galement:
Dans ce manuel :
Paramtrage du serveur OPC
Les requtes de communication
Vue d'espionnage des items
Vue des messages

Serveur OPC

49

Interface de Diagnostic

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Les requtes de communication


En appuyant sur le bouton suivant :
, le fichier dumpOPC.xml est gnr dans le rpertoire
de configuration courante. Lapplication DumpLogger.exe sactive et charge aussitt ce dernier
fichier.

Cette vue a pour but de lister l'ensemble des items et des groupes, gr par le serveur OPC.
Un double clic sur lun des objets de larbre affiche une bote proposant la liste des paramtres
internes de lobjet.

Optimisation de la communication
En appuyant sur le bouton suivant :
, le fichier dumpTopic.xml est gnr dans le rpertoire
de configuration courante. Lapplication DumpLogger.exe sactive et charge aussitt ce dernier
fichier.

Serveur OPC

50

Interface de Diagnostic

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

L'affichage de cette fentre est statique et est construit au moment du clic sur le bouton d'affichage.
La partie droite de la vue donne des informations sur l'objet slectionn dans la fentre de gauche.
Ces informations ne sont pas documentes mais peuvent tre utilises par le support technique.

Vue d'espionnage des items


La vue d'espionnage des items est obtenue en appuyant sur le bouton suivant :

Serveur OPC

51

Interface de Diagnostic

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Cette vue est divise en trois parties. En haut gauche un navigateur permet de consulter les
diffrentes donnes accessibles. La partie en bas gauche montre la liste des items surveiller et
la partie de droite affiche les messages des vnements affectant les items de la liste.

Pour espionner un item


slectionnez l'item surveiller dans le navigateur
effectuez un "glisser - dplacer" du navigateur vers la liste en dessous
compltez ventuellement la syntaxe (appui sur F2 pour renommer) et cliquez sur la case cocher
pour slectionner l'item
mettre en route la surveillance en appuyant sur le bouton :

A partir de ce moment, il n'est plus possible de modifier les items en surveillance active. Il est
cependant possible d'ajouter des items dans la liste ou de modifier ceux non actifs.
La surveillance peut tre stoppe avec le bouton :

Notes:
La liste des items surveiller peut tre sauvegarde et recharge
La commande Logger parameters... du menu Diagnostic permet de sauvegarder tous les
messages affichs dans la vue dans un fichier "Spy.log" situ dans le rpertoire de configuration.
Attention, ces paramtres sont appliqus la fois sur le fichier "Spy.log" et sur le fichier "Opc.log"
permettant de sauvegarder les messages de l'application.

Commandes disponibles
Icne

Serveur OPC

Menu

Description

Items Spy Item set New list

Crer une nouvelle liste d'items surveiller. Si une


liste existe dj et n'a pas t sauvegarde, un
message apparat.

Items Spy - Item set Load

Ouvre une liste prcdemment sauvegarde sur le


disque. Si une liste existe dj et n'a pas t
sauvegarde, un message apparat.

Items Spy - Item set Save

Permet d'enregistrer sur le disque, la liste active.

Items Spy Find

Recherche une chane de caractres dans la fentre


en cours. La casse n'a pas d'importance.

Items Spy - Trace Clear

Supprime tous les messages


d'affichage des messages.

de

la

fentre

Items Spy - Traces Copy

Copie le texte slectionn de la fentre de message


dans le presse papier. Il peut donc tre facilement
coll dans tout autre fichier de type texte.

Items Spy Start

Mets tous les items slectionns de la liste en


espionnage.

52

Interface de Diagnostic

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
Items Spy Stop

Arrte l'espionnage de tous les items.

Items Spy Item set Add Item

Ajoute l'item slectionn de l'arbre dans la liste.

Items Spy Item set Remove


Item

Supprime l'item slectionn de la liste.

Items Spy - Item set Check Item

Slectionne l'item (ou les items) afin qu'il(s) soit(ent)


espionn(s).

Vue des messages


Cette vue permet d'afficher des informations lies au droulement de l'application. L'activation de
cette vue est assure l'aide des trois boutons suivants :

Le premier ferme la fentre des messages.


Le second affiche la vue en sparant les messages en trois onglets :
onglet Lecture : affiche un message chaque fois que le serveur va acqurir une donne auprs
de l'mulateur
onglet Ecriture : affiche un message chaque fois que le serveur envoie une donne vers
l'mulateur
onglet Erreur : affiche un message chaque fois qu'une erreur se produit (erreur de syntaxe,
mauvaise conversion d'une valeur,...)
Le troisime affiche la vue en incorporant tous les messages dans la mme fentre.

Serveur OPC

53

Interface de Diagnostic

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Il est possible de stopper la trace des messages dans les fentres en slectionnant la commande
Diagnostic Output View Stop Messages. La commande Restart Messages permet de
reprendre les traces. Ces deux commandes agissent sur toutes les fentres de messages en
mme temps. Lors de l'arrt ou de la reprise, un message est signal dans chacun des onglets.
Attention : Tous les messages entre l'arrt et la reprise sont perdus.

La commande Clear Output View permet de supprimer tous les messages de l'onglet visible. Les
messages des autres onglets ne sont pas affects par cette commande.

Remarque :
La commande Logger parameters... du menu Diagnostic permet de sauvegarder tous les
messages affichs dans la (les) vue(s) dans un fichier "OPC.log" situ dans le rpertoire de
configuration. Attention, ces paramtres sont appliqus la fois sur le fichier "OPC.log" et sur le
fichier "Spy.log" permettant de sauvegarder les messages de surveillance d'items.

11. Dveloppement d'un client OPC

Contextes de dveloppement
Beaucoup de progiciels de supervision intgrent de base la fonctionnalit client OPC. Cependant,
en cas de besoins spcifiques, il est possible de dvelopper soit-mme son propre client OPC,
partir de l'outil de dveloppement de son choix. Les dveloppement peuvent tre classs en trois
catgories principales :
Les dveloppements effectus l'aide de l'ActiveX de communication applicom
L'activeX rend transparent pour l'application cliente l'accs aux serveurs OPC et ne
demande que peu de connaissance propos d'OPC. L'activeX facilite grandement le
dveloppement du client en prenant en charge la mise en communication des serveurs et
l'activation des groupes et des items. La dfinition de l'application est ralise
graphiquement sans aucune programmation.
L'activeX de communication est utilisable par les environnements de travail container
ActiveX, notamment Visual Basic, Delphi, les outils offices, ...

Les dveloppements utilisant le custom interface.


Cette interface est utilisable depuis les langages du type C/C++. Son utilisation ncessite
une connaissance complte de la spcification OPC Data Access, des mcanismes OPC
en gnral et des mcanismes OLE/COM.

Les dveloppements effectus l'aide de la DLL Automation.


Cette interface est plus particulirement destine aux outils de dveloppement rapide tels
que VB, Delphi, les outils offices,Elle constitue en fait une surcouche automation du
custom interface utilisable depuis les langages du type C/C++. Son utilisation ncessite
une connaissance complte de la spcification Data Access Automation Interface et des
mcanismes OPC en gnral.

Serveur OPC

54

Dveloppement d'un client OPC

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Le produit applicom ne fournit pas la DLL automation. La voie prconise pour developper
un client OPC depuis des progiciels client automation est lactiveX de communication
applicom.
En cas de besoin, les sources de la DLL Automation peuvent tre rcuprs auprs de la
fondation OPC

Voir galement :
dans ce manuel :
Contexte d'utilisation du serveur OPC

Dveloppement d'un client en C et C++


Le serveur OPC applicom est bas sur les spcifications 2.04 de la fondation OPC. Il supporte
les accs au travers de lOPC custom Interface.
Le but de cette documentation nest pas de se substituer la spcification V2.04 dite par la
fondation OPC. Celle-ci dcrit dans le dtail les diffrentes interfaces et le rle des mthodes quils
exposent. Ce chapitre est destin voquer toutes les particularits lies au dveloppement d'un
client OPC en C++ avec le serveur OPC applicom et tente de clarifier certains points qui peuvent
donner lieu des interprtations diverses lors de la lecture de la spcification.

Voir galement :
Document externe :
OPC custom interface V2.04

Les objets et les interfaces supports


Lexcutable APPOPC.EXE est un serveur OPC Data Access compatible avec la spcification 1.0A
et 2.0. Il supporte en effet lensemble des objets et des interfaces obligatoires dfinis par ces
spcifications, mais aussi l'interface optionnelle de browsing des ItemID.
Objets

Interfaces

Type

OPCServer

IOPCServer

Obligatoire pour V1.0 et V2.0

IOPCItemProperties

Obligatoire pour V2.0

IOPCCommon

Obligatoire pour V2.0

IconnectionPointContainer

Obligatoire pour V1.0 et V2.0

IOPCBrowseServerAddressSpace

Optionnelle

IOPCGroupStateMgt

Obligatoire pour V1.0 et V2.0

IOPCSyncIO

Obligatoire pour V1.0 et V2.0

IOPCAsyncIO

Obligatoire pour V1.0

IOPCAsyncIO2

Obligatoire pour V2.0

IOPCItemMgt

Obligatoire pour V1.0 et V2.0

IdataObject

Obligatoire pour V1.0

IconnectionPointContainer

Obligatoire pour V2.0

IenumOpCItemAttributes

Obligatoire pour V1.0 et V2.0

OPCGroup

EnumOpCItemAttributes

Voir galement :

Serveur OPC

55

Dveloppement d'un client OPC

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
dans ce manuel :

Le browsing des ItemID

Cration dun objet OPCServer


Le serveur OPC applicom sera identifi dans le systme dexploitation MS-Windows laide de
son ProgID (identificateur de programme) et de son CLSID (identificateur de classe), enregistrs
dans la base de registres de la machine durant linstallation.
Le CLSID est lidentificateur unique et universel du serveur et il est indpendant de sa version. Le
ProgID est une chane de caractres traduite du CLSID au moyen de la base de registres. Il
constitue un synonyme lisible du CLSID.
Pour crer un objet serveur OPC applicom, lapplication client doit :
1 - Initialiser la librairie COM
2 - Obtenir le CLSID du serveur OPC partir du ProgID
3 - Crer un objet OPCServer
4 - Appeler une ou des fonctions de lobjet OPCServer
5 - Relcher les interfaces utilises.
Voici un exemple de code effectuant les tapes prcdentes (pour la lisibilit du code les cas
d'erreur ne sont pas traits):
//Etape
1
:
Initialiser
la
librairie
COM
HRESULT
hr;
hr
= CoInitialize(NULL);
//Etape
2
:
Obtenir
le
CLSID
du
ProgID
CLSID
clsid;
hr
=
CLSIDFromProgID((L"
APPLICOM.OPCServer
"),&clsid);
//Etape 3 : Creer l'objet OPCServeur et obtenir la
premiere
interface
(ici
IOPCServer)
IOPCServer*
pServer;
hr
=
CoCreateInstance(clsid,NULL,
CLSCTX_LOCAL_SERVER,IID_OPCServer,(void**)&pServer);
//Etape
4
:
Appeler
l'une
des
fonctions
de
l'interface.

pServer->GetStatus();

//Etape
5
:
Relacher
les
interfaces
pServer->Release();
UnInitialize();
Remarque :
Le package dinstallation, comprend deux fichiers, APPCLSID.H et APPCLSID.C qui contiennent
le ProgID et le CLSID du serveur OPC applicom et que vous pouvez inclure directement dans
votre projet CLIENT en C ou C++.

Voir galement :
dans ce manuel :
ProgID et CLSID

Serveur OPC

56

Dveloppement d'un client OPC

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Cration d'un objet OPCGroup


La cration dun groupe par le client seffectue par un appel la mthode AddGroup de linterface
IOPCServer de l'objet OPCServer.Celle-ci comporte notamment les paramtres suivants :
Nom

Description

szName

Nom du groupe. S'il n'est pas fourni, le serveur en gnre un unique (de la
forme APPGROUP + un numro incrmental).

dwRequestedUpdateRate

Priode de rafrachissement demande par le client. La priode rellement


admise par le serveur sera retourne dans le paramtre de retour
dwRequestedUpdateRate.

dwLCID

Ce paramtre nest pas exploit.

pPourcentDeadBand

Ce paramtre permet de limiter le retour de la variable au forte variation


(voir "Gestion des groupes")

Voir galement :
dans ce manuel :
Gestion des groupes (OPC Group)

Gestion des items


La cration ditems par le client seffectue par un appel la mthode AddItem de linterface
IOPCItemMgt de l'objet OPCGroup. Chaque item symbolise une connexion vers une variable
physique. En fait, le client dcrit la variable qui lintresse par le biais dune structure
OPCITEMDEF.
Les champs de cette structure sont les suivants :
Nom

Description

szAccessPath

Non exploit par le serveur OPC applicom .

szItemID

Chane de caractres rfrenant litem.

bActive

indique l'tat d'activation de l'item au moment de sa cration.

hClient

Handle de rfrence du point pour le client.

dwBlobSize

le mcanisme de blob nest pas exploit par le serveur OPC applicom.

pblob

le mcanisme de blob nest pas exploit par le serveur OPC applicom.

vtRequestedDataType

Type du variant demand par le client . La valeur VT_EMPTY dsigne le type


par dfaut (dcid par le serveur). Utilisez le renvoi 1 pour connatre les types
de variant supports.

Remarques :
Lors de lajout dun nouvel item dans un groupe par la mthode AddItems, le serveur OPC
dtermine automatiquement le type canonique de la variable et le retourne dans le champ
vtCanonicalDataType de la structure OPCITEMRESULT.
Sauf besoin particulier, Il est donc conseill lapplication client de toujours passer la
valeur VT_EMPTY dans le champ vtRequestedDataType, laissant ainsi le serveur
dterminer lui-mme le type de la variable.

Serveur OPC

57

Dveloppement d'un client OPC

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
Voir galement :
dans ce manuel :

Types de donnes supports par le serveur OPC


Principe daccs aux donnes

Remonte des donnes


L'objet OPCGroup et ses diffrentes interfaces offrent au client quatre voies possibles pour lire des
donnes :
Mcanisme vnementiel (IDataObject/IAdviseSink en V1.0A ou
IConnectionPoint/IOPCDataCallback en V2.0)
Lecture synchrone (IOPCSyncIO::Read )
Lecture asynchrone (IOPCAsyncIO::AsyncRead en V1.0A ou
IOPCAsyncIO2::AsyncRead en V2.0)
Rafrachissement asynchrone du groupe (IOPCAsyncIO::Refresh en V1.0A ou
IOPCAsyncIO2::Refresh en V2.0)
et deux possibilits pour crire :
Ecriture synchrone (IOPCSyncIO::Write)
Ecriture asynchrone (IOPCAsyncIO::AsyncWrite en V1.0A ou
IOPCAsyncIO2::AsyncWrite en V2.0)
Remarques :
Lors de lectures/critures asynchrones, si les demandes sont envoyes plus rapidement
qu'elles ne peuvent tre traites par le serveur, celui-ci les empile. Si trop de requtes sont
empiles, les demandes sont refuses.
Attention : en version 1.0A, le mode vnementiel sappuie, en conformit avec la
spcification, sur les interfaces standards OLE IDataObject et IAdviseSink. Lappel par le
serveur de la fonction OnDataChange du client est en fait un appel asynchrone (cf aide en
ligne de linterface IAdviseSink). Il est par consquent impratif que lapplication client soit
en mesure de rcuprer les donnes aussi rapidement que le serveur les transmet. Dans
le cas contraire, les appels sont empils par le systme, entranant une diminution de la
mmoire disponible pouvant aller jusqu' puisement. Ce phnomne peut survenir
dautant plus que le serveur est rapide. Il peut donc tre provoqu lorsque le client
demande une surveillance de donnes en constante volution (variables analogiques,...)
des priodes de rafrachissement trs faibles.

Voir galement :
dans ce manuel :
Principe daccs aux donnes

Exemple de client OPC en C++


Le package du serveur OPC inclut un client OPC dvelopp laide de Visual C++ 6.0. Ce client,
dont tous les codes source sont fournis (dans le sous-rpertoire OPC), vous permettra de tester la
fonctionnalit du serveur OPC et pourra constituer un modle de base pour votre propre
dveloppement.
Attention :

Serveur OPC

58

Dveloppement d'un client OPC

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Ce client a t dvelopp but dexemple de programmation et de test. Il sagit dune application


monothread dont les mcanismes daffichage ne sont vraiment pas optimiss (lutilisation de liste
pour laffichage des items est trs gourmande en ressources CPU). Dans le cas de priodes de
rafrachissement demandes trs petites, des changements de valeurs frquents peuvent
engendrer un blocage du rafrachissement du client. Ce phnomne ne peut pas tre imput aux
performances du serveur OPC, mais au contraire, aux remontes rapides effectues par celui-ci et
engendrant un engorgement au niveau du redessin de lapplication client.

Informations ncessaires au dveloppement


ProgID et CLSID
Le serveur OPC applicom sera identifi dans le systme dexploitation MS-Windows laide de
son ProgID (identificateur de programme) et de son CLSID (identificateur de classe), enregistrs
dans la base de registres de la machine durant linstallation :
ProgID APPLICOM.OPCServer ;
CLSID

{283618B2-8349-11D0-8F82-0080C85344A1}.

Types de donnes supports par le serveur OPC


Le serveur OPC applicom supporte les types de donne suivants :
Type de variant

Type de donne

VT_BOOL

Boolen

VT_UI1

octet non sign

(de 0 255)

VT_I1

octet sign

(de -128 127)

VT_UI2

entier 16 bit non sign

(de 0 65535)

VT_I2

entier 16 bit sign

(de -32768 32767)

VT_UI4

entier 32 bit non sign

(de 0 4294967295)

VT_I4

entier 32 bit sign

(de -2147483648 2147483647)

VT_R4

flottant IEEE sur 4 octets

(de -3.4e+38 3.4e+38)

VT_R8

flottant IEEE sur 8 octets

VT_BSTR

chane ASCII

Limite

Les types prcdents (except VT_BSTR) peuvent tre associs avec le type VT_ARRAY pour
indiquer que la variable est de type tableau.

Voir galement :
dans la base de connaissances :
Serveur OPC : Types de donnes retournes par le serveur OPC

Serveur OPC

59

Dveloppement d'un client OPC

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

Remonte des donnes et comportement du serveur


Le tableau suivant rsume le comportement du serveur OPC en fonction de ltat du groupe, de
celui de litem et de la provenance des donnes.
Fonction

Provenance
des donnes

Groupe
Active

Item
Activ

Comportement et code de retour

Lecture synchrone

CACHE

La valeur et la qualit des items demands


sont retournes.

CACHE

Les items sont retourns avec le drapeau de


qualit OPC_QUALITY_OUT_OF_SERVICE

CACHE

O|N

Les items sont retourns avec le drapeau de


qualit OPC_QUALITY_OUT_OF_SERVICE

DEVICE

O|N

O|N

La valeur et la qualit des items sont


retournes aprs une lecture dans les
quipements

CACHE

La valeur et la qualit des items demands


sont remontes par lappel OnDataChange
ou par l'interface IOPCDataCallback.

CACHE

Les items demands sont retourns par


lappel OnDataChange ou par l'interface
IOPCDataCallback avec le drapeau de
qualit OPC_QUALITY_OUT_OF_SERVICE

CACHE

O|N

Les items demands sont retourns par


lappel OnDataChange ou par l'interface
IOPCDataCallback avec le drapeau de
qualit OPC_QUALITY_OUT_OF_SERVICE

DEVICE

O|N

O|N

La valeur et la qualit des items sont


retournes par lappel OnDataChange ou
par l'interface IOPCDataCallback aprs une
lecture dans les quipements

CACHE
DEVICE

O|N

La valeur et la qualit de tous les items actifs


dans le groupe sont retournes par lappel
OnDataChange
ou
par
l'interface
IOPCDataCallback.
Le serveur retourne E_FAIL si aucun item
nest actif dans le groupe.

O|N

Le serveur retourne E_FAIL immdiatement.

O|N

Les donnes sont remontes (pour les items


actifs ayant changs depuis la dernire
remonte).

O|N

Les donnes ne sont plus remontes.

Lecture
Asynchrone

Rafrachissement
du groupe

Mode
vnementiel

Les flags de qualit


A chaque item sont associs des flags de qualit permettant lapplication client de connatre la
validit de litem. Les flags sont disposs suivant le modle suivant :

QQSSSSLL

Serveur OPC

60

Dveloppement d'un client OPC

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

QQ : ce sont les bits de qualit principaux. Les valeurs retournes par le serveur applicom
peuvent tre 0 (mauvais), 1 (incertain) ou 3 (OK)

SSSS : le sous-status commente la valeur du satus QQ. Le serveur OPC retourne entre autre
valeur 7 (Out Of Service) quand les bits QQ sont positionns sur 0 (mauvais). Ce sous-status est
retourn si le client effectue une lecture synchrone ou asynchrone dans le cache alors que litem
nest pas actif.

LL : Permet d'indiquer un dpassement haut ou bas de la valeur.

Voir galement :
dans ce manuel :
Qualit des items

Serveur OPC

61

Dveloppement d'un client OPC

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead

12. Index
AccessPath, 9
ActiveX de communication, 75
ADVISE_FAILED, 41, 54
Asynchrone, 15, 28, 51, 81, 86
Bande morte, 13
Bit de mots, 32
Browsing, 12
Cache, 86
Client OPC, 74, 82
CLSID, 78, 84
Configuration, 30, 31
Configuration des topics, 21, 24, 49
CTS, 64
Custom interface, 75
DCD, 64
Descripteurs, 24, 35, 38
Developpement, 74
Device, 86
Diagnostic, 39, 52
Diagnostic du serveur OPC, 65
DLL automation, 75
Evnementiel, 15, 81
Flags de commandes, 58
Fonctions cycliques, 57, 58, 60
Groupes OPC, 13, 79
Horodatage, 16
INPUT, 63
Interface, 77
Interface graphique, 6
Item, 9, 33, 60, 80
ItemID, 9
LIMIT_ALLOWED, 62
LIMIT_MAX_USED, 62
LIMIT_OVERFLOW, 62
LIMIT_USED, 62
Limitation Logix, 52
Limitations, 18
Mode expert, 8
Mode Message, 31
Mode tableau, 29, 30
Modems, 64
NB_POINT, 62
NB_TOPIC, 62
Noms symboliques, 44
Optimisation Logix, 49, 51
Paramtres serveur OPC, 7
ProgID, 11, 78, 84
Qualit d'une donne, 17, 87
READ_ERROR, 43, 56
RTS_DTR, 64
Serveur OPC, 3
Signaux modems, 64

Serveur OPC

62

Index

electrical & safety industrial connectivty software & electronics advanced connectivity

Woodhead
STATUS, 40, 53
Synchrone, 15, 28, 51, 81, 86
Syntaxe Logix, 50
SYSTEME, 62
Topic, 9, 20
Topics Fonction cyclique, 20, 58, 60
Topics prdfinis, 20, 62, 63, 64
Topics variable image, 20, 22
Topics variable locale, 20, 22
Variable image, 22, 48
Variable internes, 24
Variable locale, 22
Variable Logix, 48
Variable OPC, 22, 48, 85
Variables internes, 50
WATCHDOG, 63
WRITE_ERROR, 42, 55

Serveur OPC

63

Index

Das könnte Ihnen auch gefallen