Page 2 sur 3
Re: Mise à échelle
Posté : 25 juil. 2020, 07:07
par Lancelot
Bruce33 a écrit : ↑24 juil. 2020, 23:41
Bonjour,
Il me semble que ce serait plutôt :
//mise à échelle en 4-20 mA de la valeur "Val_1"// //"Val_2" = "REAL", "Val_1" = "REAL"
"Val_2" := ((( 20.0 - 0.0) / 27648.0) * Val_1)
- 4.0;
//mise à échelle de la variable "Val_2" sur une échelle 0.7 à 1.767 l/s// //"Val_3" = "REAL", "Val_2" = "REAL"
"Val_3" := (((1.767 - 0.7) /
(20.0 - 4.0)) * "Val_2") + 0.7;
Mais c'est un peu lourd comme écriture...
Je ne suis pas spécialiste de S7-1200 mais il me semble qu'il existe une fonction SCALE (ou RESCALE en valeur REAL) pour la mise à l'échelle. Il existe aussi des fonctions NORM_X et SCALE_X... mais je n'ai pas le logiciel pour vérifier tout ça.
Bruce33 a écrit : ↑24 juil. 2020, 23:41
Bonjour,
Il me semble que ce serait plutôt :
//mise à échelle en 4-20 mA de la valeur "Val_1"// //"Val_2" = "REAL", "Val_1" = "REAL"
"Val_2" := ((( 20.0 - 0.0) / 27648.0) * Val_1)
- 4.0;
//mise à échelle de la variable "Val_2" sur une échelle 0.7 à 1.767 l/s// //"Val_3" = "REAL", "Val_2" = "REAL"
"Val_3" := (((1.767 - 0.7) /
(20.0 - 4.0)) * "Val_2") + 0.7;
Mais c'est un peu lourd comme écriture...
Je ne suis pas spécialiste de S7-1200 mais il me semble qu'il existe une fonction SCALE (ou RESCALE en valeur REAL) pour la mise à l'échelle. Il existe aussi des fonctions NORM_X et SCALE_X... mais je n'ai pas le logiciel pour vérifier tout ça.
Bonjour,
Merci pour votre réponse. Oui il existe ces fonctions mais impossible de faire une mise à l'échelle correct.
Re: Mise à échelle
Posté : 25 juil. 2020, 11:02
par Lorent2
0_27648Pts = 0_20mA = Échelle min_Échelle Max
Mais 4mA = Échelle min
Ça donne donc [27648*0,2]_27648Pts = 4_20mA = Échelle min_Échelle Max
Échelle min = 5530 pts (55929,6 précisément)
Échelle max 27648 pts
Re: Mise à échelle
Posté : 25 juil. 2020, 11:23
par philou77
Salut !
Lorent2 à raison.
L'étendue de ta carte est différente de l'étendue de ton capteur..
La seule grandeur en commun sont les mA !
faut faire :
Points lus -> mA (carte)
mA -> % (Capteur)
% - > l/s (Capteur)
Re: Mise à échelle
Posté : 25 juil. 2020, 11:27
par Lancelot
philou77 a écrit : ↑25 juil. 2020, 11:23
Salut !
Lorent2 à raison.
L'étendue de ta carte est différente de l'étendue de ton capteur..
La seule grandeur en commun sont les mA !
faut faire :
Points lus -> mA (carte)
mA -> % (Capteur)
% - > l/s (Capteur)
Sans titre 2.jpg
Salut,
Merci beaucoup de votre aide ! Je viens de comprendre.
Re: Mise à échelle
Posté : 25 juil. 2020, 11:37
par Lorent2
Le plus simple est de faire une première mise à l'échelle dans l'automate en 0-100% (c'est simple et universel)
Et ensuite utiliser tes vrais valeur d'échelle via une seconde conversion du type : x = [Valeur en %/100,0]*Echelle max]+Echelle min.
Ça te permettra de vérifier les valeur simplement (4mA ->0% ; 12mA ->50% ; 20mA ->100%)
Et ensuite si tu a besoin de modifier l'échelle de ton transmetteur, tu n'aura qu'à toucher à une valeur du programme.
Et prévois également une sécurité, si le résultat est <4mA, ce qui veut dire que ton transmetteur s'est mis en sécurité.
Re: Mise à échelle
Posté : 25 juil. 2020, 11:52
par Lancelot
Salut,
Si j ai bien compris, je fais une première mise à échelle entre 0 et 100% avec les valeurs du transmetteur puis je fais une mise à échelle avec les valeurs que j'aurai besoin.
Ou je fais en premier une mise à échelle 4-20 mA est de faire une mise à échelle 0 100% puis avec les valeurs que j'aurai mis ?
Re: Mise à échelle
Posté : 25 juil. 2020, 12:05
par Lorent2
Lancelot a écrit : ↑25 juil. 2020, 11:52
Salut,
Si j ai bien compris, je fais une première mise à échelle entre 0 et 100% avec les valeurs du transmetteur puis je fais une mise à échelle avec les valeurs que j'aurai besoin.
Ou je fais en premier une mise à échelle 4-20 mA est de faire une mise à échelle 0 100% puis avec les valeurs que j'aurai mis ?
1ere mise à l'échelle avec ceci :
IN : 5530 - 27648 [pts]
OUT : 0,0 - 100,0 [%]
2nde mise à l'échelle :
IN : 0,0 - 100,0 [%] (valeur issue de la 1ere mise à l'échelle)
OUT : Echelle min - Echelle max [l/s, m3/h, ...]
Re: Mise à échelle
Posté : 25 juil. 2020, 12:27
par Lancelot
D'accord merci infiniment !
Re: Mise à échelle
Posté : 25 juil. 2020, 12:31
par Lancelot
Lorent2 a écrit : ↑25 juil. 2020, 11:02
0_27648Pts = 0_20mA = Échelle min_Échelle Max
Mais 4mA = Échelle min
Ça donne donc [27648*0,2]_27648Pts = 4_20mA = Échelle min_Échelle Max
Échelle min = 5530 pts (55929,6 précisément)
Échelle max 27648 pts
Dernière question, d'où vient les 0,2 du [27648*0,2] ?
Re: Mise à échelle
Posté : 25 juil. 2020, 12:34
par Lorent2
Lancelot a écrit : ↑25 juil. 2020, 12:31
Dernière question, d'où vient les 0,2 du [27648*0,2] ?
4mA en points ça donne (27648/20)*4 soit 27648* (4/20), et donc 27648 * 0.2