• Tidak ada hasil yang ditemukan

A process-centric model of the production system was created in the software by constructing a flowchart of the processes that used the agents and resources. The flowchart is shown in Figure 7.6.

100 Figure 7.6: Simulation Process Flowchart

101 The flowchart was divided into five segments, identifiable from Figure 7.6:

1) Fixture Flow I 2) Part Flow II 3) Match

4) Fixture Flow I 5) Part Flow II

The flowchart was the basis upon which the model derived its behaviour. The processes model the activities of the agents and resources in the system. The following sections discuss the components of Figure 7.6. The basic functions of the flowchart blocks will be described, together with the additional Java® commands that were required.

7.4.1 Fixture Flow I

Fixture Flow I deals with the creation, storage and reconfiguration of fixtures. The segment includes the processes required before the fixture is used to secure the unfinished part it is assigned to. Table 7.1 describes the functions of the blocks from this segment.

Table 7.1: Flowchart block descriptions for Fixture Flow I

Flowchart Block Basic Description Additional Java Commands

Creates the agents ‘Fixtures’

Fixtures created from fixture_generation spreadsheet.

Fixtures assigned parameters of name, intracluster sequence number, storage column and storage row.

Stores fixtures in fixtureStorage pallet rack.

Stores fixtures in the shelf corresponding to its fixture_generation spreadsheet data.

Updates intracluster sequence number upon entry, so that recycled fixtures can be identified in the main_data spreadsheet.

Unblocks hold_FR block to clear pathway for fixture in FR.

Fixtures wait in pallet rack until retrieved.

Retrieves first required fixture as per main_data spreadsheet when number of fixtures in storage matches the number of fixtures created by source_fixtures.

Retrieves fixture from pallet rack and transports it to cellFR. None.

Seizes the FR resource for the fixture.

Blocks hold_FR upon entry to prevent exit from FR until instructed.

Fixtures wait in FR for the Fixture Reconfiguration Time duration. This simulated the Fixture Reconfiguration operation.

Retrieves delay time from main_data spreadsheet, as per corresponding identification.

Begins a timer when fixture traverses this block. None.

Retains fixture in cellFR if previous fixture has not yet returned to storage from cellPP, i.e. holds fixture while idle in cellFR.

Unblocks hold_PS upon entry, so that the part for this fixture is released. This is required when cellPP was idle and waiting for the completion of delay_FR.

102 Table 7.1: Flowchart block descriptions for Fixture Flow I (continued…)

Ends timer that began previously. Records the time fixture spent in queue_FR, i.e.

the idle time for FR.

None.

Prevents fixture from releasing resource FR until the block is unblocked elsewhere.

None.

Releases resource FR to avail it for the next fixture.

Retrieves next fixture as per main_data spreadsheet information, provided there are still parts to be processed. Does so by ending delay_storeFixtures for the specified fixture only.

Moves the fixture from cellFR to cellPP.

Blocks hold_fPP and hold_pPP upon exit, so that the fixture and part that are now in cellPP can only leave when instructed.

7.4.2 Part Flow I

Part Flow I deals with the part creation, storage and retrieval. This segment is responsible for the parts until they are secured to their respective fixtures. Table 7.2 describes the functions of the blocks from this segment.

Table 7.2: Flowchart block descriptions for Fixture Flow II

Flowchart Block Basic Description Additional Java Commands

Creates the agents ‘Parts’ Parts created from part_generation spreadsheet. Parts assigned parameter of name only.

Stores parts in partStorage pallet rack.

Trivial delay employed to ensure parts are stored in the order they are created, so that storage location can be obtained more efficiently by using the part name only.

Parts wait in pallet rack until retrieved.

Stops delay for the first part, as per main_data spreadsheet, when number of parts in storage matches the number of fixtures created by source_parts.

Prevents parts from being retrieved by rackPick_parts until unblocked elsewhere. This ensures the part only leaves the pallet rack when required.

None.

Retrieves part from storage rack and transports it to cellPP.

Blocks hold_PS upon entry to prevent premature release of subsequent parts.

Seizes resource PP for the part. None.

7.4.3 Match

Match is the intersection point for the fixtures and parts, i.e. where the part is secured to its fixture. This is made up one block, as shown in Table 7.3.

103 Table 7.3: Flowchart block descriptions for Match

Flowchart Block Basic Description Additional Java Commands Prevents agents from moving

further in the flowchart until one of each type have entered the block. Ensures synchronisation of the fixture and part in cellPP.

None.

7.4.4 Fixture Flow II

Fixture Flow II deals with the synchronous delay of the fixture with its part in cellPP, before returning the fixture back to rackStorage_fixtures for fixture recirculation, as shown in Figure 7.6. Table 7.4 describes the functions of the blocks from this segment.

Table 7.4: Flowchart block descriptions for Fixture Flow II

Flowchart Block Basic Description Additional Java Commands Fixture waits in cellPP for the

duration of the Part Processing Time it corresponds with. This simulates the Part Process with Fixture operation.

Retrieves delay time from main_data spreadsheet, as per corresponding identification.

Begins a timer when fixture traverses this block. None.

Retains fixture in cellPP if fixture in cellFR has not yet completed its operation delay, i.e. holds fixture when idle in cellPP.

None.

Ends timer that began previously. Records the time fixture spent in queue_fPP, i.e.

the idle time for PP.

None.

Prevents fixture from releasing PP until unblocked elsewhere. None.

Releases resource PP to avail it for the next fixture. None.

7.4.5 Part Flow II

Part Flow II deals with the synchronous delay of parts with fixtures in cellPP, before dispatching the finished parts to Part Dispatch. Part Flow II works in conjunction with Fixture Flow II, as the main tasks correspond to the simultaneous activities of the fixture and part in the part processing cell. Table 7.5 describes the functions of the blocks from this segment.

Table 7.5: Flowchart block descriptions for Part Flow II

Flowchart Block Basic Description Additional Java Commands Part waits in cellPP for the

duration of the Part Processing Time it corresponds with. This simulates the Part Process with Fixture operation.

Retrieves delay time from main_data spreadsheet, as per corresponding identification.

Unblocks hold_pPP and hold_pPP if there are no more parts to process, since activities in Fixture Flow I can no longer unblock these flowchart blocks at that point in the simulation.

104 Table 7.5: Flowchart block descriptions for Part Flow II (continued…)

Prevents part from releasing PP until unblocked elsewhere. None.

Releases the PP resource to avail it for the next part.

Retrieves next part as per main_data spreadsheet information, provided there are still parts to be processed. Does so by ending delay_storeParts for that fixture only.

Unblocks hold_pPP upon exit so that its fixture can be released at the same time.

A simple delay to show separation of the part from its fixture on the conveyor flow.

The fixture leaves immediately as it is required in rackSystem_fixtures to allow the cell workflow to continue, so the part is delayed.

None.

Stores parts in partDispatch

pallet rack. None.

Finished parts wait in storage rack for dispatch to customer indefinitely.

Ends simulation upon entry of the final part.

Used to destroy the Parts agents to remove them from the system when dispatched to customer.

Not used in simulations, as parts are held in dispatch indefinitely.

None.