Tutorial Task 1.2 - Merging, Area Restriction, and Slug Building
Task 1.2 - Merging and Slug Building
Task Overview
Merge conveyors can organize items flowing from multiple infeed conveyor lines. The most
common purpose of merging is to combine items from multiple conveyor lines into a single
line, which then sends the items downstream for further processing.
In this tutorial task, you'll continue using the model you built in the previous task.
You'll add a merging lane and then later change the diverting lanes to build slugs of items
that will be released once certain conditions are met. You'll later add a merge controller
that will make the conveyors release their slugs round robin.
When you're finished, your model will function similar to the following image:
Key Concepts About Global Types
In this tutorial task, you'll be introduced to the global types feature of
conveyor objects. This feature makes it easy to quickly update custom properties and logic
on several conveyor objects at once. See
Controlling
Logic and Properties With Global Types for more information.
In this tutorial task, you'll create a global type that uses slug-building logic. Then,
you'll assign the slug-building conveyor type to the diverting conveyors. Creating a
slug-building type will make it easy to quickly apply the same slug-building logic to
several conveyors at the same time. In the last step of the tutorial, you'll also create a
global type for transfers to help reduce gapping.
Step 1 Add a Merging Lane
In this step, you'll change the 3D model layout to add a merging conveyor line:
Using the model you created in the previous tutorial task, delete the following
objects:
The 2 queues at the end of the last conveyor
The last conveyor (and the decision point on the last conveyor)
The sinks at the end of each conveyor
Make a copy of the horizontal conveyor and place the copy at the bottom of the
diverting conveyors. Make sure the diverting conveyors snap together to the new
conveyor.
For clarity, rename the conveyors as follows:
Conveyor
New Name
The horizontal conveyor at the top
MainConveyor
The horizontal conveyor at the bottom
MergingConveyor
First diverting conveyor
Slug1
Second diverting conveyor
Slug2
Third diverting conveyor
Slug3
Fourth diverting conveyor
Slug4
Add a Sink to the right end of the merging conveyor and
create a port connection (A-connect) from the conveyor to the sink.
Double-click the Source to open its properties window.
On the Source tab, change the
Inter-Arrivaltime to 5.
On the Triggers tab, click the Edit
Properties button next to
the On Creation trigger. Click the arrow next to the
Set Label picklist to open its properties. Change the
Value box to duniform(1,4) so that it will
only create four types of flow items.
Press OK to save the changes.
Go ahead and run the model now if you'd like to get a sense for how the system works
before you've added the slug-building logic.
Step 2 Add Simple Area Restriction
You can possibly use area restriction to control the flow of items in a conveyor system.
In this step, you'll restrict access to the merging conveyor so that only one flow item can
enter the conveyor at a time.
This is the first step in the tutorial where you will use a global type with a conveyor
object. Global types make it easy to quickly update custom properties and logic on several
conveyor objects at once. See
Controlling
Logic and Properties With Global Types for more in-depth information.
To create this logic, you'll create a decision point type that uses a picklist option
called Acquire Restricted Area on the On Arrival trigger. Using this logic, the
decision point will request access to the merging conveyor (the restricted area) for every
arriving flow item. If the requested area is not available, the decision point will hold the
flow item until the area becomes available. You'll add decision points to the end of each
slug-building conveyor (Slug1, Slug2, etc.) and assign this global type to them.
Lastly, you'll add a decision point to the end of the merging conveyor. Once you connect
this decision point to the other decision points, it will be able to control the restricted
area. You'll add a picklist option Release Restricted Area to this decision point
that will fire any time a flow item passes over it. It will send a message to the upstream
decision points to release the next flow item in line.
To create this logic:
In the Toolbox, click the Add button
to open a menu. Point to
Conveyor System, then select Decision
Point Type to open the Decision Point Type properties window.
In the name box at the top of the window, change this decision point type's name to
AcquireArea.
In the Triggers group, click the
Add button
to open a menu. Select On Arrival.
Next to the On Arrival box, click the
Add button
to open a menu. Point to Area Restriction, then select
Acquire Area.
You'll use the default settings, so merely confirm that the settings match the
following image:
Drag 4 Decision Points from the Library and position
them at the end of each slug-building conveyor (Slug1, Slug2, etc.).
Drag one more Decision Point from the Library and
position it at the end of the merging conveyor.
Create port connections (A-connects) from the decision points on the slug-building
conveyors to the decision point on the merging conveyor.
Click one of the new Decision Points to select it. In
Quick Properties, in the Decision Point Type menu, select
AcquireArea to apply the global type you just created to
this decision point.
Repeat the previous step for the other decision points on the slug-building
conveyors.
Double-click the newly-added decision point that is on the end of the merging
conveyor to open its properties window.
On the Decision Point Type tab, click the
Add button
to open a menu. Select On Arrival.
Next to the On Arrival box, click the
Add button
to open a menu. Point to Area Restriction, then select
Release Area.
You'll use the default settings, so merely confirm that the settings match the
following image:
Reset and run the simulation model. Notice that only one item can enter the merging
conveyor at a time.
Step 3 Create a Slug-Building Conveyor Type
Notice how in the simulation model you built in the previous step, items began to
accumulate on some of the conveyors. Eventually, this accumulation of items would probably
cause the conveyors to get backed up and jammed. Another solution to increase throughput is
to use a merge controller to coordinate the merge. The merge controller explicitly builds
slugs of target quantities in the merge lanes, and then releases them in a coordinated
fashion. Slugs are a queue of accumulated items on a conveyor that will eventually be
released downstream as a single group. Building slugs of items can maintain high rates of
throughput while keeping equipment speeds as slow as possible.
In FlexSim, you can design a conveyor that builds slugs and waits to release them based
on a specific set of criteria such as:
What percentage of the conveyor must be filled before a slug is ready for
release
The number of items that must be on a conveyor before a slug is ready for
release
The amount of time that must elapse in building the slug before a slug is ready for
release
In this step, you'll learn how to build and release slugs based on the number of
accumulated items, but hopefully it will also be clear how to adapt this system to use one
of the other slug-building methods.
First, you'll create a global type for slug-building conveyors. Then, you'll assign the
slug-building conveyor type to the slug-building conveyors. Creating a slug-building type
will make it easy to quickly apply the same slug-building logic to several conveyors at the
same time.
These conveyors will build slugs of at least four items. Once the slug has at least four
items, the conveyor will release the slug to the merging conveyor.
To create this slug-building system:
Delete the 5 decision points you added in the previous step (the ones at the end of
the slug-building conveyors and the merging conveyor).
Open the Toolbox. Click the Add button
to open a menu. Point to
Conveyor System, then click Conveyor
Type to open the Conveyor Type Properties.
In the name box at the top of the window, change this conveyor type's name to
SlugLanes.
Check the Slug Builder check box.
Confirm that the Item Count check box is checked. Type
4 in the box next to it.
Press the OK button to save the changes. Notice that
the SlugLanes type now shows up in the Toolbox (under Conveyor System, then Conveyor
Types).
In the 3D model, click the Slug1 conveyor to select it. In
Quick Properties, click the Conveyor
Type menu and select SlugLanes to assign this
conveyor to the new conveyor type.
Repeat the previous step to assign the SlugLanes
type to all the slug-building conveyors (Slug1, Slug2, etc.). (Do not change the
conveyor type of the main conveyor or the merging conveyor.)
Try running the model and notice that the conveyors will build a slug of 4 items before
releasing them.
Step 4 Add a Merge Controller
You'll notice that sometimes slugs get released simultaneously. At this point the
slug-building lanes are completely independent of each other. Each lane builds a slug and
then immediately releases it. Consequently, released slugs will run into each other on the
merge lane. This would not be ideal in a real system because the boxes would bump into each
other and potentially get knocked off the conveyor. FlexSim does not implement the conveyor
system using a physics engine that could bump items off a conveyor. Instead, boxes simply
wait on the slug build lane until there is an available slot to enter the merge lane. Either
way, this is not ideal. To get the simulation to work the way it should work in a real
system, you need a merge controller to coordinate the releasing of slug lanes to avoid
collision on the merge lane.
In this step, you'll add a merge controller that will control how the slugs are released.
For this example, you'll set the merge controller to use a strict round robin ordering
system (slugs can only be released in a specific order, one after another).
You'll need to add a decision point to the merging conveyor in order for the merge
controller to work effectively. When a slug clears the decision point, it will tell the
merge controller than the merging conveyor is ready to accept another slug.
To add a merge controller to your conveyor system:
Drag a Decision Point from the Library and place it
near the end of the merging conveyor lane.
Drag a Merge Controller from the Library and put it
next to the end of the merging conveyor.
Create a port connection (A-connect) from the Merge
Controller to the decision point on the merging conveyor. Create additional
port connections (A-connects) from the Merge Controller to
each of the slug-building conveyors (Slug1, Slug2, etc.).
Double-click the Merge Controller to open its
properties window.
Click the arrow next to the Release Strategy box to
open a menu. Select Round Robin.
Depending on the order in which you connected the conveyors to the merge controller,
you might need to reorganize the conveyors listed in the Lane Clear
Table so that it will merge the Slug4 lane first, then the Slug3 lane,
etc. (You might also need to expand the column sizes so that you can read the full
conveyor names.) To change the release order, right-click the lane you want to move and
select the appropriate movement form the table.
Run the simulation. Notice that the fourth lane will get released first, then the third
lane, and so forth. Even if a lane is ready for release, it will need to wait for its turn
in the round robin schedule.
Conclusion
Now that you've learned some of the techniques for creating effective merging conveyor
systems, you'll learn how to add and remove gaps in between flow items in a conveyor system.
Gapping will be covered in the next tutorial. Continue on to
Tutorial Task 1.3 - Adding and Removing
Gaps.