Evaluate the AutomationView desktop suite free for 30 days. No credit card required. Claim trial key →

Automation Insights

Technical articles, tutorials, and industry news for modern automation engineers.

search

Why GraphQL and WebSockets are Replacing Polling in Modern HMI

HMI
%%{init: {'theme':'dark', 'themeVariables': { 'background': '#001c38' }}}%%
flowchart LR
    A["PLC / Edge Gateway"] -->|GraphQL| B["Unified Data Layer"]
    B -->|WebSockets| C["Browser-Based HMI"]
    C -->|WebSockets| B
    style A fill:#2563eb,stroke:#60a5fa,stroke-width:2px,color:#ffffff
    style B fill:#16a34a,stroke:#4ade80,stroke-width:2px,color:#ffffff
    style C fill:#dc2626,stroke:#f87171,stroke-width:2px,color:#ffffff
AutomationView Icon AutomationView
calendar_month

Why GraphQL and WebSockets are Replacing Polling in Modern HMI

For decades, industrial control systems relied heavily on simple request-response polling mechanisms to update screens. If an operator needed to know a tank’s level, the HMI asked the PLC, waited for the response, and then asked again a second later. In 2026, this approach is fundamentally broken. As manufacturing floors integrate deeper with IIoT, Edge […]

Read Article arrow_forward

Behavior-Driven Development: Shifting Left in PLC Testing

Learning
%%{init: {'theme':'dark', 'themeVariables': { 'background': '#001c38' }}}%%
flowchart LR
    classDef step fill:#2563eb,stroke:#60a5fa,stroke-width:2px,color:#ffffff
    classDef action fill:#16a34a,stroke:#4ade80,stroke-width:2px,color:#ffffff
    classDef test fill:#dc2626,stroke:#f87171,stroke-width:2px,color:#ffffff
    A["Given Initial State"]:::step --> B["When Input Triggered"]:::action
    B --> C["Then Expected Output"]:::test
AutomationView Icon AutomationView
calendar_month

Behavior-Driven Development: Shifting Left in PLC Testing

Manual “check-by-feeling” validation remains a significant bottleneck during industrial commissioning. Relying on physical observations to confirm PLC code correctness often leads to expensive delays and dangerous edge-case failures. Behavior-Driven Development (BDD) shifts the testing process left, allowing automation engineers to validate complex control logic against executable specifications long before deploying a single line of code […]

Read Article arrow_forward

Inside SIL 2 Ultrasonic Sensors: Revolutionizing Collaborative Robotics Safety

Automation News
%%{init: {'theme':'dark', 'themeVariables': { 'background': '#001c38' }}}%%
flowchart LR
    A["Standard Component"] -->|Certification Bottleneck| B["System-Level Safety"]
    C["SIL 2 Ultrasonic Sensors"] -->|Drop-In Integration| D["Component-Level Safety"]
    style A fill:#dc2626,stroke:#f87171,stroke-width:2px,color:#ffffff
    style B fill:#dc2626,stroke:#f87171,stroke-width:2px,color:#ffffff
    style C fill:#16a34a,stroke:#4ade80,stroke-width:2px,color:#ffffff
    style D fill:#16a34a,stroke:#4ade80,stroke-width:2px,color:#ffffff
AutomationView Icon AutomationView
calendar_month

Inside SIL 2 Ultrasonic Sensors: Revolutionizing Collaborative Robotics Safety

Key Takeaways: System-wide safety certification has historically bottlenecked collaborative robotics (cobot) integration on the plant floor. New breakthroughs in 2026 introduce 3D ultrasonic sensors with native SIL 2 and PL d safety ratings. Engineers can now achieve component-level safety, bypassing the need for exhaustive, custom system certifications. The End of System-Level Bottlenecks Deploying collaborative robotics […]

Read Article arrow_forward

Demystifying SCCR Calculation for UL 508A Industrial Control Panels

Calculator
%%{init: {'theme':'dark', 'themeVariables': { 'background': '#001c38' }}}%%
flowchart LR
    A["Branch Circuit Components"]:::branch --> B["Feeder Circuit Components"]:::feeder
    B --> C["Overall Panel SCCR"]:::overall
    classDef branch fill:#2563eb,stroke:#1e40af,color:#ffffff,stroke-width:2px;
    classDef feeder fill:#16a34a,stroke:#15803d,color:#ffffff,stroke-width:2px;
    classDef overall fill:#dc2626,stroke:#b91c1c,color:#ffffff,stroke-width:2px;
AutomationView Icon AutomationView
calendar_month

Demystifying SCCR Calculation for UL 508A Industrial Control Panels

Key Takeaways: The overall SCCR of a panel is limited by the lowest rated component in the power circuit. Current-limiting fuses or circuit breakers can raise the effective SCCR of downstream components under specific UL 508A rules. Control circuits powered by a transformer are generally exempt from the main SCCR calculation if the transformer is […]

Read Article arrow_forward

Inside OPC UA PubSub over TSN: Deterministic PLC Comm

