#15 PLC Best Practices – Safe State when PLC Restarts

Define safe states for the process in case of PLC restarts (e.g., energize contacts, de-energize, keep the previous state).

#14 PLC Best Practices – Restrict Third-party Data Interfaces

Restrict the type of PLC connections and available data for third-party data interfaces in a programmable logic controller,

#13 PLC Best Practices – Disable Unused Communication Ports

Disable unused communication ports and protocols that are not required in PLC controllers and network interface modules.

#12 PLC Best Practices – Validate Inputs based on Physical Plausibility

Ensure operators can only input what’s practical or physically feasible in the process. Learn the PLC's best rules.

#11 PLC Best Practices – Instrument for Plausibility Checks

Instrument the process in a way that allows for plausibility checks by cross-checking different measurements.

#10 PLC Best Practices – Assign Register Blocks by Function

Assign designated register blocks for specific PLC functions in order to validate data and block unauthorized access to controller data.

#9 PLC Best Practices – Validate indirections

PLC best practices - Validate indirections by poisoning array ends to catch fence-post errors.

#8 PLC Best Practices – Validate HMI Input Variables at PLC Level

HMI access to PLC variables can be restricted to a valid operational value range but further cross-checks in the PLC should be added.

#7 PLC Best Practices – Validate and Alert for Paired Inputs/Outputs

Alarm the operator when input/output states occur that are physically not feasible. Validate and alert for paired inputs/outputs in PLC.

#6 PLC Best Practices – Validate Timers and Counters

If timers and counters values are written to the PLC program, they should be validated by the programmable logic controller.