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:
dés que j'execute mon programme voila l'erreur qui s'affiche
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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)
Une idée ? Des suggestions ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Merci d'avance
Partager