| Volume pwrb | |
| Attributes: Runtime | Development | System | Template | Detail C Binding: Struct | Class | Code  ClassTree | INDEX NO INDEX |
Class Out2P
|
||
|---|---|---|
| Version | 1.0 | |
| Modified | 08-MAR-2026 11:05:32.00 | |
| Code | rt_plc_pid.c | |
Converts an analog signal into a binary signal which varies in the time. The binary output has a pulse-proportional relay action in the dead zone, if MinOut < MaxOut, else on/off-action with hysteresis.

The digit 2 in the object name comes from the output which may have two distinct values with a two-step action; e.g. full on / full off but also with the meaning of open / closed, forward / backward, or right / left etc. Two cases exist: 1. MinOut < MaxOut If OutVal < MinOut the Order is always FALSE and if OutVal > MaxOut the Order is always TRUE.

When MinOut = OutVal = MaxOut the output, Order, has a pulse-proportional relay action
with the cycle time Period .
At pulse-proportional relay control the proportion between On/off is the same as the
proportion of (OutVal - MinOut) / (MaxOut - MinOut)
This quotient is updated at every scanning. If a period starts with an on-state it will
remain until,
(OutVal(t) - MinOut) / (MaxOut(t) - MinOut(t) * Period = time from last change of state
After this it will be off-state until,
1 - (OutVal(t) - MinOut) / (MaxOut(t) - MinOut(t) * Period = time from last change of state
2. MinOut = MaxOut gives the output an on/off-action with hysteresis, likewise a combined
Compl and Comph object

| RtBody attributes pwr_sClass_out2p | |||
|---|---|---|---|
| Float32 | OutVal | OUT | Input signal, e.g. the OutChange of a Pid object. |
| Boolean | Order | on | The performance of the output signal is different depending on MinOut < MaxOut or MinOut ³ MaxOut. See above. |
| Pointer to Float32 | ScanTime | ScanTime | Program cycle period in seconds. |
| Float32 | MaxOut | MaxOut | The upper and lower end of the dead zone. Two cases with different performance depending on MinOut < MaxOut or MinOut >= MaxOut. |
| Float32 | MinOut | MinOut | |
| Float32 | Period | Period | Pulse period, in seconds, at pulse-proportional relay action. |
| Float32 | RunTime | RunTime | Accumulated time in seconds counted from the last change of state. |
| DevBody attributes | |||
|---|---|---|---|
| PlcNode | PlcNode | ||
| GraphPlcNode | |
|---|---|
| object_type | 154 |
| parameters[0] | 1 |
| parameters[1] | 0 |
| parameters[2] | 1 |
| parameters[3] | 0 |
| subwindows | 0 |
| graphmethod | 0 (standard, individual attributes) |
| graphindex | 0 |
| default_mask[0] | 1 |
| default_mask[1] | 1 |
| segname_annotation | 1 |
| compmethod | 4 |
| compindex | 0 |
| executeordermethod | 2 |
| objname | Out2P |
| graphname | Out2P |
| debugpar | |
| Template Object | |
|---|---|
| MaxOut | 100.0 |
| Period | 60 |
| OutVal Input | ||
|---|---|---|
| Class | Input | |
| Type | Float32 | |
| Flags | REDUTRANSFER | |
| GraphName | OUT | |
| Body | RtBody | |
Input signal, e.g. the OutChange of a Pid object.
| Order Output | ||
|---|---|---|
| Class | Output | |
| Type | Boolean | |
| Flags | STATE | NOEDIT | REDUTRANSFER | |
| GraphName | on | |
| Body | RtBody | |
The performance of the output signal is different depending on MinOut < MaxOut or MinOut ³ MaxOut. See above.
| ScanTime Intern | ||
|---|---|---|
| Class | Intern | |
| Type | Pointer to Float32 | |
| Flags | INVISIBLE | POINTER | PRIVATE | |
| GraphName | ScanTime | |
| Body | RtBody | |
Program cycle period in seconds.
| MaxOut Intern | ||
|---|---|---|
| Class | Intern | |
| Type | Float32 | |
| Flags | ||
| GraphName | MaxOut | |
| Body | RtBody | |
The upper and lower end of the dead zone. Two cases with different performance depending on MinOut < MaxOut or MinOut >= MaxOut.
| MinOut Intern | ||
|---|---|---|
| Class | Intern | |
| Type | Float32 | |
| Flags | ||
| GraphName | MinOut | |
| Body | RtBody | |
| Period Intern | ||
|---|---|---|
| Class | Intern | |
| Type | Float32 | |
| Flags | ||
| GraphName | Period | |
| Body | RtBody | |
Pulse period, in seconds, at pulse-proportional relay action.
| RunTime Intern | ||
|---|---|---|
| Class | Intern | |
| Type | Float32 | |
| Flags | STATE | NOEDIT | INVISIBLE | REDUTRANSFER | |
| GraphName | RunTime | |
| Body | RtBody | |
Accumulated time in seconds counted from the last change of state.
| PlcNode Buffer | ||
|---|---|---|
| Class | Buffer | |
| Type | PlcNode | |
| Flags | INVISIBLE | |
| Body | DevBody | |