Aide en programmation ST

Forum traitant des automates industriels de marque Wago et du logiciel codesys
magmaaka
Apprend le binaire
Apprend le binaire
Messages : 9
Inscription : 07 juin 2018, 10:02

Aide en programmation ST

Message par magmaaka »

Salam , svp j'ai besoin d'aide
il faut que je fasse un programme en ST qui contient deux compteurs :
compteur 1 : calcule de 0 à 1000 avec pas de 1
une remise a zéro
possibilité de donner une valeur et commence à compter depuis cette valeurs
compteur 2 :
calcule de 0 à 2000 avec pas de 0.5
retour à 0 automatiquement quand on arrive a 1000
NB: j'ai fait ça pour le compteur 1 mais ça marche pas

Image
Avatar de l’utilisateur
itasoft
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 7035
Inscription : 20 oct. 2015, 10:15
Localisation : Lyon
Contact :

Re: Aide en programmation ST

Message par itasoft »

slts,
c'est pour compter quoi ????
Automaticien privé (de tout)
itasoft@free.fr
magmaaka
Apprend le binaire
Apprend le binaire
Messages : 9
Inscription : 07 juin 2018, 10:02

Re: Aide en programmation ST

Message par magmaaka »

itasoft a écrit : 07 juin 2018, 10:28 slts,
c'est pour compter quoi ????
pour le compteur 1 il commence a compter de 1 à 1000
1,2,3,4,......1000
pour le 2
1,1.5,2,2.5....2000
Avatar de l’utilisateur
JC87
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 1901
Inscription : 20 oct. 2015, 13:00
Localisation : Nouvelle Aquitaine

Re: Aide en programmation ST

Message par JC87 »

Bonjour,

Normalement on compte quelque chose, si tu appelle ta fonction sans condition ça va compter jusqu'a mille en quelques millisecondes selon le temps de cycle automate epicétou. Donc il faut une condition de comptage comme un détecteur ou au pire une variable issue d'un bloc clignotant (blink) histoire de compter des impulsions de temps pour faire joli.

JC
"On veut faire du zéro défaut mais on a zéro bonhomme et zéro budget, et bien à la fin on a zéro résultat..."
magmaaka
Apprend le binaire
Apprend le binaire
Messages : 9
Inscription : 07 juin 2018, 10:02

Re: Aide en programmation ST

Message par magmaaka »

ce que je veux c'est pour compteur 1
on donne une valeur , 500 par exemple et il doit commencer à afficher les valeurs avec une incrémentation de 1
500 , aprés 501, 502 comme ca vous pouvez m'aider svp
Avatar de l’utilisateur
JC87
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 1901
Inscription : 20 oct. 2015, 13:00
Localisation : Nouvelle Aquitaine

Re: Aide en programmation ST

Message par JC87 »

J'ai bien compris mais toi ce que tu n'a pas compris c'est que pour compter quelque chose il faut un événement, un événement c'est une variable qui change d'état. En général on compte sur un événement physique comme un détecteur câblé sur une entrée automate. Ou alors il faut une base de temps pour compter toute les secondes ou toutes les minutes par exemple. Sinon comme tu l'a écrit ça va compter jusqu'a 1000 en moins de deux sans même que tu puisse voir évoluer la valeur.

JC
"On veut faire du zéro défaut mais on a zéro bonhomme et zéro budget, et bien à la fin on a zéro résultat..."
magmaaka
Apprend le binaire
Apprend le binaire
Messages : 9
Inscription : 07 juin 2018, 10:02

Re: Aide en programmation ST

Message par magmaaka »

oui c en base de temps il faut calculer chaque seconde
Avatar de l’utilisateur
JC87
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 1901
Inscription : 20 oct. 2015, 13:00
Localisation : Nouvelle Aquitaine

Re: Aide en programmation ST

Message par JC87 »

Il aurait peut être fallu commencer par nous le dire... bref, il faut donc utiliser comme je le disait un bloc "blink" qui est un clignoteur. Sur front montant de la variable de ce bloc, tu appelle ta fonction ou tu met le front directement dans ta fonction pour conditionner le comptage.

JC
"On veut faire du zéro défaut mais on a zéro bonhomme et zéro budget, et bien à la fin on a zéro résultat..."
magmaaka
Apprend le binaire
Apprend le binaire
Messages : 9
Inscription : 07 juin 2018, 10:02

Re: Aide en programmation ST

Message par magmaaka »

JC87 a écrit : 07 juin 2018, 11:30 Il aurait peut être fallu commencer par nous le dire... bref, il faut donc utiliser comme je le disait un bloc "blink" qui est un clignoteur. Sur front montant de la variable de ce bloc, tu appelle ta fonction ou tu met le front directement dans ta fonction pour conditionner le comptage.

JC
mais moi je veux qu'il soit en ST sans blocs
Avatar de l’utilisateur
JC87
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 1901
Inscription : 20 oct. 2015, 13:00
Localisation : Nouvelle Aquitaine

Re: Aide en programmation ST

Message par JC87 »

Quand je dit bloc je veut dire un bloc fonction qu'on peut bien évidemment écrire en ST dans ce style :
BLK(ENABLE:=Start , TIMELOW:=t#0.5S , TIMEHIGH:=t#0.5s , OUT=>Pulse_Seconde);

JC
"On veut faire du zéro défaut mais on a zéro bonhomme et zéro budget, et bien à la fin on a zéro résultat..."
Répondre