Accueil > Forum > > > > Automate et vb
Automate et vb
mercredi 28 mai 2008 à 15:18:31 |
Automate et vb

crownstud
|
AU SECOURS!! Je suis en alternance et ne connait rien sur vb.J'aurai besoin de récupérer des données automates (shneider) via un serveur OPC;et de les mettres dans des textbox.Puis ensuite creer un tableau sur cette fenetre VB pour y mettre des données automates.Javascript:Insert_Emoticon('/imgs2/smile_shy.gif');$ Mais tout sa c'est du charabia pour moi..Alors si quelqu'un a la bonté d'âme de me répondre,je serais ravi de le remercier..
|
|
mercredi 28 mai 2008 à 16:20:12 |
Re : Automate et vb

lim
|
Réponse acceptée !
Salut, 1) c'est quoi ton automate ? 2) pour récupérer des données via un serveur OPC en vb.net il te faut un client OPC voilà celui que j'utilise : [ Lien ] 3) ensuite il faut paramétrer ton serveur OPC, créer un alias, définir le protocole de communication entre ton serveur OPC (ordinateur) et l'automate (Unitelway, modbus serial, modbus IP....), indiquer à ton serveur OPC la liste des variables que tu as récupérer. 4) Faire du code VB.net pour communiquer avec ton sereur OPC et être client. @+ LIM
|
|
jeudi 29 mai 2008 à 10:14:12 |
Re : Automate et vb

crownstud
|
L'automate est un tsx3710.Et j'ai déjà une licence opc.Le client ofs est bien configuré.il ne me reste plus qu'à développer le programme en vb.J'ai commencé,en faisant Form.vb [design](avec les cases et le texte).Et donc maintenant,je cherche a récupéré toutes les données automates et les mettre dans ces cases.
Merci. @+
|
|
jeudi 29 mai 2008 à 10:27:04 |
Re : Automate et vb

lim
|
Salut, Ok, donc maintenant il faut que tu développes un client OPC. Quelle est la version que tu possèdes de OFS ? Si c'est la version 3.3, Schneider à inclus la librairie OPC .Net, donc avec çà tu devrais pouvoir y arriver. Personnelement je ne l'ai jamais utilisé. Moi je n'ais pas cette librairie (j'ai OFS V2.5) donc j'en ai achjeté une autre, [ Lien ], la licence coute 20¤. Et j'utilise cette librairie pour me connecter à mon serveur OPC. @+ LIM
|
|
jeudi 29 mai 2008 à 11:23:34 |
Re : Automate et vb

crownstud
|
J'ai bien la version 3.3 de OFS.Par contre je vois pas ce que je dois faire. Merci d'avoir répondu aussi vite.
|
|
jeudi 29 mai 2008 à 11:39:44 |
Re : Automate et vb

lim
|
Re
1) il faut ajouter les références à l'API.net, cette API va te permettre d'incorporer à ton projet des DLL qui te permettront d'utiliser des fonctions pour : te connecter à ton serveur, écrire une variable.... Pour ajouter les références : Projet | Ajouter Référence | Parcourir | il faut aller chercher les dll dans C:\Program Files\Schneider Electric\OFS\OPC Foundation Net API (si c'est là que tu as installé le serveur) Tu trouveras aussi dans ce répertoire le fichier d'aide pour utiliser l'API
2) il faut ensuite créer les objets nécessaire pour utiliser l'API un objet OPC.Serveur, un objet OPC.Item (ici ceux sont des exemples, je ne connait pas la syntaxe)
3) Ensuite pour te connecter à ton serveur OPC il te faut lui donner quel serveur : Schneider-Aut.OFS Il faut ajouter un Groupe, ajouter les items (tes variables), se connecter au serveur
4) Après il faut lire les varialbes avec par exemple : Item.Read()
Comme je ne connais pas la syntaxe de l'API jene peux pas te donner tout ce que tu dois taper comme code, je vais essayer de voir si j'ai le temps de regarder la doc de l'API.
Une question : est-ce que tu sais comment marche un serveur OPC et ce que c'est ou pas ?
@+ LIM
|
|
jeudi 29 mai 2008 à 11:54:44 |
Re : Automate et vb

