0% found this document useful (0 votes)
143 views11 pages

Programa Producción

The document describes scheduling discrete part production in a manufacturing facility using Simio RPS Edition. It discusses importing data from CSV files to automatically generate the model components and populate the required data tables. Key steps include running the scheduling template to set up tables, importing a resources CSV to generate objects, importing other CSVs to populate tables, and adding custom dashboards and reports for viewing scheduling results. The goal is to generate a 30-day production schedule that fully accounts for limited resources.

Uploaded by

Ddd gh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
143 views11 pages

Programa Producción

The document describes scheduling discrete part production in a manufacturing facility using Simio RPS Edition. It discusses importing data from CSV files to automatically generate the model components and populate the required data tables. Key steps include running the scheduling template to set up tables, importing a resources CSV to generate objects, importing other CSVs to populate tables, and adding custom dashboards and reports for viewing scheduling results. The goal is to generate a 30-day production schedule that fully accounts for limited resources.

Uploaded by

Ddd gh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

Scheduling Discrete Part Production

General Description
The example uses Simio RPS Edition to schedule discrete part production. Simio RPS Edition is a
simulation tool for developing applications in Risk-based Planning and Scheduling. RPS is the dual use of
a simulation model to generate both a detailed resource constrained deterministic schedule as well as a
probability-based risk analysis of that schedule to account for variation in the system. RPS is used to
generate schedules that minimize risks and reduce costs in the presence of uncertainty. Although Simio
RPS Edition is required to build this model, it may be viewed using Simio Design or Team Edition.

To understand the data schema and scheduling results in this example you should first read the Planning
and Scheduling with Simio document within Simio under the Support ribbon / Books. This problem
description assumes that you are familiar with the standard data schema and scheduling concepts that
are presented in that document.

The system to be scheduled in this example is a discrete part manufacturing facility. The facility is a job
shop that produces finished goods. We wish to generate a 30-day production schedule for this facility
that fully accounts for the limited resources in the system.

The facility consists of functionally grouped machine groups named Cut, Weld, Shape, and Finish, with
two machines within each machine group. Each of these machines is modeled using a Server, with a
TransferNode that is named for the machine group (e.g. Cut) and is used to dynamically route based on
a scheduling rule to the selected machine (Cut1 or Cut2) within the group. The Weld Servers also
require a secondary resource that is that is modeled as a Resource named Resource1 for Weld1 and
Resouce2 for Weld2. The Cut Servers have a sequence dependent setup time where the setup time is
specified in a changeover matrix based on material color. Possible material colors are defined in a string
list named MaterialColor with values Other, Red, Green, and Blue.

There are three finished goods (FinishedGoodA, FinishedGoodB, and FinishedGoodC) that are produced
in this facility, and each has its own routing and unique setup and processing time and material
requirements at each Server within its routing. The B2MML-based data schema discussed in the
Planning and Scheduling with Simio document is used to hold the production data for this example.

Although we are modeling the material consumption at each Server, in this example we are not
explicitly modeling the material resupply logic. The consumed materials are defined in the Material Lots
table and include MaterialX and MaterialY, and each has sufficient levels to supply production during
the planning horizon. The Bicycle example model that is installed with Simio illustrates modeling of the
material resupply based on a Purchased Material arrival table.

In this example, we are provided a set of CSV files for automatically generating the major components of
the model, and populating the required data tables. This illustrates the concept of “data-generated”
modeling where the model is created automatically by populating the object data into the Resource
table. In this example, the objects that are created from this table are already mapped to the scheduling
tables.
Detailed Description
In this example, we are provided the following additional data files that we will use for building the
model and populating the data tables:

File Name Description


Resources.csv A list of resources (objects) in the facility.
RoutingDestinations.csv A list of node destinations from transfer node.
Manufacturing Orders.csv A list of orders to be produced during this planning period.
Materials.csv A list of materials that are defined in the system.
Material Lots.csv A list of material lots that are consumed and may limit production.
Routings.csv The routing that is required to produce each material.
BillOfMaterials.csv The materials required at each routing step.
WorkInProcess.csv The initial state of the work in process.
DispatchList.xml An xml file of the dispatch dashboard schema for import.
Materials.xml An xml file of the materials dashboard schema for import.
Orders.xml An xml file of the orders detail dashboard schema for import.
Dispatch List Report.repx A table report file for a dispatch list report for import.
Order Details.repx A table report file for an order details report for import.

These files are in the DiscretePartProductionFiles folder that is in the same directory as this example.

To build this model we open a new model and execute the following steps:

1) Within the Data tab, click the Scheduling button on the Schema ribbon. This will create the
tables and the subclass objects used for scheduling.
2) Import the Resources.csv into the Resources table. This will generate the objects for the model.
3) Import the remaining csv files into the data tables.
4) Add custom Dashboards and Reports.
5) Enhance the model logic as necessary (in this example no enhancements are made).

We will now describe each of these steps in detail.