Learning
%%{init: {'theme':'dark', 'themeVariables': { 'background': '#001c38' }}}%%
flowchart LR
    style ControllerA fill:#2b6cb0,stroke:#2c5282,stroke-width:2px,color:#fff
    style Network fill:#319795,stroke:#285e61,stroke-width:2px,color:#fff
    style ControllerB fill:#2b6cb0,stroke:#2c5282,stroke-width:2px,color:#fff
    
    ControllerA["Publisher (PLC A)"] -->|"OPC UA PubSub"| Network["TSN Switch"]
    Network -->|"Scheduled Traffic"| ControllerB["Subscriber (PLC B)"]
AutomationView Icon AutomationView
calendar_month

Inside OPC UA PubSub over TSN: Deterministic PLC Comm

Key Takeaways Sub-millisecond Precision: Understand how TSN transforms standard Ethernet into a predictable, deterministic medium for critical control loops. Decoupled Architecture: Leverage the publish-subscribe model to significantly reduce network overhead compared to traditional client-server polling. Legacy Integration: Navigate the hurdles of integrating Time-Sensitive Networking hardware with existing non-TSN plant floor infrastructure. The Shift Toward Deterministic […]

Read Article arrow_forward

Deep Dive: Integrating HTML5 Web Components into Modern SCADA Systems

HMI
%%{init: {'theme':'dark', 'themeVariables': { 'background': '#001c38' }}}%%
flowchart LR
    A["Legacy HMI"] -.-> B["Proprietary Plugin"]
    B -.-> C["Vendor Lock-In"]
    D["Modern SCADA"] -->|HTML5 + SVG| E["Web Server"]
    E -->|WebSockets| F["Any Browser/Device"]
    
    style A fill:#e74c3c,stroke:#c0392b,color:#fff
    style B fill:#e74c3c,stroke:#c0392b,color:#fff
    style C fill:#c0392b,stroke:#a1281a,color:#fff
    style D fill:#2ecc71,stroke:#27ae60,color:#fff
    style E fill:#3498db,stroke:#2980b9,color:#fff
    style F fill:#9b59b6,stroke:#8e44ad,color:#fff
AutomationView Icon AutomationView
calendar_month

Deep Dive: Integrating HTML5 Web Components into Modern SCADA Systems

The industrial landscape is aggressively pivoting away from proprietary HMI plugins like ActiveX or Java applets. By transitioning to standard web technologies, automation engineers unlock responsive, hardware-agnostic control panels accessible from any authorized device. This guide unpacks the technical framework required for seamless HTML5 SCADA integration. The Middleware Layer: Bridging OPC UA to WebSockets Traditional […]

Read Article arrow_forward

Inside Automate 2026: How Humanoid Robots and Physical AI are Reshaping Intralogistics

Automation News
%%{init: {'theme':'dark', 'themeVariables': { 'background': '#001c38' }}}%%
flowchart LR
    A["Automate 2026"] --> B["Agentic AI"]
    A --> C["Humanoid Robotics"]
    A --> D["IT/OT Convergence"]
    style A fill:#0d9488,stroke:#fff,color:#fff
    style B fill:#2563eb,stroke:#fff,color:#fff
    style C fill:#2563eb,stroke:#fff,color:#fff
    style D fill:#2563eb,stroke:#fff,color:#fff
AutomationView Icon AutomationView
calendar_month

Inside Automate 2026: How Humanoid Robots and Physical AI are Reshaping Intralogistics

The industrial automation sector recently converged in Chicago for Automate 2026, and the message was unmistakable: we have officially moved past the “pilot purgatory” of artificial intelligence. With over 50,000 registrants and a dedicated Humanoid Robot Pavilion, the show highlighted a massive shift toward highly autonomous, purposeful integration on the factory floor. For automation engineers, […]

Read Article arrow_forward

Inside PROFINET IRT: A Comprehensive Configuration Guide for Motion Control

Learning
%%{init: {'theme':'dark', 'themeVariables': { 'background': '#001c38' }}}%%
flowchart LR
    A["PLC Sync Master"] -->|"Isochronous Clock"| B["Axis 1 (Slave)"]
    B -->|"Hardware Sync"| C["Axis 2 (Slave)"]
    style A fill:#0d9488,stroke:#fff,color:#fff
    style B fill:#2563eb,stroke:#fff,color:#fff
    style C fill:#2563eb,stroke:#fff,color:#fff
AutomationView Icon AutomationView
calendar_month

Inside PROFINET IRT: A Comprehensive Configuration Guide for Motion Control

When engineering high-speed motion control systems, standard real-time communication often falls short. In applications like robotics, CNC, or tightly coupled electronic gearing, a variance of a few milliseconds in communication can translate to mechanical collisions or significant product defects. Achieving precise coordination requires a hardware-synchronized, deterministic network architecture. This is where PROFINET IRT configuration comes […]

Read Article arrow_forward

Deep Dive: Calculating Pump Flow Rates and Head Pressure for VFD Control

