Demonstration Scenario Application
Production of Industrial Traffic Lights
Demonstration Scenario executes a process that produces an industrial traffic light in a simulated environment. In this context, the user can configure the composition of lights and the number of light segments. Besides, the user can choose between multiple shapes for the stand segment of the traffic light. The corresponding PFDL description is shown below, were the structure SWAP_Order defines the properties of a traffic light. The overall process is split into 5 steps and contains two parallel subprocesses, the Manufacture Light Segments and the Manufacture Stand Segment process. After completion, the parts that are produced within the subprocesses are mounted together in step 5:
Manufacture Light Segments:
GetPartsFromWarehouse: one or multiple light segments are taken from the warehouse and brought to the coating machine
Coating: the light segment gets painted in the selected color
Gluing: all light segments are glued together
Manufacture Stand Segment:
GetPartsFromWarehouse: a stand segment is taken from the warehouse and brought to the coating machine
Milling: milling of the stand segment into the selected shape
Mounting: mounting of the light segments onto the stand segment
Task productionTask
Parallel
manufacture_light_segments
In
SWAP_Order
{
"order_id":1000,
"stand":{
"stand_shape":"plate",
"stand_height":3,
"stand_id": "Default"
},
"segments":
[
{
"color": "red",
"diameter": 5,
"segment_id": "Default"
}
],
"number_light_segments": 1
}
manufacture_stand_segment
In
SWAP_Order
{
"order_id":1000,
"stand":{
"stand_shape":"plate",
"stand_height":3,
"stand_id": "Default"
},
"segments":
[
{
"color": "red",
"diameter": 5,
"segment_id": "Default"
}
],
"number_light_segments": 1
}
Mounting
End
Task manufacture_light_segments
In
order: SWAP_Order
Parallel Loop i To order.number_light_segments
manufacture_light_segment
In
order
Loop i To order.number_light_segments
Gluing
In
order
End
Task manufacture_stand_segment
In
order: SWAP_Order
GetPartsFromWarehouse
In
order
Milling
In
order
End
Task manufacture_light_segment
In
order: SWAP_Order
GetPartsFromWarehouse
In
order
Coating
In
order
End
The corresponding visual representation, generated by the SWAP-IT Dashboard is illustrated below. The PFDL definition contains a set of PFDL conditions, namely a Parallel Condition, a Parallel Loop Condition and a Counting Loop. These conditions are based on process parameters, in this context, the SWAP_Order.number_light_segments parameter. Consequently, changing this value will result in a different process, since the number of process steps in the Parallel Loop Condition and the Counting Loop will increase or decrease.
Shop Floor Configuration
To produce the industrial traffic light, a corresponding shop floor with resources is required. For this scenario, the shop floor consists of
2 Warehouses
3 Coating Machines
1 Milling Machine
1 Gluing Machine
1 Assembly Station
Information Models
Since the Demonstration Scenario shop floor includes 5 different types of resources, it is required to define corresponding information models. These models extend the Common Information Model for each of the resource classes. More information on how to build these custom information models can be found in the Common Information Model Repository.
In this context, it is required that the browse name of the added OPC UA methods correspond to service names in the PFDL description. The advanced tutorial in the Demonstration Scenario repository recreates the Demonstration Scenario environment, so that all information models for the Demonstration Scenario application can be found in this Tutorial.
The following SubTypes of the ModuleType are defined for the Demonstration Scenario application:
Information model containing the PFDL parameter:
WarehouseModuleType with the method GetPartsFromWarehouse
CoatingModuleType with the method Coating
MillingModuleType with the method Milling
GluingModuleType with the method Gluing
MountingModuleType with the method Mounting