Interfaces
Framework Base
I_BaseFB
Defines the most basic functionality of any function block used within the framework
Properties
Property | Type | Access | Description |
---|---|---|---|
Busy | BOOL | R | Function block is performing some action |
Error | BOOL | R | Function block has encountered an error condition |
ErrorID | UDINT | R | Error-specific identifier |
I_CyclicFB
(extends I_BaseFB
)
Adds to I_BaseFB
the concept of initialization, as well as a unified entry point for cyclical code to be called. You may have collections of I_CyclicFB
which are iterated through, calling CyclicLogic()
on each.
Properties
Property | Type | Access | Description |
---|---|---|---|
InitComplete | BOOL | R | Flag indicating that the function block is ready to use |
Methods
Method | Return Type | Description |
---|---|---|
CyclicLogic | null | Entry point for code execution |
Component Base
I_ComponentBase
(extends I_CyclicFB
)
Defines basic required functionality for component-level function blocks
Note
This interface was previously located in the SPT_Component_Base library. It was consolidated into this library as of v3.1.0. Previous library releases are still included in this repository but are no longer maintained.
Info
See I_BaseFB for more information.
Properties
Property | Type | Access | Description |
---|---|---|---|
CurrentAlarmSeverity | TcEventSeverity | R | Returns the highest severity of any currently active events |
InSimulation | BOOL | RW | Flag to indicate to component/parent that this component is running simulation code (defined per component) |
Name | STRING | RW | Name of this component |
ParentResponseDefinitions | ARRAY[0..4] OF E_AlarmResponse | RW | Defines how the parent of this component should react to each event severity |
ParentResponseDefinitions
PROPERTY ParentResponseDefinitions : ARRAY[0..4] OF E_AlarmResponse
The expected response type of a component's parent can be specified. The actual response logic is determined by the component's parent. The parent should observe CurrentAlarmSeverity
and then decide what to do in response.
Example
1 2 3 4 5 |
|
Methods
Method | Return Type | Description |
---|---|---|
AllowHMIControl | null | Signal to this component that external functions via HMI should be allowed |
BlockHMIControl | null | Signal to this component that external functions via HMI should be blocked |
Reset | BOOL | Command this component to execute its fault reset routine |
PackML Base
I_PackML_BaseModule
(extends I_CyclicFB
, I_PackML_Control
)
Defines basic state & mode controls & status information required of all PackML modules (Machine Modules & Equipment Modules)
Note
This interface was previously located in the SPT_PackML_Base library. It was consolidated into this library as of v3.1.0. Previous library releases are still included in this repository but are no longer maintained.
Info
See I_BaseFB and I_PackML_Control for more information.
Properties
Property | Type | Access | Description |
---|---|---|---|
CurrentAlarmSeverity | TcEventSeverity | R | Highest severity of any currently active event(s) |
LogModeChanges | BOOL | RW | Enable/Disable logging of mode changes |
LogStateChanges | BOOL | RW | Enable/Disable logging of PackML state changes |
DisableSubModuleModeChange | BOOL | RW | Enable/Disable SubModule Mode change if Mode of this instanz is changed |
Name | STRING | RW | Name of this module |
ParentResponseDefinitions | ARRAY[0..4] OF E_AlarmResponse | RW | Defines how the parent of this module should react to each event severity |
ParentResponseDefinitions
PROPERTY ParentResponseDefinitions : ARRAY[0..4] OF E_AlarmResponse
The expected response type of a module's parent can be specified. The actual response logic is handled by the module's parent. The parent can observe CurrentAlarmSeverity
and then decide what to do in response.
Example
1 2 3 4 5 |
|
I_PackML_Control
Defines basic control and feedback mechanisms for control of PackML modules
Note
This interface was previously located in the SPT_PackML_Base library. It was consolidated into this library as of v3.1.0. Previous library releases are still included in this repository but are no longer maintained.
Properties
Property | Type | Access | Description |
---|---|---|---|
CurrentMode | E_PMLUnitMode | R | Current PackML mode |
CurrentState | E_PMLState | R | Current PackML state |
ModeCommand | DINT | RW | Commanded PackML mode |
StateCommand | E_PMLCommand | RW | Commanded PackML state |
Note
You can request a mode/state change using the method call ChangeState()
/ChangeMode()
or by setting the StateCommand
/ModeCommand
properties; they both do the same thing.
Methods
Method | Return Type | Description |
---|---|---|
ChangeMode | null | Request to enter a given mode |
ChangeState | null | Issue a specific PackML state command |
I_PackML_ExternalController
(extends I_CyclicFB
, I_PackML_Control
)
Defines complete means of external control of a PackML module's commanded mode and state. A module can have many different external controllers registered with it-these could be pushbutton groups, HMIs, SCADA systems, etc.
Note
This interface was previously located in the SPT_PackML_Base library. It was consolidated into this library as of v3.1.0. Previous library releases are still included in this repository but are no longer maintained.
Info
See I_CyclicFB and I_PackML_Control for more information.
Note
See FB_PackML_BaseModule.RegisterExternalController() and See FB_ControlSource for more information.
Properties
Property | Type | Access | Description |
---|---|---|---|
Control | I_PackML_Control | W | Interface pointer to control interface of module |
Methods
Method | Return Type | Description |
---|---|---|
ModeChanged | null | Serves as a callback notification to external controllers that the module's mode has changed |
StateChanged | null | Serves as a callback notification to external controllers that the module's state has changed |