Calculator
%%{init: {'theme':'dark', 'themeVariables': { 'background': '#001c38' }}}%%
---
title: Pump System Head Components
---
flowchart TD
    classDef default fill:#1f2937,stroke:#4b5563,color:#f3f4f6
    classDef static fill:#3b82f6,stroke:#2563eb,color:#ffffff
    classDef friction fill:#ef4444,stroke:#b91c1c,color:#ffffff
    classDef total fill:#10b981,stroke:#059669,color:#ffffff
    A["Static Head (Elevation)"]:::static --> C["Total Dynamic Head (TDH)"]:::total
    B["Friction Head (Pipe Loss)"]:::friction --> C
    C --> D["Required Pump Curve"]
AutomationView Icon AutomationView
calendar_month

Deep Dive: Calculating Pump Flow Rates and Head Pressure for VFD Control

When an industrial automation engineer is tasked with integrating a Variable Frequency Drive (VFD) for a centrifugal pump, simply wiring the motor and setting a 0-60Hz ramp is insufficient. To properly tune the PID loop and prevent deadheading or cavitation, you must understand the underlying fluid dynamics. The critical metric for sizing and controlling any […]

Read Article arrow_forward

How to Build Automated Unit Tests for PLC Sequences in AutomationView

AutomationView
%%{init: {'theme':'dark', 'themeVariables': { 'background': '#001c38' }}}%%
---
title: AutomationView Unit Testing Architecture
---
flowchart TD
    classDef test fill:#3b82f6,stroke:#2563eb,color:#ffffff
    classDef sfc fill:#10b981,stroke:#059669,color:#ffffff
    classDef report fill:#f59e0b,stroke:#d97706,color:#ffffff
    A["Python Test Runner (PyTest)"]:::test --> B["Mock I/O Variables"]:::test
    B --> C["Execute SFC Step/Transition"]:::sfc
    C --> D{"Assert Outputs == Expected"}
    D -- Pass --> E["Generate Coverage Report"]:::report
    D -- Fail --> F["Flag Error & Halt CI/CD"]:::report
AutomationView Icon AutomationView
calendar_month

How to Build Automated Unit Tests for PLC Sequences in AutomationView

In modern software engineering, pushing code to production without running automated unit tests is considered professional malpractice. Yet, in the industrial automation world, engineers routinely download thousands of lines of ladder logic into critical infrastructure relying solely on manual simulation and blind faith. AutomationView changes this paradigm entirely by introducing a native Python-based unit testing […]

Read Article arrow_forward

Deep Dive: Integrating OPC UA Alarms & Conditions (A&C) into Modern SCADA Systems

HMI
%%{init: {'theme':'dark', 'themeVariables': { 'background': '#001c38' }}}%%
---
title: OPC UA A&C Architecture
---
flowchart LR
    classDef plc fill:#3b82f6,stroke:#2563eb,color:#ffffff
    classDef scada fill:#10b981,stroke:#059669,color:#ffffff
    classDef alarm fill:#ef4444,stroke:#b91c1c,color:#ffffff
    A["PLC (OPC UA Server)"]:::plc -->|A&C Event Stream| B["SCADA (OPC UA Client)"]:::scada
    A -->|State Change| A
    B -->|Acknowledge| A
    C["Alarm DB"]:::alarm -.-> B
AutomationView Icon AutomationView
calendar_month

Deep Dive: Integrating OPC UA Alarms & Conditions (A&C) into Modern SCADA Systems

For decades, SCADA systems managed alarms by continuously polling PLC memory registers (e.g., a boolean tag named Pump_Fault). When the SCADA detected a transition from 0 to 1, it generated an alarm, timestamped it locally, and displayed it to the operator. This legacy approach is fundamentally flawed: it consumes excessive bandwidth, risks missing fleeting alarms […]

Read Article arrow_forward

How-To: Implementing PackML (ISA-TR88.00.02) State Machines in Modern PLCs

Learning
%%{init: {'theme':'dark', 'themeVariables': { 'background': '#001c38' }}}%%
---
title: PackML State Machine Implementation
---
flowchart LR
    classDef default fill:#1f2937,stroke:#4b5563,color:#f3f4f6
    classDef active fill:#2563eb,stroke:#1d4ed8,color:#ffffff
    classDef holding fill:#d97706,stroke:#b45309,color:#ffffff
    classDef stopped fill:#ef4444,stroke:#b91c1c,color:#ffffff
    A["Stopped"]:::stopped -->|Start| B["Starting"]:::active
    B --> C["Execute"]:::active
    C -->|Hold| D["Holding"]:::holding
    D -->|Unhold| E["Unholding"]:::active
    E --> C
AutomationView Icon AutomationView
calendar_month

How-To: Implementing PackML (ISA-TR88.00.02) State Machines in Modern PLCs

For decades, OEMs and systems integrators built custom, proprietary state machines for every packaging line they deployed. This resulted in fragmented codebases, operator confusion, and integration nightmares when trying to link an unwrapper from Vendor A with a filler from Vendor B. The ISA-TR88.00.02 standard, commonly known as PackML (Packaging Machine Language), solves this by […]

Read Article arrow_forward