Erreur de lecture données automate
Bonjour,
je debute en programation OCP.
Je veux ecrire un programme pour lire et ecrire des données dans un automate.
les données sont les suivantes:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
Serveur: Archestra.dasabcipxxx.6
Machine: maMachine
OPCLink:myLink
a travers l'outil OPC Quick CLient, je parviens a voir les données de l'automate en creation des Items.
//Variables globales au projet
NomOrdi est une chaîne = "maMachine" //Nom de l'ordinateur Hôte du DA Server
NomServeur est chaîne = "Archestra.dasabcipxxx.6"; //Nom du Da Server
gcOPCLink est une chaîne = "myLink" //Nom du Link OPC
// OPC
CLIENT_OPC_AUTOMATION est une chaîne = "Graybox.OPC.DAWrapper" //Nom de l'objet OPC Automation
//Noms donné aux groupes OPC
MONGROUPE_R= "GROUPE1"
//Les tableaux OPC automation commence à l'indice 1
AutomationParamètre(apIndiceBaseTableau,1)
//Code de ma fenetre
// on instancie un serveur Automation
gautServeur est un objet Automation CLIENT_OPC_AUTOMATION
gpautItem est un objet Automation dynamique
sInc est une chaîne="monItem[0]"
// Vérifie l'existence de l'objet automation
QUAND EXCEPTION DANS
oServeur est un objet Automation CLIENT_OPC_AUTOMATION //Objet serveur client
FAIRE
Erreur("L'objet automation " + CLIENT_OPC_AUTOMATION + " est introuvable sur le poste en cours.", ExceptionInfo())
Ferme()
FIN
oGroupeR est un objet Automation dynamique //Objet Groupe Read-Write
Sablier(Vrai)
// Connexion au serveur
QUAND EXCEPTION DANS
oServeur>>Connect((NomServeur),(NomOrdi))
FAIRE
FinProgramme("Impossible de se connecter au serveur")
FIN
// Création des groupes d'accès
oGroupeR = oServeur>>OPCGroups>>Add(MONGROUPE_R)
SI oGroupeR = Null ALORS
//Le groupe n'a pas pu être créé
FinProgramme("Impossible de créer le groupe")
FIN
oGroupeR>>IsActive = True
oGroupeR>>IsSubscribed = True
// création d'un accès à un item simple
gpautItem = oGroupeR>>OPCItems>>AddItem(sInc, 1) //ça bloque ici !!
SI gpautItem = Null ALORS
// l'item n'a pas pu être créé
Erreur("Impossible de créer l'item.")
RETOUR
FIN
gpautItem>>read(1)
Info("Valeur: " + gpautItem>>value) |
dés que j'execute mon programme voila l'erreur qui s'affiche
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
Erreur à la ligne 23 du traitement Procédure locale Connexion.
Vous avez appelé la méthode Automation 'AddItem'.
En tentant d'invoquer la méthode <AddItem> ou de lire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
'Erreur C0040008 : '
En tentant d'invoquer la méthode <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
'Erreur C0040008 : '
En tentant de lire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
'Erreur 80020003, Le membre demandé n'existe pas'
En tentant d'écrire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
'Erreur 80020003, Le membre demandé n'existe pas'
----- Informations techniques -----
Projet : AutomateDialogueOPC
Appel WL :
Traitement de 'Procédure locale Connexion' (Fen_TestAutomates.PROCEDURE.Connexion), ligne 23, thread 0
Que s'est-il passé ?
Vous avez appelé la méthode Automation 'AddItem'.
En tentant d'invoquer la méthode <AddItem> ou de lire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
'Erreur C0040008 : '
En tentant d'invoquer la méthode <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
'Erreur C0040008 : '
En tentant de lire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
'Erreur 80020003, Le membre demandé n'existe pas'
En tentant d'écrire la propriété <AddItem>, l'objet Automation/ActiveX a renvoyé l'erreur suivante :
'Erreur 80020003, Le membre demandé n'existe pas'
Code erreur : 2205
Niveau : erreur fatale (EL_FATAL)
Dump de l'erreur du module 'WD150VM.DLL' (15.00Pj).
Identifiant des informations détaillées (.err) : 130001
Informations supplémentaires :
EIT_PILEWL :
Procédure locale Connexion (Fen_TestAutomates.PROCEDURE.Connexion), ligne 23
Initialisation de Fen_TestAutomates (Fen_TestAutomates), ligne 1
EIT_DATEHEURE : 02/06/2011 13:07:44 |
Une idée ? Des suggestions ?
Merci d'avance