FC-161 Sequence Generator for Infi 90
Hi Ingo , thanks for your response , I have another additional questions to clarify :an example ,
if we have step 1 , step 4 and step 5 all of them step timer 15 secs and we have just one trigger transition from 0 to 1 ,
the sequence would do as follow:
do step 1 ( 15 secs and output 1 according to the mask ) then
( step 2,3 nothing because the step timer is 0 secs) then
execute step 4 ( 15 secs and output1 according to the mask ) then
step 5 ( 15 secs output1 according to the mask ) then
step 6, 7 ,8 nothing because step timer is 0 secs , and finish the sequence ,
and it would wait another trigger condition to do again , Is that correct?
Thanks for your support
When the sequencer gets to step 8, we typically have logic outside the sequencer block to jump the block back to step 1.
Related note: I don't know what kind of processors you're using, but if you have MFPs rev F firmware or older, an online configuration will reset the current step timer back to the beginning.
I think the answer to your question about how the sequence works lies in your comment “just some logic connected to trigger pin , jump pin , jump step number pin“. On its own, the FC161 is a fairly straightforward block and the real “smarts” lie in how the external logic interfaces with the block. To clarify a couple of things…
Following on from Ingo and pmac, the step timer being disabled (set to 0) means that the step transition is only event based (step or jump trigger) and the sequencer is waiting for external trigger to move the sequence on from that step. The only way for steps 2, 3 and 6, 7 and 8 can transition is from external step triggers. Note that a jump trigger and a calculated jump step# could be skipping these steps by jumping from 1 to 4 to 5 and then to 0 but the jump would have to occur before the step timer expired.
The sequence does not finish automatically. The sequence does not move past the last step of sequencer or sequencer chain (step 8 in this case) on it’s own. External logic must be used to reset the sequence to step 0 (Disable Mask) or a jump trigger to step x (step x mask). Any other attempt to move past the end of the sequencer results in a disable mask output.
Note that a sequence does not have to go to that last available sequencer step. It would be ok in this case if step 5 was the last step that did something, to go to step 6 and end the sequence with a jump or reset.
Your sequence works as follows
Step 0 – Jump or Step trigger and output the Disable Mask
Step 1 – Jump or Step trigger or 15 seconds and output the Step 1 Mask
Step 2 – Jump or Step trigger and output the Step 2 Mask
Step 3 – Jump or Step trigger and output the Step 3 Mask
Step 4 – Jump or Step trigger or 15 seconds and output the Step 4 mask
Step 5 – Jump or Step trigger or 15 seconds and output the Step 5 Mask
Step 6 – Jump or Step trigger and output the Step 6 Mask
Step 7 – Jump or Step trigger and output the Step 7 Mask
Step 8 – Jump or Step trigger and output the Step 8 Mask
Step>8 – n/a and output the Disable Mask
As pmac indicated it is probably good practice to have explicit logic to do things like end the sequence. I.E. If Step = 6 then wait 2 seconds and jump to step 1, or If step = 6 then reset sequence to step 0. Note that step 0 is a reserved step for other batch function codes (E-Stop state) and one practice is to use step 1 as an idle step (waiting for sequence start) and keep step 0 for when things go wrong or a safe state is required.