Run the Scheduling Template


Our first step is to run the Scheduling template from the Schema ribbon in the Data window. This will
automatically create the Resources, Routing Destinations, Materials, MaterialLots, Manufacturing
Orders, Routings, Bill of Materials, Work In Process, and Manufacturing Orders Output data tables; and
the related string lists. These data tables will be populated at a later step by importing data from csv
files. The Order Status string list is used to define orders as one of two types: New orders that are being
released to the facility, and WIP orders that are currently in process. The Material Color string list is a
default string list for use with change dependent setup times. In a typical application, this list would be
renamed to size, part group, etc., based on the attribute that triggers a dependent setup change. In this
example, we will use the default Material Color list to define the changeover attribute.

The following entity relationship diagram depicts the data tables that are used in this example, along
with the relations between the tables (Note: see Appendix A – Data Tables for a detailed description of
the fields in each table). This data schema assumes a product-based routing where the routing is
defined for each material that can be produced in the facility, and the manufacturing orders refer to
each material being produced for that order. It is also possible to configure the tables where a unique
routing is specified for each order. This later approach is useful in an engineered to order
manufacturing environment.

Although the default Gantt display and Logs work fine for many applications, it is convenient to be able
to extend the Logs with additional information, and to use this extra information to augment the Gantt
display. This add-in will also add three new custom columns to the Resource Usage Log for this purpose.
The first specifies the name of the material being produced on the resource. The second is the desired
fill color for drawing bars on the Gantt. The third is the desired outline color for drawing these same
bars.

In addition to creating the tables, the Scheduling button will also automatically generate the sub-classed
objects that are used for scheduling. These objects are the same as their Standard Library objects
except the default value for the object properties are mapped to the Scheduling tables. In the case of
the Server, task sequences are also added to model the setup and processing phases of the server. As
the objects are added to the model, they will already be mapped to use the data in the scheduling
tables. All the objects in the Navigation window that start with “Sched” are the sub-classed scheduling
objects.
Import the Resources
Next, we will populate the Resources table by importing the data from the Resources.csv data file. To
do so we first bind to the file by selecting Bind To CSV on the Content ribbon of the Data window, and
then browse to and select the Resources.csv file in the Examples folder:

C:\Users\Public\Documents\Simio\Examples\DiscretePartProductionFiles.

We then set our binding option to manual, and then click on Import to import the resource data into the
table. As the data is imported into the table, the objects are automatically added to the model. They
are placed in the model at the XLocation and ZLocation coordinates in the Resources table. The
resulting model is depicted below:
Import the remaining csv files
Next, we will import the remaining csv files to populate the remaining set of data tables. In each case,
we bind to the appropriate csv file, select the binding option to manual, and then import the data.
During this process, you may generate errors because of references to undefined items, but these errors
will all be removed once all the data has been imported and the references are fully resolved. Also, note
that the Manufacturing Orders Output table has no imported data rows of data are added to this table
as the simulation executes. The following shows the imported relational data for the Material table.
Adding Custom Dashboards and Reports
Our next step is to enhance the model with some custom dashboards and table reports. We will import
three standard dashboards to our model that are designed to work with the default data schema. These
dashboards are saved in XML format and included in the DiscretePartProductionFiles folder that is saved
with this example. These dashboards display material, order details, and a dispatch list for use by
operators. We will also import a custom dispatch list table report and a customer orders details table
report.

To import these dashboards, go to Dashboards Report view of the Results window and select the
Dashboards ribbon. Click in the Import button and browse to the folder, and select the three dashboard
xml files named Dispatch List, Materials, and Order Details. To import the two reports, go to the Table
Reports view under the Results window and import the Dispatch List Report.repx for Manufacturing
Orders Output table, and the Orders Details.repx for the Manufacturing Orders table.

Enhancing the Model Logic


Although a default model can be rapidly built using the available add-ins, it’s sometimes desirable to
edit this default model to add additional logic or detail to the Facility model. Examples of possible
enhancements include adding moving operators (using Worker objects) that travel between Servers,
complex material handling devices such as AGVs or conveyor systems, as well as custom decision logic
for selecting between orders or Servers. Note that the full modeling power of Simio is available to us to
customize the model as needed. In this example, we will keep the basic model that is automatically
created for us by the scheduling add-ins.
Generating the Schedule
Once our model is complete we can generate the schedule by clicking on Create Plan on the Operational
Planning ribbon in the Planning window. This generates the deterministic schedule by automatically
removing the randomness from the model. We can then generate the risk analysis for this schedule by
clicking on the Analyze Risk button on the same ribbon.

Our model was created using a global scheduling rule that can be easily changed in the model
properties. By default, orders are processed first-in-first-out, however this global rule can be easily
changed to any of the standard dispatching rules supported by Simio. The following depicts a zoom-in
portion of the Resource Plan for this example using the Least Setup Time rule.

