How to create more options for BufferMode in a Buffer process statement

Hi everyone,

Is it possible to more options for BufferMode of a Buffer process statement:

I want to add more options such as SPT (shortest processing time), LPT (longest processing time), and OLDP (longest time in the system) in addition to FIFO and LIFO. My aim is to perform some simulation experiment where Sequencing rule is a parameter.

2

The first 2 sequencing rules are already in VC i am looking for how to implement the last 3 sequencing rules.

Thanks in advance.

Regards.

It is not possible to change the behavior of the built-in statements, only to reimplement something similar from scratch using Python API.

Some of the “buffer” eCat components have such custom Python-based buffer statements, which you could modify to fit your needs.

Thanks for your response @TSy

I will checkout the buffer in eCat components.

Regards.

@TSy, Thank you very much for your comment. I have modified the FloorSpaceBuffer of the e-catalogue to fit my need for the sequencing rule. Now, I can add any sequencing rule I can think of using the FeedPriorityProperty.

I have practiced with the example below for the sake of simplicity.

I want to go a step further by implementing dispatching rules when routing products from Pre_Buffer to Buffer_A and Buffer_B.

The controller, at default, automatically completely fills up Buffer_A before proceeding to fill Buffer_B.

This type of behaviour is not desirable for the production system I am trying to design because I want the optimal distribution of products between Buffer_A and Buffer to ensure optimal machine utilization.

I want to solve this problem by implementing dispatching rules. My first idea is to dispatch products to the buffer with the minimum number of products in the queue (MINQ). I have implemented a function in the Pre_Buffer that can count the number of products in the Pre_Buffer, Buffer_A and Buffer_B.

I have printed the number of products every time a product enters the Pre_Buffer as shown below:

My idea is to use this function to control how the products would be dispatched to the buffer with the minimum queue (i.e., the number of products). But I don’t know how to go further with this.

I understand that ProductFeedMode controls how a product exits a particular Buffer. However, I have been able to apply this only to sequencing rules such as FIFO, LIFO, etc.

I don’t know if this can also be used to implement a dispatching rule. I would appreciate any advice you can give to solve this problem.

@Tilma
@Lefa
@idkfa
and every other forum member, I would appreciate any advice on how to solve this problem.

Here is the model of the default buffer behaviour and the idea I want to implement.

DISPATCHING RULES.vcmx (198.3 KB)

@TSy

Please can you give any recommendations?

Best regards.