Accés aux variables d'un programme siemens depuis excel
fredb1971
Messages postés6Date d'inscriptionjeudi 23 septembre 2004StatutMembreDernière intervention30 décembre 2004
-
18 oct. 2004 à 15:56
CROCO30
Messages postés5Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention 4 janvier 2005
-
4 janv. 2005 à 14:22
Salut
Quelqu'un pourrait il m'aider à modifier ce scprit
Actuellement ce scprit demarre l'application siemens (protoolpro) en cliquant sur un bouton depuis excel et depuis un autre bouton toujours dans excel on vient lire une variable protoolpro (var_2)
Il faudrait que je modifie ce script de maniere a lire la variable protoolpro en permanence sans lancer l'application protoolpro depuis excel car celle-ci tourne en permanence,en fait je demarre l'application excel depuis protoolpro
merci d'avance je galére depuis 1 semaine
Dim PtPro As Object
Dim GetInstance
Dim PtProVar_1 As Object
Dim PtProVar_2 As Object
Sub Start_ProToolPro()
Dim strType As String
Dim strInstance As String
Set PtPro = CreateObject("SiemensHMI.PTRT")
Call PtPro.Load("E:\MAISON.fwd", True)
PtPro.ShowWindow True
kovac
Messages postés5Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention17 décembre 2004 15 déc. 2004 à 14:23
Tu veu faire quoi au juste et pour quel application??
Des programmes de communication pour SIEMENS j'en ai plein surtou pour WinCC Flexible qui est mille foi mieu que Protool qui est depasse.
Envoi ce que tu veu faire je pourrai surrment t'aider.
fredb1971
Messages postés6Date d'inscriptionjeudi 23 septembre 2004StatutMembreDernière intervention30 décembre 2004 15 déc. 2004 à 20:36
fredb1971
salut en fait je dois etablir un programme de controle de production ,j'utilise un api siemens s7 226 pour récuperer
des données de temps de moyenne de production "140 variables en ce moment mais certainement plus "(actuellement je travaille avec protool pro mais j'ai un probleme de dialogue vers excel car en fin de production le responsable de ligne doit etablir et imprimer un rapport de production,existe il un autre moyen apparament avec wincc mais ne faut il pas de carte specique pc pour le dialogue pc vers automate (actuement le dialogue est fait grace à un cable ppi relier sur le port serie du pc)
de plus je n'ai pas de licence actuellement le programme tourne en demo( un message s'affiche intempestivement sur l'ecran,mais ne bloque pas le process)
kovac
Messages postés5Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention17 décembre 2004 17 déc. 2004 à 10:43
si tu veut utiliser excel pour lire t variable tu peux créer une archive CSV sur le disque dur du pc qui contiendra toute t variable a visualiser (tu déne archive finit ca ds ton projet protool dans variables tu peux choisir de mettre des tag a visualiser dans une archive dont tu a specifie l'adresse dans l'onglet archive) Apres avec une macro vba c du tou cui
fredb1971
Messages postés6Date d'inscriptionjeudi 23 septembre 2004StatutMembreDernière intervention30 décembre 2004 30 déc. 2004 à 20:29
fredb1971
salut j'ai trouvé une solution qui permet de récupérer les valeurs de variable d'un api s7 226 en creant un sript dans protool/pro
voici un exemple
ex.Worksheets("Fiche de production éq mat").cells(6,2).value = PtVar."total m² jour equipe 1"
ex.Worksheets("Fiche de production éq mat").cells(7,2).value = PtVar."compteur volume jour equipe 1 cent"
ex.Worksheets("Fiche de production éq mat").cells(8,2).value = PtVar."nombre volume argon produit par l'équipe matin"
ex.Worksheets("Fiche de production éq mat").cells(10,3).value = PtVar."temps de production en heures equipe 1"
ex.Worksheets("Fiche de production éq mat").cells(10,4).value = PtVar."temps de production en mm equipe 1"
ex.Worksheets("Fiche de production éq mat").cells(11,4).value = PtVar."temps d'arrêt cumulé équipe matin "
ex.Worksheets("Fiche de production éq mat").cells(12,4).value = PtVar."temps d'arrêt divers équipe matin"
ex.Worksheets("Fiche de production éq mat").cells(9,7).value = PtVar."moyenne m²/h equipe 1"
ex.Worksheets("Fiche de production éq mat").cells(10,7).value = PtVar."moyenne volume heure equipe 1"
ex.Worksheets("Fiche de production éq mat").cells(11,7).value = PtVar."affichage quotas en m² équipe matin"
ex.Worksheets("Fiche de production éq mat").cells(12,7).value = PtVar."affichage quota équipe matin en volume "
ex.Worksheets("Prod par jour éq mat").cells(row,1).value = Now
ex.Worksheets("Prod par jour éq mat").cells(row,2).value = PtVar."temps de production en heures equipe 1"
ex.Worksheets("Prod par jour éq mat").cells(row,3).value = PtVar."temps de production en mm equipe 1"
ex.Worksheets("Prod par jour éq mat").cells(row,4).value = PtVar."total m² jour equipe 1"
ex.Worksheets("Prod par jour éq mat").cells(row,5).value = PtVar."compteur volume jour equipe 1 cent"
ex.Worksheets("Prod par jour éq mat").cells(row,6).value = PtVar."nombre volume argon produit par l'équipe matin"
ex.Worksheets("Prod par jour éq mat").cells(row,7).value = PtVar."moyenne m²/h equipe 1"
ex.Worksheets("Prod par jour éq mat").cells(row,8).value = PtVar."moyenne volume heure equipe 1"
ex.Worksheets("Prod par jour éq mat").cells(row,9).value = PtVar."temps d'arrêt cumulé équipe matin "
ex.Worksheets("Prod par jour éq mat").cells(row,10).value = PtVar."temps d'arrêt divers équipe matin"
ex.Worksheets("Prod par jour éq mat").cells(row,11).value = PtVar."affichage quotas en m² équipe matin"
ex.Worksheets("Prod par jour éq mat").cells(row,12).value = PtVar."affichage quota équipe matin en volume "
ex.Worksheets("Prod par jour éq mat").cells(row,13).value = PtVar."nombre de volume rajouté éq matin"
ex.Worksheets("Prod par jour éq mat").cells(row,14).value = PtVar."nombre de volume produits fictif éq matin"
ex.Worksheets("temps d'arrêt éq mat").cells(row,1).value = Now
ex.Worksheets("temps d'arrêt éq mat").cells(row,2).value =PtVar."temps d'arrêt plieuse équipe matin"
ex.Worksheets("temps d'arrêt éq mat").cells(row,3).value =PtVar."temps d'arrêt laveuse équipe matin"
ex.Worksheets("temps d'arrêt éq mat").cells(row,4).value =PtVar."temps d'arrêt butyleuse équipe matin"
ex.Worksheets("temps d'arrêt éq mat").cells(row,5).value =PtVar."temps d'arrêt cadreuse équipe matin"
ex.Worksheets("temps d'arrêt éq mat").cells(row,6).value =PtVar."temps d'arrêt poste de controle équipe matin"
ex.Worksheets("temps d'arrêt éq mat").cells(row,7).value =PtVar."temps d'arrêt presse équipe matin"
ex.Worksheets("temps d'arrêt éq mat").cells(row,8).value =PtVar."temps d'arrêt pastilleuse équipe matin"
ex.Worksheets("temps d'arrêt éq mat").cells(row,9).value =PtVar."temps d'arrêt enduction équipe matin"
ex.Worksheets("temps d'arrêt éq mat").cells(row,10).value =PtVar."temps d'arrêt divers équipe matin"
ex.Worksheets("Prod par jour éq mat").cells(row,11).value =PtVar."affichage quotas en m² équipe matin"
ex.Worksheets("Prod par jour éq mat").cells(row,12).value =PtVar."affichage quota équipe matin en volume "
ex.Worksheets("Prod par jour éq mat").cells(row,13).value =PtVar."nombre de volume rajouté éq matin"
ex.Worksheets("Prod par jour éq mat").cells(row,14).value =PtVar."nombre de volume produits fictif éq matin"
row = row+1
ex.visible = true
'Range = ex.Worksheets("Prod par jour").cells("4,1").Value
j'espere que ce morceau de programme pourra t'aider à avancer dans ton application
courage !