Siemens S5 Programming Manuals S5-90U, S5-95U, CPU 928B Reference

David Krause15 min read
PLC HardwareSiemensTechnical Reference
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Siemens S5 Programming Manuals: S5-90U, S5-95U, and CPU 928B Reference Guide

Locating the correct software reference for a Siemens SIMATIC S5 programmable controller is a recurring task for maintenance engineers, retrofit specialists, and commissioning technicians supporting installed S5 fleets. The S5 product line was released in 1979, ran through multiple generations, and has now been officially discontinued by Siemens for new development, yet tens of thousands of machines and process cells remain in service worldwide. Because S5 instruction sets, addressing schemes, organization blocks, and integrated function blocks vary substantially between CPU families, identifying the manual that matches your specific 6ES5 order number is mandatory before any code change, troubleshooting step, or interface wiring decision.

This reference consolidates the manual families for the most common S5 controllers still in service — the S5-90U, the S5-95U, the S5-115U, and the S5-135U/155U with CPU 928B — and documents how to navigate Siemens Industry Online Support to find the matching programming guide for each variant.

1. SIMATIC S5 Family Overview

The SIMATIC S5 line spans more than two decades of hardware evolution. Each CPU family uses the STEP 5 programming language but exposes a different instruction set, a different memory layout, and a different set of integrated (on-board) function blocks. Engineers must confirm the exact MLFB (order number) printed on the front panel of the CPU before pulling a manual, because two S5-95U variants, for example, may have different serial port configurations and different integrated FB libraries.

CPU Family Typical MLFB Prefix Released Programming Software
S5-90U 6ES5 090- 1984 STEP 5 (STL, LAD, CSF)
S5-95U 6ES5 095- 1987 STEP 5 (STL, LAD, CSF)
S5-100U 6ES5 100- 1988 STEP 5 (STL, LAD, CSF)
S5-115U 6ES5 115- 1981 STEP 5 (STL, LAD, CSF, GRAPH 5)
S5-135U 6ES5 135- 1982 STEP 5 (STL, LAD, CSF)
S5-155U 6ES5 155- 1987 STEP 5 (STL, LAD, CSF)

The S5-90U and S5-95U share the same compact, slim-line form factor and were designed as low-cost replacements for relay logic. The S5-115U is a modular mid-range PLC that supports analog and digital I/O expansion racks. The S5-135U and S5-155U target complex process and high-I/O-count applications, and they support the most comprehensive instruction set through the CPU 928B and CPU 948 processors.

2. S5-90U Programmable Controller — Documentation Set

The S5-90U (CPU 100/102) is the entry-level S5 controller. Its manual set includes the S5-90U System Manual, the S5-90U Programmable Controller Manual, and a series of CPU-specific supplements. Because the S5-90U does not support an expansion rack, all manuals are typically provided as a single combined System Manual with appendices for integrated I/O and the integrated counter/timer functions.

Key References for S5-90U

  • S5-90U System Manual — covers hardware installation, wiring, addressing, mode selector operation, integrated I/O, integrated counters, integrated timers, and the diagnostic LED map.
  • STEP 5 Programming Reference — covers STL, LAD, and CSF editors, OB/FB/PB/SB block types, and the standard function library (e.g., FB 240 for code conversion, FB 241 for BCD-binary conversion).
  • COM 90U Communication Manual — covers the integrated RS-485 interface used for PG and OP communication (often identified as the first serial port).

The S5-90U has 4 KB of RAM and supports a maximum of 16 digital inputs and 16 digital outputs in its base configuration. It does not have integrated analog I/O and cannot be expanded through I/O racks. Engineers migrating from S5-90U code to S7 must remap every direct I/O access (I/Q bytes 0–3) and replace the integrated counter FBs with the S7-200/S7-1200 HSC library equivalents.

3. S5-95U Programmable Controller — Documentation Set

The S5-95U (CPU 102, 103, 104, and later revisions) extends the S5-90U with up to 32 digital inputs, 32 digital outputs, 8 analog inputs, 1 analog output, and one or two serial interfaces depending on the variant. The most common MLFB for the S5-95U family is the 6ES5 095-8Mxxx series. The system manual is the canonical reference for all S5-95U variants, but each sub-variant typically ships with an additional manual covering its integrated peripheral features.

