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 !

CONNECTION À UN SERVEUR OPC


Information sur la source

Catégorie :API Source .NET ( DotNet ) Classé sous : automate, visualbasic, visualiseur, récupérer, données Niveau : Débutant Date de création : 06/06/2008 Vu : 3 589

Note :
7 / 10 - par 1 personne
7,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (2)
Ajouter un commentaire et/ou une note

Description

Ce petit programme sert à se connecter à un serveur OPC.Ce serveur fait le lien entre automate et VB.
 

Source

  • 'déclaration
  • Private WithEvents Srv As Opc.Da.Server
  • 'Connection au serveur au OPC
  • Private Sub Supervision_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  • 'Objet OPC.Factory
  • Dim OPCFact As New OpcCom.Factory()
  • 'URL de l'OPC (recopie celui que te donne l'exemple OPC .Net Sample Data Access fourni avec OFS3.3
  • Dim OPCUrl As New Opc.URL("opcda://localhost/Schneider-Aut.OFS/{e7675090-9ff9-11d1-ac46-0060978add48}")
  • 'Creation du client
  • Dim Opc As New Opc.Server(OPCFact, OPCUrl)
  • Try
  • 'Connection au serveur
  • TextBox2.Text = "--> Connection au Serveur Schneider-Aut.OFS en cours "
  • 'Saut au programme "Connect"
  • Opc.Connect()
  • TextBox2.Text = "--> Connection réussie au Serveur Schneider-Aut.OFS "
  • Catch
  • TextBox2.Text = "--> La connection n'a pas été établie avec le Serveur Schneider-Aut.OFS "
  • End Try
  • End Sub
  • 'Programme de Connection au serveur OPC
  • Private Sub Connect()
  • Dim Url As Opc.URL = New Opc.URL("opcda://localhost/Schneider-Aut.OFS/{e7675090-9ff9-11d1-ac46-0060978add48}")
  • Srv = New Opc.Da.Server(New OpcCom.Factory, Url)
  • '
  • Try
  • Srv.Connect()
  • Catch ex As Exception
  • 'Gestion des erreurs
  • MsgBox("Erreur Fonction Cnx: " & ex.Message)
  • '
  • Finally
  • End Try
  • End Sub
    'déclaration


    Private WithEvents Srv As Opc.Da.Server





    'Connection au serveur au OPC
    Private Sub Supervision_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'Objet OPC.Factory

        Dim OPCFact As New OpcCom.Factory()
        'URL de l'OPC (recopie celui que te donne l'exemple OPC .Net Sample Data Access fourni avec OFS3.3
        Dim OPCUrl As New Opc.URL("opcda://localhost/Schneider-Aut.OFS/{e7675090-9ff9-11d1-ac46-0060978add48}")
        'Creation du client
        Dim Opc As New Opc.Server(OPCFact, OPCUrl)
        Try
            'Connection au serveur
            TextBox2.Text = "--> Connection au Serveur Schneider-Aut.OFS en cours "
            'Saut au programme "Connect"
            Opc.Connect()
            TextBox2.Text = "--> Connection réussie au Serveur Schneider-Aut.OFS "
        Catch
            TextBox2.Text = "--> La connection n'a pas été établie avec le Serveur Schneider-Aut.OFS "
        End Try

    End Sub



    'Programme de Connection au serveur OPC
    Private Sub Connect()


        Dim Url As Opc.URL = New Opc.URL("opcda://localhost/Schneider-Aut.OFS/{e7675090-9ff9-11d1-ac46-0060978add48}")
        Srv = New Opc.Da.Server(New OpcCom.Factory, Url)
        '
        Try

            Srv.Connect()


        Catch ex As Exception
            'Gestion des erreurs
            MsgBox("Erreur Fonction Cnx: " & ex.Message)
            '
        Finally

        End Try

    End Sub

Conclusion

Ne reste plus qu'à crée des items pour pouvoir les récupérer et les afficher sous VB.
 

Commentaires et avis

signaler à un administrateur
Commentaire de lim le 06/06/2008 14:24:18

Salut,

Dans ton code tu ouvres deux connexions au serveur OPC
Dim Opc As New Opc.Server(OPCFact, OPCUrl)
et Srv = New Opc.Da.Server(New OpcCom.Factory, Url), une seule suffit.

Lim

signaler à un administrateur
Commentaire de JACKY007 le 09/06/2008 09:07:38 7/10

Salut,

Tu utilises la bibliothèque fournie par le constructeur afin d'établir une connexion via OPC. Je te conseille d'utiliser des bibliothèques plus génériques telle Métadynamics (que j'utilise) afin de pouvoir réutiliser ton code quelque soit les technologies.
Par exemple, en 3-4 jours tu peurra lier des automates de différentes technologie (: ABB - Snheider etc.) avec un petit développement quasi gratuit et sans devoir débourser les 2000-3000euros que requiert des programmes tout fait... et qui n'en font pas plus!
Sinon le code est bon et propre...

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Récupération de données distante [ par Zenway ] Pourriez-vous m'indiquer comment:- En réalisant un script VB je peux récupérer des données d'un fichier .TXT sur un serveur net, le transformer en .md Récupérer données d'un serveur WEB [ par Lionel ] Bonjour,J'aimerais savoir si comment récupérer des données d'un serveur WEB(par exemple http://www.asp-magazine.com/), je veux dire les fichiers texte Récupérer des données sur Internet [ par Philippe ] Mon problème : Je fais un petit programme de suivie de valeurs de titres en bourse.Existe t-il un site où je peux récupérer ces valeurs dans un fichie Récupérer données du port imprimante pour pouvoir les exploiter [ par tarmos ] J' essaye de puis un bon moment de récupérer les lignes lignes D0 à D7 du port imprimante, mais je n' y arrive pas.Est-ce possible ????J' ai démonter comment récupérer des données du port série et les exploitées sous access [ par Ben ] je veux récupérer des données que j'ai préalablement stocké dans la mémoire d'un 68hc11 via le port série et exploitées ces données dans une base de d Récupération de données [ par CUBErt ] Bonjour a tousVoila, j'ai un pti probleme...G écris 1 prog ki récupère des données recues par un port com, et j'aimerai maintenant ke ce programme soi Récupérer les données de zones Edit d'une autre appli [ par Prog59 ] Bonjour,J'ai une appli qui contient des Edit et je voudrai récupérer les données des Edit dans un fichier txt.J'ai repris le prg de DelphiProg concern taille d'un tableau Excel [ par xalimero ] Bonjour tout le monde!!!J'ai besoin de récupérer la taille exacte d'un tableauExcel à partir de VB6En fait, il s'agit de données sur une feuille qui n Comment récupérer les données d'une fenetre dos ? [ par sheba9 ] Je souhaite transferer les donnees affichées dans une fenetre DOS vers un fichier texte.Help Merci. Problème pour récupérer des données dans 1 UserForm !!!!??? [ par Père Du... ] Voilà : A partir d'une fonction, je charge un UsreForm(UsrFrm.show) dans lequel je demande +ieurs rsgnmts,puis je quitte (Me.hide) et je veux mettre l


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,421 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.