PSM Arithmetic, Example Of PSM Function - GF54.21-S-3055-01TRF
Model 447
With Code ED5 (Parameterisable special module)
Except Code XM7 (MOPF II)
Vehicle interior temperature, constants
Model 448
With Code ED5 (Parameterisable special module)
Except Code XM7 (MOPF II)
Vehicle interior temperature, constants
Vehicle interior temperature function blocks
The vehicle interior temperature (interior CAN (CAN B): "AirTemp_Insd") can be output at one of the pulse width modulation-compatible outputs.
Formula: duty cycle = (vehicle interior temperature [°C] * 4)/232 [°C]
| Value range of vehicle interior temperature | 0...58°C |
| Value range of pulse width modulated signal | 0...100 % |
| Frequency | 200 Hz |
100 If no air conditioning system is installed ("AAC_VH = [0]"), then the output is constantly switched through (i.e. pulse width modulation (PWM) = 100%).
The vehicle interior temperature is realized through the programmable logic controller (PLC) group, arithmetic unit (AU) and the "MFA" blocks. The picture shows the simplified function block operation. The configuration is available in the tables.
Function description of implementation
PLC G9 value table 1 (WT1 PLC G9):
- Forward vehicle interior temperature if air conditioning system is installed, otherwise default value is output.
Comparator 6, calculation step 1 (Comp 6):
- Check whether vehicle interior temperature is within valid value range, if so, output 1.
Comparator 7, calculation step 2 (Comp 7):
- Check whether vehicle interior temperature is limited to valid value range.
Arithmetic unit memory (Memory 1):
- Output valid signal, otherwise output last stored value.
PLC G12 flip-flop 2 (FF2):
- Output 1 if a valid signal is received after wake-up.
PLC G8 value table 1 (WT 1 PLC G8):
- If valid signal was received, result is output from memory, otherwise default value.
Calculation block 10, calculation step 4 (Calc 10):
- Conversion of the valid signal 0 to 232 to 232 into the duty cycle 0 to 10 000 to 10000 (0 to 100 to 100%).
| - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Signal name | Signal ID |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Input | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | F13 | F14 | F15 | F16 | Signal name | Identification number (ID) of signal | Default value (signal name) | Out_AU_Const_14 | 0x8040 |
| WT1_1 (value 1) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | HVAC_AVL | 0x1290 | Value 1 (signal name) | AirTemp_Insd | 0x237 |
| 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 | Compare operation |
|---|---|---|---|
| Compare_6_a | Out_AU_Const_14 | 0x804D | Input a (a) ≥ Input b (b) |
| Compare_6_b | Out_G9_WT1 | 0x3070 | |
| Compare_6_c | Const_Bit_1 | 0x1001 | |
| Compare_6_d | Const_Bit_0 | 0x1000 |
| Input | Signal name | Signal ID | Terminal 58D, comparator block |
|---|---|---|---|
| Compare_7_a | Out_AU_Const_14 | 0x804D | Input a (a) ≥ Input b (b) |
| Compare_7_b | Out_G9_WT1 | 0x3070 | |
| Compare_7_c | Out_G9_WT1 | 0x3070 | |
| Compare_7_d | Const_Bit_0 | 0x1000 |
| Input | Signal name | Signal ID | Arithmetic unit memory | - | - |
|---|---|---|---|---|---|
| Memory_1_value | Out_AU_Compare_7 | 0x802A | - | Activation delay (in 20 ms steps) | 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 | Mode | Sequential point (1) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 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 | Threshold A | 0 |
| FF2_2 (reset/clock) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | - | - | Threshold B | 800 |
| - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | PLC G8 value table 1 configuration | - | Signal name | Signal ID |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Input | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | F13 | F14 | F15 | F16 | Signal name | Signal ID | Default value (signal name) | Out_AU_Const_14 | 0x8040 | |
| 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) | AirTemp_Insd | 0x237 | |
| 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 | Upper limit value | Lower limit value |
|---|---|---|---|---|
| Calc_10_a | Out_G8_WT1 | 0x3067 | 1000 | 0 |
| 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 000 | Maximum duty cycle |
| Constant 13 | 2000 | Frequency |
| Constant 14 | 250 | Maximum valid value of interior CAN (CAN B) signal |
| 1A High-Side, PWM | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | F13 | F14 | F15 | F16 | Signal name | Signal ID | MFA 6 | - | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| MFA6_Eingang1 (active) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Const_Bit_1 | 0x1001 | - | Model | Output (1) |
| MFA6_Eingang2 (const/pulse) | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Const_Bit_0 | 0x1000 | Reactivation attempts | 1 | |
| MFA6_Eingang3 (Cutoff reset) | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Term15_Actv | 0x1219 | PWM type | Frequency (0) | |
| MFA6_Eingang4 (cycle time) | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Const_Bit_0 | 0x1000 | - | ||
| MFA6_Eingang5 (pulse time) | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Const_Bit_0 | 0x1000 | |||
| MFA6_Eingang6 (PWM active) | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Const_Bit_1 | 0x1001 | |||
| MFA6_Eingang7 (PWM cycle) | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Out_AU_Const_13 | 0x804C | |||
| MFA6_Eingang8 (PWM duty) | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Out_AU_Calc_10 | 0x8009 | |||