begin process at 2008 05 16 08:54:35
1 173 235 membres
76 nouveaux aujourd'hui
13 970 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CLIENT OPC, AVEC CONNEXION AU SERVEUR KEPWARE


Information sur la source

Description

Voila une autre source VB, comme client OPC.
Ici on utilise une connexion Tcp/IP avec les automates (donc pas de cartes a mettre dans le PC) et le serveur Kepware

Je ne vais pas mettre trop de blabla bla. Posez vos questions !!!

Bon courage, JJMaster

Source

  • '*******************************************************************************************'
  • '******************** Client OPC developpé par Julien BOUET ****************************'
  • '******************** alias JJMaster ****************************'
  • '******************** V1.0 ****************************'
  • '******************** 16 mars 2005 ****************************'
  • '*******************************************************************************************'
  • App.HelpFile = App.Path & "\TEMP1.chm"
  • '**initialisation de variables
  • inibiteur = False
  • '**On crée un objet OPCServer qui sera connecte au serveur OPC choisi
  • Set ServeurOPCConnecte = New OPCServer
  • On Error GoTo erreur
  • '**On tente de s'y connecter
  • ServeurOPCConnecte.Connect "KEPware.KEPServerEx.V4"
  • On Error GoTo 0
  • '** pas d'erreur de connexion au serveur OPC
  • Label2.Visible = True
  • Label2.ForeColor = &HC000&
  • Label2.Caption = "Connexion au serveur OK"
  • '**Création d'un objet OPCGroups qui contiendra une collection
  • '**d'objets OPCGroup
  • Set CollectionGroupesConnecte = ServeurOPCConnecte.OPCGroups
  • CollectionGroupesConnecte.DefaultGroupIsActive = True
  • '**On crée un objet OPCGroup dans la collection CollectionGroupesConnecte
  • Set GroupeConnecte = CollectionGroupesConnecte.Add("supervision")
  • '**initialisation necessaire cf. doc la bible OPC
  • GroupeConnecte.IsActive = True
  • GroupeConnecte.UpdateRate = 10
  • GroupeConnecte.IsSubscribed = True
  • '**Création d'un objet OPCItems qui contiendra une collection d'objets OPCItem
  • Set CollectionItemsOPC = GroupeConnecte.OPCItems
  • '**Variable pour le Tour
  • ReDim tabhandle(nbElementOPC)
  • For i = 1 To nbElementOPC
  • tabhandle(i) = i
  • Next i
  • ReDim Tabitem(nbElementOPC)
  • ReDim TabitemRef(nbElementOPC)
  • Call MiseEnFormeVariable2
  • '**On tente d'ajouter un objet OPCItem à la collection pour le TOUR
  • CollectionItemsOPC.AddItems nbElementOPC, Tabitem(), tabhandle(), TabServer(), TabError()
  • Exit Sub
  • '**en cas d'erreur de connexion au serveur OPC
  • erreur:
  • Label2.ForeColor = &HFF&
  • Label2.Caption = "Erreur de connexion"
  • End Sub
'*******************************************************************************************'
'********************   Client OPC developpé par Julien BOUET   ****************************'
'********************               alias JJMaster              ****************************'
'********************                   V1.0                    ****************************'
'********************              16 mars 2005                 ****************************'
'*******************************************************************************************'


    App.HelpFile = App.Path & "\TEMP1.chm"

'**initialisation de variables
    inibiteur = False
    '**On crée un objet OPCServer qui sera connecte au serveur OPC choisi
    Set ServeurOPCConnecte = New OPCServer
    On Error GoTo erreur
        '**On tente de s'y connecter
        ServeurOPCConnecte.Connect "KEPware.KEPServerEx.V4"
    On Error GoTo 0
    '** pas d'erreur de connexion au serveur OPC
    Label2.Visible = True
    Label2.ForeColor = &HC000&
    Label2.Caption = "Connexion au serveur OK"
    
    '**Création d'un objet OPCGroups qui contiendra une collection
    '**d'objets OPCGroup
    Set CollectionGroupesConnecte = ServeurOPCConnecte.OPCGroups
    CollectionGroupesConnecte.DefaultGroupIsActive = True

    '**On crée un objet OPCGroup dans la collection CollectionGroupesConnecte
    Set GroupeConnecte = CollectionGroupesConnecte.Add("supervision")
    '**initialisation necessaire cf. doc la bible OPC
    GroupeConnecte.IsActive = True
    GroupeConnecte.UpdateRate = 10
    GroupeConnecte.IsSubscribed = True
    
    '**Création d'un objet OPCItems qui contiendra une collection d'objets OPCItem
    Set CollectionItemsOPC = GroupeConnecte.OPCItems
    
    '**Variable pour le Tour
    ReDim tabhandle(nbElementOPC)
    For i = 1 To nbElementOPC
        tabhandle(i) = i
    Next i
    
    ReDim Tabitem(nbElementOPC)
    ReDim TabitemRef(nbElementOPC)
    Call MiseEnFormeVariable2
                
    '**On tente d'ajouter un objet OPCItem à la collection pour le TOUR
    CollectionItemsOPC.AddItems nbElementOPC, Tabitem(), tabhandle(), TabServer(), TabError()

    Exit Sub
    
    '**en cas d'erreur de connexion au serveur OPC