Common S5-95U Variants

MLFB Integrated I/O Serial Interfaces Notes
6ES5 095-8MA01 32 DI / 32 DO, 8 AI / 1 AO 1 × RS-485 (PG/OP) CPU 102 base
6ES5 095-8MB01 32 DI / 32 DO, 8 AI / 1 AO 1 × RS-485 (PG/OP) CPU 103
6ES5 095-8MC01 32 DI / 32 DO, 8 AI / 1 AO 2 × serial (RS-485 + RS-232/TTY) CPU 103, second port
6ES5 095-8MD01 32 DI / 32 DO, 8 AI / 1 AO 2 × serial CPU 104
6ES5 095-8ME01 32 DI / 32 DO, 8 AI / 1 AO 2 × serial CPU 104, higher RAM

The primary reference for all S5-95U variants is the S5-90U/S5-95U Programmable Controller System Manual. This manual covers the 90U and 95U families together because they share the same form factor and STEP 5 instruction subset. The system manual includes:

  • Hardware installation, mounting, and grounding
  • Addressing of integrated I/O (bytes 0–31 for digital, 32–47 for analog)
  • Mode selector and status/error LED descriptions
  • Integrated counter FB (FB 0 to FB 9)
  • Integrated timing FB (FB 10 to FB 19)
  • Memory layout (system RAM, user RAM, retentive area)
  • PG/OP interface description (RS-485, baud rates up to 9600 bps)

4. Second Serial Interface on 6ES5 095-8MC01

The 6ES5 095-8MC01 variant is unique because it includes a second serial interface in addition to the standard PG/OP port. Engineers who attempt to use the second port with the wrong manual will find the documentation silent on its wiring, protocol selection, and driver behavior. The correct manual is the Second Serial Interface of the S5-95U Programmable Controller supplement, which is bound to the 6ES5 095-8MC01 MLFB.

Key Parameters of the Second Serial Port

Parameter Value
Electrical standard RS-232C / TTY (selectable via DB-15 pin strap)
Baud rates 300, 600, 1200, 2400, 4800, 9600
Protocols supported ASCII driver (FB 200–FB 205), RK-512 (3964R), PtP
Connector 15-pin sub-D male (front panel)
Default function block SEND/RECEIVE via FB 202 (ASCII), FB 244 (RK-512)
Handshake lines RTS/CTS, DTR/DSR (RS-232 mode)

When commissioning the second port, confirm the integrated FB version is loaded. CPU 103 variants use the S5-95U system FB set; CPU 104 variants ship with the extended FB library that includes floating-point math and PID loops (FB 250 to FB 254). Pulling the wrong manual for the FB reference will leave a programmer unable to explain why, for example, FB 252 is accepted on one controller but rejected on the next.

Wiring the Second Serial Port (RS-232 Mode)

  1. Confirm the controller is the 6ES5 095-8MC01 MLFB (the second port is not present on 8MA01/8MB01).
  2. Open the front cover; locate the 15-pin D-sub connector on the front face.
  3. Use the pin assignment table from the supplement to wire TXD (pin 2), RXD (pin 3), RTS (pin 4), CTS (pin 5), and signal ground (pin 7).
  4. Configure handshake mode through the system data word SDB 2 (synchronous or asynchronous).
  5. Test with FB 202 SEND/RECEIVE in a diagnostic block before deploying production traffic.
Caution: The second serial interface on the 6ES5 095-8MC01 is not electrically isolated. Where the connected device sits at a different ground potential, install an RS-232 isolator (e.g., a Phoenix Contact PSM-ME-RS232/TTY) to avoid ground-loop damage to the CPU.

5. S5-115U Programmable Controller — Documentation Set

The S5-115U is the most widely deployed mid-range S5 controller. It uses a separate backplane and supports expansion racks (ERs) with digital and analog I/O modules in the 6ES5 4xx and 6ES5 5xx product families. The CPU options for the S5-115U include CPU 941, CPU 942, CPU 943, CPU 944, and CPU 945, each with progressively larger instruction sets and program memory.