crownstud
|
A vrai dire je vois à peu prés le fonctionnement.Je sais creer un groupe dans un client et y ajouter des items.et sa a l'air de fonctionner puisque quand je clic sur les item du client la valeur est la bonne.J'ai également ajouter les dll comme tu me l'a expliqué.Maintenant,si j'ai bien compris,il n'y a plus que du code à écrire?J'ai trouvé un morceau de code sur le net mas je ne sais ou l'implanter. C'est super sympa de m'aider.Merci beaucoup.
Voilà ce que j'ai trouvé en cherchant sur le net: ' ----------------------------------------------------------------------------------------- ' Configuration de la communication avec Server OPC ' ----------------------------------------------------------------------------------------- Option Explicit Dim WithEvents OpcFactoryServer As OPCServer 'Interface OPC Automation2 avec Notification Dim ListOfsGroups As OPCGroups 'Objet pour une liste de groupes Dim WithEvents Group1 As OPCGroup 'Objet pour un Groupe avec Notification Dim PremierCollectionItems As OPCItems 'Objet pour une Collection d'Items Dim Item1 As OPCItem 'Objet pour un Item Dim ItemName1() As String 'Tableau de Définition des items Dim HandleClient1() As Long 'Tableau de pointeurs des items Client Dim HandleServer1() As Long 'Tableau de pointeurs des items Serveur Dim Erreur1() As Long 'Tableau de codes d'erreur rendus par le Serveur Dim FinCreation As Boolean 'Flag de signalement de la fin de création Const ProgID = "Schneider-Aut.OFS" 'Type de Serveur OPC Dim NomDuPoste As String 'Nom du PC Serveur ' --------------------------------------------------------------------------------------------- ' LANCEMENT DE L'APPLICATION ' --------------------------------------------------------------------------------------------- Public Sub Start() ' Bouton start Dim NbItem1 As Single Dim Reponse As Integer NbItem1 = 1 'Redimentionnement des tableaux en fonction du nombre d'item ReDim ItemName1(NbItem1) As String ReDim HandleClient1(NbItem1) As Long ReDim HandleServer1(NbItem1) As Long ReDim Erreur1(NbItem1) As Long 'Création des Groupes et items If Not FinCreation Then 'Initialisation d'un Serveur OPC Automation 2.01 Set OpcFactoryServer = New OPCServer 'Connexion au Serveur OFS On Error GoTo Label1 ' Si une erreur aller au label 1 OpcFactoryServer.Connect ProgID OpcFactoryServer.ClientName = "Stage OFS" 'Spécifie le nom du Client OPC Set ListOfsGroups = OpcFactoryServer.OPCGroups 'Crée une instance de ce Client 'Définit les paramètres par défaut du Groupe ListOfsGroups.DefaultGroupIsActive = False ListOfsGroups.DefaultGroupUpdateRate = 500 'ms ListOfsGroups.DefaultGroupDeadband = 1 'Ajout des groupes dans le Serveur Set Group1 = ListOfsGroups.Add("Group1") 'Crée des collections d'Items Set PremierCollectionItems = Group1.OPCItems 'Définit les item en respectant la syntaxe OPC et le Pointeur coté Client (pompe) 'Vous devez créer un fichier *.csv dans lequel vous définissez les noms et adresses de l'automate. 'Vous l'ajoutez ensuite avec le configurateur OFS. 'Dans le code VBA, vous y accédez avec le nom du fichier (NomAlias) et le nom associé à l'adresse automate (NomAdresse). ItemName1(1) = "NomAlias" & "!" & "NomAdresse" HandleClient1(1) = 1 End If 'Activation de la collection d'items PremierCollectionItems.DefaultIsActive = True 'Ajoute les items au Groupe et récupère le pointeur coté Serveur et le code Erreur PremierCollectionItems.AddItems NbItem1, ItemName1, HandleClient1, HandleServer1, Erreur1 Set Item1 = PremierCollectionItems.GetOPCItem(HandleServer1(1)) 'Activation du Groupe (lecture), validation de la notification, mise à 1 du Flag de Création Group1.IsActive = True Group1.IsSubscribed = True FinCreation = True Exit Sub Label1: 'Reponse = MsgBox("Erreur dans le nom du Poste Distant !", vbCritical, "Attention !") Call MsgBox(Err.Description, vbOKOnly) Resume Next End Sub ' --------------------------------------------------------------------------------------------- ' ARRET DE L'APPLICATION ' --------------------------------------------------------------------------------------------- Public Sub Arret() ' Bouton stop If Not (OpcFactoryServer Is Nothing) Then 'Supprimer tous les groupes OPC If Not (ListOfsGroups Is Nothing) Then Group1.IsSubscribed = True ListOfsGroups.RemoveAll Set ListOfsGroups = Nothing End If 'Deconnecter le Serveur OpcFactoryServer.Disconnect Set OpcFactoryServer = Nothing FinCreation = False Else 'Vider les groupes, vider le Serveur Set ListOfsGroups = Nothing Set OpcFactoryServer = Nothing End If End Sub ' --------------------------------------------------------------------------------------------- ' RECUPERATION DES DONNEES DU GROUPE 1 ' --------------------------------------------------------------------------------------------- Private Sub Group1_DataChange(ByVal TransactionID As Long, ByVal NumItems As Long, ClientHandles() As Long, ItemValues() As Variant, Qualities() As Long, TimeStamps() As Date) Dim ind As Long 'Tester la qualité de l'item ind = 1 While ind <= NumItems If Qualities(ind) = 192 Then 'Récupérer la valeur Sheets("essai").Cells(1, 1) = ItemValues(ind) Else Sheets("essai").Cells(1, 1) = " ERREUR !" End If ind = ind + 1 Wend End Sub ' --------------------------------------------------------------------------------------------- ' ECRITURE ' --------------------------------------------------------------------------------------------- Public Sub ecrire() Item1.Write (10) End Sub
|
|
jeudi 29 mai 2008 à 12:08:26 |
Re : Automate et vb

