question

Julian Valdes avatar image
2 Likes"
Julian Valdes asked Herwina Richelle Andres commented

CNC Machine and Tool Changes

Using the concepts from this question, I'm still not clear how FlexSim would manage something like CNC machines tool changes:

One CNC has up to 12 cutting tools, each tool has a specific tool life and tool change time (setup time):

Example :

Processor stops every:

150 (for 3 min)

450 (for 5 min)

1000 (for 12 min)

1750 (for 4 min) processed parts.

Etc.....

FlexSim 16.0.1
process flowmtbf mttrbreakdownscheduled down
· 2
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Matthew Gillespie avatar image Matthew Gillespie ♦♦ commented ·

So after 450 parts the processor stops for both 3 minutes and 5 minutes with the delays overlapping?

0 Likes 0 ·
Julian Valdes avatar image Julian Valdes Matthew Gillespie ♦♦ commented ·

When the tool life counters overlap; the downtime will add up:

3min + 5 min= 8 min total downtime.

Thanks !!

0 Likes 0 ·
Jeff Nordgren avatar image
2 Likes"
Jeff Nordgren answered Jeff Nordgren commented

In this model I modified the Process Flow of the model from this answer to do the four breakdowns as you requested. Because you didn't state differently, if there is a break for the 150th item, which also happens to be the 450th item, it will do both breaks. The same goes for all the breaks. In other words, it will do all the breaks based on the number of processed flowitems by the processor, if that includes all the breaks, then all of them will be done. I've attached is what the Process Flow looks like.

If you have any questions or problems, please ask.


· 2
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Julian Valdes avatar image Julian Valdes commented ·

When the tool life counters overlap; the downtime will add up:

3min + 5 min= 8 min total downtime.

Thanks !!

0 Likes 0 ·
Jeff Nordgren avatar image Jeff Nordgren Julian Valdes commented ·

In that case all you'd have to do is add something so that only one token can enter the delay at a time. You could use either a resource or zone to do that. I updated this model to use a zone to limit the down time to one tool at a time.

0 Likes 0 ·
Joerg Vogel avatar image
2 Likes"
Joerg Vogel answered Herwina Richelle Andres commented

I think the classic approach fits, too. The starting point is the answer of @Brenton King in this answer. In the source code editor get rid of the picklist description tags by pressing the icon, bottom left showing all together a hand, text picture and a red mark. Then you find in the if-condition the variable "cnt". That is the n-th item you want set a different setup time for. You can replace the variable with the number. The return value is the setup time for this item.

you can copy the two code lines of the if-statement and the return for each different n-th item you want to set a different setup time. In following code I have commented those lines and write "simple :" before the return. Uncomment them if you like the simple approach. Delete the next line starting with the variable setuptime then, too.

The unchanged code itself combines the different setup time values, if more than one condition becomes true. The last condition tests if the initial setup time variable value is changed. Then this value is returned as the setup time. Otherwise the setup time return value is zero. The command minutes(num value) returns the value in simulation time units - typically in seconds.

double setuptime = 0;

//int cnt = 300;
if (fmod(getinput(current),150) == 0)

	// simple: return minutes(3);

	setuptime += minutes(3);

if (fmod(getinput(current),450) == 0)

	// simple: return minutes(5);

	setuptime += minutes(5);

if (fmod(getinput(current),1000) == 0)

	// simple: return minutes(12);

	setuptime += minutes(12);

if (fmod(getinput(current),1750) == 0)

	// simple: return minutes(4);

	setuptime += minutes(4);

if(setuptime)

	return setuptime;
 
else return 0;
· 1
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Herwina Richelle Andres avatar image Herwina Richelle Andres commented ·

lot-flow-1-plane-customstate-2-itemtype2.fsm

Hi @Jörg Vogel !

I have tried your suggestion on the variable set-up time and units between assist values. It did work. However, when I tried assigning the custom state "IAA" for those events, the first event of requiring 2 units before requiring set-up did not happen anymore as you would notice on the state_setup on Plane17/InPROCESS. Can you help me on this?

Thank you!

0 Likes 0 ·

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.