S5-115U Reference Documentation

  • S5-115U Programmable Controller System Manual (CPU 941–CPU 944 variants)
  • S5-115U Programmable Controller Manual (CPU 945 extended instruction set)
  • STEP 5 Programming Manual (applies across all S5 CPU families but with appendix on CPU-specific instructions)
  • S5-115U Communication Manual (CP 524, CP 525, CP 526, CP 530, CP 5430, CP 5431 communications processors)
  • S5-115U Analog I/O Module Manual (6ES5 460, 6ES5 461, 6ES5 463, 6ES5 464 modules)

For CPU 945 applications — typically redundant process control and high-speed packaging — engineers should request the S5-115U Manual CPU 945 supplement because the CPU 945 introduces additional math functions (e.g., 32-bit fixed-point operations) and additional block types not present in the lower CPU numbers.

S5-115U CPU Reference Table

CPU Memory Bit Instructions Word Instructions Scan Time (1 Kbit)
CPU 941 2 KB AND, OR, XOR 16-bit load/transfer ~8 ms
CPU 942 4 KB + set/clear + compare, arithmetic ~5 ms
CPU 943 16 KB + edge detect + 32-bit operations ~3 ms
CPU 944 32 KB All standard + floating-point ~2 ms
CPU 945 64 KB + extended set + extended FP, table ~1.5 ms

6. S5-135U with CPU 928B — Programming Guide Reference

The S5-135U and S5-155U are the high-end S5 PLCs used for process automation, multi-rack I/O expansion, and redundant controller configurations. The CPU 928B is the most common processor in this family and supports the broadest S5 instruction set, including all standard STEP 5 blocks and the COM 928B communication firmware.

The official Siemens programming guide for the CPU 928B is the S5-135U CPU 928B Programming Guide, available from Siemens Industry Online Support at support.industry.siemens.com — S5-135U CPU 928B Programming Guide (PDF). This guide covers the CPU 928B-3UB11 and CPU 928B-3UB12 firmware revisions, the additional functions enabled by each, and the system software for both.

CPU 928B Variants Covered

MLFB RAM Extended Functions
6ES5 928-3UB11 128 KB / 256 KB Standard instruction set
6ES5 928-3UB12 128 KB / 256 KB / 512 KB + extended math, additional OB, COM 928B

Contents of the CPU 928B Programming Guide

  • Instruction set overview (bit, byte, word, double-word operations)
  • Organization block (OB) execution sequence: OB 1 (cyclic), OB 2 (interrupt-driven), OB 13–OB 17 (time-of-day interrupts), OB 21/OB 22 (restart), OB 23/OB 24 (error)
  • Function block (FB) standard library including FB 200–FB 249 for handling, conversion, and math
  • System data blocks (SDB) — SDB 1 through SDB 122 parameter ranges
  • Process image, dual-port RAM, and rack addressing
  • Communication block support for CP 143 (SINEC H1), CP 1430 (TCP/IP), CP 544 (PROFIBUS)
Revision identifier: The CPU 928B-3UB12 introduces the READ/WRITE indirect instructions and the Do-loop construct through FB 244. Code that relies on these instructions will fail to assemble on a CPU 928B-3UB11. Confirm the CPU MLFB before back-porting any block from a newer to an older controller.

7. STEP 5 Instruction Set — Cross-Family Comparison

STEP 5 is the programming language family shared across all SIMATIC S5 controllers. Three representations are available: STL (Statement List), LAD (Ladder Diagram), and CSF (Control System Flowchart). Each CPU family supports a subset of the full STEP 5 vocabulary, with the more powerful CPUs adding word-level, floating-point, and indirect addressing operations.

Block Types Used in STEP 5