lim
|
Re
Le problème de ce code est qu'ilne marche pas avec VB 2005 il marchait avec le VB2002, J'ai trouvé çà: 'Objet OPC.Factory Dim OPCFact AsNew OpcCom.Factory() 'URL de l'OPC (recopie celui que te donne l'exemple OPC .Net Sample Data Access fourni avec OFS3.3 Dim OPCUrl AsNew Opc.URL("opcda://localhost/Schneider-Aut.OFS/{e7675090-9ff9-11d1-ac46-0060978add48}") 'Creation du client Dim Opc AsNew Opc.Server(OPCFact, OPCUrl) PrivateSub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.Load Try 'Connection au serveur Opc.Connect() Catch ex As Exception MsgBox(ex.ToString) EndTry EndSub
Ce code fais que jeme connecte au serveur OFS par contre il manque deux référence qui se touve dans le réperoire de l'exemple OPC .net Sample Data Access. Ces deux références il faut les rajouter.
Après je ne sais pas comment ajouter le groupe et les items à mon client, la je sèche
@+ LIM
|
|
jeudi 29 mai 2008 à 12:40:48 |
Re : Automate et vb

crownstud
|
ok ba merci quand meme si jamai j'avance je te tiens au courant.. bonne continuation @+
|
|
jeudi 29 mai 2008 à 14:31:23 |
Re : Automate et vb

lim
|
Bon courage, si je peux chercher un peu plus je te ferais signe.
@+ LIM
|
|
Cette discussion est classée dans : vb, données, automates, automate
Répondre à ce message
Sujets en rapport avec ce message
vb et réseau!!!!!SVP [ par panorama12 ]
salut à tous.voila je débute complètement en vb et je dois réaliser un outil (simple pour commencer) qui me permettrait de d'effacer ou d'écrire des f
Java et VB, échange de données [ par MoOx_t ]
Bonjour à tous.J'ai besoin de savoir si on peut (facilement serait un plus) échangé des données entre un pg VB et un en java.En fait je travaill sur u
Acquisition de données/ VB [ par sadness ]
Bonjour, Dans le cadre d'un projet scolaire, je dois réaliser une acquisition de données. Par le biais d'une carte, il faut que je transforme des donn
VB et Baan [ par theguyom ]
Bonjour, Je suis étudiant en informatique et je suis actuellement en stage dans une entreprise où l'on utilise Baan. Mon patron me demande si il est
Inconvénient VB.Net [ par kammegg ]
salut tout le mondej'essaye d'afficher des données de ma BD access dans des TextBox. le problème c'est que quand j'essaye de le faire et quand il y a
Quel vb.net choisir? [ par lesdis ]
Bonjour, Ayant eu récemment une commande de logiciel à développer sur vb.net, j'ai été voir les différentes licences proposés par microsoft et la c'e
Créer une base de données [ par Galain ]
bonjour à tousJe suis sous Windows Xp avec VisualBasic 6.0Pour l'application que je développe j'ai besoin de créer une base de données en pur code Vb
Probleme pour lier une base de données [ par GiBuSS1942 ]
Bonjour a tous !!!!Donc voila je suis en train de travailler sur un projet pour mon stage et je suis bloquer parce qu'en fait avant je programmais sou
VB Import csv dans mdb [ par cedric29200 ]
Bonjour,J'aimerai pouvoir importer un fichier csv (qui provient d'un modem par "putftp") dans une base de données sans doublons.Le fichier csv est com
supprimer et modifier un enregistrement dans mysql à partir de VB [ par Jordan59 ]
Bonjour à tous,Dans le cadre de mon stage, je suis en train de réaliser une application en VB avec une base de données mysql. Pour me connecter à ma b
Livres en rapport
|
Derniers Blogs
XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Je m'y prends un peu tard je sais, mais bon je suis développeur web et donc hyper fainéant ! Toujours dans le cadre des technologies émergentes, ici HTML5, parce qu'on aime HTML5 chez Wyg , nous seront présent, le vieux ( Aurélien V.) et moi, pour pr...
Cliquez pour lire la suite de l'article par Gio [WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|