Page 2 sur 3
Re: 3 variables interne pour une externe
Posté : 16 janv. 2023, 13:51
par hgvieira
itasoft a écrit : ↑16 janv. 2023, 13:24
c'est clair et limpide, reste à savoir si la variable externe
Z n'est pas écrite dans le programme automate (l'automate ne fait que la lire)
Elle est juste lue dans l'automate, merci.
Re: 3 variables interne pour une externe
Posté : 16 janv. 2023, 13:53
par itasoft
OK
dans ce cas je vois pas ou est le problème ?
J’ai 3 champs qui affichent les valeurs des variables internes A,B,C par appui sur le champs A je copie le contenu de la variable A dans la variable Z ect……..
ya pas de script à faire
--------clic dessus pour zoom-------
Re: 3 variables interne pour une externe
Posté : 16 janv. 2023, 14:33
par DurandO
itasoft a écrit : ↑16 janv. 2023, 13:53
OK
dans ce cas je vois pas ou est le problème ?
J’ai 3 champs qui affichent les valeurs des variables internes A,B,C par appui sur le champs A je copie le contenu de la variable A dans la variable Z ect……..
ya pas de script à faire
Le problème est peut-être que'on n'utilise pas Vijeo mais TIA-Portal ( j'entends déjà les remarques sur le fonctionnement du cerveau teuton).
N'étant pas madame Irma, j'ai eu beau lustrer mes deux boules qui ne sont pas en cristal, je n'avais pas deviné qu'il s'agissait de variables real!
Du coup, en effet la fonction échelle ne fonctionnera pas dans ce cas.
Je ne vois plus qu'une solution par script par exemple :
Code : Tout sélectionner
Sub MajReel()
Select SmartTags("IndexListBox")
Case 0
SmartTags("reelAPI") = SmartTags("reel1")
Case 1
SmartTags("reelAPI") = SmartTags("reel2")
Case 2
SmartTags("reelAPI") = SmartTags("reel3")
End Select
End
Ce script est à appeler sur événement modification de la variable
IndexListBox.
Dans l'hypothèse suivante :
Reel1 est de type real valeur du premier champs de saisie
Reel2 est de type real valeur du second champs
Reel3 est de type real valeur du 3éme
ReelAPI la variable API de type real devant recevoir la valeur en fonction de la sélection associée à la variable
IndexListBox.
Re: 3 variables interne pour une externe
Posté : 16 janv. 2023, 14:41
par itasoft
OK,
ça veut dire que chez les "teutons" sur un champs affichage on peut faire une action par clic dessus, c'est ça ?
si c'est le cas alors oui on peut appliquer ton script exemple
dans tous les cas il faut afficher la variable Z pour voir le résultat de l'action
Re: 3 variables interne pour une externe
Posté : 16 janv. 2023, 14:47
par Pepino672
Salut,
Tu peux créer une liste déroulante et tu l'associe à une liste de texte. Ta liste déroulante est reliée à une variable automate, par exemple ton Z, tu la met soit en input ou en input/output dans l'IHM. Ensuite, ta liste de texte tu la paramètres avec les valeurs que tu souhaite. Par exemple choix 1 prend la valeur 1 dans ta liste de texte et donc transmet 1 dans ta variable Z.
Re: 3 variables interne pour une externe
Posté : 16 janv. 2023, 15:01
par philou77
Salut !
ceci pourrait peut être t'aider un peu
https://support.industry.siemens.com/cs ... 0&lc=fr-FR
à savoir que le multiplexage ne fonctionne pas forcément avec toutes les cpu, tous les pilotes de com, tous les afficheurs..
de plus, cela ne fonctionne pas avec les DB en accès optimisé !
sinon, cela rempli effectivement ton besoin
Re: 3 variables interne pour une externe
Posté : 16 janv. 2023, 15:32
par DurandO
Pepino672 a écrit : ↑16 janv. 2023, 14:47
Par exemple choix 1 prend la valeur 1 dans ta liste de texte et donc transmet 1 dans ta variable Z.
Sa variable Z est un réel. Dans une liste, ce sont des valeurs entières.
itasoft a écrit : ↑16 janv. 2023, 14:41
ça veut dire que chez les "teutons" sur un champs affichage on peut faire une action par clic dessus, c'est ça ?
Oui, enfin en fonction du control, on a divers événements auxquels on peut associer une ou plusieurs action diverses dont des scripts, charger vue, assigner variable...
itasoft a écrit : ↑16 janv. 2023, 14:41
dans tous les cas il faut afficher la variable Z pour voir le résultat de l'action
Oui, logique.
Je dirais même que le transfert de la valeur ne devrait se faire qu'après appui sur une touche :
1°) choix de la valeur par listBox
2°) Touche Validation Chargement dans l'API (appel du script)
Du coup, si plusieurs valeurs sont ainsi à transférer après sélections des divers paramètres, on valide l'envoi vers API.
Et en effet, vaut mieux afficher les paramètres actuellement actif dans l'API.
Re: 3 variables interne pour une externe
Posté : 16 janv. 2023, 15:38
par hgvieira
Pepino672 a écrit : ↑16 janv. 2023, 14:47
Salut,
Tu peux créer une liste déroulante et tu l'associe à une liste de texte. Ta liste déroulante est reliée à une variable automate, par exemple ton Z, tu la met soit en input ou en input/output dans l'IHM. Ensuite, ta liste de texte tu la paramètres avec les valeurs que tu souhaite. Par exemple choix 1 prend la valeur 1 dans ta liste de texte et donc transmet 1 dans ta variable Z.
Capture.PNG
Capture1.PNG
Merci de votre réponse, malheureusement une valeur réel ne peut être affectés.
Re: 3 variables interne pour une externe
Posté : 16 janv. 2023, 15:40
par hgvieira
DurandO a écrit : ↑16 janv. 2023, 14:33
itasoft a écrit : ↑16 janv. 2023, 13:53
OK
dans ce cas je vois pas ou est le problème ?
J’ai 3 champs qui affichent les valeurs des variables internes A,B,C par appui sur le champs A je copie le contenu de la variable A dans la variable Z ect……..
ya pas de script à faire
Le problème est peut-être que'on n'utilise pas Vijeo mais TIA-Portal ( j'entends déjà les remarques sur le fonctionnement du cerveau teuton).
N'étant pas madame Irma, j'ai eu beau lustrer mes deux boules qui ne sont pas en cristal, je n'avais pas deviné qu'il s'agissait de variables real!
Du coup, en effet la fonction échelle ne fonctionnera pas dans ce cas.
Je ne vois plus qu'une solution par script par exemple :
Code : Tout sélectionner
Sub MajReel()
Select SmartTags("IndexListBox")
Case 0
SmartTags("reelAPI") = SmartTags("reel1")
Case 1
SmartTags("reelAPI") = SmartTags("reel2")
Case 2
SmartTags("reelAPI") = SmartTags("reel3")
End Select
End
Ce script est à appeler sur événement modification de la variable
IndexListBox.
Dans l'hypothèse suivante :
Reel1 est de type real valeur du premier champs de saisie
Reel2 est de type real valeur du second champs
Reel3 est de type real valeur du 3éme
ReelAPI la variable API de type real devant recevoir la valeur en fonction de la sélection associée à la variable
IndexListBox.
Je vais essayé votre solution, je vous reviens après.
Re: 3 variables interne pour une externe
Posté : 16 janv. 2023, 15:50
par Pepino672
Oui en effet pour mettre la variable en real, soit passer par un script dans l'IHM soit mettre en forme dans l'automate INT_TO_REAL avec la division.
La solution de DurandO semble la plus appropriée dans ce cas si vous ne souhaitez pas toucher au programme automate.