This engineering reference describes how to scale a Siemens LOGO! 8 PT100 (RTD) input into a 0–10 V analog output across the temperature window of 15 °C to 45 °C. The configuration uses the AM2 RTD expansion module and the LOGO! Soft Comfort mathematical instruction block. Internal representation (0–1000 units), the offset/gain arithmetic, and saturation at 0 V and 10 V are documented in detail, together with a verification matrix that prevents the decimal-place pitfall commonly introduced on first attempts.
Problem Definition
A PT100 resistance-temperature detector measures a process temperature that varies between 15 °C and 45 °C. The LOGO! 8 must drive a 0–10 V signal that commands a variable-speed ventilator. The required transfer characteristic is linear:
- 15.0 °C → 0 V (fan stopped)
- 45.0 °C → 10 V (fan at full speed)
- Linear interpolation between both endpoints
- Saturation outside the window (below 15 °C → 0 V, above 45 °C → 10 V)
Outside the active window the fan must stay at the rail rather than wrap, fold, or oscillate. This requires the math block to be tuned so that only the 15 °C to 45 °C span produces values in the 0–1000 range accepted by the LOGO! analog output.
Prerequisites
| Item | Specification |
|---|---|
| Logic module | LOGO! 8 BM (for example 6ED1052-1MD08-0BA0 relay variant or 6ED1052-1CC08-0BA0 solid-state variant) with built-in analog output AQ1 |
| RTD expansion | LOGO! AM2 RTD (6ED1055-1MD00-0BA2 / -1MH00-0BA3), two PT100/PT1000/Ni1000 inputs |
| RTD probe | PT100, 100 Ω at 0 °C, TCR = 0.00385 Ω/Ω/°C (IEC 60751), class A or class B |
| Engineering software | LOGO! Soft Comfort V8.4 (current release line for the 0BA8 Standard and 0BA8.FS2 firmware) |
| Cabling | Shielded twisted pair, 3-wire termination preferred when lead length exceeds 3 m |
| Reference document | LOGO! 8.4 product brochure (Siemens, PDF) |
The LOGO! 8.4 brochure lists every BM, TDE, AM2, DM, and CM variant together with their ambient ratings. The standard LOGO! 8.4 is rated –20 °C to +55 °C; the SIPLUS extreme variant extends the operating envelope for harsher installations.
PT100 Sensor Background
A PT100 element is a platinum resistor whose resistance rises with temperature:
- 0 °C → 100.00 Ω
- 15 °C → 105.78 Ω
- 20 °C → 107.79 Ω
- 30 °C → 111.67 Ω
- 45 °C → 119.40 Ω
- 50 °C → 121.34 Ω
The AM2 RTD measures the resistance and converts it to a digital value using its internal Σ-Δ ADC. Because the AM2 RTD always delivers 0.1 °C units internally, the LOGO! Soft Comfort analog block has to apply the 2.5-fold gain factor (or 0.25 if X1 resolution is selected) to map the raw count to the user-visible °C display.
Hardware Wiring
Connect the PT100 to the AM2 RTD input. The AM2 RTD exposes two PT100 channels; sensor 1 lands on the I1 terminals, sensor 2 on the I2 terminals. The wiring modes supported are:
| Mode | Use case | Compensation |
|---|---|---|
| 2-wire | Short leads, bench testing | None; lead resistance adds directly to the reading (≈ 0.385 °C/Ω) |
| 3-wire | Field installation > 3 m | Lead resistance cancelled by the AM2 RTD |
| 4-wire | Highest accuracy, lab work | Not natively supported by AM2 RTD; use external 4-wire RTD transmitter |
The 0–10 V ventilator control input lands on the LOGO! 8 AQ1 terminal. Some LOGO! 8 BM main units ship with AQ disabled in the device configuration; enable AQ1 from the LOGO! Soft Comfort hardware configuration dialog or directly on the device under Edit → Analog Outputs.
Internal Representation of Analog Values
The LOGO! 8 family normalises every analog value to a 0–1000 (or signed equivalent) integer scale:
| Physical signal | Internal range | Resolution |
|---|---|---|
| 0–10 V analog output AQ | 0 to 1000 | 10 mV / step (10-bit effective) |
| 0/4–20 mA analog output | 0 to 1000 | 20 µA / step |
| 0–10 V analog input | 0 to 1000 | 10 mV / step |
| 4–20 mA analog input | 0 to 1000 | 16 µA / step |
| PT100 (AM2 RTD, X10) | –500 to +2000 | 0.1 °C / step |
| PT100 (AM2 RTD, X1) | –50 to +200 | 1 °C / step |
Every value written to AQ1 is clamped by the firmware:
- Value < 0 → 0 V
- 0 ≤ Value ≤ 1000 → linear 0–10 V
- Value > 1000 → 10 V
The clamping is not a bug; it is the safety behaviour the ventilator requires. The job of the math instruction is to ensure that the operating window (15 °C to 45 °C) does not collide with the rails.
Linear Mapping Formula
The transfer characteristic y = m·x + b is derived from the two endpoints:
- y = analog output (0 to 1000)
- x = PT100 reading in 0.1 °C units (–500 to +2000 with X10)
- m = (1000 – 0) / (450 – 150) = 3.333…
- b = –m · 150 = –500
Combined formula: y = (x – 150) · 3.333
The constant 150 corresponds to 15.0 °C in 0.1 °C units, and 450 to 45.0 °C. Both numbers come straight from the AM2 RTD digital output when X10 resolution is selected. Switching to X1 resolution divides both constants by 10 (15 and 45) and multiplies the gain by 10 (33.333).
Step-by-Step Configuration in LOGO! Soft Comfort
- Create or open the project for the LOGO! 8 BM. In the network editor add the AM2 RTD to the right of the BM. Assign sensor 1 to channel AI3 (or to the next free RTD slot of the BM, depending on the firmware variant).
- From the analog function library drag the Analog Input block onto the diagram and connect its input to AI3. Set Sensor = PT100, Resolution = X10 (0.1 °C), Gain = 1.0, Offset = 0.0. The block now outputs the integer 150 at 15.0 °C, 300 at 30.0 °C, 450 at 45.0 °C.
- From the analog function library drag the Mathematical Instruction block onto the diagram.
- Configure the math instruction:
- V1 = analog flag of the PT100 input
- P1 = 150 (offset)
- P2 = 3.333 (gain)
- Operator chain = (V1 – P1) × P2
- Wire the math instruction result to the analog output AQ1.
- Save the project and transfer to the LOGO!. In online mode or simulation, force AI3 = 150 and confirm that AQ1 reads 0 ± 2 units.
Alternative: Resolution X1 Without Decimal Display
Engineers who prefer working in whole degrees rather than 0.1 °C can switch the analog input block to Resolution X1. This requires the upstream analog amplifier to apply a gain of 0.25 (the AM2 RTD always delivers 0.1 °C internally, so 0.25 maps one raw count to 1 °C). With X1 active the constants become 15 and 45, the gain 33.333:
| Temperature | AI value (X1) | Math result | AQ1 voltage |
|---|---|---|---|
| 10 °C | 10 | –167 | 0 V (saturated) |
| 15 °C | 15 | 0 | 0 V |
| 20 °C | 20 | 167 | 1.67 V |
| 30 °C | 30 | 500 | 5.00 V |
| 40 °C | 40 | 833 | 8.33 V |
| 45 °C | 45 | 1000 | 10.00 V |
| 50 °C | 50 | 1167 | 10.00 V (saturated) |
Math instruction parameters for X1: P1 = 15, P2 = 33.333, operator chain (V1 – P1) × P2. This approach is robust against the decimal-place error but loses the 0.1 °C display and the 0.1 °C resolution is replaced by 1 °C.
Mathematical Instruction Block Reference
The LOGO! 8 mathematical instruction (function block B06 in the standard library) accepts up to four value inputs V1–V4 plus up to four parameter constants P1–P4. The block evaluates an expression such as:
Result = ((V1 – P1) × P2) + P3
Operator precedence is enforced with explicit parentheses; LOGO! Soft Comfort shows the expression graphically above the block. Inputs V1–V4 may be analog flags (AI3, AQ1, M-flag, etc.) or constants; unused inputs are ignored. The output flag is bound to a virtual analog flag (for example Math1) and routed to AQ1.
For the present scaling task only V1, P1, and P2 are needed:
- V1 = AI3 (PT100 reading in 0.1 °C or 1 °C depending on resolution)
- P1 = 150 (X10) or 15 (X1)
- P2 = 3.333 (X10) or 33.333 (X1)
Analog Output Saturation Behaviour
Above 45 °C the calculated value exceeds 1000 and AQ1 clamps at 10 V. Below 15 °C the calculated value is negative and AQ1 clamps at 0 V. For a cooling ventilator this is the desired behaviour:
- Above the upper setpoint → fan at maximum (cooling priority)
- Below the lower setpoint → fan stopped (avoid overcooling)
If a true linear extrapolation is required (for example to feed a PID loop), remove the math instruction and let the analog amplifier alone drive AQ1. The amplifier gain must be recalculated for the wider range, and the saturation tail will extend outside 15 °C to 45 °C.
Verification Procedure
- Switch LOGO! Soft Comfort to Online or Simulation mode. Force AI3 to 150. Confirm AQ1 reads 0 (or within ± 2 units).
- Force AI3 to 450. Confirm AQ1 reads 1000 ± 2.
- Force AI3 to 300. Confirm AQ1 reads 500 ± 2 (midpoint check).
- Force AI3 to 100. Confirm AQ1 reads 0 (below-scale saturation check).
- Force AI3 to 1000. Confirm AQ1 reads 1000 (above-scale saturation check).
- Disconnect the programming cable. Connect a precision decade resistance box to the AM2 RTD input and dial 100.00 Ω (≈ 0 °C), 107.79 Ω (≈ 20 °C), 119.40 Ω (≈ 45 °C). Measure AQ1 with a calibrated DMM.
- Connect the real PT100 probe and verify AQ1 behaviour against a secondary reference (calibrated thermometer). Expect < ± 1 °C drift between LOGO! reading and reference.
Field Commissioning Notes
- The PT100 sensor accuracy is dominated by probe class. Class A: ± 0.15 °C @ 0 °C; class B: ± 0.30 °C @ 0 °C. Use class A when the ventilator control loop depends on a tight 15 °C threshold.
- AQ1 resolution is 10 mV across 0–10 V (10 bits). The 30 °C window therefore has a granularity of 1000 / 30 ≈ 33 mV per °C, which is the smallest speed step the ventilator can resolve.
- If the ventilator expects 4–20 mA instead of 0–10 V, fit a 500 Ω precision resistor across the AQ1 terminals to convert 0–10 V to 0–5 V. The ventilator input is non-standard in that case; the safer route is the LOGO! AM2 AQ module that exposes 0/4–20 mA directly.
- The LOGO! 8.4 firmware extends the operating temperature to –20 °C to +55 °C for the standard module. The SIPLUS extreme variant (referenced in the LOGO! 8.4 brochure) covers harsher ambient envelopes.
- Store the LOGO! Soft Comfort project under version control together with the BM firmware version. The math instruction behaviour has been stable since firmware 0BA8, but parameter names changed slightly between LOGO! 7 and LOGO! 8.
Troubleshooting Matrix
| Symptom at AQ1 | Likely root cause | Corrective action |
|---|---|---|
| AQ1 stuck at 10 V across 15–45 °C window | Gain × 10 too high (decimal-place mismatch) | Set math P2 to 3.333 with X10 input, or 33.333 with X1 input; verify offset P1 matches resolution |
| AQ1 stuck at 0 V | Open PT100 lead or wrong AI assignment | Check PT100 wiring on AM2 RTD; verify AI3 input in LOGO! configuration |
| AQ1 jumps at 15 °C from 0 to ≈ 1000 | Integer rounding because gain is 33 instead of 33.333 | Change P2 to 33.333; consider X10 path |
| AQ1 noisy / jittery | Long unshielded PT100 cable near VFD or motor | Use shielded twisted pair, ground shield at LOGO! end only, increase LOGO! analog input smoothing |
| AQ1 reads correctly in simulation but wrong on hardware | Stale parameters in connected LOGO! | Stop/Run cycle on the LOGO! or perform full program transfer |
| AQ1 negative during cold start | Math evaluates to negative before AI stabilises | Add analog threshold trigger to ignore AI until warm-up |
| AQ1 saturates too early (above 30 °C, not 45 °C) | Offset wrong sign or input mapped to wrong AI | Verify offset subtraction in math; re-route from AI3 to AI5 if module slot confused |
Edge Cases and Open-Circuit Detection
An open PT100 lead drives the AM2 RTD reading to its positive rail (≈ +200 °C equivalent), which the math instruction converts to a value far above 1000 and AQ1 saturates at 10 V. A shorted PT100 drives the reading to the negative rail (≈ –50 °C equivalent), which the math instruction converts to a large negative number and AQ1 saturates at 0 V. Both faults therefore manifest as a full-speed or stopped fan, never as erratic behaviour.
To alert on a sensor fault, insert an analog threshold trigger with on-threshold = 1700 and off-threshold = 1500 (in 0.1 °C units, roughly 170 °C and 150 °C). Connect the trigger output to a digital flag that drives a fault indicator or blocks the math instruction via an enable bit.
PID Alternative
If proportional-only behaviour is not sufficient (for example the ventilator requires a soft start, anti-windup, or remote setpoint), replace the math instruction with the LOGO! PID block. The PID block supports two analog inputs (setpoint and process variable) and produces an analog output that can be routed to AQ1 directly.
For the 15 °C to 45 °C setpoint range:
- Setpoint min = 15.0 (mapped internally to 150 with X10)
- Setpoint max = 45.0 (mapped to 450 with X10)
- Output min = 0 (AQ clamps at 0)
- Output max = 1000 (AQ clamps at 1000)
- Gain Kp = 33, Integral Ti = 5 s, Derivative Td = 0 s as a starting point
Tune Kp and Ti by commanding step changes to the setpoint and observing AQ1. Refer to the LOGO! Soft Comfort help for the PID block parameter definitions.
FAQ
Why does AQ1 sit at 10 V across the entire 15–45 °C window?
The math instruction gain is 10× too high. With X10 resolution the correct gain is 3.333; with X1 resolution the correct gain is 33.333. If the input is in 0.1 °C units but the math uses 1 °C units (offset 15, gain 33.333), every output exceeds 1000 and AQ1 saturates at 10 V.
What offset and gain should I program into the math instruction?
For X10 resolution (0.1 °C), set P1 = 150 and P2 = 3.333 with operator chain (V1 – P1) × P2. For X1 resolution (1 °C), set P1 = 15 and P2 = 33.333. The expression is the same shape; only the constants shift by a factor of 10.
Does AQ1 saturate when temperature goes above 45 °C or below 15 °C?
Yes. The LOGO! firmware clamps AQ1 to 0 V below 0 and to 10 V above 1000. Above 45 °C the fan runs at full speed (10 V); below 15 °C the fan stops (0 V). This is the intended safety behaviour for a cooling loop.
Which LOGO! 8 BM part numbers expose an analog output?
The 24 V and 230 V BM variants with Ethernet (CE / RCE suffix, for example 6ED1052-1MD08-0BA0) include AQ1 (0–10 V) and AQ2 (0–10 V or 4–20 mA depending on variant). BM variants without the CE/RCE suffix ship without analog output and require an external AM2 AQ module.
Can I add PID control on top of the linear scaling?
Yes. Replace the math instruction with the LOGO! PID controller block (PI, PID, or three-step). Map the setpoint to 15.0–45.0 (or 150–450 in 0.1 °C units) and feed AQ1 from the PID output. Typical initial tuning for a ventilator loop is Kp = 33 and Ti = 5 s; refine by step-response observation.