Phase 4. Battery assembly
At this stage of the production, the electrode groups that we have
learned to model previously, are
placed in a plastic battery case, which then will be filled with acid.
The exact number of
groups inside the case depends on the battery's intended capacity. We
will now model the assembly of electrode groups into the battery case
the help of an industrial crane.
First, we will create a new material agent type to represent the
Add a new material item
- Drag the Material
Item Type element from the Material Handling Library palette to
- In the New agent wizard
specify the Agent type name: Battery and click Next.
- Expand the Warehouses
and Container Terminals
section and select the Industrial
Container 1 figure. Click Finish.
- In the Battery
graphical editor select the scale element and set the Ruler length corresponds to: 1 meter.
- In the Dimensions and
movement section of the Battery agent type specify the following
b. Width: 0.2 meter
c. Height: 0.15 meter
- To adjust the 3D animation so that it fits the specified
dimensions of our agent type, select the 3D figure in the graphical
editor and in its properties set the Additional
scale to 50%.
- In the Colors section of
the 3D figure's properties specify My
Next, let's add the layout for this section of the production line:
a conveyor, where the electrode groups are put into the battery cases,
and the crane that carries the groups over from the buffer zone.
Prepare the layout
- Double-click the Conveyor element from the Material Handling section of
the Space Markup palette.
- Draw the conveyor over the layout as displayed in the image below.
- Name it batteryConveyor.
- Specify its properties as
item type: Battery
b. Maximum speed: 0.5 meters per second
c. Initial speed: 0.5 meters per second
d. Z: 20
e. Width: 0.5 meter
- Drag the Position on Conveyor element
from the Material Handling
section of the Space Markup palette to the Main
graphical diagram and place it on the batteryConveyor.
- Name the element blockInputPosition.
We will use this element to mark the exact point on the conveyor
the electrode groups must be placed inside the battery case.
- Drag the Rectangular Node element from the Space Markup palette to the Main
graphical diagram and place it at the starting point of the batteryConveyor.
- Name the node caseBuffer.
- In the node's properties specify:
a. Visible: no
b. Locations layout: Arranged.
- Drag the Jib crane
element from the Material Handling
section of the Space Markup palette to the Main
graphical diagram and place it according
to the layout.
- Name the crane batteryBlockCrane.
- Specify the crane's properties as follows:
item type: BatteryBlock
b. In the Position and size
section specify Jib length: 3 meter and Crane height: 4 meter.
- Make sure that the crane's working area fully covers the assembledBlocksBuffer node and the blockInputPosition element on the batteryConveyor. Drag the handle
located at the end of the crane's jib to increase and decrease the
crane's working area.
Select the Blocked zone
check-box and adjust its angle by dragging the handles until the
blocked zone looks as displayed in the image below:
Now let's define the logic behind this production step.
Add the battery assembly
logic to the flowchart
Now, that we have finished defining the logic behind the generation and
transfer of the battery boxes to the intended place, we need to connect
the two processes into a single flowchart.
- Drag the Source element from the Process Modeling Library palette to
graphical diagram and place it above the assembler block. Make sure that
these two blocks don't connect.
- Name the source block batterySource.
This block will serve to generate agents of the Battery
- Specify the following in the batterySource
defined by: Rate
b. Arrival rate: 10 per hour
c. Location of arrival: Network/GIS node
d. Node: caseBuffer
e. New agent: Battery
- Deselect the Forced pushing
- Drag the Queue block from the Process Modeling Library palette to
diagram and place it after the batterySource
block. Make sure the connection between these two blockes is
We use this block to model the the battery cases
waiting to be used in the buffer zone.
- In the queue block's
b. Agent location: caseBuffer.
- To model the movement of battery cases from the buffer zone to
the assembly conveyor, drag the Conveyor
Enter block from the Material Handling Library palette to
diagram and place it after the queue
- In the conveyorEnter
a. Entry point
defined as: Position on
b. Position on
- To model the transfer of the electrode groups from the buffer
to the battery case, drag the Move
By Crane element from the Material Handling Library palette to
the Main diagram and place it after the assembler block.
- Name the block toCase.
- In the toCase block's properties, specify the following parameters:
b. Destination is: Agent
c. Loading time: 5 seconds
d. Unloading time: 5 seconds
- In the the Agent
parameter edit-field type the following line of code: blockInputPosition.getAgent().
returns the agent that is currently located at the blockInputPosition point.
- Delete the connector between the toCase
block and the sink block.
- Drag the Combine element from the Process Modeling Library palette to
diagram and place it after the conveyorEnter
block. Make sure the connection is established via the combine block's upper port.
- Double-click the out port of
block and drag the connector to the combine
block's lower in port. Release the
mouse button when the connection point
is highlighted in cyan.
- In the combine block's
properties specify The resulting
agent is: agent 1.
- Place the sink block
after the combine block.
- Run the model!
Inevitably, an error will occur when the crane attempts to transfer
electrode groups to an absent battery case. We can solve this problem
with the help of the Process Modeling Library.
Synchronize the group
assembly process and the battery case preparation
Now, we need to make sure that the unblock()
function is called at the appropriate moment of time to synchronize the
two production flows.
- Drag the Hold block from the Process Modeling Library palette and
place it in the flowchart between the assembler
block and the toCase block.
This block will help us control the flow of electrode groups: we
will stop the flow until a new battery case becomes available.
- In the block's properties specify the Mode: Block automatically after N agents (use
unblock()) and select the Initially
blocked check box.
- Expand the Actions
section of the conveyorEnter
block and type in the following line of code in the On enter field: hold.unblock()
Now the hold
function will be called every time when a battery case enters the
conveyor where the crane must place electrode groups inside it. For the
rest of the time the movement of electrode groups will be blocked.
- Run the model again and observe the production process!
Electrodes wrapping and group assembly
Phase 5. Battery treatment and quality assurance