As discussed in the Planning and Scheduling with Simio document there are many ways to view the
schedule and the associated risk. For example, the following is dashboard for the dispatch list that we
imported using the XML file. This dashboard shows the resource utilization and dispatch list for the
currently selected resource (Cut2).
Data Tables
The following is a summary of the default tables that are based on the B2MML standard.

Resources:

A list of resource that are in the manufacturing facility.

Column Name Description


Resource Name The unique name of the resource. This is the object name.
Description A description of this resource
XLocation This is the X location of the object in the model.
ZLocation This is the Z location of the object in the model.
Object Type This reference an object type (sub-classed object) of the object.
Work Schedule Work schedule assigned to the resource.
Cost Rate The hourly rate for the resource either idle or while being utilized.
Changeover Matrix Changeover Matrix used by the resource.
Secondary Resource This is the resource (object) that is seized by the primary resource while
Name processing.

Routing Destinations:

A list of each possible destination node for each resource. The entity is routed to one the nodes
specified in this list based on the selection rule.

Column Name Description


Resource Name This is the transfer node used to route each entity to their destinations.
Node Possible destination from this transfer node.
Materials:

A list of materials that can be produced at this manufacturing facility.

Column Name Description


Material Name The unique name of this material.
Material Class A description of this material
Material Cost The cost per unit of this material.
Material Color The color index for computing color-dependent changeovers.
Gantt Color The color used for drawing orders for this material in the Gantt.
Material State Statistic State statistic used to plot material quantities over time on the Gantt.

Material Lots:

A list of material lots and quantities for materials in the facility.

Column Name Description


Material Name A foreign key reference to the Materials table for the material being
produced.
Lot Id This is a string determining what lot the material. This field is not required.
If there is no lot control, just leave column blank.
Quantity The initial quantity of material for the lot.

Manufacturing Orders:

A list of all production orders to be processed during this planning period.

Column Name Description


Order Id A unique string name assigned to this manufacturing order.
Material Name A foreign key reference to the Materials table for the material being
manufactured.
Release Date The date-time this order is released to production.
Due Date The date-time this order is due.
Order Status The order status specified as New or WIP (work in process).
Priority The scheduling priority for this order.
Quantity The material quantity to be produced for this order.
AdjustedReleaseDate This field is an expression field used by the source to determine when to release
orders. This expression is used to release the WIP orders slight before
(Math.Eplison) before the NEW orders. It also handle when the release data is
before the start of the model (e.g.
Math.Max(ManufacturingOrders.ReleaseDate, Math.Epsilon) ).
Ship Date The ship date for this order (an output) based on the generated schedule.
Production Cost The production cost for this order (an output) based on the generated schedule.
Target Ship Date-Value The target ship date for this order
Target Ship Date-Status The target ship date status; OnTime, Late, or Incomplete.
Target Cost-Value The target cost for this order.
Target Cost-Status The target cost status: OnBudget, Overrun, or Incomplete.

Note that the Ship Date and Production Cost are both output columns in the Manufacturing Orders
table; they are written from the simulation model to the table as the schedule is generated by the
deterministic simulation run. Also note that the last four columns are targets.

Routings:

A list of job routings for each material specifying the resource and processing time for each task required
to produce the material.

Column Name Description


Routing Key The unique name for this routing step.
Material Name A foreign key reference to the Materials table for the manufactured
material.
Sequence The transfer node (list of resources) or resource where this step is to be
processed.
Route Number The routing number.
Setup Time Discrete setup time for this step.
Process Time Processing time for this step. In this example, the process time is
multiplied by the ManufacturingOrders.Quantity.

Bill of Materials:

A list of component materials that are required at a specific routing sequence location to produce a
material.

Column Name Description


Routing Key The material routing step where the material action takes place.
Component Material The name of the material.
Required Quantity The quantity of the material that is either consumed or produced. This
value based on an order quantity = 1. The required quantity is multiplied
by the ManufacturingOrders.Quantity.
Required Lot Id Specified the lot id required for consumption and the lot id provide for
production.
Material Use Specifies if the material is to be consumed or produced.

Work In Process:

A list of current orders that are in the system, along with their current status.

Column Name Description


Order Id Foreign key reference to the Order Id in the Manufacturing Orders
table.
Current Route Number The current route number for this order.
Current Resource The current resource that this order is being processed on.
FractionOfSetupCompleted Percentage of setup completed (values between and including 0 and 1)
Completed Quantity The number of material units that have been processed on this
resource.
Accrued Cost The activity-based cost accrued by this order at this point.

Manufacturing Orders Output:

An output table defining order start and end time on each resource used for creating table reports.

Column Name Description


Order Id Foreign key reference to the Order Id in the Manufacturing Orders table.
Routing Key Foreign key reference to the Routing Key in the Routings table.
Scheduled Resource The resource where this order is to be processed.
Scheduled Start Time The start time at this resource for this order.
Scheduled End Time The end time at this resource for this order.
Scheduled Quantity The quantity schedule at the resource for this order.

You might also like