Problem Overview
The Siemens SIMATIC S5-470 analog output module (catalog number 6ES5 470-8MC12) is an 8-channel, 12-bit analog output block used in S5-135U, S5-155U, and compatible S5-155H/135H CPU racks. Field reports on legacy printing, converting, and machine-tool installations describe a recurring class of symptoms that do not always raise a CPU or module fault LED: a single output channel stops tracking its setpoint, a channel freezes at a fixed value, the HMI shows a value but the field device does not respond, or every channel reads 0 V / 0 mA on a replacement module that is otherwise brand new.
Because the S5-135U and CPU928 do not always enter STOP or raise a module diagnostic interrupt for a failed analog output, the engineer must prove channel-by-channel that the I/O map, the program, the backplane addressing, the field wiring, and the actuator itself are all intact before condemning the module. The canonical case covers classes of failure simultaneously: one channel failed on day 1, recovered on day 2, and a second channel stayed frozen regardless of the HMI setpoint. This is a typical pattern: a wiring or signal-source error masquerades as a module fault, and the real defect is found in STEP5 by monitoring the process image addresses that drive the output words.
Module Identification and Specifications
The 6ES5 470-8MC12 is the standard 8-channel analog output module for the S5-135U/S5-155U family. Key characteristics relevant to field troubleshooting:
| Parameter | Value |
|---|---|
| Catalog number | 6ES5 470-8MC12 |
| Function | 8 analog outputs, individually configurable per channel |
| Voltage output ranges | 0 to 10 V, ±10 V |
| Current output ranges | 0 to 20 mA, 4 to 20 mA, ±20 mA (model-dependent) |
| Resolution | 12 bits plus sign |
| Conversion time | < 1 ms per channel (analog multiplexer settling) |
| Galvanic isolation | Yes, between outputs and backplane |
| Front connector | 46-pin Siemens front connector (6ES5 497-4UAxx family) |
| Addressing | Slot-selectable via 8-pole DIP switch on rear of module |
| Module diagnostics | Limited: SF group-fault LED only - per-channel faults do not alarm |
| Current loop load | Maximum 500 Ω at 20 mA |
| Voltage output load | Minimum 10 kΩ at 10 V DC |
Each output channel occupies one 16-bit word in the process output image (PIQ) of the S5 CPU. Two adjacent channels therefore consume four bytes. The 470-8MC12 occupies 16 output bytes of the PIQ regardless of the number of channels used, so the program must still write the unused channels' words (write 0 or write the appropriate code for the configured range).
Symptom Classification
Reported symptoms fall into a small number of repeatable classes. Classify the failure before touching hardware so the diagnostic flow stays linear.
| Class | Symptom | Typical root cause |
|---|---|---|
| A | All 8 channels read 0 V / 0 mA after a brand-new replacement module is installed | DIP switch address changed, or PIQ not refreshed by the cyclic OB |
| B | One channel works, next channel stuck at a fixed value while HMI setpoint moves | Wrong process image address, tachometer/sensor signal swapped, actuator wiring error |
| C | One channel drifts or fails after a brief mains dip (< 5 s) when feeding a measuring transducer | Output latch fault - replace module; verify wiring polarity |
| D | Module responds to STEP5 forcing but field device does not move | Wiring, shield/ground, range jumper, or actuator input failure |
| E | Channel output is correct at the terminal block but inverted (e.g., ramp up = ramp down) | Polarity reversed, or current loop wired to a voltage output stage |
Class A and Class B frequently occur at the same time. In a typical case a fresh 470 module produced no signal because (1) the field wiring to the tachometer/generator was transposed during a recent maintenance intervention, and (2) the program-side address that drives the speed reference was not the word the technician expected. Both defects were hidden by the absence of a CPU alarm and by the fact that a different process variable (motor actual speed) was being read from a different input, so the loop looked closed in the HMI.
Hardware Addressing - DIP Switch Configuration
The 470-8MC12 is addressed by the slot it occupies in the central or expansion rack, and (where the rack is the second or later IM-connected rack) by the page number set on the IM 304/IM 314 interface module. The module itself exposes an 8-pole DIP switch on the rear of the PCB near the backplane connector; the switch state is read on power-up and defines the lowest output byte of the module within its page.
Procedure to verify addressing on a 470 module that has just been replaced:
- Power down the rack. Pull the replacement module and place it on a clean, ESD-safe surface with the PCB facing up.
- Compare the DIP switch state against the module you removed. Siemens' standard encoding allocates 8 output bytes per slot, with the address set in 8-byte steps. The original module's setting must be transferred bit-for-bit; an offset of one step shifts the entire 8-channel block by 8 bytes in the PIQ.
- Confirm the slot position in the rack matches the slot position documented in the STEP5 program (FB/OB/PB that uses the output words).
- If the rack is downstream of an IM 304/IM 314 (or IM 305/IM 306 on older hardware), confirm the page number set on the IM's own DIP switch and the page number used in STEP5 to access the output words.
- Re-seat the module, torque the front-connector screws, and apply power.
PIQ/PIW Address Map for the 470 Module
The S5-135U's process image is byte-addressed and resides in a fixed memory area of the CPU928. Analog I/O modules consume a contiguous range of PIQ (output) and PII (input) bytes. The 470-8MC12 consumes 16 PIQ bytes; the matching 8-channel analog input module (460 series) consumes 16 PII bytes. The relationship between the slot DIP switch and the lowest address is linear: switch position 0 typically maps to address 0 in the central rack, switch position 1 to address 16, switch position 2 to address 32, and so on. Expansion racks add a page offset of 256 bytes (or whatever the IM's DIP switch specifies).
| Slot DIP | Central-rack base PIQ byte | Channel 0 word | Channel 1 word | Channel 7 word |
|---|---|---|---|---|
| 0 | 0 | PQW 0 | PQW 2 | PQW 14 |
| 1 | 16 | PQW 16 | PQW 18 | PQW 30 |
| 2 | 32 | PQW 32 | PQW 34 | PQW 46 |
| 3 | 48 | PQW 48 | PQW 50 | PQW 62 |
| 4 | 64 | PQW 64 | PQW 66 | PQW 78 |
| 5 | 80 | PQW 80 | PQW 82 | PQW 94 |
| 6 | 96 | PQW 96 | PQW 98 | PQW 110 |
| 7 | 112 | PQW 112 | PQW 114 | PQW 126 |
Diagnostic Procedure with STEP5
STEP5 is the programming and online-monitoring tool for the S5 family. Use it to confirm whether the value the program is actually writing to the output word matches the value the HMI is showing as the setpoint.
Prerequisites
- STEP5 (any version that supports the S5-135U, typically STEP5 ≤ V7.x) installed on a PG with a TTY or COM-port interface
- Online cable (Siemens 6ES5 734-1BD20 or compatible) to the CPU928 programming port
- Current program source on the PG (or at least the FB/OB that drives the 470 outputs)
- PG configured for the same COM parameters as the CPU928 (default 9600 baud, even parity, 8 data bits for the AS511 protocol)
Step-by-step online monitor
- Connect the PG to the CPU928 and place the CPU in RUN-P. Do not place it in STOP - analog outputs freeze on STOP and you lose the ability to see live writes.
- Open the FB/PB/OB that writes the output words. Search for the absolute or symbolic PIQ address corresponding to the failing channel (for example, PQW 128, PQW 130, ..., PQW 142 for the eight 16-bit words of a 470 module at page offset 128).
- Switch STEP5 to STATUS or MONITOR mode. STEP5 will display the value currently being written to the output word on each OB1 scan.
- Compare the value in the status block against the value the HMI is sending for that setpoint. If the values match, the program and the addressing are correct - the fault is in the field side. If they do not match, the program is reading a different process variable, or the HMI is writing to a different address, or the FB is using a wrong pointer.
- Repeat for every channel on the 470 module. Channels that are stuck almost always reveal themselves at this step: either the program never writes them, or the source value itself is fixed (e.g., a wrong tag pulled from a different DB).
Forcing individual output words
To isolate the module from the program, force an output word to a known code from STEP5 and measure the channel with a DMM at the front connector. Use the STEP5 FORCE or VAR (variable monitor) function:
- In STATUS mode, right-click the output word and select Force / Replace with value.
- Enter a fixed code corresponding to 50 % of the configured range (e.g., 2000H for ±10 V bipolar 50 %, 1000H for 0-10 V unipolar 50 %).
- Measure the output at the terminal block with the DMM. The result tells you whether the module is functional regardless of the program.
- Un-force the word before resuming normal operation. Leaving a forced value in place after the diagnostic is a common source of subsequent alarms.
Cross-check with the process input image (PII)
If a feedback signal (such as actual motor speed) is supposed to confirm the output, monitor the matching PII word too. The reference case was resolved when the technician noticed that the actual speed from the motor was being read from a different PII word than the one the HMI was displaying - the HMI was showing a value held in a DB, not the live PIW from the tachometer. The mismatch is also what made the HMI and the motor behavior look in sync by coincidence - the operator adjusted one setpoint and a different feedback happened to move with it.
Wiring and Field Signal Verification
With the program and addressing confirmed, move to the terminal block of the 470 module and verify every conductor end-to-end.
Voltage output verification (0-10 V, ±10 V)
- With the CPU in RUN, measure between the channel's Vout+ and M pins at the front connector with a calibrated DMM in DC-V mode.
- For a setpoint of 0 %, you should read 0.000 V (or -10.000 V if the range is bipolar and 0 % is mapped to -10 V, depending on the FB scaling).
- For a setpoint of 50 % on a 0-10 V range, you should read 5.000 V ± 0.05 V.
- For a setpoint of 100 %, you should read 10.000 V ± 0.05 V.
- Touching the meter lead to the actuator end of the same pair should give the same value. If the module end is correct but the actuator end is wrong, you have an open conductor, a high-resistance terminal, or a ground loop in the shield.
Current output verification (0-20 mA, 4-20 mA)
- Break the loop and insert the DMM in series in mA mode.
- For 0 % on a 4-20 mA range, read 4.00 mA. For 0 % on a 0-20 mA range, read 0.00 mA.
- For 100 %, read 20.00 mA ± 0.05 mA.
- If the loop current saturates below 20 mA, check the load resistance. The 470-8MC12 can drive a maximum load of 500 Ω on a current output; higher loads clip the output. Higher than 20 mA at 0 % usually indicates a wiring error or a missing ground reference at the receiver.
Polarity and shield checks
- Verify shield is bonded at the cabinet end only, not at the field device, to prevent ground loops.
- Verify the shield is continuous from the front-connector shell to the cabinet gland plate.
- Confirm Vout+ and Vout- are not swapped. Swapping the pair on a current output inverts the loop and will be reported as the actuator runs the wrong direction - not as a module fault.
- Verify the analog ground (M) of the 470 module is tied to the cabinet ground bar at exactly one point. Multiple ground paths create 50/60 Hz hum on the output and can confuse transducer inputs.
Power-Failure Behavior with Measuring Transducers
Siemens published a specific application note for the 6ES5 470-8MC12 covering an under-reported failure mode: a brief mains interruption of less than 5 seconds, with measuring transducers connected, can leave the analog output in an undefined, latched state that does not recover when power returns. The module's output latches retain the last commanded code, but the output stage can be left in a tri-state or partially-driven condition that the field transducer interprets as a valid signal. The application note is published as Siemens Industry Online Support entry ID 4135008.
Field actions if a measuring transducer hangs after a power dip:
- Power the rack down completely. Wait at least 10 seconds for the output latch capacitors to discharge.
- Remove the front connector from the 470 module. Power the rack back up with the connector removed.
- Re-seat the connector and verify the output on each channel with the DMM.
- If the symptom persists, the module itself must be replaced - the 470-8MC12 is not field-repairable for this fault.
- When the replacement module is installed, reverse the polarity of the measuring-transducer inputs as Siemens recommends in the KB article. The Siemens note states that transducers must be connected in reverse-biased mode to prevent the latch condition from recurring on the next power dip.
Module Replacement Procedure
The 470 module is hot-swappable in most S5-135U applications as long as the front connector is removed first and the replacement module is of the same catalog revision. Use this procedure when a module has been condemned by the diagnostic flow above.
- Document the current DIP switch state by photographing the module before removal.
- Place the CPU in STOP. Although the 470-8MC12 can be replaced with the CPU in RUN-P, stopping the CPU first prevents the program from writing undefined values to the new module's outputs during the few hundred milliseconds it takes to re-seat.
- Loosen the front-connector screws and pull the connector straight out.
- Release the module's top and bottom locking levers, rotate them outward, and pull the module straight out of the backplane connector.
- Set the DIP switch on the new module to match the photograph from step 1.
- Insert the new module, lock the levers, and re-seat the front connector. Torque the connector screws to the standard Siemens 0.6-0.8 N·m spec.
- Place the CPU in RUN-P. Monitor each output word in STEP5 STATUS to confirm the program is writing the expected codes.
- Verify each channel on the DMM as described in the verification section above.
- Run a full-channel ramp test (0 %, 25 %, 50 %, 75 %, 100 %) and confirm with the operator that the field devices track.
Verification Checklist
Run this checklist before declaring the repair complete.
- Each of the 8 output words reads the correct 16-bit code in STEP5 STATUS
- Each channel measures within spec on the DMM at the module end and at the field-device end
- The HMI setpoint and the field device's actual position/speed agree at 0 %, 50 %, and 100 %
- The PII feedback word the HMI displays matches the live PII word read in STEP5
- No SF (group fault) LED is lit on the 470 module
- No BA (battery) or QVZ (timeout) LED is lit on the CPU928
- The CPU928 is in RUN, not RUN-P, for normal operation
- All shields are bonded at the cabinet end only
- The DB-to-PIQ pointer mapping in STEP5 matches the slot DIP switch on the module
- The unused channels of the 470 module are explicitly written to 0 in the cyclic OB to prevent the analog multiplexer from cycling through channels with random code
Legacy Documentation and the MP40/OP20/VP-B30 Stack
S5-135U installations built before 1995 are frequently paired with a Siemens MP40 monitor panel and an OP20 or OP20/C1 operator panel, both driven by a VP-B30 communications module seated on the backplane next to the CPU928. The MP40 reads and writes to the CPU through the VP-B30 (which itself sits directly on the backplane), and the configuration of the MP40 was done with the old Coros LSB software on a separate PG. The system is described in detail in the Siemens S5-135U System Manual (Siemens entry ID 1085837).
If the field engineer needs to re-configure the MP40:
- Locate the original Coros LSB installation media or a Siemens-licensed copy
- Connect a PG with a TTY interface to the VP-B30 programming port
- Use Coros LSB to upload the current screen database from the MP40 before making any changes
- Match the configured tag database to the actual PIQ/PIW addresses of the 470 module being replaced
The 470-8MC12 is still documented in the Siemens Industry Online Support portal under entry ID 4135008, which lists the power-failure behavior described above. The S5-135U System Manual (entry ID 1085837) contains the slot, DIP switch, and backplane address tables for the 470 module. Both documents are freely available from Siemens' support portal.
Preventive Recommendations
- Keep a printed copy of the current PIQ/PIW map in the cabinet, with channel-by-channel wiring and actuator tag numbers. Updates to the map are the single largest source of module won't work symptoms during maintenance interventions.
- Label every conductor of every analog front connector at both ends. The 46-pin front connector is dense; mis-wiring is easy and the PLC will not catch it.
- Schedule a STEP5 STATUS check of every output word on the 470 module during the annual PM. The check is non-intrusive and surfaces addressing or program issues before they cause downtime.
- Install line-monitoring relays on the cabinet mains feed to capture power dips that would otherwise leave the 470 in the latched-output state described in the Siemens KB article.
- For new projects, migrate the S5-135U application to a current Siemens controller (S7-1500 or ET 200SP with the appropriate analog output module). New modules are available from stock and supported; the S5-135U and S5-155U are both out of regular production support.
- Maintain a cold spare of the 470-8MC12 on site. The module is still orderable from Siemens spares channels with a multi-week lead time; a printed spare on the shelf is faster than an emergency order.
- Document the range configuration of every channel (voltage vs. current, polarity, scale) in the cabinet. The 470-8MC12 has range jumpers on the PCB; the position of those jumpers must be re-applied to a replacement module or the output scaling will be wrong even if the addressing is correct.
Troubleshooting Matrix - Quick Reference
| Observed behavior | First check | Second check | Third check |
|---|---|---|---|
| All channels 0 V / 0 mA on new module | DIP switch position vs. STEP5 PIQ base address | STEP5 STATUS monitor on each output word | OB1 cycle execution (CPU in RUN?) |
| One channel stuck, others work | STEP5 STATUS for the stuck word - is program writing it? | Force the word in STEP5 and measure with DMM | Field wiring and polarity at actuator |
| Channel drifts after power dip | Full power-down for 10 s, reseat connector | Siemens KB 4135008 procedure | Replace module and reverse transducer polarity |
| SF LED lit | Module seated correctly? | Check 24 V supply on front-connector pin block | Check backplane connector for bent pins |
| CPU in STOP after module insert | DIP switch conflict with neighbor module | Address overlap in STEP5 PIQ/PII map | Wrong catalog variant (470 vs 460) seated in slot |
| HMI shows value, field device does not move | Range configuration of the 470 channel | Front-connector screws torque | Actuator power supply and input impedance |
| Output inverted (ramp up = ramp down) | Polarity of Vout+/Vout- pair | FB scaling block in STEP5 program | Range jumper position on module PCB |
FAQ
Why does the S5-135U/CPU928 not raise an alarm when one 470 channel fails?
The 470-8MC12 only exposes a group-fault (SF) LED, not per-channel diagnostics. The CPU928 only checks for module presence, not output validity, so a failed channel does not stop the CPU or trigger a diagnostic interrupt. Live troubleshooting with STEP5 STATUS and a DMM is required.
What software is required to program a Siemens MP40 panel used with the S5-135U?
The MP40 was configured with the legacy Coros LSB software package running on a PG with a TTY interface to the VP-B30 module on the backplane. Refer to the S5-135U System Manual (Siemens entry ID 1085837) for the cable pinout and the configuration flow.
How is the 6ES5 470-8MC12 module addressed in the S5-135U backplane?
Each module is addressed by its physical slot in the central or expansion rack, the page number set on the IM 3xx interface module (for expansion racks), and an 8-pole DIP switch on the rear of the module that sets the lowest output byte. The slot table and DIP switch encoding are in the S5-135U System Manual (Siemens entry ID 1085837).
Can a brief power interruption permanently damage the 6ES5 470-8MC12 output stage?
Siemens KB entry 4135008 documents a latch condition where an output interruption of less than 5 seconds with measuring transducers connected can leave the output stage in an undefined, latched state. Full power-down (rack off, 10-second wait, front connector removed, power restored) and module replacement are the documented remedies; Siemens also recommends reversing the polarity of measuring-transducer inputs to prevent recurrence.
What is the fastest way to confirm whether a dead 470 channel is a module fault or a field-wiring fault?
With the CPU in RUN-P, force the suspect output word to a fixed value from STEP5 and measure the channel with a DMM directly at the front connector. If the module end of the wiring reads the expected voltage/current, the 470 is good and the fault is downstream. If the module end reads 0 V / 0 mA despite the forced value, the module is bad and must be replaced.