Re: [foxboro] Function block execution order

  • From: "Barry Heap" <barry.heap@xxxxxxxxxxxxxxxxxxxx>
  • To: foxboro@xxxxxxxxxxxxx
  • Date: Fri, 06 Sep 2013 18:17:47 -0700 (PDT)

Hi Quay,
    
      


    I can't help with the strategy/block order oddity - that is an IEE issue.

    
      


    As for the Zone and Phase - they are not really related and you need to 
understand what they do.

    
      


    Phasing is, as you imply correctly, to enable you to load balance your CP 
loading. And has always been a pain to get right.

    
      


    Many moons ago, FoxCAE introduced the ability to load balance the phase of 
blocks based on the LOOPID to group blocks and ensure that extra latency was 
not unintentionally introduced. It did a pretty reasonable job, and though I 
never trusted it completely to update all my block processing, I use it 
occasionally to balance the loading in a copy of the CP database ... And then 
manually update the blocks if I wanted to.

    
      


    Why this is not built into the current IEE? Dunno.

    
      


    As for the CONT1 and CONT2 Zones?

    
      


    They are there to give you a more deterministic processing of the blocks in 
the CP.

    
      


    You will have noticed that the zones are arranged as CONT1, SEQ, CONT2.

    
      


    Blocks put into CONT2 Zone are processed AFTER the Sequence blocks.... So 
you can ensure some blocks only get processed after a sequence has run ... 
Maybe outputs or CALCS that need to run after a couple of sequences have run.

    
      


    I have rarely needed to use this capability, but it is useful to know about.

    
      


    Regards,

    
      


    Barry 

    —
Sent from Mailbox for iPad

On Sat, Sep 7, 2013 at 10:41 AM, Quay B. Finefrock <qbfinefrock@xxxxxxxxx>
wrote:

> Good day all,
> I am trying to figure out exactly how function block execution order is set.
> This has to be deterministic but what I see in the database defies logic in
> some cases. 
> From what I can gather, the following configuration items are used to
> determine the function block execution order within a compound: 
> 1. Strategy Order in the Compound
> 2. Function Block Order in the Strategy
> 3. Function Block Zone
> 4. Function Block Period
> 5. Function Block Phase
> Am I missing anything from the list (I certainly hope not - that is enough
> already).
> Here are a couple of actual examples from the database that have me
> scratching my head.
> Example 1
> Strategy 1 contains a single function block FB1 with ZONE=CONT1, PERIOD=3,
> PHASE=2.
> Strategy 2 contains a single function block FB2 with ZONE=CONT1, PERIOD=3,
> PHASE=2.
> The order of Strategies within the Compound is Strategy 1, Strategy 2.
> The order of execution shown for the Function Blocks within the Compound is
> FB2, FB1 instead of FB1, FB2 as I would expect.  What am I missing?
> Example 2
> Strategy 1 contains FB1 with ZONE=CONT1, PERIOD=3, PHASE=0.
> Strategy 2 contains FB2 with ZONE=CONT1, PERIOD=3, PHASE=3.
> The order of Strategies within the Compound is Strategy 1, Strategy 2.
> The order of execution shown for the Function Blocks within the Compound is
> FB2, FB1.  Why?
> What is the intended use of ZONE CONT2?  What are the
> advantages/disadvantages of configuring some of the control blocks in that
> zone versus configuring all of them in CONT1?
> I think that Invensys would take a huge step toward modernizing their DCS if
> they would invest some development $$$ in a good realtime developer and do
> automatic load leveling in the CP.  They could get rid of Function Block
> ZONE and PHASE, let the user specify a PERIOD for the Strategy and the order
> of Function Blocks within the Strategy.  That should be enough.
> Hopefully someone can explain to me how all of the configuration parameters
> are used to determine the function block execution order in the compound.
> Regards,
> Quay
> Quay B. Finefrock
> Singapore Phone: +65 9 327 2923
> Brunei Phone: +673 883 1480
> Philippines Phone: +63 921 400 2886
> Malaysia Phone: +60 17 820 6900
> Email: qbfinefrock@xxxxxxxxx
>  
>  
> _______________________________________________________________________
> This mailing list is neither sponsored nor endorsed by Invensys Process
> Systems (formerly The Foxboro Company). Use the info you obtain here at
> your own risks. Read http://www.thecassandraproject.org/disclaimer.html
>  
> foxboro mailing list:             //www.freelists.org/list/foxboro
> to subscribe:         mailto:foxboro-request@xxxxxxxxxxxxx?subject=join
> to unsubscribe:      mailto:foxboro-request@xxxxxxxxxxxxx?subject=leave
>  
 
 
_______________________________________________________________________
This mailing list is neither sponsored nor endorsed by Invensys Process
Systems (formerly The Foxboro Company). Use the info you obtain here at
your own risks. Read http://www.thecassandraproject.org/disclaimer.html
 
foxboro mailing list:             //www.freelists.org/list/foxboro
to subscribe:         mailto:foxboro-request@xxxxxxxxxxxxx?subject=join
to unsubscribe:      mailto:foxboro-request@xxxxxxxxxxxxx?subject=leave
 

Other related posts:

  • » Re: [foxboro] Function block execution order - Barry Heap