resources-banner-image
Don't want to miss a thing?Subscribe to get expert insights, in-depth research, and the latest updates from our team.
Subscribe
Virtual factory data when and where you need it!

Introduction

There's a constant churn of new tools and approaches to solving common digital transformation problems in manufacturing. IIoT engineers and architects spend time in the trenches vetting these tools, and they invariably reach a point where they either need to do hands-on evaluations of a new third-party ISV offering or test some glue logic they’re building on a project between the factory edge and the cloud — without having actual factory floor assets to connect to.

What often follows is some DIY mocking to "fake out" tags from an OPC UA server or hastily writing Python scripts to generate time-series data that somewhat resemble reality. It's a messy, inefficient process that eats up development time and rarely provides the fidelity needed for proper testing — testing with piecemeal, junk data feels less authentic or demo-worthy than something that at least appears to come from a real factory.

A community of engineers needs a standardized data generation tool — a handy, ready-to-use, yet customizable virtual factory that can generate testing inputs from the shop floor to enterprise systems, complete with configurable data flows and common manufacturing patterns.

ISA-95 provides the perfect foundation for this virtual factory concept. This international standard (IEC 62264) creates a structured framework for integrating manufacturing operations with enterprise-level systems. It provides everything from sensors and PLCs at levels 1-2, through MES functions at level 3, all the way to business planning at level 4. By creating a modular, containerized implementation with realistic data flows between these levels, IIoT engineers can finally have a common testing ground that's portable and scalable.

This approach allows engineers to test anything from custom OPC UA clients to production scheduling algorithms against a consistent dataset without needing access to production systems. Whether you're evaluating an off-the-shelf solution or building your own tooling, a standardized testing environment dramatically accelerates development cycles.

Factory in a Box

What is Factory in a Box?

Factory in a Box is an engineering concept of a docker container-based virtual factory that emulates the entire ISA-95 hierarchy. It's designed as a standardized testing environment for industrial automation and IIoT solutions, providing realistic data at every level of the manufacturing stack.

Unlike visualization-focused tools or simple PLC simulators, Factory in a Box is a hybrid between an emulator and a data generator with realistic data flows between levels:

  • Level 0-1: Virtual PLCs and I/O that respond like real automation controllers
  • Level 2: SCADA and OPC UA servers providing industrial protocol connectivity
  • Level 3: MES components for production tracking, quality, and operations
  • Level 4: ERP interfaces for order management and enterprise integration

Each component runs in its own Docker container, communicating with others through standard industrial protocols. The entire system can be orchestrated with Docker Compose or Kubernetes, making it highly portable and configurable.

Key innovations include:

  • Complete ISA-95 coverage: Unlike data generation tools that focus on just one layer, like PLC simulators, Factory in a Box generates sample data across the entire manufacturing stack.
  • Container-based architecture: Each component is a separate container with standard interfaces, making it modular, deploy-anywhere, and extensible.
  • Industrial protocol support: Components communicate using real industrial protocols (OPC UA, MQTT, B2MML), not simplified abstractions.
  • Standardized test data: Preconfigured realistic manufacturing scenarios provide a consistent baseline for testing.
  • Command-line driven: Fully scriptable for automated testing and CI/CD integration.
Factory in a Box Image 2

Architectural Layers With Examples of Integrations

Note: The vendor tools listed on the left are examples. Factory in a Box works with just about anything that can connect to an ISA-95 relevant protocol and data format.

Factory in a Box Image 3

Raw data generation layer

Types of valuable data generated:

  • Time-series industrial data with realistic patterns (cycles, trends, seasonality)
  • Anomaly patterns that mimic real equipment behavior (spikes, drift, noise)
  • Batches of historical data representing different manufacturing scenarios
  • Configurable signal quality including noise, dropouts, and communication delays

Testing value: Provides foundational raw data patterns that match real-world industrial data characteristics without requiring access to production data.

Example: Generate synthetic temperature data that follows realistic heating/cooling cycles with appropriate process noise, occasional data dropouts, and seasonal ambient temperature influences — all configurable to test how systems handle various data quality scenarios.

Level 0: Process simulation layer

Types of valuable data generated:

  • Interrelated process variables that respond realistically to each other
  • Physics-based constraints that prevent impossible data scenarios
  • Fault conditions with realistic cascading effects across multiple variables
  • Process transitions that follow realistic timing constraints

Testing value: Allows testing of analytical tools against physically realistic cause-and-effect relationships, not just random or pre-recorded data.

Example: When testing against a configured simulator, increasing the heater power causes the temperature to rise at a physically accurate rate based on thermal mass, ambient conditions, and insulation quality — allowing you to test both normal process control and exception handling in edge cases.

Level 1: Control layer data generation

Types of valuable data generated:

  • Actual industrial protocol traffic (Modbus, EtherNet/IP, OPC UA)
  • Control system events and state transitions
  • PLC diagnostic information and controller status data
  • Network communication statistics and timing information