erreur:
    Label2.ForeColor = &HFF&
    Label2.Caption = "Erreur de connexion"
    
End Sub

Conclusion

Il y a plusieurs source OPC, n'hesiter pas a les consulter pour vous faire une plus grand idée, mais si aux premiers abords, on crois que c'est la meme chose. Il y a toujours la petite ligne qui fait la différence.
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

  • signaler à un administrateur
    Commentaire de jjmaster le 20/05/2005 11:39:13

    A vous la parole
    :)

  • signaler à un administrateur
    Commentaire de Michel4CE le 20/05/2005 18:44:20

    Bonjour,

    Ce source a l'avantage d'exister...
    Mais il convient de préciser les choses suivantes :
    1 Il utilise le wrapper Automation de la Fondation OPC.
    2 Ce wrapper est soumis à des conditions d'utilisation très stricte
    3 Ce source n'utilise pas les callback OPC. bien que tout soit en place... domage
    4 Il n'utilise pas non plus l'OPCEnum ... dommage

    Michel4CE [OPC Foundation Member]

  • signaler à un administrateur
    Commentaire de paradoxham le 25/12/2005 12:00:39

    bonjour
    vous n'avez pas un OPC server qui fonctionne avec delphi et automate siemens
    merci

  • signaler à un administrateur
    Commentaire de podjazz le 02/12/2007 13:16:01

    Bonjour à tous,

    j'ai un projet cette année je dois pouvoir consulter à partir d'un pocket PC (PDA) le contenu des variables d'un automate de marque Siemens.
    Il y a deux niveaux de communication : le Wifi tout d'abord pour se connecter au réseau de l'entreprise et ensuite il y aura ethernet pour acceder aux données automate.
    Bien sur pour récupérer ses données j'utilise un serveur OPC.
    Voici mes questions :
    - le serveur OPC est il un moyen d'interoperabilité entre les differentes technologies de machines et de logiciels ?
    - l'exemple donné est il valable pour la communication Ethernet que je possede ?

    Merci d'avance pour vos reponse...

    ps : je débute dans le milieu, veuillez m'excuser pour mes abus de langage.

    Clement

  • signaler à un administrateur
    Commentaire de Michel4CE le 02/12/2007 17:03:34

    Bonjour,
    vous trouverez ci-après une réponse à vos question :
    1- OPC est en effet la technologie pour l'intéropérabilité en informatique industriel
    2- vous pouvez utiliser OPC pour faire communiquer un PDA et un Automate. Il vous faudra pour cela utiliser la spécification OPC XML DA ou OPC UA. Vous aurez besoin, pour l'acquisition et l'exposition des données: d'un serveur OPC DA couplé à un wrapper XML DA ou directement un serveur XML DA d'acquisition et pour consommer vos données sur le PDA il vous suffira d'ecrire un client XML DA c'est à dire un client qui consomme le webservice XML DA.

    Je vous recommende de commencer par mettre en place l'architecture d'acquisition XMLDA,serveur DA + Wrapper ou serveur XML DA natif. VOus pourrez dans un deuxième temps vous concentrer sur le client. Pour le client sur PDA vous ne pourrez pas utiliser l'OPC .Net API et bien sur pas le wrapper automation.

    Bon courage

Ajouter un commentaire

Appels d'offres

Pub



CalendriCode

Mai 2008
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Boutique

Boutique de goodies CodeS-SourceS