Part 4 : Automation Services and Process Values¶
PROFIBUS International – MTP Specification Part 4 defines the modeling of services for Process Equipment Assemblies (PEAs). This includes the definition of service interfaces, procedures, parameters, report values, and the state machine logic that governs the execution of automation services.
Implemented aspects¶
| Aspect | Description | MTPPy2.0 |
|---|---|---|
| Command & State Codes | Standardized numeric definitions for service commands and state identifiers. | CommandCodes, StateCodes |
| Service Base | Core definition of an MTP service, managing resources, procedures, and the overall service state. | Service |
| Procedure | A specific task within a service, defined by parameters and report values. | Procedure |
| Service Control & State Machine | Logic for managing state transitions (idle, starting, execute, etc.) and handling MTP commands. | StateMachine, CommandEnControl, ServiceControl |
| Service Parameters | Configuration and procedure parameters used to customize service behavior. | ParameterElement, AnaServParam, BinServParam, DIntServParam, StringServParam |
| Process Value Inputs | Standardized input elements used as inputs to services. | InputElement, AnaProcessValueIn, BinProcessValueIn, DIntProcessValueIn, StringProcessValueIn |
| Report Values | Process values emitted by procedures as report outputs. | see Part 3 |
Class Diagram¶
classDiagram
class MTPSet {
<<SystemUnitClass>>
}
class TextSet {
<<SystemUnitClass>>
}
class ServiceSet {
<<SystemUnitClass>>
}
class Service {
<<SystemUnitClass>>
}
class ConfigurationParameter {
<<SystemUnitClass>>
}
class ServiceProcedure {
<<SystemUnitClass>>
IsSelfCompleting
ProcedureId
IsDefault
}
class ServiceParameter {
<<SystemUnitClass>>
}
class ProcedureParameter {
<<SystemUnitClass>>
}
class ProcessValueIn {
<<SystemUnitClass>>
}
class ReportValue {
<<SystemUnitClass>>
}
class ProcessValueOut {
<<SystemUnitClass>>
}
class ServiceRelation {
<<SystemUnitClass>>
SourceServiceID
SourceProcedureID
SourceValue
TargetServiceID
TargetProcedureID
TargetValue
}
MTPSet <|-- TextSet
MTPSet <|-- ServiceSet
ServiceSet *-- ServiceRelation : 0..*
ServiceSet *-- Service : 0..*
Service *-- ServiceProcedure : 1..*
Service *-- ConfigurationParameter : 0..*
ConfigurationParameter --|> ServiceParameter
ProcedureParameter --|> ServiceParameter
ProcessValueIn --|> ServiceParameter
ReportValue --|> ServiceParameter
ProcessValueOut --|> ServiceParameter
ServiceProcedure *-- ProcedureParameter : 0..*
ServiceProcedure *-- ProcessValueIn : 0..*
ServiceProcedure *-- ReportValue : 0..*
ServiceProcedure *-- ProcessValueOut : 0..*