Testing value: Enables testing of industrial protocol clients, drivers, and gateways against standard industrial protocols without requiring physical hardware.

Example: Test your MQTT/Sparkplug B gateway by connecting it to our virtual PLC's EtherNet/IP server to verify correct protocol translation, tag mapping, and data type handling with our temperature control process — all while injecting network latency to verify timeout handling.

Level 2: Supervisory layer data generation

Types of valuable data generated:

  • Aggregated multi-source data views with hierarchy
  • Alarm and event records with priority and acknowledgment status
  • Contextualized data with engineering units and metadata
  • Historical data with various compression and storage formats

Testing value: Provides realistic test data for dashboard applications, analytics tools, and reporting systems that consume supervisory-level data.

Example: Test your manufacturing dashboard against our OPC UA server publishing temperature data from multiple reactors, complete with live alarms when temperatures exceed limits, and historical records for trend analysis — verifying your visualizations handle both real-time and historical data correctly.

Level 3: Operations data generation

The operations layer manages manufacturing activities, workflows, and resources so data generated at this layer represents one of the following activities:

  • MES module: Tracks production, manages work orders, and monitors manufacturing execution.
  • Quality management: Collects quality data and performs analysis to ensure compliance.
  • Maintenance module: Manages equipment, maintenance schedules, work orders, and performance monitoring.

Think of this layer as the manufacturing management system that orchestrates people, equipment, and materials to efficiently produce quality products. It's where process data transforms into actionable production intelligence.

Example: The operations layer detects that the heater in our temperature control system is cycling on/off too frequently, analyzes historical patterns from the Historian, and automatically generates maintenance work order data with priority level, required parts, estimated repair time, and impact on production schedule — all while rerouting pending production batches to alternate equipment.

Level 4: Enterprise layer data generation

Types of valuable data generated:

  • Production orders with customers, material, and routing information
  • Inventory transactions and material movements
  • Cost accounting data related to production activities
  • KPI calculations and business metrics derived from operations data

Testing value: Provides realistic context for testing MES-ERP integrations and business intelligence applications.

Example: Verify your custom integration between manufacturing systems and SAP by processing enterprise data for our simulated production batches, including material consumption, production yield, and batch costs — all with realistic ERP-formatted data following standard B2MML structures.

Configuring Data Generation for Your Testing Needs

Factory in a Box provides multiple approaches to generate the data you need:

  • Ready-to-use templates: Pre-configured industry templates that generate realistic data for common manufacturing processes.
  • Configuration-driven customization: Adjust parameters through configuration files to simulate different operating conditions and fault scenarios.
  • Scripted scenarios: Use Python or JavaScript to create complex testing scenarios.
  • Import-and-replay: Import your own production data samples and reproduce similar patterns.

Extensible Architecture

The proposed architecture is designed for community contribution through a plugin framework:

Icon 1

Standardized interfaces: Each component exposes well-defined APIs and protocol interfaces.

Icon 2

Container extension points: Every container can be extended or replaced with custom implementations.

Icon 3

Configuration-driven: Factory configurations are defined in YAML files, making it easy to create new scenarios.

Icon 4

Data model extensions: The core information models (ISA-95, OPC UA) can be extended with industry-specific additions.

Community plugin categories

The architecture supports several types of community plugins:

  • Industry templates: Preconfigured factory simulations for specific industries (like automotive, food and beverage, pharmaceuticals)
  • Protocol adapters: Support for additional industrial protocols beyond the core set.
  • Custom process models: Industry-specific process simulations with realistic behaviors.
  • Analysis tools: Components for data analysis, visualization, and machine learning.
  • Test Scenario Generators: Tools to create complex test cases for validation.

Benefits and use cases

Key benefits

  • Accelerated development: Test industrial applications without waiting for physical hardware.
  • Risk reduction: Validate changes before deploying to production environments.
  • Standardization: Create consistent test environments across teams and projects.
  • Knowledge transfer: Train new engineers in industrial systems without production access.
  • Innovation enablement: Experiment with new integration approaches in a safe environment.

Primary use cases

  • IIoT application testing: Validate data collection, processing, and analytics applications.
  • Integration validation: Test integration between different systems before deployment.
  • Training: Teach industrial automation concepts without live production systems available at hand.
  • Demo environment: Create convincing demonstrations of industrial solutions.
  • Migration testing: Test system upgrades and migrations before implementation.

Conclusion

Factory in a Box bridges the gap between development and production environments in industrial automation. By providing a containerized implementation of the ISA-95 hierarchy, it enables engineers to develop, test, and validate solutions with greater confidence.

For the IIoT community, it offers a standardized testing environment that accelerates innovation while reducing risk. The open, extensible architecture encourages community contributions to build a rich ecosystem of templates, plugins, and tools.

Factory in a Box Image 4
Start a conversation with us