question

Craig DIckson avatar image
0 Likes"
Craig DIckson asked Eric M commented

Restricted area with different levels based in specific entry location

I have a section of conveyor. I want to limit the number of items entering the conveyor from several different conveyors. So I added control points near the end of each entering conveyor, with an on-continue trigger to enter restricted area. It almost works as I hoped. Actually, it works just fine as long as all three entry points use the same limit. But if the entry points have different limits, then FlexSim uses only the higher of the limits for all three of the entries.

In the model from the screen cap, the other two entry control points have Max Content settings of 2 and 4 respectively, and the model treats the merge from below as if it were set to Max Content of 4.

1628214001160.png

Is this a bug? and if not, how can I do what I need? (hopefully without a lot of code - this is in many places in the actual model.)

FlexSim 21.1.4
conveyorflexsim 21.1.4control pointsrestricted area
1628214001160.png (204.2 KiB)
· 5
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 M avatar image Eric M commented ·

I just had a couple clarifying questions to make sure I'm understanding what you're hoping to do.

What's the goal of the different limits? Is it to limit the number of items from that specific entry conveyor (ex: if one entry has a limit of 4 and the other of 2, there could be a total of 6 items on the main line)?

Or would it be if there are 2 items on the main line, regardless of which entry conveyor they came from, the conveyor with a limit of 2 would not be allowed to send items while the conveyor with a limit of 4 would be able to?

0 Likes 0 ·
Craig DIckson avatar image Craig DIckson commented ·

Eric, it's the latter. Some items need to re-enter the zone to get out of the subsystem, and we need to sure that there is space for that to happen by limiting the number coming in from outside if the zone is pretty full.

0 Likes 0 ·
Eric M avatar image Eric M Craig DIckson commented ·

One last clarification, thanks for your patience. If there are 2 items on the main line from the re-enter conveyor, are the items from the other conveyors (limit 4) still allowed to enter until the limit reaches 4? Or do those 2 items get the conveyor to themselves?

0 Likes 0 ·
Craig DIckson avatar image Craig DIckson Eric M commented ·
Eric, the re-entereing items would have a higher (less restrictive) limit, since they are likey to be leaving the entire subsystem. THe ones just entering are by definition going to a station, not leaving.
0 Likes 0 ·
David Seo avatar image David Seo Craig DIckson commented ·

@Craig DIckson

In the same zone which the owner is only ONE, the different restriction menu update the owner's limit quantity whenever the entry items come into. If you want to set the different limit in the same zone, you should separate the zone into more little zones and make the limit separately.

Attached model is one way of your issue.

multilimitConv.fsm

0 Likes 0 ·
multilimitconv.fsm (41.1 KiB)

1 Answer

Eric M avatar image
0 Likes"
Eric M answered Eric M commented

@Craig DIckson the enter / exit restricted area works by first checking if there's room in the area for the item. If there is, it sends the item along. If there isn't, the item is stopped and adds a request to enter the area, essentially meaning it's the next in line. At that point, the item that has requested the area waits for an item to leave and then moves on. The only time the 'max content' is used is determining if the item should stop or not. That's why the different max content levels aren't doing what you expect. Because people may want different things when using different max content values, it makes sense to just use process flow to create the specific logic.

I created some process flow that works by keeping track of the area content on an exit DP label. A decide is then used to determine whether an item should be allowed to enter or not depending on what its entry DP's "MaxContent" label is. I also colored the items red that are entering from the MaxContent = 2 DP so they're easy to see.

Because I don't know exactly how your system works, I added a couple flows to demonstrate how you might construct the logic. The more basic flow only lets 2 of the red items on the conveyor at a time while the other conveyors can still send 2 additional items. The other process flow limits the entire content of the area to 2 when a red item is in the area. The value of 2 is dynamic based on whichever DP has the smallest MaxContent label. This logic will only work for 2 different MaxContent values and would need to be adapted if there were more differing values between the DPs.

I made the process flow so it can be easily adapted to more areas (you can see there are 2 conveyor groups in the model that both use the same flow). First, add the DPs to the groups "EntryPoints" or "ExitPoint." Then add labels to the DPs which can be done quickly using Property Tables ("MaxContent" label for Entry DPs which you set, "Content" / "SpecialContent" labels for Exit DPs which should start at 0). The entry DPs should also be connected with a-connections to the exit DP.

Hopefully I'm not too far off the mark of what you're hoping to accomplish, but I figure the two examples should give you something to adapt to what would fit your needs. Let me know if you have any questions!

conveyor aquire area_1.fsm


· 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.

Craig DIckson avatar image Craig DIckson commented ·

Interesting.

I was able to solve it using the actual Restricted Area construct from FlexSim, by having two different limits. The change was that each entering location had to separately set the count label for the other limit. The challenge with my approach is it is tedious to apply when there are many instances around the system. (Copying the code is simple enough; the challenge is pointing to the owning object for each -- it ends up being a lot of connections or a lot of labels to set.)

But I like your thought of using an event triggered source. I had never found a reason to use that activity but now I have.

Thanks.

0 Likes 0 ·
Eric M avatar image Eric M Craig DIckson commented ·

That's a good solution as well. There are still plenty of labels / connections that will need to be set up in the process flow method, so it might just come down to which set up would be the quickest. I will say Property Tables have made it much easier to create labels for a lot of objects at once and would be worth looking into if you haven't used them in the past.

0 Likes 0 ·