Scada basic

Fermé
poupou2030 Messages postés 5 Date d'inscription mardi 29 avril 2014 Statut Membre Dernière intervention 4 juin 2014 - 6 mai 2014 à 11:46
poupou2030 Messages postés 5 Date d'inscription mardi 29 avril 2014 Statut Membre Dernière intervention 4 juin 2014 - 6 mai 2014 à 15:22
Salut,
Je n'arrive pas à exécuter les programme sous Pcvue, je ne vois pas d'où viens le problème
dans mon synoptique j'ai deux textes apparence relief pour afficher les mesures: 1. M
et le 2. M2
j'ai essayé un programme simple :

sub main()
end sub

sub b1()
@M2=@M2+1; M2=> mesure
@M=0; M=>Chrono
end sub
je ne sais si le programme s'exécute automatiquement ou pas
et pour mon code je ne suis pas sur si on peut l'écrire comme sa.

merciii d'avance pour votre aide
A voir également:

1 réponse

Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
6 mai 2014 à 11:55
Bonjour,

Un main() sans commande à l'intérieur ne sert à rien. Si le programme se lance par le main(), il ne se passera rien.

Pour lancer la procédure b1() depuis le main()

Sub main() 
     b1
End Sub

0
poupou2030 Messages postés 5 Date d'inscription mardi 29 avril 2014 Statut Membre Dernière intervention 4 juin 2014
Modifié par poupou2030 le 6/05/2014 à 15:23
Bonjour,
Okey, Merci pour votre réponse
j'ai essayer un autre programme, remplir une cuve n°1 ensuite remplir une autre a partir de la première. j'ai eu un problème avec la vanne, elle reste invalide lors de l'exécution du programme.
pour la vanne: ALARME: défaut_vanne et STATUS: cde_vanne
voilà le programme:


sub main()

'Mise en marche

if (@Cde_marche_C1==1) then 'bouton commande état
@RM_C1=1; 'remplissage cuve 1
end if

'pilotage des niveaux

if (@RM_P1==1) then
if (@CdeVanne1==1) then 'commande vanne1
@Niv_cuve2=@Niv_cuve2+30; 'niveau cuve2
@Niv_Cuve1=@Niv_Cuve1-30;
end if
end if

'arret sur niveau haut

if (@Niv_cuve2>=1000 ) then
@Cde_marche_C1=0;
@RM_C1=0;
end if

'remplissage cuve 1

if(@Rempl_cuve1==1) then
@Niv_Cuve1=@Niv_Cuve1+100;
end if

'arret remplissage cuve 1

if(@Niv_Cuve1>=6000) then
@Rempl_cuve1=0;
end if

'niveau bas cuve

if (@Niv_Cuve1<=200)then
@defaut_rempl=1; 'alarme
else
@defaut_rempl=0;
end if

'ouverture vanne sur niveau bas

if (@Niv_cuve2<=10) then
@CdeVanne1=1;
@Cde_marche_P1=1;
'else
if (@Niv_cuve2>=@consigne_cuve2) then 'consigne à 300
@CdeVanne1=0;
'end if
'end if
else
@CdeVanne1=0;
end if
end if



'arret pompe sur vannes fermées

if (@CdeVanne1==0 ) then
@Cde_marche_P1=0;
@RM_P1=0;

end if
end sub

A+
0