Overview
The Siemens LOGO! 8 12/24RCE logic module (part number 6ED1052-1MD08-0BA0) integrates a small-scale PLC, an HMI display, an Ethernet interface, and a real-time clock into a single DIN-rail device. The "12/24" suffix indicates a 12 V DC or 24 V DC powered variant whose digital inputs I7 and I8 can alternatively be configured as 0-10 V analog inputs (AI1, AI2). Combined with an AM2 expansion module, the system exposes four analog channels - enough to supervise a 12 V fuel cell/battery rail without additional transducers.
This article documents a field installation in a remote, off-grid container housing an RTK/GPS correction radio. A hydrogen fuel cell charges a 12 V lead-acid battery; the LOGO! 8 12/24RCE acts as both a timer (for scheduled radio transmit windows) and a battery monitor. When the rail drops below a settable threshold, output Q4 energizes a flashing LED on the container exterior so field technicians can identify the unit for service.
Two implementation paths are covered:
- Primary: external resistor voltage divider into the base unit's AI1 input, threshold evaluated in the LOGO! program.
- Secondary: a stand-alone voltage monitoring relay wired into a digital input.
The first approach gives full 0-10 V range visibility (you can drive an HMI, web dashboard, or trend log), while the second is faster to retrofit on existing installations.
Prerequisites
- Siemens LOGO! 8 12/24RCE base module (6ED1052-1MD08-0BA0), firmware ≥ V8.0 for full AM2 support. The 2020 edition of the LOGO! manual (Manual-LOGO-2020.pdf) is the canonical reference for wiring, parameter ranges, and gain/offset behavior.
- LOGO! Soft Comfort V8.x or later programming software, with a USB/Ethernet cable for download.
- Two precision resistors (1% tolerance metal film recommended) for the voltage divider; see the calculation in the Voltage Divider Design section below.
- Multimeter with 0.1 mV resolution for calibration.
- 12 V DC battery under test (the system tolerates up to 16 V across the divider, which covers 12 V lead-acid charge voltage).
- Surge arrester (e.g., Siemen's recommended transzorb or varistor) across the LOGO! power terminals when the cable run exceeds 10 m or the cabinet sits in an outdoor enclosure - the LOGO! 12/24 manual explicitly calls out this requirement.
Hardware: LOGO! 8 12/24RCE Specifications
| Parameter | Value | Notes |
|---|---|---|
| Order number | 6ED1052-1MD08-0BA0 | LOGO! 8 12/24RCE, integrated display, Ethernet |
| Supply voltage | 12 V DC or 24 V DC | Reverse-polarity protected; observe 12 V vs 24 V jumper guidance in the manual |
| Digital inputs | 8 (I1-I8) | I7 and I8 are dual-function: digital or analog (0-10 V) |
| Analog inputs (base) | 2 (AI1 = I7, AI2 = I8) | 0-10 V DC, ≥ 72 kΩ input impedance, 10-bit resolution (0-1000 in program) |
| Analog inputs (with AM2) | 4 (AI1-AI4) | AM2 adds AI3, AI4 (0-10 V or 0-20 mA) |
| Outputs | 4 relay (Q1-Q4) | 10 A resistive / 3 A inductive at 24 V DC, 230 V AC rated |
| Real-time clock | Yes (RCE) | Buffer ≈ 20 days; synchronizable via NTP over Ethernet |
| Ethernet | 10/100 Mbit RJ45 | Supports LOGO! web server for remote HMI |
| Operating temperature | 0 °C to +55 °C horizontal mounting | Derate to +40 °C for vertical orientation |
The two base analog channels share a single common ground reference with the supply. This is convenient for battery monitoring because the LOGO! 0V terminal ties to the battery negative, eliminating the need for an isolation amplifier in most cases.
Analog Input Architecture in the LOGO! 8
The 12/24RCE base module treats inputs I7 and I8 as dual-purpose. When the corresponding block (e.g., analog threshold trigger B003) is placed in the program, the LOGO! automatically reconfigures the terminal from digital to analog mode. The input then returns a value normalized to 0-1000 in the program, where 0 = 0 V and 1000 = 10 V at the physical pin.
Conversion formula:
V_in = (AI_value / 1000) × 10 V
For example, a battery delivering 12.0 V that is divided down to 8.0 V at AI1 produces AI1 = 800 in the program. This normalized scale makes threshold blocks (Analog Threshold Trigger, Analog Comparator) easy to set.
Voltage Divider Design
The objective is to scale 0-15 V (battery + charge headroom) into 0-10 V at AI1 while drawing negligible quiescent current from the battery. The unloaded voltage divider equation is:
V_out = V_in × R2 / (R1 + R2)
Selecting a divider ratio of 0.667 (R2 = 20 kΩ, R1 = 10 kΩ) yields:
- V_bat = 15.0 V → V_AI1 = 10.0 V → AI1 = 1000 (full scale)
- V_bat = 12.6 V (12 V lead-acid fully charged) → V_AI1 = 8.40 V → AI1 = 840
- V_bat = 12.0 V (nominal) → V_AI1 = 8.00 V → AI1 = 800
- V_bat = 11.5 V (low-voltage alarm setpoint) → V_AI1 = 7.67 V → AI1 = 767
- V_bat = 10.5 V (deeply discharged) → V_AI1 = 7.00 V → AI1 = 700
Quiescent current at 15 V = 15 V / 30 kΩ = 0.5 mA; over 24 hours that is 12 mAh. For a 100 Ah battery this is a 0.012% self-discharge contribution - negligible. If lower current is required (e.g., to extend shelf life of a rarely-cycled battery), scale the resistors up to 100 kΩ and 200 kΩ, but verify that the LOGO! 72 kΩ input impedance does not load the divider (it does not - the divider looks like 30 kΩ to the source, the AI is a separate parallel path of 72 kΩ, and the error is well below 1%).
| Battery state | V_bat (V) | V_AI1 (V) | AI1 value | Recommended action |
|---|---|---|---|---|
| Charging peak (alternator/fuel cell) | 14.4 - 15.0 | 9.60 - 10.00 | 960 - 1000 | No alarm; log to trend |
| Floating / fully charged | 13.6 - 13.8 | 9.07 - 9.20 | 907 - 920 | No alarm |
| Cycled (typical operating) | 12.4 - 12.7 | 8.27 - 8.47 | 827 - 847 | No alarm |
| Nominal 50% | 12.0 - 12.2 | 8.00 - 8.13 | 800 - 813 | No alarm |
| Pre-alarm | 11.7 - 11.9 | 7.80 - 7.93 | 780 - 793 | Log only |
| LOW (LED on) | < 11.5 | < 7.67 | < 767 | Activate Q4 (flashing LED beacon) |
| Critical | < 10.5 | < 7.00 | < 700 | Optional: shed non-essential loads via Q2/Q3 |
Resistor selection checklist:
- Use 1% metal film (e.g., Yageo MFR-25FBF52 series) for the divider to keep the calibrated threshold accurate to within ±50 mV.
- Power rating: 0.5 mA at 15 V = 7.5 mW. A standard 1/4 W resistor is adequate, but 1/8 W saves board space if the divider is built on a small terminal block.
- Add a 100 nF X7R ceramic bypass across R2 to attenuate HF noise from the fuel cell DC bus (1 kHz to 1 MHz).
- Add a BZX84C10 Zener from AI1 to LOGO! 0V to clamp transients above 10 V (the LOGO! absolute maximum on the analog pin is 30 V, but a clamp keeps measurements in the linear range during fault conditions).
Wiring and ESD Protection
The voltage divider is wired to the LOGO! 8 12/24RCE as follows:
- Connect the divider input (R1 top node) to the positive terminal of the 12 V battery that the fuel cell charges.
- Connect the divider output (R2 / AI node) to terminal I7 on the LOGO! base module. This terminal becomes AI1 once the analog block is active in the program.
- Connect the divider return (R2 bottom node) to the LOGO! M (0V/ground) terminal. Sharing the ground with the LOGO! supply negative eliminates ground-loop error.
- Install a 1 A inline fuse on the positive lead near the battery; this protects the wiring if R1 shorts.
- Mount a TVS diode (e.g., Littelfuse SMAJ16CA) across the battery terminals to absorb load-dump surges from the fuel cell power conditioner.
- If the cable run between the battery and the LOGO! exceeds 3 m, use shielded twisted pair; ground the shield at the LOGO! end only to avoid ground loops.
LOGO! Soft Comfort Program: Threshold Logic
The minimum viable program uses one Analog Threshold Trigger block and one output coil. In LOGO! Soft Comfort V8.x:
- Open a new project, select the LOGO! 8 12/24RCE base module as the target.
- Place an Analog Threshold Trigger block (B003) on the diagram.
- Set the input source to
AI1(terminal I7). - Configure the block parameters:
- On threshold:
767(corresponds to 11.5 V battery) - Off threshold:
800(corresponds to 12.0 V battery, ~3% hysteresis) - Gain:
1.00(no scaling needed; divider was sized so AI1 already represents 0-10 V) - Sensor:
0 - 10 V
- On threshold:
- Place a relay coil
Q4at the block output. - Optional: add a flasher block (F1) between the threshold trigger and Q4 if the LED must pulse at 1 Hz rather than stay solid.
Program excerpt in LOGO! Soft Comfort notation:
B001 [On=11.5V/767, Off=12.0V/800, Gain=1.00] --> B002 [Flashing 0.5s on / 0.5s off] --> Q4 (LED beacon)
B001 --> VM3 (Analog threshold variable mapped to network output for LOGO! web server display)
To expose the live AI1 value on the LOGO! web server, drag an Analog Amplifier block (B004) from AI1 to a network output variable. The web interface will then show battery voltage in real time, scaled via the gain factor:
Displayed_V = (AI1 / 1000) × 10 / 0.667 = (AI1 / 1000) × 15
Set B004 gain = 15.00 and offset = 0 to drive a 0-15 V engineering display.
Mapping Threshold to 12 V Battery State of Charge
Lead-acid state of charge (SoC) vs open-circuit voltage is non-linear; the LOGO! threshold should be tuned to the specific battery chemistry used. The values below are typical for a flooded 12 V lead-acid at 25 °C after a 4-hour rest:
| SoC (%) | Open-circuit V (V) | V_AI1 (V) | AI1 value |
|---|---|---|---|
| 100 | 12.70 | 8.47 | 847 |
| 80 | 12.50 | 8.33 | 833 |
| 60 | 12.30 | 8.20 | 820 |
| 40 | 12.10 | 8.07 | 807 |
| 20 | 11.90 | 7.93 | 793 |
| 10 | 11.70 | 7.80 | 780 |
| 0 | 11.50 | 7.67 | 767 |
If the container uses an AGM or LiFePO4 battery, substitute the manufacturer's SoC curve. For LiFePO4, the useful voltage window is 13.0 - 13.6 V (resting) or 13.6 - 14.4 V (under float); the LOGO! divider ratio of 0.667 must be reworked to 0.769 (R2 = 30 kΩ, R1 = 39 kΩ) so that 16.0 V input maps to 10 V output, preserving resolution across the LiFePO4 operating range.
Verification and Calibration
After the program is downloaded, perform the following bench validation before deploying the unit in the field:
- Apply a known voltage (e.g., 12.00 V from a bench power supply) to the divider input. Verify with a multimeter that AI1 reads 8.00 V ±0.05 V at terminal I7 against M.
- From the LOGO! display, navigate to AI1 -> Value and confirm it shows 800 ±5. If the value is off, the most likely causes are (a) resistors are 5% tolerance carbon film instead of 1% metal film, or (b) the bench supply is floating and the LOGO! 0V reference is not shared.
- Step the supply from 10.5 V to 15.0 V in 0.5 V increments and log AI1. The slope must equal 0.067 V/V (i.e., AI1 should change by 67 per 1 V input). Any non-linearity above 1% indicates a poor-quality Zener clamp or a saturated input stage.
- Test the threshold trip: slowly ramp the supply down. Q4 must energize at V_bat = 11.5 V ±0.1 V (AI1 = 767) and de-energize at 12.0 V ±0.1 V (AI1 = 800). This confirms the hysteresis is correct and prevents LED chattering near the threshold.
- Test the inverse direction: disconnect the divider, short AI1 to M. Q4 must immediately energize (fail-safe behavior is desirable for a "battery low" indicator).
Alternative: Voltage Monitoring Relay Approach
For installations where the LOGO! 8 is not available, or where the engineer prefers a hardware-only solution, a single-setpoint voltage monitoring relay (e.g., Phoenix Contact EMD-BL-3V-300, ABB CM-EFS.2, or Schneider RM22JA31MR) can be wired directly to a digital input. The relay contact closes when V_bat falls below a settable threshold (typical adjustment range 9-15 V for 12 V models) and the LOGO! reads the contact state on a digital input such as I1.
| Approach | Pros | Cons |
|---|---|---|
| Voltage divider + AI | Full 0-10 V range, can drive HMI/SCADA trend logs, single point of adjustment in software, no extra hardware cost beyond two resistors | Requires careful resistor selection, calibration, and surge protection; AI is slower to detect dips than a dedicated relay |
| Voltage monitoring relay | Fast sub-cycle response, fixed-accuracy threshold, galvanic isolation, easier to retrofit | One setpoint per relay, additional DIN-rail space, cost ($80 - $200 per relay), no proportional data for trending |
The relay approach is recommended when the threshold is well-defined and never changes, and when the LOGO! digital input channel count has spare capacity. The divider approach is recommended when remote visibility (via the LOGO! web server or a higher-level SCADA tag) is required.
Troubleshooting Matrix
| Symptom | Likely cause | Diagnostic | Corrective action |
|---|---|---|---|
| AI1 always reads 0 | Open circuit in divider (R1 burned, fuse blown), or program not running analog block | Measure V_AI1 with multimeter; verify I7 is configured as analog in LOGO! Soft Comfort | Replace R1; restore fuse; confirm Analog Threshold Trigger block references AI1 (not I7 as a digital) |
| AI1 stuck at 1000 | Divider R2 open, or Zener clamp shorted | Remove AI1 wire and measure impedance to ground; should be 20 kΩ ±1% | Replace R2; remove and test Zener; replace if shorted |
| AI1 noisy (±20 counts flicker) | No bypass capacitor, shared ground with switching load, or long untwisted cable | Oscilloscope AI1 vs M; check for high-frequency ringing | Add 100 nF across R2; switch to shielded twisted pair; relocate ground bond to LOGO! 0V terminal |
| Q4 never energizes even at low battery | Threshold set too low, or hysteresis inverted | Read VM3 on web server; confirm On/Off thresholds | Adjust On threshold upward to match actual battery cut-off |
| Q4 energizes briefly at power-up | AI1 reads 0 V during boot before the block is processed | Check boot sequence in LOGO! display simulation | Add a startup delay (on-delay timer B005, 2 s) between the threshold trigger and Q4 |
| Voltage reads 5-10% high at all levels | Resistor tolerances, or AI1 is being read on the wrong terminal (I1 instead of I7) | Measure R1 and R2; verify wiring per terminal layout | Replace with 1% resistors; move divider output to terminal I7 |
| LOGO! web server shows "N/A" for AI1 | Network output variable not mapped, or AM2 not recognized | Check the analog amplifier block output destination | Re-drag VM3 onto the network output; verify AM2 module address in hardware config |
Field Commissioning Notes
- Power the LOGO! from the same 12 V bus it monitors. The 12/24RCE accepts 10.5 - 28.8 V on its supply, so it will run all the way down to the battery protection cutoff.
- Set the LOGO! real-time clock via NTP (in LOGO! Soft Comfort: Tools -> Ethernet -> Time Settings) so the scheduled radio transmit windows are accurate.
- If the container sees sub-zero temperatures, the lead-acid battery voltage rises slightly (cold SoC curve). Do not adjust the LOGO! threshold; instead, accept the false alarm as a conservative safety margin and use the LOGO! web server to verify the rail is healthy when an alarm triggers.
- Log AI1 every 60 s using a Data Log block in LOGO! Soft Comfort and write to the microSD card for post-incident analysis. The 2020 LOGO! manual describes Data Log configuration in detail.
- Mark the divider network on the cabinet schematic; technicians need to know R1 and R2 are not standard 10 kΩ/20 kΩ if they are replaced in the field.
Can the LOGO! 8 12/24RCE measure 12 V directly on its analog input?
No. The on-board AI1 and AI2 channels (terminals I7 and I8) accept 0-10 V DC only. A 12 V battery must be scaled with a voltage divider, with a ratio of 0.667 (R1 = 10 kΩ, R2 = 20 kΩ) to map 0-15 V into 0-10 V while keeping the AI input within its linear range.
How many analog inputs does the LOGO! 8 12/24RCE have?
The base unit provides two: AI1 on terminal I7 and AI2 on terminal I8. Adding a LOGO! AM2 expansion module exposes two more (AI3, AI4), bringing the total to four. Inputs AI3 and AI4 can be configured for 0-10 V or 0-20 mA via the AM2 DIP switches.
What is the analog input resolution of the LOGO! 8?
The internal converter is 10-bit, returning integer values from 0 to 1000 in the program. Each step corresponds to 10 mV at the pin. This is more than adequate for a low-battery alarm (the recommended hysteresis of 33 counts = 330 mV at the pin = 500 mV at the battery) but is not suitable for precision coulomb-counting telemetry.
Will the analog input be damaged if the battery voltage briefly exceeds 15 V?
Voltages up to 30 V on the AI pin are within the LOGO! absolute maximum rating and will not damage the input, but values above 10 V will saturate the reading at AI1 = 1000. To preserve measurement integrity during load-dump transients, install a 10 V Zener clamp (e.g., BZX84C10) from AI1 to M and a TVS diode across the battery.
Can I use the LOGO! web server to view the battery voltage remotely?
Yes. Map the AI1 value to a network output variable via an Analog Amplifier block with a gain of 15 (to scale 0-1000 to 0-15 V engineering units), then access the LOGO!'s built-in web server from any browser on the Ethernet network. For remote access over the internet, place the LOGO! behind a small router with VPN or use a 4G modem with port forwarding to TCP 80.
Is there a faster way to implement this without programming?
Yes. A voltage monitoring relay (Phoenix Contact EMD-BL, ABB CM-EFS, or Schneider RM22J) can be wired directly to a LOGO! digital input. The relay's setpoint dial replaces the program threshold block, and the contact closure is read as a simple high/low. This is faster to install but provides no proportional voltage data for trending.
What is the recommended battery voltage threshold for a 12 V lead-acid system?
For a flooded lead-acid battery at 25 °C, 11.5 V open-circuit is the standard "low voltage" alarm setpoint (≈20% SoC). For AGM, use 11.7 V; for LiFePO4, use ≈13.0 V resting. The corresponding AI1 thresholds with the 0.667 divider are 767, 780, and 867 respectively.