Client opc

Soyez le premier à donner votre avis sur cette source.

Vue 44 400 fois - Téléchargée 5 011 fois

Description

Voici le code source d'un client OPC, se client se connecte à n'importe quels serveurs OPC pour ensuite récuperer les différentes valeurs circulant sur le serveur.

Programme non-terminé, j'ai une erreur lors de ma lecture des variables, si quelqu'un pouvait m'aider!!!!!!!!!!!!!!!!! please !!!!!!!!!!!!!!!!

Alors pour avoir quelques explications sur l'architecture OPC:
---------------------------------------------------------------------

OPC (OLE for Process Control) est un standard de communication basé sur la technologie OLE / COM qui constitue le nouveau moyen d’échange d’informations entre applications Ms-Windows en environnement 32-bits.

OPC offre une plus grande interopérabilité entre les applications de contrôle / commande / supervision, les équipements industriels (API, capteurs, actionneurs) et les applications bureautiques de gestion.

OPC définit des objets standards, des méthodes et des propriétés bâtis sur le concept COM ( Component Object Model ) pour permettre à des serveurs de données « temps réel » comme les DCS, les API et les équipements de terrain de communiquer leurs données vers des applications clientes OPC.

Ø « Plug & Play » logiciel.
Les applications peuvent facilement communiquer entre elles.

Ø Architecture Client/Serveur.
Le concept OPC s’appuie sur une architecture client/serveur. Une même application client peut solliciter plusieurs serveurs simultanément. Les serveurs peuvent être localisés soit sur une machine locale, soit sur des machines distantes à travers DCOM.

Un client OPC communique avec le serveur OPC et peut exploiter différentes fonctionnalités de celui-ci. Le client fait appel aux services fournis par le serveur.

Une liaison OPC permet de fédérer clients et serveur au sein d’un processus (In-Process), de plusieurs processus d’un ordinateur (serveur local) ou de plusieurs ordinateurs (serveur distant) .

Client OPC :
--------------

OPC repose sur une structure Client/Serveur. Le client OPC communique avec le serveur OPC et peut faire appel à ses différentes fonctionnalités.

Il s’agit notamment des fonctionnalités suivantes :
· Informations d’état.
· Gestion des erreurs.
· Recherche des éléments disponibles sur le serveur.
· Accès aux données en mode Synchrone /Asynchrone.
· Activation/Désactivation de groupes et d’éléments individuels.
· Administration et réorganisation de groupes et d’éléments.

Le client fait appel aux services du serveur. Sur le client, il peut s’agir des logiciels suivants :

· Visualisation.
· Systèmes de communication.
· Bases de données.
· Composants ActiveX.
· Programmes personnalisés écrits en Delphi, Visual Basic/Visual C++.

Communication entre client et serveur OPC :
----------------------------------------------------
Les possibilités de communication entre client et serveur OPC sont les suivantes :

Ø Un client OPC peut communiquer simultanément avec plusieurs serveurs OPC de constructeurs différents.
Ø Plusieurs clients OPC d’éditeurs différents peuvent communiquer simultanément avec le même serveur OPC. Chaque client dispose alors de son propre espace d’adressage dans l’interface serveur.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
1
Date d'inscription
vendredi 10 juin 2011
Statut
Membre
Dernière intervention
9 avril 2012

Salut
je viens d'utiliser OPC.SimaticNET comme un serveur OPC mais j'ai pas pu lire les items existant avec ce client.
svp pouvez vous m'aider à résoudre ce problème
Messages postés
1
Date d'inscription
dimanche 5 décembre 2004
Statut
Membre
Dernière intervention
24 mars 2007

bonjour,

j'explique le prob.

1- je dois faire une identification d'un systeme (dynamique non lineaire et miltivatiable c crackant..) a regulé en utilisant les methodes ARX/NARX ... sous simulink, pour cela je dois faire communiquer simulink et step7 (SIEMENS).

j'ai entendu des liaiasons ouvert comme DDE OPC. et j'aimerais bien savoir comme choisir l'architecture. est comment faire?
Messages postés
6
Date d'inscription
mardi 8 novembre 2005
Statut
Membre
Dernière intervention
8 mars 2007

De plus, dès que nous utilisons ces méthodes d'écriture et de lecture dans un autre formulaire du même projet c'est tout le programme qui est ralenti alors qu'il fonctionnait très bien !
Par exemple un mot de l'automate est associé à une petit diode qui passe du vert au rouge, rien que ça et le programme est beaucoup plus lent pour afficher cette diode sur un autre formulaire...

quelqu'un a une idée pour accélérer la communication entre les formulaires ?

Merci d'avance
Messages postés
6
Date d'inscription
mardi 8 novembre 2005
Statut
Membre
Dernière intervention
8 mars 2007

Bonjour.
Nous sommes un groupe d'étudiants en DUT Informatique et déveleppons un client OPC basé sur OFS (OPC Factory Server). Nous nous servons de la DLL automation sur du VB6.
J'ai un problème avec l'écriture asynchrone, je n'arrive pas à mettre les bons paramètres j'ai toujours en réponse argument ou appel de procédure invalide

je vous donne un petit bout de cette fonction d'écriture :

OPCMygroup.AsyncWrite 29, ItemServerHandles, ItemValues, Errors, TransactionID + 1, CancelId

29 étant le nombre d'items que nous avons dans notre liste d'items(une listview) et donc dans notre Groupe d'items, et Itemvalues est un tableau de 29 cases de type Variant rempli avec des 1, pour essayer d'écrire des "1" sur toutes nos variables...
quelqu'un peut m'aider ? :)

par contre la lecture asynchrone et l'écriture synchrone marche très bien, mais d'un point de vue de rapidité nous avons besoin d'une écriture asynchrone sinon nous ne pouvons lire de suite les actions réalisées par l'écriture...

ça ça marche impeccablement bien pour lire :
OPCMygroup.AsyncRead lvOPCitems.ListItems.Count, ItemServerHandles, Errors, TransactionID, CancelId
>
Messages postés
6
Date d'inscription
mardi 8 novembre 2005
Statut
Membre
Dernière intervention
8 mars 2007

Bonjour , j'ai un projet sur OPC basé sur OFS(OPC Factory server) et j'ai besion de votre aide , j'ai besion d'avoir un tutoriel qui va me permettre de voir comment acquirir des données d'un API Schneider ( programmation API et client OFS ) et merci en avance
Afficher les 27 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.