TIA Portal Β· Track 08 Β· Safety Integrated

The Program That Says No

A fail-safe CPU runs two programs side by side: your ordinary machine logic, and a separate, protected safety program with the authority to override it. When an E-stop is hit, the standard program doesn't get a vote β€” the safety side drops the dangerous output by itself. Here's that split, live.

🟨 F-runtime groupπŸ“¨ PROFIsafeSIL 3 / PL e
01 Β· Two worlds, one CPU

The safety side has the final word

Left: your standard program wants the saw running whenever the operator presses Run. Right: the safety program (yellow β€” that's the Siemens convention for F-blocks) gates the actual motor on the E-stop. Press Run, then slam the E-stop: notice the standard logic still "wants" the saw on, but the safe output is cut anyway. The safety world wins.

βš™οΈ Standard program OB1
your everyday machine logic β€” no safety authority
"RunRequest" β†’ SawMotorCmd := FALSE
"SawMotorCmd" wants the saw OFF
πŸ›‘οΈ Safety program F-runtime
protected F-blocks; runs at its own interval, signature-checked
ESTOP1(E-stop OK) β†’ "SafeEnable" := TRUE
SafeSawOut := MotorCmd AND SafeEnable = FALSE
E-STOPtap to hit / reset
πŸͺš
Saw: SAFE-OFF
Standard cmd: FALSE
Safe enable: TRUE
● safe output controlled by F-program
F-state: RUNNING

After an E-stop, releasing it doesn't instantly restart the machine β€” the safety channel passivates and waits for a deliberate acknowledge (reintegration) before it trusts the signal again. That "you must confirm before restart" step is a safety requirement, not an inconvenience.

02 Β· How it stays trustworthy

Safety over an ordinary wire

The safe E-stop signal travels the same PROFINET cable as everything else β€” so how can you trust it for SIL 3? PROFIsafe wraps each safe value in an envelope with a sequence number, a watchdog timer and a CRC. If anything looks wrong β€” a stale number, a late telegram, a bad checksum β€” the channel assumes the worst and goes to the safe state.

🟨 F-blocks are protected. The safety program has its own runtime group, a collective signature, and is access-protected β€” you can't casually edit it, and a change is logged and re-verified. That's why it's drawn in yellow.

🀝 Safe & standard coexist. Both run on the one F-CPU and can share data one way (safe β†’ standard is free; standard β†’ safe is restricted). Your machine logic reads safety status but can never weaken it.

03 Β· Check yourself

Who drops the output?

A PROFIsafe telegram arrives late β€” past its F-monitoring time. What does the F-CPU do with that channel?