L10:(* -------------------------------- init ------------------------------------------- *)(*RAZ STRING D ETAT ETAPES*)
DES_PROG_EN_COURS.NOM_ETAPE := ' ';
DES_PROG_EN_COURS.DESCRIP_TRANSITION := ' ';(*INIT SEQUENCE PAR AFFICHEUR*)
IF RAZ_SEQ THEN SEQ_PROG_EN_COURS.NUM_ETAPE :=0;END_IF;(*RAZ DES VARIABLES*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;SEQ_PROG_EN_COURS.CMD01 := 0; (* CMD *)
SEQ_PROG_EN_COURS.CMD02 := 0; (* CMD *)
SEQ_PROG_EN_COURS.CMD03 := 0; (* CMD *)SEQ_PROG_EN_COURS.INT01 := 0; (* *)
SEQ_PROG_EN_COURS.INT02 := 0; (* *)SEQ_PROG_EN_COURS.ETAT01 := 0; (* *)
END_IF;(*DEMARRAGE DE LA SEQUENCE*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 0 AND REPRISE_API_OK THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 10;
END_IF;(*INCREMENTATION TEMPO*)
IF BIT_100ms AND SEQ_PROG_EN_COURS.T_100MS < 32766 THEN
SEQ_PROG_EN_COURS.T_100MS := SEQ_PROG_EN_COURS.T_100MS + 1;
END_IF;
IF BIT_1s AND SEQ_PROG_EN_COURS.T_1S < 32766 THEN
SEQ_PROG_EN_COURS.T_1S := SEQ_PROG_EN_COURS.T_1S + 1;
END_IF;(* -------------------------------- init ------------------------------------------- *)
(* ETAPE DE PREPARATION AU DEMARRAGE *)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 10 THENSEQ_PROG_EN_COURS.CMD01.00 := 0; (* *)
SEQ_PROG_EN_COURS.CMD01.01 := 0; (* *)
SEQ_PROG_EN_COURS.CMD01.02 := 0; (* *)
SEQ_PROG_EN_COURS.CMD01.03 := 0; (* *)
SEQ_PROG_EN_COURS.CMD01.04 := 0; (* *)
SEQ_PROG_EN_COURS.CMD01.05 := 0; (* *)
SEQ_PROG_EN_COURS.CMD01.06 := 0; (* *)
SEQ_PROG_EN_COURS.CMD01.07 := 0; (* *)
SEQ_PROG_EN_COURS.CMD01.08 := 0; (* *)
SEQ_PROG_EN_COURS.CMD01.09 := 0; (* *)
SEQ_PROG_EN_COURS.CMD01.10 := 0; (* *)
SEQ_PROG_EN_COURS.CMD01.11 := 0; (* *)
SEQ_PROG_EN_COURS.CMD01.12 := 0; (* *)
SEQ_PROG_EN_COURS.CMD01.13 := 0; (* *)
SEQ_PROG_EN_COURS.CMD01.14 := 0; (* *)
SEQ_PROG_EN_COURS.CMD01.15 := 0; (* *)SEQ_PROG_EN_COURS.CMD02.00 := 0; (* RAZ SEQ PROCESS *)
SEQ_PROG_EN_COURS.CMD02.01 := 0; (* *)
SEQ_PROG_EN_COURS.CMD02.02 := 0; (* *)
SEQ_PROG_EN_COURS.CMD02.03 := 0; (* *)
SEQ_PROG_EN_COURS.CMD02.04 := 0; (* *)
SEQ_PROG_EN_COURS.CMD02.05 := 0; (* *)
SEQ_PROG_EN_COURS.CMD02.06 := 0; (* *)
SEQ_PROG_EN_COURS.CMD02.07 := 0; (* *)
SEQ_PROG_EN_COURS.CMD02.08 := 0; (* *)
SEQ_PROG_EN_COURS.CMD02.09 := 0; (* *)
SEQ_PROG_EN_COURS.CMD02.10 := 0; (* *)
SEQ_PROG_EN_COURS.CMD02.11 := 0; (* *)
SEQ_PROG_EN_COURS.CMD02.12 := 0; (* *)
SEQ_PROG_EN_COURS.CMD02.13 := 0; (* *)
SEQ_PROG_EN_COURS.CMD02.14 := 0; (* *)
SEQ_PROG_EN_COURS.CMD02.15 := 0; (* *)SEQ_PROG_EN_COURS.INT01 := 0; (* *)
SEQ_PROG_EN_COURS.INT02 := 0; (* *)SEQ_PROG_EN_COURS.ETAT01 := 0; (* *)
(*RAZ ETAT EQUIPEMENT*)
GES_PROCEDE.E_Etat_equipement := 0;
GES_PROCEDE.E_Etape_en_cours := 0;
GES_PROCEDE.LAP_Dmd_annulation := 0;(*RAZ TABLEAU PROGRAMME EN COURS*)
PROG_EN_COURS := PROG_VIDE_COMPLET;
PROG_REMONT_ETAPES := PROG_VIDE_ETAPES;
PROG_REMONT_COMP := PROG_VIDE_COMP;(*RAZ variables tableau de gestion procédé*)
GES_PROCEDE.RV_Remonte_valeur_arret_prog := 0;DES_PROG_EN_COURS.NOM_ETAPE := 'Etape de preparation au demarrage';
DES_PROG_EN_COURS.NOM_ETAPE := 'Attente demande de lancement programme';(*Demande de lancement programme*)
IF GES_PROCEDE.LAP_Dmd_de_lancement = 1 AND GES_PROCEDE.LAP_Code_prog <> 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 100;
END_IF;
END_IF;(*Etape 100 : Lancement du programme dans le db de programme en cours*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 100 THENIF GES_PROCEDE.LAP_Code_prog < 10 THEN
PROG_EN_COURS_CODE := GES_PROCEDE.LAP_Code_prog;
PROG_EN_COURS.NOM := STOCKAGE_PROG_001_010[GES_PROCEDE.LAP_Code_prog].NOM;
PROG_EN_COURS.ETAPES := STOCKAGE_PROG_001_010[GES_PROCEDE.LAP_Code_prog].ETAPES;
PROG_EN_COURS.COMPLEMENT := STOCKAGE_PROG_001_010[GES_PROCEDE.LAP_Code_prog].COMPLEMENT;
END_IF;IF GES_PROCEDE.LAP_Code_prog >= 10 AND GES_PROCEDE.LAP_Code_prog < 21 THEN
PROG_EN_COURS_CODE := GES_PROCEDE.LAP_Code_prog;
PROG_EN_COURS.NOM := STOCKAGE_PROG_011_020[GES_PROCEDE.LAP_Code_prog].NOM;
PROG_EN_COURS.ETAPES := STOCKAGE_PROG_011_020[GES_PROCEDE.LAP_Code_prog].ETAPES;
PROG_EN_COURS.COMPLEMENT := STOCKAGE_PROG_011_020[GES_PROCEDE.LAP_Code_prog].COMPLEMENT;
END_IF;IF GES_PROCEDE.LAP_Code_prog >= 91 AND STOCKAGE_PROG_AUTRE_CODE = GES_PROCEDE.LAP_Code_prog THEN
PROG_EN_COURS_CODE := GES_PROCEDE.LAP_Code_prog;
PROG_EN_COURS.NOM := STOCKAGE_PROG_AUTRE.NOM;
PROG_EN_COURS.ETAPES := STOCKAGE_PROG_AUTRE.ETAPES;
PROG_EN_COURS.COMPLEMENT := STOCKAGE_PROG_AUTRE.COMPLEMENT;
END_IF;DES_PROG_EN_COURS.NOM_ETAPE := 'Affectation du progamme en cours';
DES_PROG_EN_COURS.NOM_ETAPE := 'Programme en cours affecte';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 200;
END_IF;
END_IF;(*étape 200 : RAZ échanges recettes en cours*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 200 THENGES_PROCEDE.LAP_Dmd_de_lancement := 0;
GES_PROCEDE.LAP_Code_prog := 0;
GES_PROCEDE.LAP_Confirmation_demande := 0;DES_PROG_EN_COURS.NOM_ETAPE := 'Reinitialisation des donnees d echange ';
DES_PROG_EN_COURS.NOM_ETAPE := 'Donnees reinitialisee';(*Aucune demande de modification*)
IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 300;
END_IF;
END_IF;(*étape 250 : Attente notif modif*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 300 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Verif attente demande de modification';
DES_PROG_EN_COURS.NOM_ETAPE := 'Demande ou aucune demande de modif';(*Demande modification*)
IF GES_PROCEDE.SP_Dmd_modif_prog_en_cours = 1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 400;
END_IF;(*Aucune demande de modification*)
IF GES_PROCEDE.SP_Dmd_modif_prog_en_cours = 0 AND SEQ_PROG_EN_COURS.T_1S > 1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 1000;
END_IF;
END_IF;(*étape 400 : Recopie du tampon dans la recette en cours*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 400 THENPROG_EN_COURS.ETAPES := PROG_TAMPON_ETAPES;
PROG_EN_COURS.COMPLEMENT := PROG_TAMPON_COMP;(*Validation sauvegarde effectué*)
GES_PROCEDE.SP_Rep_modif_prog_en_cours_api := 1;DES_PROG_EN_COURS.NOM_ETAPE := 'Recopie du tampon dans le programme en cours';
DES_PROG_EN_COURS.NOM_ETAPE := 'Reponse modif en cours traitee';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 500;
END_IF;
END_IF;(*étape 500 : Attente RAZ modif en prog en cours*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 500 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Attente retour Lina';
DES_PROG_EN_COURS.NOM_ETAPE := 'Retour Lina effectue';IF GES_PROCEDE.SP_Rep_modif_prog_en_cours_api = 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 600;
END_IF;
END_IF;(*Etape 600 : Attente demande vidage tampon*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 600 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Attente demande vidage tampon';
DES_PROG_EN_COURS.NOM_ETAPE := 'Demande de vidage effectue';IF GES_PROCEDE.SP_Dmd_vidage_tampon = 1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 700;
END_IF;
END_IF;(*étape 700 : Raz du DB recette tampon par automate*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 700 THENPROG_TAMPON_ETAPES := PROG_VIDE_ETAPES;
PROG_TAMPON_COMP := PROG_TAMPON_COMP;DES_PROG_EN_COURS.NOM_ETAPE := 'Vidage du tableau tampon';
DES_PROG_EN_COURS.NOM_ETAPE := 'Tableau tampon vide';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 800;
END_IF;
END_IF;(*Etape 800 : Réponse vidage tampon OK*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 800 THENGES_PROCEDE.SP_Rep_vidage_tampon_api := 1;
DES_PROG_EN_COURS.NOM_ETAPE := 'Reponse tableau tampon vide';
DES_PROG_EN_COURS.NOM_ETAPE := 'Reponse effectuee';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 900;
END_IF;
END_IF;(*Etape 900 : Attente échange Lina raz*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 900 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Attente reinitialisation des donnees d echange';
DES_PROG_EN_COURS.NOM_ETAPE := 'Donnees d echange reinitialisee';IF GES_PROCEDE.SP_Rep_vidage_tampon_api = 0 AND GES_PROCEDE.SP_Dmd_vidage_tampon = 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 1000;
END_IF;
END_IF;(* -------------------------------- TYPE DE DEPART ------------------------------------------- *)
(*étape 1000 : Vérification type de départ*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 1000 THEN(*Vérification départ différé*)
IF GES_PROCEDE.DD_mois <> 0 OR GES_PROCEDE.DD_jour <> 0
OR GES_PROCEDE.DD_minute <> 0 OR GES_PROCEDE.DD_heure <> 0 THENSEQ_PROG_EN_COURS.CMD01.00 := 1; (*départ différé*)
ELSE
SEQ_PROG_EN_COURS.CMD01.00 := 0; (*départ direct*)
END_IF;DES_PROG_EN_COURS.NOM_ETAPE := 'Verification type de depart';
DES_PROG_EN_COURS.NOM_ETAPE := 'Type de depart determine';(*Départ différé*)
IF SEQ_PROG_EN_COURS.CMD01.00 = 1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 1100;
END_IF;(*Départ direct*)
IF SEQ_PROG_EN_COURS.CMD01.00 = 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 2000;
END_IF;
END_IF;(* -------------------------------- DEPART DIFFERE ------------------------------------------- *)
(*étape 1100 : Sauvegarde date de départ*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 1100 THEN(*Sauvegarde date de départ*)
DD_MOIS_JOUR_DEBUT := (GES_PROCEDE.DD_mois * 100) + GES_PROCEDE.DD_jour;
DD_HEURE_MINUTE_DEBUT := (GES_PROCEDE.DD_heure * 100) + GES_PROCEDE.DD_minute;DES_PROG_EN_COURS.NOM_ETAPE := 'Sauvegarde date de depart';
DES_PROG_EN_COURS.NOM_ETAPE := 'Date sauvegardee';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 1110;
END_IF;
END_IF;(*étape 1110 : RAZ échange DD Lina*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 1110 THEN(*RAZ Date de départ*)
GES_PROCEDE.DD_annee := 0;
GES_PROCEDE.DD_mois := 0;
GES_PROCEDE.DD_jour := 0;
GES_PROCEDE.DD_heure := 0;
GES_PROCEDE.DD_minute := 0;DES_PROG_EN_COURS.NOM_ETAPE := 'RAZ donnee echange depart differe';
DES_PROG_EN_COURS.NOM_ETAPE := 'Donnees reinitialisee';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 1120;
END_IF;
END_IF;(*étape 1120 : Attente départ différé*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 1120 THENSEQ_PROG_EN_COURS.INT01 := HEURE_API_CONV.MOIS * 100 + HEURE_API_CONV.JOUR;
SEQ_PROG_EN_COURS.INT02 := HEURE_API_CONV.HEURE * 100 + HEURE_API_CONV.MINUTE;DES_PROG_EN_COURS.NOM_ETAPE := 'Attente depart differe';
DES_PROG_EN_COURS.NOM_ETAPE := 'Dmd modif ou depart direct ou date depart ok ou dmd annulation';(*Demande de modif en cours*)
IF GES_PROCEDE.SP_Dmd_modif_prog_en_cours = 1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 1130;
END_IF;(*Temps départ différé = temps départ direct*)
IF DD_MOIS_JOUR_DEBUT = SEQ_PROG_EN_COURS.INT01 AND DD_HEURE_MINUTE_DEBUT = SEQ_PROG_EN_COURS.INT02 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 2000;
END_IF;(*Dmd de départ direct*) (*A compléter*)
IF GES_PROCEDE.LAP_Dmd_de_lancement = 1 AND GES_PROCEDE.LAP_Code_prog <> 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 10;
END_IF;(*annulation*)
IF GES_PROCEDE.LAP_Dmd_annulation = 1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 3000;
END_IF;
END_IF;(*étape 1130 : Sauvegarde modification programme *)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 1130 THEN(*Sauvegarde modification données programme*)
PROG_EN_COURS.ETAPES := PROG_TAMPON_ETAPES;
PROG_EN_COURS.COMPLEMENT := PROG_TAMPON_COMP;(*Sauvegarde modification Date de départ*)
DD_MOIS_JOUR_DEBUT := (GES_PROCEDE.DD_mois * 100) + GES_PROCEDE.DD_jour;
DD_HEURE_MINUTE_DEBUT := (GES_PROCEDE.DD_heure * 100) + GES_PROCEDE.DD_minute;(*Validation sauvegarde effectué*)
GES_PROCEDE.SP_Rep_modif_prog_en_cours_api := 1;DES_PROG_EN_COURS.NOM_ETAPE := 'Sauvegarde donnees modification';
DES_PROG_EN_COURS.NOM_ETAPE := 'Donnees sauvegardees';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 1140;
END_IF;
END_IF;(*étape 1140 : Attente retour Lina réponse modif prog en cours *)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 1140 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Attente retour Lina reponse modif prog en cours';
DES_PROG_EN_COURS.NOM_ETAPE := 'Reponse Lina ok';IF GES_PROCEDE.SP_Rep_modif_prog_en_cours_api = 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 1150;
END_IF;
END_IF;(*Etape 1150 : Attente demande vidage tampon*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 1150 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Attente demande vidage tampon';
DES_PROG_EN_COURS.NOM_ETAPE := 'Demande vidage ok';IF GES_PROCEDE.SP_Dmd_vidage_tampon = 1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 1160;
END_IF;
END_IF;(*étape 1160 : Raz du DB recette tampon par automate*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 1160 THENPROG_TAMPON_ETAPES := PROG_VIDE_ETAPES;
PROG_TAMPON_COMP := PROG_VIDE_COMP;DES_PROG_EN_COURS.NOM_ETAPE := 'Raz tableau tampon';
DES_PROG_EN_COURS.NOM_ETAPE := 'Tableau vide';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 1170;
END_IF;
END_IF;(*Etape 1170 : Réponse vidage tampon OK*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 1170 THENGES_PROCEDE.SP_Rep_vidage_tampon_api := 1;
DES_PROG_EN_COURS.NOM_ETAPE := 'Reponse tableau vide';
DES_PROG_EN_COURS.NOM_ETAPE := 'Reponse emise';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 1180;
END_IF;
END_IF;(*Etape 1180 : Attente échange Lina raz*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 1180 THENDES_PROG_EN_COURS.NOM_ETAPE := ' Attente donnees echange Lina raz';
DES_PROG_EN_COURS.NOM_ETAPE := 'Donnees echange Lina reinitialisees';IF GES_PROCEDE.SP_Rep_vidage_tampon_api = 0 AND GES_PROCEDE.SP_Dmd_vidage_tampon = 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 2000;
END_IF;
END_IF;(* -------------------------------- LANCEMENT PROCESS ------------------------------------------- *)
(*DEMANDE DE SYNCHRO CI*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 2000 AND SEQ_PROCESS_CI.NUM_ETAPE = 25 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 2005;
END_IF;
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 2005 AND SEQ_PROCESS_CI.NUM_ETAPE <> 25 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 2010;
END_IF;(*Demande annulation durant la Demande de synchro*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 2010 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Attente demande synchro fin condition initiales';
DES_PROG_EN_COURS.NOM_ETAPE := 'CI ok ou dmd annulation programme';IF GES_PROCEDE.LAP_Dmd_annulation = 1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 3000;
END_IF;
END_IF;(*ATTENTE RETOUR DE SYNCHRO CI*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 2010 AND SEQ_PROCESS_CI.NUM_ETAPE = 31010 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 2015;
END_IF;
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 2015 AND SEQ_PROCESS_CI.NUM_ETAPE <> 31010 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 2020;
END_IF;(*Etape 2020 : Attente de lancement process*)
(*DEMANDE DE SYNCHRO DEMARRAGE*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 2020 AND SEQ_PROCESS_EVT01.NUM_ETAPE = 25 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 2025;
END_IF;
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 2025 AND SEQ_PROCESS_EVT01.NUM_ETAPE <> 25 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 2030;
END_IF;(*etape 2030 : Gestion état programme en cours*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 2030 THEN(*gestion d'état équipement*)
GES_PROCEDE.E_Etat_equipement := 1;(*gestion d'état de phase*)
IF GES_PROCEDE.E_Etape_en_cours = 0 THEN
GES_PROCEDE.E_Etape_en_cours := GES_PROCEDE.LAP_Num_etape_demarrage;
GES_PROCEDE.LAP_Num_etape_demarrage := 0;
END_IF;(*Autorisation remontée de données*)
GES_PROCEDE.RV_Remonte_valeur_top_courbe := 1;(*RAZ du stockage des données liées au départ différé*)
DD_MOIS_JOUR_DEBUT := 0;
DD_HEURE_MINUTE_DEBUT := 0;DES_PROG_EN_COURS.NOM_ETAPE := 'Gestion etat programme en cours';
DES_PROG_EN_COURS.NOM_ETAPE := 'Etape en cours';IF GES_PROCEDE.E_Etape_en_cours <> 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 2040;
END_IF;
END_IF;(*etape 2040 : Attente notif Lina ou fin de programme*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 2040 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Attente notif Lina ou fin de programme ';
DES_PROG_EN_COURS.NOM_ETAPE := 'Notif Lina ou fin de programme';(*Lecture continue de la phase du process en cours*)
IF SEQ_PROCESS_EVT01.INT01 <> 0 THEN
GES_PROCEDE.E_Etape_en_cours := SEQ_PROCESS_EVT01.INT01;
END_IF;(*Demande saut d'étape*)
IF GES_PROCEDE.SE_Etape_ou_aller <> 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 2050;
END_IF;(*Demande de reprise*)
IF GES_PROCEDE.LAP_Num_etape_demarrage <> 0 AND GES_PROCEDE.SP_Dmd_reprise = 1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 2050;
END_IF;(*Demande annulation*)
IF GES_PROCEDE.LAP_Dmd_annulation = 1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 3000;
END_IF;(*Demande modif prog en cours*)
IF GES_PROCEDE.SP_Dmd_modif_prog_en_cours = 1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 6000;
END_IF;(*fin du programme*)
IF PROG_EN_COURS.ETAPES[GES_PROCEDE.E_Etape_en_cours].CODE_ETAPE = 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 30000;
END_IF;
END_IF;(*DEMANDE DE SYNCHRO ARRET*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 2050 AND SEQ_PROCESS_EVT01.NUM_ETAPE = 5 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 2055;
END_IF;
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 2055 AND SEQ_PROCESS_EVT01.NUM_ETAPE <> 5 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 2060;
END_IF;(*etape 2060 : Analyse demande traitement Lina*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 2060 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Analyse demande traitement Lina';
DES_PROG_EN_COURS.NOM_ETAPE := 'Demande de saut d etape ou reprise';(*Demande saut d'étape*)
IF GES_PROCEDE.SE_Etape_ou_aller <> 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 4000;
END_IF;(*Demande de reprise*)
IF GES_PROCEDE.LAP_Num_etape_demarrage <> 0 AND GES_PROCEDE.SP_Dmd_reprise = 1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 5000;
END_IF;
END_IF;(* -------------------------------- GESTION ANNULATION ------------------------------------------- *)
(*DEMANDE DE SYNCHRO ARRET*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 3000 AND SEQ_PROCESS_EVT01.NUM_ETAPE = 15 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 3005;
END_IF;
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 3005 AND SEQ_PROCESS_EVT01.NUM_ETAPE <> 15 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 3010;
END_IF;(*etape 3010 : Attente confimation annulation *)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 3010 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Attente confimation annulation';
DES_PROG_EN_COURS.NOM_ETAPE := '1';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 3020;
END_IF;
END_IF;(*etape 3020 : RAZ des données d'échanges avec Lina*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 3020 THENGES_PROCEDE.LAP_Dmd_annulation := 0;
GES_PROCEDE.LAP_Confirmation_demande := 0;DES_PROG_EN_COURS.NOM_ETAPE := 'Demande annulation traitee';
DES_PROG_EN_COURS.NOM_ETAPE := 'Demande annulation traitee';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 30000;
END_IF;
END_IF;(* -------------------------------- GESTION REPRISE ------------------------------------------- *)
(*étape 4000 : Affectation étape destination*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 4000 THENGES_PROCEDE.E_Etape_en_cours := GES_PROCEDE.SE_Etape_ou_aller;
DES_PROG_EN_COURS.NOM_ETAPE := 'Recuperation de l etape ou aller ';
DES_PROG_EN_COURS.NOM_ETAPE := 'Demande annulation traitee';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 4010;
END_IF;
END_IF;(*étape 4010 : Attente confirmation Lina*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 4010 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Attente confirmation Lina';
DES_PROG_EN_COURS.NOM_ETAPE := 'Confirmation Lina saut d etape';IF GES_PROCEDE.SE_Confirmation_Saut_Etape = 1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 4020;
END_IF;
END_IF;(*étape 4020 : RAZ des données d'échanges Lina*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 4020 THENGES_PROCEDE.SE_Etape_ou_aller := 0;
GES_PROCEDE.SE_Confirmation_Saut_Etape := 0;DES_PROG_EN_COURS.NOM_ETAPE := 'RAZ des donnees d echanges Lina';
DES_PROG_EN_COURS.NOM_ETAPE := '1';IF GES_PROCEDE.SE_Etape_ou_aller = 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 2020;
END_IF;
END_IF;(* -------------------------------- GESTION REPRISE ------------------------------------------- *)
(*étape 5000 : RAZ des remontées de données*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 5000 THENPROG_REMONT_ETAPES := PROG_VIDE_ETAPES;
PROG_REMONT_COMP := PROG_VIDE_COMP;GES_PROCEDE.E_Etape_en_cours := GES_PROCEDE.LAP_Num_etape_demarrage;
DES_PROG_EN_COURS.NOM_ETAPE := 'RAZ des remontees de donnees';
DES_PROG_EN_COURS.NOM_ETAPE := '1';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 5010;
END_IF;
END_IF;(*étape 5010 : Réponse de reprise api*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 5010 THENGES_PROCEDE.SP_Rep_reprise_api := 1;
DES_PROG_EN_COURS.NOM_ETAPE := 'Reponse de reprise api';
DES_PROG_EN_COURS.NOM_ETAPE := '1';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 5020;
END_IF;
END_IF;(*étape 5020 : RAZ du num étape démarrage*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 5020 THENGES_PROCEDE.LAP_Num_etape_demarrage := 0;
DES_PROG_EN_COURS.NOM_ETAPE := 'Raz du nom etape demarrage';
DES_PROG_EN_COURS.NOM_ETAPE := '1';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 5030;
END_IF;
END_IF;(*Etape 5030 : Attente demande vidage tampon*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 5030 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Attente demande vidage tampon';
DES_PROG_EN_COURS.NOM_ETAPE := 'Demande de vidage ok';IF GES_PROCEDE.SP_Dmd_vidage_tampon = 1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 5040;
END_IF;
END_IF;(*étape 5040 : Raz du DB recette tampon par automate*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 5040 THENPROG_TAMPON_ETAPES := PROG_VIDE_ETAPES;
PROG_TAMPON_COMP := PROG_VIDE_COMP;DES_PROG_EN_COURS.NOM_ETAPE := 'Raz du DB recette tampon par automate';
DES_PROG_EN_COURS.NOM_ETAPE := '1';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 5050;
END_IF;
END_IF;(*Etape 5050 : Réponse vidage tampon OK*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 5050 THENGES_PROCEDE.SP_Rep_vidage_tampon_api := 1;
DES_PROG_EN_COURS.NOM_ETAPE := 'Reponse vidage tampon OK';
DES_PROG_EN_COURS.NOM_ETAPE := '1';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 5060;
END_IF;
END_IF;(*Etape 5060 : Attente échange Lina raz*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 5060 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Attente echange Lina raz';
DES_PROG_EN_COURS.NOM_ETAPE := 'Donnees echanges raz';IF GES_PROCEDE.SP_Rep_vidage_tampon_api = 0 AND GES_PROCEDE.SP_Dmd_vidage_tampon = 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 2020;
END_IF;
END_IF;(* -------------------------------- GESTION MODIF ------------------------------------------- *)
(*étape 6000 : Recopie du tampon dans la recette en cours*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 6000 THENPROG_EN_COURS.ETAPES := PROG_TAMPON_ETAPES;
PROG_EN_COURS.COMPLEMENT := PROG_TAMPON_COMP;(*Validation sauvegarde effectué*)
GES_PROCEDE.SP_Rep_modif_prog_en_cours_api := 1;DES_PROG_EN_COURS.NOM_ETAPE := 'Recopie du tampon dans la recette en cours';
DES_PROG_EN_COURS.NOM_ETAPE := '1';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 6010;
END_IF;
END_IF;(*étape 6010 : Attente RAZ modif en prog en cours*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 6010 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Attente RAZ modif en prog en cours';
DES_PROG_EN_COURS.NOM_ETAPE := 'Donnee modif prog en cours raz';IF GES_PROCEDE.SP_Rep_modif_prog_en_cours_api = 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 6020;
END_IF;
END_IF;(*Etape 6020 : Attente demande vidage tampon*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 6020 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Attente demande vidage tampon';
DES_PROG_EN_COURS.NOM_ETAPE := 'Demande de vidage Lina';IF GES_PROCEDE.SP_Dmd_vidage_tampon = 1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 6030;
END_IF;
END_IF;(*étape 6030 : Raz du DB recette tampon par automate*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 6030 THENPROG_TAMPON_ETAPES := PROG_VIDE_ETAPES;
PROG_TAMPON_COMP := PROG_VIDE_COMP;DES_PROG_EN_COURS.NOM_ETAPE := 'Raz du DB recette tampon par automate';
DES_PROG_EN_COURS.NOM_ETAPE := '1';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 6040;
END_IF;
END_IF;(*Etape 6040 : Réponse vidage tampon OK*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 6040 THENGES_PROCEDE.SP_Rep_vidage_tampon_api := 1;
DES_PROG_EN_COURS.NOM_ETAPE := 'Reponse vidage tampon OK';
DES_PROG_EN_COURS.NOM_ETAPE := '1';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 6050;
END_IF;
END_IF;(*Etape 6050 : Attente échange Lina raz*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 6050 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Attente echange Lina raz';
DES_PROG_EN_COURS.NOM_ETAPE := 'Donnees echange Lina raz';IF GES_PROCEDE.SP_Rep_vidage_tampon_api = 0 AND GES_PROCEDE.SP_Dmd_vidage_tampon = 0 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 2030;
END_IF;
END_IF;(* -------------------------------- FIN PROGRAMME ------------------------------------------- *)
(*étape 30000 : Fin de programme*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 30000 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Fin de programme';
DES_PROG_EN_COURS.NOM_ETAPE := '1';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 30010;
END_IF;
END_IF;(* ATTENTE DEMANDE DE SYNCHRO FIN PROGRAMME*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 30010 AND SEQ_PROCESS_EVT01.NUM_ETAPE = 31010 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 30015;
END_IF;
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 30015 AND SEQ_PROCESS_EVT01.NUM_ETAPE <> 31010 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 30020;
END_IF;(*DEMANDE DE SYNCHRO REINITIALISATION*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 30020 AND SEQ_PROCESS_ARRET.NUM_ETAPE = 25 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 30025;
END_IF;
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 30025 AND SEQ_PROCESS_ARRET.NUM_ETAPE <> 25 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 30030;
END_IF;(* ATTENTE DEMANDE DE SYNCHRO REINITIALISATION OK*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 30030 AND SEQ_PROCESS_ARRET.NUM_ETAPE = 31010 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 30035;
END_IF;
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 30035 AND SEQ_PROCESS_ARRET.NUM_ETAPE <> 31010 THEN
SEQ_PROG_EN_COURS.NUM_ETAPE := 30040;
END_IF;(*étape 30040 : Demande fin de programme*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 30040 THENGES_PROCEDE.RV_Remonte_valeur_top_courbe := 0;
GES_PROCEDE.RV_Remonte_valeur_arret_prog := 1;DES_PROG_EN_COURS.NOM_ETAPE := 'Demande fin de programme';
DES_PROG_EN_COURS.NOM_ETAPE := 'Arret demande';IF Tjrs_1 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 30050;
END_IF;
END_IF;(*étape 30050 : Attente fin de programme Lina*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 30050 THENDES_PROG_EN_COURS.NOM_ETAPE := 'Attente fin de programme Lina';
DES_PROG_EN_COURS.NOM_ETAPE := 'Lina fin de programme';IF GES_PROCEDE.RV_Remonte_valeur_arret_prog = 0 OR SEQ_PROG_EN_COURS.T_1S > 10 (*attente modif SEB*) THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 30060;
END_IF;
END_IF;(*étape 30060 : Vidange recette en cours*)
IF SEQ_PROG_EN_COURS.NUM_ETAPE = 30060 THENPROG_REMONT_ETAPES := PROG_VIDE_ETAPES;
PROG_REMONT_COMP := PROG_VIDE_COMP;(*SOLUTION GEMMA A METTRE APRES STABILITE PROG*)
SEQ_PROG_EN_COURS.CMD02.00 := 1;DES_PROG_EN_COURS.NOM_ETAPE := 'Vidange recette en cours';
DES_PROG_EN_COURS.NOM_ETAPE := '1';IF SEQ_PROG_EN_COURS.T_100MS > 10 THEN
SEQ_PROG_EN_COURS.T_100MS := 0;
SEQ_PROG_EN_COURS.T_1S := 0;
SEQ_PROG_EN_COURS.NUM_ETAPE := 10;
END_IF;
END_IF;
Tutoriel - Lina Procédé - 05/2024