DIALOGUER AVEC UN AUTOMATE SCHNEIDER À PARTIR D'UN SERVER OPC
cs_JACKY007
Messages postés23Date d'inscriptionvendredi 16 septembre 2005StatutMembreDernière intervention 1 décembre 2010
-
20 juin 2006 à 08:59
cs_guda
Messages postés20Date d'inscriptionjeudi 31 janvier 2002StatutMembreDernière intervention11 février 2013
-
11 févr. 2013 à 11:14
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_guda
Messages postés20Date d'inscriptionjeudi 31 janvier 2002StatutMembreDernière intervention11 février 2013 11 févr. 2013 à 11:14
Bonjour,
Votre problème est uniquement due au fait qu'un item ne peut être écrit, que s'il est connu du serveur. Il faut créer un group avec cet item et ensuite y accéder.
j'ai donc rajouté
Private groupWrite As Opc.Da.Subscription
Private groupStateWrite As New Opc.Da.SubscriptionState
groupStateWrite = New Opc.Da.SubscriptionState()
groupStateWrite.Name = "Group_Write"
groupStateWrite.Active = False ' not needed to read if you want to write only
groupStateWrite.ClientHandle = 1
groupStateWrite.UpdateRate = 0
groupWrite = server.CreateSubscription(groupStateWrite)
items(0) = New Opc.Da.Item
items(0).ItemName = "MON_ITEM"
groupWrite.AddItems(items) 'on rajoute ces items au groupe d'écriture
Ensuite, lorsque je veux écrire un item, je vais accéder à groupWrite
Dim item As Opc.Da.ItemValue() = New Opc.Da.ItemValue(0) {} 'créé un tableau d'item contenant qu'une seule valeur
item(0) = New Opc.Da.ItemValue ' créé l'item a écrire
item(0).ItemName = "MON_ITEM" 'pas obligatoire car le plus important c'est le ServerHandle
item(0).ServerHandle = index_de_Mon_item
item(0).Value = 1
result = groupWrite.Write(item)
oliz3
Messages postés3Date d'inscriptionsamedi 18 janvier 2003StatutMembreDernière intervention 1 décembre 2008 1 déc. 2008 à 11:10
Bonjour
appel le fabricant du SErveur OFS (OPC de Schneider) ils pourront t'aider.
sinon OPCfoundation.org
@+
Schneider electric Chorus : 0825 012 999
ahmed29vb6
Messages postés4Date d'inscriptionvendredi 9 février 2007StatutMembreDernière intervention28 novembre 2008 28 nov. 2008 à 16:11
pouvez vous poster lez projet en entier
pour voir aussi l interface pour pouvoir faire l essai
merci
oliz3
Messages postés3Date d'inscriptionsamedi 18 janvier 2003StatutMembreDernière intervention 1 décembre 2008 27 juin 2007 à 14:52
Bonjour,
vous pouvez demander de l'aide sur la programmation des serveurs Schneider directement chez le fabricant au 0825012999
En plus si vous etes abonnés vous pourrez telecharger et tester le serveur OFS V3.31 compatible .NET.
Salutations
ludolechinois
Messages postés12Date d'inscriptionmercredi 25 février 2004StatutMembreDernière intervention27 février 2008 11 juin 2007 à 10:35
Bonjour Jacky007,
Je suis interesse par les bibliotheques gratuite avec exemple. Peux tu me donner plus d'information et ou est ce que je peux les telecharger
cs_JACKY007
Messages postés23Date d'inscriptionvendredi 16 septembre 2005StatutMembreDernière intervention 1 décembre 2010 20 juin 2006 à 08:59
Des codes de ce type (et qui fonctionne) existe déjà dans les codes sources (notamment en VB6).
Des bibliothèques gratuites (avec exemples...) permettent de se connecter via OPC à toute sorte d'Automates (ABB, Siemens ou comme ici Schneider). Donc pas la peine de ré-inventer la roue !
11 févr. 2013 à 11:14
Votre problème est uniquement due au fait qu'un item ne peut être écrit, que s'il est connu du serveur. Il faut créer un group avec cet item et ensuite y accéder.
j'ai donc rajouté
Private groupWrite As Opc.Da.Subscription
Private groupStateWrite As New Opc.Da.SubscriptionState
groupStateWrite = New Opc.Da.SubscriptionState()
groupStateWrite.Name = "Group_Write"
groupStateWrite.Active = False ' not needed to read if you want to write only
groupStateWrite.ClientHandle = 1
groupStateWrite.UpdateRate = 0
groupWrite = server.CreateSubscription(groupStateWrite)
items(0) = New Opc.Da.Item
items(0).ItemName = "MON_ITEM"
groupWrite.AddItems(items) 'on rajoute ces items au groupe d'écriture
Ensuite, lorsque je veux écrire un item, je vais accéder à groupWrite
Dim item As Opc.Da.ItemValue() = New Opc.Da.ItemValue(0) {} 'créé un tableau d'item contenant qu'une seule valeur
item(0) = New Opc.Da.ItemValue ' créé l'item a écrire
item(0).ItemName = "MON_ITEM" 'pas obligatoire car le plus important c'est le ServerHandle
item(0).ServerHandle = index_de_Mon_item
item(0).Value = 1
result = groupWrite.Write(item)
1 déc. 2008 à 11:10
appel le fabricant du SErveur OFS (OPC de Schneider) ils pourront t'aider.
sinon OPCfoundation.org
@+
Schneider electric Chorus : 0825 012 999
28 nov. 2008 à 16:11
pour voir aussi l interface pour pouvoir faire l essai
merci
27 juin 2007 à 14:52
vous pouvez demander de l'aide sur la programmation des serveurs Schneider directement chez le fabricant au 0825012999
En plus si vous etes abonnés vous pourrez telecharger et tester le serveur OFS V3.31 compatible .NET.
Salutations
11 juin 2007 à 10:35
Je suis interesse par les bibliotheques gratuite avec exemple. Peux tu me donner plus d'information et ou est ce que je peux les telecharger
20 juin 2006 à 08:59
Des bibliothèques gratuites (avec exemples...) permettent de se connecter via OPC à toute sorte d'Automates (ABB, Siemens ou comme ici Schneider). Donc pas la peine de ré-inventer la roue !