Block Type Description Typical Use
OB (Organization Block) Defines program structure; called by CPU operating system OB 1 cyclic, OB 21 restart
PB (Program Block) Called by OB or FB for structuring code Machine sequences
SB (Sequence Block) Called by FB; used for sub-sequence steps Step chains in GRAPH 5
FB (Function Block) Reusable code with local instance memory Valve control, PID loops
FX (Function Block, no parameters) Reusable code, parameter-less Simple utility logic
DB (Data Block) Stores user data structures Recipe data, setpoints
DX (Data Block, extended) Data block with extended parameter handling CP 1430 buffer data

Standard Function Blocks (FX 0–FX 9 and FB 0–FB 249)

Block Function
FX 0 / FB 0 BCD/Binary conversion
FX 9 / FB 9 Code conversion (Gray, BCD)
FB 240 Code conversion (BCD / binary / Gray)
FB 241 BCD ↔ Binary fixed-point
FB 242 / FB 243 Math operations (add/sub/mult/div, fixed-point)
FB 244 RK-512 send/receive (3964R protocol)
FB 250 PID algorithm (standard)
FB 251 Extended PID (with derivative on PV)
FB 252 / FB 253 Analog value scaling, integrator
FB 254 Table lookup and interpolation

8. Locating Manuals on Siemens Industry Online Support

Siemens maintains a public archive of legacy manuals through its Industry Online Support portal. Engineers should follow this procedure to pull the correct S5 manual:

  1. Navigate to support.industry.siemens.com.
  2. Enter the full 12-digit MLFB into the product search (e.g., 6ES5 095-8MC01 or 6ES5 928-3UB12).
  3. From the product tree, expand the Manuals node.
  4. Filter by document type: System Manual, Programming Manual, Communication Manual, Module Manual, or Entry List.
  5. Verify the manual's Edition field against the CPU's firmware revision; manuals often list the valid CPU MLFBs on the back cover or in section 1.1.
  6. Cross-check the print date and the firmware revision code (e.g., 3UB12-2 vs 3UB12-3) before quoting instruction behavior in a change request.

Where the MLFB is unreadable (label worn off, controller in an enclosure), read the front-panel CPU designation printed under the door, decode the Siemens spare-part number, and search by that string. The MLFB always appears as 6ES5 xxx-yyyyy with spaces optional.

Archive note: Manuals predating the Siemens Industry Online Support re-platform (pre-2011) are sometimes only available as scanned PDFs. These are typically high-resolution 200 dpi scans and can be 100 MB+. Always verify you have a complete download by comparing the page count to the table of contents on the last page.

9. Common Programming Reference Errors to Avoid

9.1 Confusing S5-90U and S5-95U Instruction Sets

The S5-90U and S5-95U share a slim-line chassis but the S5-95U has additional FBs and a different I/O address map (the analog I/O begins at byte 32, not byte 0). Pulling only the S5-90U manual for a 95U application leads to addressing errors at first commissioning.

9.2 Ignoring the FB Library Version

Each S5-95U revision (CPU 102, 103, 104) ships with a different FB library version. Using a higher-version FB on a lower-version CPU triggers an OB 23 (substitution error) at startup. Always confirm FB library compatibility before downloading a program from a newer CPU to an older one.

9.3 Mismatching the Communication Protocol Documentation

The 3964R protocol documented for the 6ES5 095-8MC01 second serial interface differs from the RK-512 documented for CP 524. Engineers converting ASCII/RK-512 traffic must read the protocol section of the Second Serial Interface supplement, not the CP 524 Manual.

9.4 Treating the CPU 928B Guide as Universal

The CPU 928B programming guide covers only the S5-135U/S5-155U processors. It does not document CPU 945 (S5-115U) or CPU 948 (S5-155U) features, and several blocks referenced in the guide are not available in the lower CPU families.

10. Verification Checklist Before Programming

Step Verification Action
1 Record full MLFB from front panel label (e.g., 6ES5 095-8MC01)
2 Confirm firmware version from CPU status display (if available)
3 Pull system manual matching the MLFB from Siemens Industry Online Support
4 Pull CPU-specific programming guide (e.g., CPU 928B-3UB11 vs 3UB12)
5 Pull integrated I/O / serial interface supplements for any non-base features
6 Verify communication processor manuals (CP 524, CP 530, CP 1430) match the installed CP
7 Cross-check FB library version against the supplied FB disk (if present)
8 Test-program download: connect PG (e.g., PG 720, PG 740, or modern USB-to-RS-485) and confirm OB 1 cyclic scan starts
9 Verify process image parity by forcing one input and one output
10 Document the manual set used for the project change (filename, edition, date)

