Skip to main content

Requirement

A class to represent Requirements for manufacturing Actions.

Requirements define the specific resources, components, tools, or personnel needed to execute an Action. Each Requirement specifies a type (e.g., Machine, Part, Worker) and detailed specifications for that type.

The Requirement types are defined by the RequirementType:

  • Machine: Manufacturing equipment requirements
  • Workstation: Workstation requirements
  • Conveyor: Conveyor system requirements
  • Robotic Arm: Robotic Arm requirements
  • Vehicle: Transport requirements
  • Part: Part/Material requirements
  • Product: Product requirements
  • Worker: Personnel requirements
  • Tool: Equipment requirements

Best Practices:

  • Specify requirements at the appropriate level of detail
  • Include quantity information for parts and products
  • Clearly define skill requirements for workers
  • Specify exact machine types when necessary
  • Use generic types when flexibility is possible

Attributes:

NameData TypeDescription
typeRequirementTypeType of requirement. See RequirementType
specsList[Any]Specifications for the requirement, format depends on type

Example Requirements:

  • Specific machine requirement
Requirement(type=RequirementType.MACHINE, specs=["CNC Mill"])
  • Part requirement with quantity
Requirement(type=RequirementType.PART, specs=["Steel Plate", 5])
  • Generic worker requirement
* Requirement(type=RequirementType.WORKER, specs=[])
```python
* Specific worker role requirement
```python
Requirement(type=RequirementType.WORKER, specs=["Technician"])
note

The format of the specs list varies depending on the requirement type. Always validate the specs format against the requirement type's expectations.

Constructor

def __init__(self, type: omm.RequirementType, specs: List[Any]) -> None:

Methods

Example Usage

# Create a new Requirement instance
Requirement(
type=<RequirementType>
specs=<List>
)