Reset unit binding in recipe after unit procedure is completed

Hi Guys,

Background information:

When starting a recipe in the BOI there are 3 ways to bind the unit to the recipe.

     1) FIXED

               When configure the recipe in the recipe studio, you can assign an unit fixed to the unit procedure in the recipe

     2) DEFER

               Here you're using a unit alias where you select defer for the unit selection. The operator gets prompted which unit the unit procedure should bind.

     3) FROM POLICY

               Here you're also using unit aliassing. The unit is selected by the condition that's formed in the Unit Selection Policy.

Problem:

Once the unit is binded (by one of the methods above), the unit is fixed to the UP (or unit alias).

Expectations:

The operator creates a recipe, fills in a recipe parameter (Named set with all possible units of that unit class)

In the unit selection policy we check whether the recipe parameter equals the unit.

The unit procedure is started on the correct unit.

After the unit procedure is completed, we loop the recipe back up (to run the same first UP) but now with a different recipe parameter.

Here we would hope that the UP binds the new unit, from the policy (with different recipe parameter) but it doesn't.

The recipe parameter is changed but the UP choses the same unit that was chosen in the beginning.

Anyone has a solution for this?

Thanks in advance,

Michaël

  • Make sure that the Retain unit after completion unit procedure option on the last UP before looping back is not checked so that unit gets released and forces it to reacquire.

    Not sure how this would work but your policy would probably have to do all those checks on what loop and what recipe parameter to use.

    Never tried but my assumption is that the BEX won't reassign an alias if it already had one assigned and you would need to change the procedure to have multiple UPs with different aliases instead of looping and using the same UP and alias.
  • In reply to Matt Stoner:

    The retain unit option is indeed not checked.

    We've tried several options but it won't work.
    I assume that it is indeed not possible.

    Thanks!
  • Have a look at this option as well, although not sure if it has an impact during automatic execution, or only during Active Step Changes.

  • This cannot be done automatically. Once a unit instance is bound to the equipment train alias, automatically by police but also if it was manually selected in the equipment train instance, unit evaluation is not performed anymore. Changing an already allocated unit is only possible using ASC.

    The problem is the loop because it will reuse the same UP step multiple times. If the number of possible loops is defined, you can achieve similar result by addind the same UP subsequence in series in the procedure, as many times as maximum loop iterations. Each UP in the subsequence can be defined to use different ALIASES from the equipment train so the unit selection policy will be applied on eac UP subsequence.
    This also makes easier to control which is the last iteration to execute, based on some process criteria for example to execute next UP subsequence or transitioning out to the main procedure sequence.

    Side notes:
    1- The loop based approach will create some uncertainty for the procedure excution, undetermined number of iterations, and this is against the repeteability that is expected when executing recipes (repeteability = same recipe with same equipment and formula produces the same result). Specially from traceability and reporting (material consumption for example) this will increase complexity because batch execution output will not be predetermined.
    2- Choosing UNIT ALIAS names is not trivial. Sometimes including not only the type of equipment (alias names like REACTOR, DRYER, etc...) but also the purpose of the unit bound to that alias (FIRST_DRYING_DRYER, SECOND_DRYING_DRYER, THIRD_DRYING_DRYER, etc...) helps creating batches when selecting the unit instances for the batch but also when creating/modifying the procedure.
    Unit ALIAS names can be 40 chars long so it is possible to define super explicit names.