PSM Arithmetic, Example Of PSM Function - GF54.21-S-3055-01TRA
Model 447
With Code ED5 (Parameterisable special module)
Except Code XM7 (MOPF II)
Outside temperature, calculation block
Model 448
With Code ED5 (Parameterisable special module)
Except Code XM7 (MOPF II)
Outside temperature, calculation block
Function blocks for outside temperature
The outside temperature (interior CAN (CAN B): "AirTemp_OutSd") can be output on one of the pulse-width-modulation-compatible outputs (A).
Formula: duty cycle = (outside temperature [°C] + 40 [°C])/125 [°C]
| Outside temperature value range | -40 to 85°C |
| Value range of pulse width modulated signal | 0...100% |
| Frequency | 200 Hz |
If a value (W) outside the valid range is sent, the last valid value (W) is used. If a valid value (W) is still not available, 0 % pulse width modulation (PWM) is output. The PWM function for the outside temperature is implemented using groups of the programmable logic controller (PLC), arithmetic unit and multifunction output blocks. The picture above shows the simplified linking of the function blocks. The configuration is available in the tables.
Function description of implementation
Comparator 6, calculation step 1 (Comp 6):
- Check that the input signal is in the valid value range (0 to 250), then output "1", otherwise "0"
Comparator 7, calculation step 2 (Comp 7):
- Restrict the valid value range of the input signal to 0 to 250; 250 is output for values (W) over 250.
Arithmetic unit memory (Memory 1):
- Output the received signal if it is in the valid value range, otherwise output the value (W) stored last
Flip-flop 2 (FF2 PLC G12):
- Output "1" if a valid signal was received after wake-up of a control unit
Value table 1 (WT1):
- If a valid signal has been received, the result is output by the memory, otherwise the default value ("0")
Calculation block 10, calculation step 4 (Calc 10):
- Conversion of the valid signal from 0 to 250 to the value range 0 to 10 000 to 10000 (0 to 100 to 100%)
Multifunction output block (MFA 6):
- Output of PWM: Frequency comes from constant = 2000 (200 Hz); capacity utilization is result of calculation block 10, calculation step Rechenblock 104 (Calc 10), output (A) is permanently ON, i.e. PWM is output from locally active control unit.
Signal identification number = Signal ID.
The signal IDs are notated in hexadecimal form.
| Input | Signal name | Signal ID | Compare operation |
|---|---|---|---|
| Compare_6_a | Out_AU_Const_14 | 0x804D | Input a (a) ≥ Input b (b) |
| Compare_6_b | AirTemp_OutSd | 0x206E | |
| Compare_6_c | Const_Bit_1 | 0x1001 | |
| Compare_6_d | Const_Bit_0 | 0x1000 |
| Input | Signal name | Signal ID | Compare operation |
|---|---|---|---|
| Compare_7_a | Out_AU_Const_14 | 0x804D | Input a (a) ≥ Input b (b) |
| Compare_7_b | AirTemp_OutSd | 0x206E | |
| Compare_7_c | Const_Bit_1 | 0x1001 | |
| Compare_7_d | Const_Bit_0 | 0x1000 |
| Input | Signal name | Signal ID | Activation delay (in 20 ms steps) |
|---|---|---|---|
| Memory_1_value | Out_AU_Compare_7 | 0x802A | 0 |
| Memory_1_Enable | Out_AU_Compare_6 | 0x8029 |
| Input | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | F13 | F14 | F15 | F16 | Signal name | Signal ID | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| FF2_1 (set/data) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Out_AU_Calc_4 | 0x8003 | Flip-flop type | D_FF (1) |
| FF2_2 (reset/clock) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | - | - | Flip-flop evaluation | Status-controlled/positive signal edge (0) |
| Input | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | F13 | F14 | F15 | F16 | Signal name | Signal ID | Value table 1 | Default value (signal name) | Const_Bit_0 | 0x1000 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| WT1_1 (value 1) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Out_G12_FF2 | 0x3089 | Value 1 (signal name) | Out_AU_Memory_1 | 0x8030 | |
| WT1_2 (value 2) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Const_Bit_0 | 0x1000 | Value 2 (signal name) | Const_Bit_0 | 0x1000 | |
| WT1_3 (value 3) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Const_Bit_0 | 0x1000 | Value 3 (signal name) | Const_Bit_0 | 0x1000 | |
| WT1_4 (value 4) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Const_Bit_0 | 0x1000 | Value 4 (signal name) | Const_Bit_0 | 0x1000 |
| Input | Signal name | Signal ID | Lower limit value | Upper limit value |
|---|---|---|---|---|
| Calc_10_a | Out_G8_WT1 | 0x308B | 0 | 10000 |
| Calc_10_m1 | Out_AU_Const_12 | 0x804B | ||
| Calc_10_m2 | Out_AU_Const_14 | 0x804D | ||
| Calc_10_b | Const_Bit_0 | 0x1000 |
| Constants | Arithmetic unit | Meaning |
|---|---|---|
| Constant 12 | 10000 | Maximum duty cycle |
| Constant 13 | 2000 | Frequency |
| Constant 14 | 250 | Maximum valid value (W) |
| 1A High-Side, PWM | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | F13 | F14 | F15 | F16 | Signal name | Signal ID |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Input 1 (active) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Const_Bit_1 | 0x1001 |
| Input 2 (const/pulse) | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Const_Bit_0 | 0x1000 |
| Input 3 (cycle time) | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Const_Bit_0 | 0x1000 |
| Input 4 (pulse time) | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Const_Bit_0 | 0x1000 |
| Input 5 (Cutoff reset) | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Term15_Actv | 0x1219 |
| Input 6 (PWM active) | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Const_Bit_1 | 0x1001 |
| Input 7 (PWM freq./cycle) | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Out_AU_Const_13 | 0x804C |
| Input 8 (PWM duty/pulse width) | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Out_AU_Calc_10 | 0x8009 |