Sofrel S550
Sofrel S550
Bonjour,
je viens de paramétrer un S550 poste de relèvement avec un capteur de niveau et 2 pompes.
Tout fonctionne parfaitement.
Pour aller un peu plus loin je souhaiterai ajouter des fonctions supplémentaires en utilisant par exemple des blocs comme R_TRIG , TON ou BLINK.
J'ai compris comment ajouter des variables globales au programme en indiquant leur type, mais je ne comprend pas comment utiliser les fonctions.
Exemple BLINK
parametre d'entrée
.RUN BOOL
.CYCLE Time
paramètre de sortie
.Q BOOL
Merci pour votre aide
je viens de paramétrer un S550 poste de relèvement avec un capteur de niveau et 2 pompes.
Tout fonctionne parfaitement.
Pour aller un peu plus loin je souhaiterai ajouter des fonctions supplémentaires en utilisant par exemple des blocs comme R_TRIG , TON ou BLINK.
J'ai compris comment ajouter des variables globales au programme en indiquant leur type, mais je ne comprend pas comment utiliser les fonctions.
Exemple BLINK
parametre d'entrée
.RUN BOOL
.CYCLE Time
paramètre de sortie
.Q BOOL
Merci pour votre aide
- djé
- Dieu du process
- Messages : 775
- Inscription : 20 oct. 2015, 09:55
- Localisation : Bretagne, Pays de la Loire, Nantes
Re: Sofrel S550
Salut,
La fonction BLINK est une fonction de clignotement (0/1) de période "CYCLE " (j'imagine une demi-période à "0", une demi-période à "1") qui affecte la sortie "Q" et exécutée lorsque l'entrée "RUN" est à Un (vrai).
Essaye l'aide du logiciel ca doit certainement être expliqué.
La fonction BLINK est une fonction de clignotement (0/1) de période "CYCLE " (j'imagine une demi-période à "0", une demi-période à "1") qui affecte la sortie "Q" et exécutée lorsque l'entrée "RUN" est à Un (vrai).
Essaye l'aide du logiciel ca doit certainement être expliqué.
Le monde se divise en 10 catégories:les personnes qui comprennent le binaire,et les autres.
Dans tout ce que vous apprenez, seuls 10% vont vous servir,mais vous ne savez pas lesquels ...
Dans tout ce que vous apprenez, seuls 10% vont vous servir,mais vous ne savez pas lesquels ...
Re: Sofrel S550
mon probleme est de ne pas comprendre l'utilisation de :
Exemple BLINK
.RUN BOOL
.CYCLE Time
.Q BOOL
ou sont les variables ? comment utilise t on la fonction?
mes entrée et sortie se nomment par exemple : data146 data163
si elles sont tout ou rien il suffit par exemple d'écrire :
IF (data146=true) THEN
data163:=false;
ELSE
data163:=true;
ENDIF
Comment associer la variable .Q à la sortie physique data163 ?
Comment donner une valeur à CYCLE?
Exemple BLINK
.RUN BOOL
.CYCLE Time
.Q BOOL
ou sont les variables ? comment utilise t on la fonction?
mes entrée et sortie se nomment par exemple : data146 data163
si elles sont tout ou rien il suffit par exemple d'écrire :
IF (data146=true) THEN
data163:=false;
ELSE
data163:=true;
ENDIF
Comment associer la variable .Q à la sortie physique data163 ?
Comment donner une valeur à CYCLE?
- djé
- Dieu du process
- Messages : 775
- Inscription : 20 oct. 2015, 09:55
- Localisation : Bretagne, Pays de la Loire, Nantes
Re: Sofrel S550
Salut
Je ne connais pas la prog d'un sofrel mais çà doit être un peu comme sur du WAGO: il faut déjà crée une variable de type BLINK qui servira d'instance de la fonction.
En prenant l'exemple de WAGO:
(* Declaration de variable type BLINK *)
monKlignotant : BLINK;
Ensuite tu l’appelles en affectant les paramètres d'entrée:
monKlignotant (RUN := data146, CYCLE := T#1s); donc là tu lui dis que tu veux que la fonction démarre qd data146 est true avec une période de 1s.
Pour finir tu affectes ta variable avec la sortie de la fonction:
data163 :=monKlignotant .Q;
Je me répète mais as-tu essayé la touche "F1" pour consulter l'aide?
Je ne connais pas la prog d'un sofrel mais çà doit être un peu comme sur du WAGO: il faut déjà crée une variable de type BLINK qui servira d'instance de la fonction.
En prenant l'exemple de WAGO:
(* Declaration de variable type BLINK *)
monKlignotant : BLINK;
Ensuite tu l’appelles en affectant les paramètres d'entrée:
monKlignotant (RUN := data146, CYCLE := T#1s); donc là tu lui dis que tu veux que la fonction démarre qd data146 est true avec une période de 1s.
Pour finir tu affectes ta variable avec la sortie de la fonction:
data163 :=monKlignotant .Q;
Je me répète mais as-tu essayé la touche "F1" pour consulter l'aide?
Le monde se divise en 10 catégories:les personnes qui comprennent le binaire,et les autres.
Dans tout ce que vous apprenez, seuls 10% vont vous servir,mais vous ne savez pas lesquels ...
Dans tout ce que vous apprenez, seuls 10% vont vous servir,mais vous ne savez pas lesquels ...
Re: Sofrel S550
Merci,
pour l'aide j'ai cherché mais je n'ai pas trouvé.
J'essaie cela mardi et je communique mes résultats.
pour l'aide j'ai cherché mais je n'ai pas trouvé.
J'essaie cela mardi et je communique mes résultats.
Re: Sofrel S550
Bonjour,sl35 a écrit : ↑04 juin 2017, 11:01 mon probleme est de ne pas comprendre l'utilisation de :
Exemple BLINK
.RUN BOOL
.CYCLE Time
.Q BOOL
ou sont les variables ? comment utilise t on la fonction?
mes entrée et sortie se nomment par exemple : data146 data163
si elles sont tout ou rien il suffit par exemple d'écrire :
IF (data146=true) THEN
data163:=false;
ELSE
data163:=true;
ENDIF
Comment associer la variable .Q à la sortie physique data163 ?
Comment donner une valeur à CYCLE?
Je suis conscient de déterrer le sujet, mais étant donné qu"il est difficile de trouver des informations sur la programmation Sofrel sur internet (la documentation n'étant diffusée qu'avec le logiciel), je me permet donc d'apporter quelques éclaircissements :
- Premièrement la description de l'utilisation des fonctions est décrite le manuel de programmation ST (dans Gamme S500/ Documentation/Automatisme/Manuel de référence ST) au paragraphe 4.2; le document "Gamme S500/ Documentation/Automatisme/Règles de programmation ST" étant également très instructif.
Je vais maintenant t'expliquer la méthode pour faire ce que tu souhaite :
- tu devras créer une variable de fonction (où instance de fonction); pour cela tu ouvre la fenêtre de variables (l'icone de tableau ou menu: fenêtre/Variables). En fonction de tes besoins, tu créera une variable locale ou globale; pour les instances de fonction, on aura tendance à privilégier des variables locales. Tu ajoutera donc une variable dans la section adaptée à ton choix. Il te faudra alors éditer les propriétés de ta variable pour lui donner un nom mieux adapter que "NewVar" (par exemple "Clignoteur") et le type de la fonction que tu souhaite utiliser (dans ton cas BLINK).
- en suite, tu dois faire fonctionner cette fonction. pour cela tu dois l'appeler à chaque cycle de scrutation dans ton programme (donc pas a l'intérieur d'une structure conditionnelle).
par exemple :ou si tu a une variable réelle data200 pour fixer la période :Code : Tout sélectionner
Clignoteur(data146,T#1s);
Je vous laisse le soins d'aller regarder dans l'aide précédemment cité le fonctionnement de la fonction TMR.Code : Tout sélectionner
Clignoteur(data146,TMR(data200 * 1000.0));
- Pour finir, tu récupère le résultat de ta fonction en affectant directement la sortie de ta variable d'instance à ta variable de sortie; soit :
et voilà ce n'est pas plus compliquer que cela.
Code : Tout sélectionner
data163 := Clignoteur.Q;
Automaticien dans le domaine de l'eau depuis plus de 10 ans.
Je travail sur les gammes TSX et M340, ainsi qu'avec les IHM Schneider.
Je travail également avec des systèmes de télégestion.
Je travail sur les gammes TSX et M340, ainsi qu'avec les IHM Schneider.
Je travail également avec des systèmes de télégestion.