11. Programming Reference Summary Table

CPU Family Manual Title Covers MLFB Examples
S5-90U S5-90U Programmable Controller System Manual 6ES5 090-8MA01, 6ES5 090-8MB01
S5-95U S5-90U/S5-95U Programmable Controller System Manual 6ES5 095-8MA01, 8MB01, 8MC01, 8MD01, 8ME01
S5-95U (second port) Second Serial Interface of the S5-95U Programmable Controller 6ES5 095-8MC01
S5-115U S5-115U Programmable Controller System Manual 6ES5 115-UA01, 6ES5 115-UB01
S5-115U (CPU 945) S5-115U Manual CPU 945 6ES5 945-7UA11
S5-135U (CPU 928B) S5-135U CPU 928B Programming Guide 6ES5 928-3UB11, 6ES5 928-3UB12
S5-155U S5-155U Programmable Controller System Manual 6ES5 155-UA02, 6ES5 948-3UB11 (CPU 948)

12. Programmer Guidance and Migration Considerations

Engineers programming an S5 controller today typically use one of three paths: legacy STEP 5 on a PG 720/PG 740, modern STEP 5 V7.x on a Windows XP/Windows 7 PC with an RS-485 USB adapter, or S5-to-S7 migration through SIMATIC S5 migration tools. Each path requires the original S5 manual set for reference, because the STEP 5 editor still requires the user to specify the FB library and block structure for the target CPU.

For migration projects, the original S5 manual set is essential to capture the legacy I/O map, alarm structure, and FB behavior. The CPU 928B programming guide, for example, documents the COM 928B protocol stack that must be replicated when porting to S7-400 with CP 443-1. Without the source S5 manual, the migration engineer cannot validate that the new S7 code preserves the original S5 edge behavior, OB timing, and FB parameter polarity.

Best practice: Archive the full S5 manual set, the FB library disk, and a printout of the project block structure alongside the controller's source code. When the controller is retired or replaced 10–20 years later, this archive is the only way to validate any retrofit or reverse-engineering task.

Frequently Asked Questions

Where can I download the S5-90U and S5-95U programming manuals?

Use Siemens Industry Online Support at support.industry.siemens.com and search by MLFB (e.g., 6ES5 090-8MA01 for the S5-90U or 6ES5 095-8MC01 for the S5-95U with second serial port). The S5-90U/S5-95U Programmable Controller System Manual is the primary reference for both families.

Which manual documents the second serial interface on the 6ES5 095-8MC01?

The Second Serial Interface of the S5-95U Programmable Controller supplement covers the 6ES5 095-8MC01 second port. It details RS-232/TTY selection, baud rates from 300 to 9600, ASCII driver FBs (FB 200–FB 205), and RK-512 send/receive (FB 244).

What CPU variants does the S5-135U CPU 928B Programming Guide cover?

The guide covers the CPU 928B-3UB11 and CPU 928B-3UB12 firmware revisions. It is hosted at support.industry.siemens.com — S5-135U CPU 928B Programming Guide (PDF) and includes the standard FB library, OB execution sequence, and COM 928B communication blocks.

Why do S5 instruction sets differ between CPU families?

Each S5 CPU generation was released over a 10-year span (1981–1991) and added word-level, floating-point, and indirect addressing operations as controllers grew more powerful. CPU 102 supports only bit and basic byte operations; CPU 928B supports the full set including 32-bit fixed-point, floating-point, and the Do-loop through FB 244.

Can I use the same FB library across S5-90U and S5-135U?

No. The FB library is bound to the CPU firmware revision and the FB version printed on the supplied disk. Calling FB 252 (analog scaling) on a CPU 102 returns OB 23 substitution error. Always verify FB library compatibility against the target CPU's firmware release before downloading.

Back to blog