Inst ToolsInst ToolsInst Tools
  • Courses
  • Automation
    • PLC
    • Control System
    • Safety System
    • Communication
    • Fire & Gas System
  • Instrumentation
    • Design
    • Pressure
    • Temperature
    • Flow
    • Level
    • Vibration
    • Analyzer
    • Control Valve
    • Switch
    • Calibration
    • Erection & Commissioning
  • Interview
    • Instrumentation
    • Electrical
    • Electronics
    • Practical
  • Q&A
    • Instrumentation
    • Control System
    • Electrical
    • Electronics
    • Analog Electronics
    • Digital Electronics
    • Power Electronics
    • Microprocessor
  • Request
Search
  • Books
  • Software
  • Projects
  • Process
  • Tools
  • Basics
  • Formula
  • Power Plant
  • Root Cause Analysis
  • Electrical Basics
  • Animation
  • Standards
  • 4-20 mA Course
  • Siemens PLC Course
Reading: #4 PLC Best Practices – Use PLC Flags as Integrity Checks
Share
Font ResizerAa
Inst ToolsInst Tools
Font ResizerAa
  • Courses
  • Design
  • PLC
  • Interview
  • Control System
Search
  • Courses
  • Automation
    • PLC
    • Control System
    • Safety System
    • Communication
    • Fire & Gas System
  • Instrumentation
    • Design
    • Pressure
    • Temperature
    • Flow
    • Level
    • Vibration
    • Analyzer
    • Control Valve
    • Switch
    • Calibration
    • Erection & Commissioning
  • Interview
    • Instrumentation
    • Electrical
    • Electronics
    • Practical
  • Q&A
    • Instrumentation
    • Control System
    • Electrical
    • Electronics
    • Analog Electronics
    • Digital Electronics
    • Power Electronics
    • Microprocessor
  • Request
Follow US
All rights reserved. Reproduction in whole or in part without written permission is prohibited.
Inst Tools > Blog > PLC Tutorials > #4 PLC Best Practices – Use PLC Flags as Integrity Checks

#4 PLC Best Practices – Use PLC Flags as Integrity Checks

One of the best PLC best practices is to use PLC flags as integrity checks. Put counters on PLC error flags to capture any math problems.

Last updated: September 21, 2021 1:23 am
Editorial Staff
PLC Tutorials
No Comments
Share
3 Min Read
SHARE

One of the best PLC best practices is to use PLC flags as integrity checks.

Contents
Use PLC Flags as Integrity ChecksExample

Put counters on PLC error flags to capture any math problems.

Security ObjectiveTarget Group
  The integrity of PLC logicProduct Supplier Integration / Maintenance Service Provider

Use PLC Flags as Integrity Checks

If the PLC code was working fine but suddenly does a divide by zero, investigate. If something is communicating peer to peer from another PLC and the function/logic does a divide by zero when it wasn’t expected, investigate.

Most programmers will ignore the issue as a math error or worse yet, might presume their code is perfect and let the PLC enter a hard fault state.

During code development, engineers need to test and validate their code modules (snippets or routines) by inputting data outside of expected bounds. This may be termed Unit Level Test.

Assign different, locked memory segments for firmware, logic, and protocol stack. Test the protocol stack for abuse cases. Abuse cases could be peculiar flag conditions in a packet header.

Use PLC Flags as Integrity Checks

Example

PLC faults caused by out-of-bounds data are very common. This happens, for example, when an input value causes array indices to go out of bounds, or timers with negative presets, or divide by zero exceptions.

Typical flags of interest are

  • divide by zero
  • counter overflow
  • negative counter or timer preset
  • I/O scan overrun

Why?

Beneficial for…?Why?
      SecurityAttacks on PLCs could include changing their logic, activating a new program, testing new code, loading a new process recipe, inserting auxiliary logic to send messages, or activating some feature.

Since most PLCs do not provide cryptographic integrity checks, flags can be a good indicator if one of the above logic changes happens.
  ReliabilityFlags taken seriously can avoid the PLC running with programming or I/O errors.

Also, if an error occurs, the source of the failure is more obvious.
Maintenance/

References

Standard/frameworkMapping
MITRE ATT&CK for ICSTactic: TA010 – Impair Process Control
Technique:  T0836 – Modify Parameter
  ISA 62443-3-3SR 3.5: Input Validation
SR 3.6: Deterministic Output
  ISA 62443-4-2CR 3.5: Input Validation
CR 3.6: Deterministic Output
  ISA 62443-4-1SI-2: Secure coding standards
SVV-1: Security requirements testing
    MITRE CWECWE-128: Wrap-around
CWE-190: Integer Overflow
CWE-369: Divide by Zero
CWE-754: Improper Check for Unusual or Exceptional Conditions

Source: PLC Security

Don't Miss Our Updates
Be the first to get exclusive content straight to your email.
We promise not to spam you. You can unsubscribe at any time.
Invalid email address
You've successfully subscribed !

Continue Reading

How Could FB and FC Make Me Professional PLC Programmer?
How to Filter Digital and Analog Inputs in a PLC?
PLC Valve Control Ladder Logic Programming
Automatic Highway Lights Program using RTC in Omron PLC
The Concept of Shift Register in Omron PLC with Example
PLC Ladder Logic Design: Control 3 Motors with Toggle Switch
Share This Article
Facebook Whatsapp Whatsapp LinkedIn Copy Link
Share
Leave a Comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Stay Connected

128.3kFollowersLike
69.1kFollowersFollow
210kSubscribersSubscribe
38kFollowersFollow

Categories

Explore More

PLC Digital Signals Wiring Techniques
ON Delay Timer using PLC
Smart Automation Solutions: PLC Logic for Stairway Lighting
Difference Between CompactLogix and ControlLogix
PLC Selective Execution of the Application – Example Program
PLC Program for Controlling a Water Pump with 3 Power Sources
LS Electric PLC Program Example: Clothes Washing System
PLC Input Output Modules

Keep Learning

Delta HMI and VFD Control with Modbus

Delta HMI and VFD Control with Modbus

SR Flip Flop Logic

How to implement SR Flip Flop using PLC Ladder Logic

PLC program Permissive Circuit

PLC Electric Motor Interlocks

Allen Bradley RSLogix 500 PLC Programming

Download Free Robotics Software

Step by Step Guidelines to Download Free Robotics Software

Set the S5 timer value by a memory word

Set the S5 Timer Value by a Memory Word

PLC Program for Conveyor Motor

PLC Conveyor Motor Ladder Logic

Advanced Ladder Logic PLC Example

Automatic Sanitizer – Complex Ladder Logic PLC Examples

Learn More

Transformer Tap changer

Transformer Mutual Induction

Basic Components of HVAC System

Basic Components of HVAC System

Derivative Controller Response

Derivative Controller Principle

Glass Bottle Level Gauge

Antifriction Bearings Caused Machine Changeovers Posed Outages

Instrument Turndown Ratio

Instrument Turndown Ratio

Comparison of Proportional Integral Derivative Controllers (PID)

Comparison of Proportional Integral Derivative Controllers (PID)

Measurement and Instrumentation Objective Questions

Measurements & Instrumentation Quiz – Set 10

Oil Burners

What are Oil Burners? Types, Advantages, Applications

Menu

  • About
  • Privacy Policy
  • Copyright

Quick Links

  • Learn PLC
  • Helping Hand
  • Part Time Job

YouTube Subscribe

Follow US
All rights reserved. Reproduction in whole or in part without written permission is prohibited.
Welcome Back!

Sign in to your account

Username or Email Address
Password

Lost your password?