Télécharger Imprimer la page

Siemens SIMATIC S7-1500 Mode D'emploi page 104

Masquer les pouces Voir aussi pour SIMATIC S7-1500:

Publicité

Programmation (S7-1500, S7-1500T)
7.2 Bloc de données technologique (S7-1500, S7-1500T)
Modifier plusieurs variables avec l'instruction "WRIT_DBL"
La variable "<TO>.StatusWord.X3 (OnlineStartValuesChanged)" indique que la valeur d'une
variable a été modifiée.
Si vous modifiez plusieurs variables avec "WRIT_DBL", vous ne pouvez pas déterminer via
"<TO>.StatusWord.X3 (OnlineStartValuesChanged)" quelles variables ont déjà été écrites.
Afin de détecter les changements de valeur pertinents de plusieurs variables, implémentez
votre programme utilisateur avec "WRIT_DBL" de manière similaire à l'exemple de
programmation suivant dans un graphe séquentiel :
Exemple de programmation SCL
//*******
#FB_STATE_LIMITS_MAX_JERK: //write limits max jerk
#tempRetVal := WRIT_DBL (REQ := TRUE,
SRCBLK := #statDynamicLimits.MaxJerk,
BUSY => #statBusyWriting,
DSTBLK => #axis.DynamicLimits.MaxJerk);
IF #statBusyWriting THEN
; //wait until writing completed
ELSIF #tempRetVal = 16#0 AND NOT #statBusyWriting
THEN //done without error
//go to next state:
//restart technology object, if all data are
//written to load memory
//Alternatively: Write more variables in
//the next state via WRIT_DBL and
//execute restart later
#statFBState := #FB_STATE_RESTART_TO;
ELSE //error Write DBL
//go to error state
#statStatus := INT_TO_WORD (#tempRetVal);
END_IF;
//*******
#FB_STATE_RESTART_TO: //Restart TO
#instFBReset (Axis := #axis,
Execute := TRUE,
Restart := TRUE);
104
S7-1500/S7-1500T Vue d'ensemble Motion Control V8.0 à partir de STEP 7 V19
Manuel de diagnostic, 11/2023, A5E03879257-AJ

Publicité

loading

Ce manuel est également adapté pour:

Simatic s7-1500t