Input zone

The zone input enables the processing of incoming information, for example from sensors. If a sequence-check is set for a zone input in a step, a state change of this zone input is expected in that step. An interlock check of an input zone ensures that the expected state of this zone input is maintained in that step. In practice, for example, a switch can be monitored by a zone input. In the event of a switching operation, the switch signal must be linked to the zone input and a sequence-check must be set in the corresponding step.

Copy

   // --------------------------- ZONE 7 | Zone 7 ---------------------------

      // Zone Cross Interlock Assigns
      aCrossZone7[0] := GVL_<Sequence_name>_HMI.xManBtn_Zone_11;
      aCrossZone7[1] := GVL_<Sequence_name>_HMI.xManBtn_Zone_12;

      // Zone Condition Assigns
      aCondZone7[0] := TRUE;
      aPaircheckZone7[0] := FALSE;

      fbZone7.P_iIndexOfLamp := 23;
      fbZone7.P_iIndexOfPaircheckLamp := 24;
      fbZone7.P_xInputPolarity := eInputPolarity.Active_High;
      
      fbZone7( // Zone 7
         xNoPBPressed := GVL_<Sequence_name>.stSeqIf.xSeqNoPBpressed, 
         xAutomaticRelease := GVL_<Sequence_name>.stSeqIf.xSeqAutomaticReleased, 
         iActualStepCounter := GVL_<Sequence_name>.iStepCounter, 
         aZone := aZ7, 
         aLampMatrix := aMatrix, 
         aTempMatrix := aTemp,
         aMonMatrix := GVL_<Sequence_name>_HMI.aHmiMon,
         aMonBuffer := GVL_<Sequence_name>_HMI.aHmiMonBuffer, 
         aStepMatrix := aStep);
      
      fbZone7.M_Input(
         xFeedbackInput := GVL_<Sequence_name>_IOs.i_xZone7, 
         timFeedbackInput := T#0MS,  
         xManualRelease := GVL_<Sequence_name>.stSeqIf.xSeqManualReleased, 
         aCross := aCrossZone7, 
         aFeedbackPairCheckInput := aPaircheckZone7); 

   // --------------------------- ZONE 8 | Zone 7 Inv ---------------------------

      // Zone Cross Interlock Assigns
      aCrossZone8[0] := GVL_<Sequence_name>_HMI.xManBtn_Zone_9;
      aCrossZone8[1] := GVL_<Sequence_name>_HMI.xManBtn_Zone_10;

      // Zone Condition Assigns
      aCondZone8[0] := TRUE;
      aPaircheckZone8[0] := FALSE;

      fbZone8.P_iIndexOfLamp := 25;
      fbZone8.P_iIndexOfPaircheckLamp := 26;
      fbZone8.P_xInputPolarity := eInputPolarity.Active_Low;
      
      fbZone8( // Zone 7 Inv
         xNoPBPressed := GVL_<Sequence_name>.stSeqIf.xSeqNoPBpressed, 
         xAutomaticRelease := GVL_<Sequence_name>.stSeqIf.xSeqAutomaticReleased, 
         iActualStepCounter := GVL_<Sequence_name>.iStepCounter, 
         aZone := aZ8, 
         aLampMatrix := aMatrix, 
         aTempMatrix := aTemp,
         aMonMatrix := GVL_<Sequence_name>_HMI.aHmiMon,
         aMonBuffer := GVL_<Sequence_name>_HMI.aHmiMonBuffer, 
         aStepMatrix := aStep);
      
      fbZone8.M_Input(
         xFeedbackInput := GVL_<Sequence_name>_IOs.i_xZone7, 
         timFeedbackInput := T#0MS,  
         xManualRelease := GVL_<Sequence_name>.stSeqIf.xSeqManualReleased, 
         aCross := aCrossZone8, 
         aFeedbackPairCheckInput := aPaircheckZone8); 

Last updated

Was this helpful?