Operations Segment

Sepasoft MES Module Suite

Operations Segment

An Operations Segment is defined as a task that is performed during manufacturing. It is always derived from a Process Segment, which means that the property values and resource definitions for material, personnel and equipment are copied over from a Process Segment to its linked Operations Segment.

Linking Operation Segments within an Operations Definition

Operations Segments may be linked to an Operations Definition using the Segment Dependency Property object of the Operations Segment. The dependency object can be used to provide links between all segments within an Operations Definition. The MES Object Editor can be used to create the links for you on the Operations Segment, not the Operations Definition. Links can also be created through scripting.

Inherits properties, methods, events from AbstractMESObject

Object Creation

Operations Segments can be created using the MES Object Editor component and also with scripting functions. When updating a Process or Operations Segment using the MES Object Editor component, the user will be asked if they want to update the dependencies of any derived Operations Segments. If they answer yes, the changes will be pushed to all Process Segments or Operations Segments that were derived from the modified Process Segment.

The following scripting functions can be used to create or return this object.
Python
#Load the process segment to base the operations segment on
psName = 'Unload Nuts'
ps = system.mes.loadMESObject(psName, 'ProcessSegment')
     
#Derive a new operation segment from the process segment
os = system.mes.deriveMESObject(ps, 'OperationsSegment', True)
     
#Set where it was derived from
os.setPropertyValue('DerivedFromRefType', 'ProcessSegment')
os.setPropertyValue('DerivedFromRefUUID', ps.getUUID())
     
#Set the name
os.setPropertyValue('Name', psName)
        
#Create a new operations definition
od = system.mes.createMESObject('OperationsDefinition')
#Set the name using the same name as the operations segment
od.setPropertyValue('Name', psName)
     
#Create a new segment dependency complex property in the operations definition that points to the operations segment
depProp = od.createComplexProperty('SegmentDependency', ps.getName())
depProp.setSegmentRefType('OperationsSegment')
depProp.setSegmentRefUUID(os.getUUID())
     
#Create a new begin trigger complex property in the operation segment
begTrig = os.createComplexProperty('TriggerSegBegin', 'DefaultBeginTrigger')
begTrig.setPrecedingRefType('OperationsDefinition')
begTrig.setPrecedingRefUUID(od.getUUID())
begTrig.setMode('At Operation Begin')
begTrig.setDefault(True)
     
#Save the objects as a group
objList = system.mes.object.list.createList()
objList.add(od)
objList.add(os)
system.mes.saveMESObjects(objList)

Object Properties

These properties are accessible through the MES Object Editor and with the provided object functions, but not directly as obj.properties. Property values can be accessed and changed for an object by using the getPropertyValue() and setPropertyValue() method.

Name
R/W
Description

EndOperationWhenComplete

Read/Write

If this property is set to True, then the operations automatically ends when segment is complete

SegmentRecipeName

Read/Write

This is a drop down list of available recipes which can be set to be used on segment start

Warning The "EndOperationWhenComplete" property will prompt an Operations Response to end when a Response Segment (based on an Operations Segment with this flag set to true) ends. This will impact other segments under the Operations Response by immediately ending them. Please consider all possible Response Segments that may be running during an Operations Response when configuring this property.

Inherits AbstractMESObject core properties

Complex Properties

An operations segment uses complex property objects to hold information about the resources associated with a task as well as OEE production settings. These complex properties can be added to the process segment using the MES Object Editor component or through scripting with the AbstractMESObject.createComplexProperty() function.
Property Object
Scripting
Description
Material Resource Property
Material
Any material lots that may be consumed or created during an operation derived from the process segment are defined here. There is no requirement to create material complex properties e.g. a maintenance process segment, and there is no restriction on how many input, output or consumable materials are defined for a process segment.
Equipment Resource Property
Equipment
A process segment requires one and only one Equipment complex property to be defined. this sets up production control on where this process segment can be executed. If you want to create a process segment that can occur on any piece of equipment e.g. 'Clean Equipment', set the equipment reference to an equipment class that contains all equipment.
Supplemental Equipment Resource Property
SupplementalEquipment
Mobile equipment that can be moved around such as bins, containers, die sets etc. cannot be defined in the production model as fixed equipment as defined by ISA-95. The MES Object Editor and scripting functions can be used instead to create Supplemental Equipment. Any supplemental equpiment that may be used by an operation can be defined here.
Personnel Resource Property
Personnel
Personnel complex properties allow to you add production control to a process segment by defining who can execute this process segment. This complex property is optional and can be left blank.



ProductionSettings

Production settings contain rate information that is used by the OEE module to calculate operational performance.

Warning
Known Limitations

In a T&T scenario that runs multiple segments in parallel, OEE production settings with different modes will override each other since they are all using the same mode value.
If multiple operations are running on the same piece of equipment, they will override each others OEE values since there is only one place to write the values. While this can be controlled inside of OEE with indexing, for T&T the situation is more generic and cannot be controlled.
If a segment is not configured for OEE but is set to end operation when complete, the OEE ending values will not be recorded.
It is not verified that the production settings of the ending segment match the production settings of the starting segment. It is simply verified whether or not the segment ending has OEE settings or not.
Trigger Segment Begin Property
TriggerSegmentBegin
This property holds information about what will trigger the start of an operation segment.
Trigger Segment End Property
TriggerSegmentEnd
This property holds information about what will cause an operation segment to end.

Functions

This object provides the following functions:


 

getEquipment()

Description

Return the equipment MES object associated with the segment. This will be the same equipment that is associated with the operation that the segment is running under.

Syntax

getEquipment()

  • Parameters

 None

  • Returns

 The AbstractMESObject representing the equipment.

  • Scope

All

 

getEquipmentLink()

Description

Return the link to the equipment MES object associated with the segment. This will be the same equipment that is associated with the operation that the segment is running under.

Syntax

getEquipmentLink()

  • Parameters

 None

  • Returns

 The MES Object Link representing the equipment.

  • Scope

All

 

getEquipmentProperty()

Description

Return the complex property of the equipment MES object associated with the segment. This will be the same equipment that is associated with the operation that the segment is running under.

Syntax

getEquipmentProperty()

  • Parameters

 None

  • Returns

 The MESEquipmentProperty representing the equipment.

  • Scope

All

 

getPrimaryBeginTrigger()

Description

Return the property that triggers to begin the segment.

Syntax

getPrimaryBeginTrigger()

  • Parameters

 None

  • Returns

TriggerSegmentBeginProperty property - The property that triggers the segment to begin operation.

  • Scope

All

 

getPrimaryEndTrigger()

Description

Return the property that triggers to end the segment.

Syntax

getPrimaryEndTrigger()

  • Parameters

 None

  • Returns

TriggerSegmentEndProperty property - The property that triggers the segment to end operation.

  • Scope

All

 

getProductionSettingsProperty(equipmentPath)

Description

Returns the production settings property.

Syntax

getProductionSettingsProperty(equipmentPath)

  • Parameters

String equipmentPath - The path of equipment to return the production settings for.

  • Returns

 MESProductionSettingsProperty productionSettings - The production settings corresponding to the specified equipment path.

  • Scope

All

Code Examples
Code Snippet
1
2
3
4
eqPath ='\\Enterprise\Site\Area\Line 4\Filler'
seg =system.mes.loadMESObject('Basil-Enterprise:Site:Area:Line 4''OperationsSegment')
prop =seg.getProductionSettingsProperty(eqPath)
printprop.getOEERate()

Sepasoft MES Module Suite