Pro
12 min

CCST 24 — Safety Category Levels

ccstsafetydual-channelcategory3PLd
CCST 24 — Safety Category Levels scenario preview

Ready to build this?

Sign up free — no credit card required. This scenario requires the Pro plan.

Sign up to play this scenario →

Already have an account? Log in

Briefing

Write a dual-channel E-stop circuit: two NC contacts ESTOP_CH1 and ESTOP_CH2 must BOTH be open to drop the output (Category 3 / PLd pattern). A discrepancy latch CHANNEL_FAULT fires if one is open but not the other.

Objectives

  • SAFE_OUTPUT requires both channels to be de-energised to shut down
  • CHANNEL_FAULT latches if CH1 ≠ CH2 for more than one scan
  • Normal run: SAFE_OUTPUT := NOT ESTOP_CH1 AND NOT ESTOP_CH2 (both NC: both TRUE at rest means safe)

Hints

  • Safe when ESTOP_CH1 AND ESTOP_CH2 are both TRUE (NC contacts at rest)
  • CHANNEL_FAULT := ESTOP_CH1 XOR ESTOP_CH2 (simplified — real systems use timers)

I/O Table

Inputs

ESTOP_CH1

E-stop channel 1 (NC, TRUE=safe)

BOOL · %I0.0

ESTOP_CH2

E-stop channel 2 (NC, TRUE=safe)

BOOL · %I0.1

Outputs

SAFE_OUTPUT

Safe output

BOOL · %Q0.0

CHANNEL_FAULT

Channel discrepancy fault

BOOL · %Q0.1

Your program will be tested against:

All test cases run automatically when you submit. Assertions are hidden until you pass.

  1. #1Safe when both NC contacts closed

    Safe when both NC contacts closed

  2. #2Both trip drops output

    Both trip drops output

  3. #3One channel discrepancy flags fault

    One channel discrepancy flags fault

Ready to build this?

Sign up free — no credit card required. This scenario requires the Pro plan.

Sign up to play this scenario →

Already have an account? Log in