question

Eric D5 avatar image
0 Likes"
Eric D5 asked Eric D5 commented

Block of Assembly work performed by multiple operators at a single workstation

Hello, I am trying to simulate a large assembly taking up a single workstation with multiple operators working on it.

Process_Time split.fsm

Here is my general thought process for the attached model. Once the assembly item is queued up, it is sent to the workstation and a list of tasks (times) are pushed to a list to be worked on by various operators. The total amount of work here could be 20 hours of work, split into 15/30/60 minute chunks. The primary reason for this is the number of operators can change throughout the day on multiple shifts. (I don't want to simply set two operators on the station and say it takes 10 hours). Once all of the tasks are completed, the assembly can move to the next workstation and the workstation becomes available for more work.

Here are the issues I am encountering. Pushing to the list doesn't write multiple copies of the same value. I am not sure how to set my Wait for Event listener to activate when the Process Steps list is empty. Also not sure if this is more easily set up with a global table with task names and times that could be sent to the list with labels?
Thank you for your assistance.

FlexSim 19.1.2
listflexsim 19.1.2assembly
push-array.png (10.2 KiB)
5 |100000

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

1 Answer

Brenton King avatar image
1 Like"
Brenton King answered Eric D5 commented

@Eric D5

The reason your model approach isn't working is because of this option in the list:

However, I favor a different approach. I like to create a token for each of the jobs because it allows you to visually see the queue of jobs to be completed and do a query if necessary to choose the best job.

I'll attach the sample model but I am in the latest version of FlexSim and I see you are in version 2019 still so I'll do my best to explain.

1) Created a global table so that if I have multiple types of items I can pull all the process times out of the table. Your example didn't do this but thought it would be nice to show how you could. Each column is a type and each row is a job that needs completed on that item. Zeros are thrown away.

2) I use a subflow activity to split the item token into job tokens. These jobs sit on the list until the operators pull them off. Each token waits for the process to complete before going to the finish. As soon as all job tokens are completed, the item token will complete the subflow and wrap up.

3) Each job token gets its process time out of the table when it is created and stores that time on a label. This label is then read by the operator to get the process time for each step.

I hope this is helpful!

process-time-split_2.fsm


1591375638343.png (31.1 KiB)
1591375769749.png (388.5 KiB)
1591375839835.png (8.6 KiB)
1591375976664.png (76.2 KiB)
1591376185108.png (25.4 KiB)
· 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.

Eric D5 avatar image Eric D5 commented ·

Thank you. I will be using a table to create job tokens from the item. Very slick.

I also see how I could insert other jobs into the list throughout the day and adjust priority if I needed to.

0 Likes 0 ·