Home / FactoryTalk Optix University / Learning FactoryTalk Optix from the Ground Up (Book & Lab Manual)

FactoryTalk Optix University • 4-Part Curriculum • 12 Chapters & Hands-On Labs

Learning FactoryTalk Optix from the Ground Up: A Hands-On Textbook & Lab Manual

Welcome to the complete, self-paced FactoryTalk® Optix™ Textbook and Hands-On Lab Manual. This curriculum organizes all 85+ tutorials, Rockwell Automation guides, Knowledge Base articles, and ASEM video walkthroughs on wawelk.org/optix into a progressive 4-Part, 12-Chapter learning path. Every chapter pairs core engineering theory with a guided hands-on lab built on a 100% free Simulator-First stack using the FactoryTalk Optix Studio Emulator and the Connected Components Workbench (CCW) Micro800 PLC Simulator.

💡 Zero-Cost, Simulator-First Lab Architecture: Every core lab in Chapters 1–12 can be completed on any Windows PC at $0 software and hardware cost using FactoryTalk Optix Studio (Free Desktop Edition) paired with Rockwell Automation’s free Connected Components Workbench (CCW) Micro800 Simulator (Micro800 Tutorials). Each chapter also includes Hardware & Enterprise Extensions for ControlLogix/CompactLogix, Siemens S7, Stratix Switches, Hardy HI6200 Weighing Processors, and OptixEdge Docker appliances.

Jump to Chapter: Ch. 1 | Ch. 2 | Ch. 3 | Ch. 4 | Ch. 5 | Ch. 6 | Ch. 7 | Ch. 8 | Ch. 9 | Ch. 10 | Ch. 11 | Ch. 12 | Appendix A: CCW Micro800 Simulator Plant Setup

Part I • Chapters 1 – 3

Foundations, Environment Setup & First Responsive UI

Master the OPC UA-native Information Model, Runtime & Device Sizing tools, responsive layout containers, PanelLoader navigation, Git version control, and Windows/Linux deployment.

Chapter 01 • Foundations & Sizing

Introduction to FactoryTalk Optix, Architecture & Sizing

Textbook Concepts: How FactoryTalk Optix replaces flat tag-table HMIs (View ME/SE, RSView32) with an OPC UA-native Information Model where every UI control, PLC tag, alarm, and script is a Node; Object-Oriented Types vs. Instances; Studio Free vs. Pro editions; Feature Token licensing and hardware sizing.

🧪 Hands-On Lab 1.1: Install FactoryTalk Optix Studio & CCW Standard Edition, tour the 4 core IDE panels (Project View, Canvas, Template Library, Properties), test the built-in Emulator (F5), and calculate Feature Tokens for our target plant application.

Chapter 02 • UI & Responsive Design

Building Your First Application & Responsive User Interfaces

Textbook Concepts: Structuring MainWindow with a persistent top bar and PanelLoader; responsive containers (ColumnLayout, RowLayout, GridLayout); internal Model variables; Read vs. Read/Write Dynamic Links; modal DialogBox popups.

🧪 Hands-On Lab 2.1: Create the master project (OptixBook_MasterLab) with a 3-screen responsive navigation shell (Overview, Pump Station, Diagnostics), bind gauges and custom buttons to internal variables, and build a modal tank-drain confirmation dialog.

Chapter 03 • Cloud, Git & Deployment

Cloud Workflows, Git Version Control & Runtime Deployment

Textbook Concepts: Human-readable YAML project serialization (Nodes/*.yaml); local Git version control vs. Studio Pro cloud repositories (FactoryTalk Vault & GitHub); deploying standalone runtimes to Windows PCs, Linux edge devices, and ThinClients.

🧪 Hands-On Lab 3.1: Inspect the YAML node files of OptixBook_MasterLab, initialize a Git repository and push to GitHub, and deploy the project as a standalone Windows Runtime via FT Optix Runtime Manager.

Part II • Chapters 4 – 6

PLC Communications & Object-Oriented HMI Design

Connect live to the CCW Micro800 Simulator (plus ControlLogix, Modbus TCP & Siemens S7), build parameterized UDT Faceplates with Aliases, and deploy multi-session Web/Workstation clients with multi-language localization.

Chapter 04 • PLC Communications

Industrial PLC Communications (Micro800 Simulator, Logix, Modbus & S7)

Textbook Concepts: The CommDrivers → Station → Tags hierarchy; subscription-based active tag polling; offline vs. online tag & UDT import; connecting to Micro800 (Symbolic CIP, Modbus TCP, REST API), ControlLogix/CompactLogix Extended Tag Properties, PowerMonitors, PowerFlex VFDs, and Siemens S7.

🧪 Hands-On Lab 4.1: Connect OptixBook_MasterLab to the running CCW Micro800 Simulator (127.0.0.1), import all Global Variables and UDT_PumpAsset structures, and bind Scr01_Overview to live simulated tank level, temperature, and start/stop logic.

Chapter 05 • Object-Oriented HMI & Faceplates

Dynamic Data Binding, Reusable Graphics, Aliases & Faceplates

Textbook Concepts: Designing reusable graphic Types; how an Object Model Alias acts as a strongly-typed pointer to a PLC UDT or Structured Variable Type; Key-Value Converters for color/text state animation; dynamic Alias index resolution with a ComboBox.

🧪 Hands-On Lab 5.1: Build a parameterized PumpFaceplate bound to UDT_PumpAsset via an Alias node (PumpNode), animate its status banner with a Key-Value Converter, and use a ComboBox on Scr02_PumpStation to switch dynamically between Pump_101, Pump_102, and Pump_103.

Chapter 06 • Clients, Localization & Libraries

Presentation Engines, Multi-Language Localization & Device Libraries

Textbook Concepts: Running NativePresentationEngine, HTML5 WebPresentationEngine, and v1.8 Workstation Clients concurrently; independent multi-user sessions; LocalizationDictionary string translations and unit conversion; pre-engineered Rockwell & Partner Device Object Libraries.

🧪 Hands-On Lab 6.1: Add a WebPresentationEngine on port 8080, build an English (en-US) and Spanish (es-ES) translation table, and verify simultaneous desktop + browser sessions operating in different languages.

Part III • Chapters 7 – 9

Alarms, Historians, Industrial Security & IIoT Edge Gateways

Configure digital/level and Logix tag-based alarms, historical DataLoggers with SQLite and InfluxDB 3.0, Role-Based Access Control (RBAC), and headless OPC UA / MQTT edge gateways.

Chapter 07 • Alarms, Trends & Historians

Alarms, Historical Trending & Time-Series Data Logging (SQLite & InfluxDB)

Textbook Concepts: Digital & Exclusive Level alarms vs. controller-native Logix Tag-Based Alarms; DataLogger sampling modes; Embedded SQLite databases vs. remote InfluxDB / InfluxDB 3.0 historians; Store-and-Forward resilience; CSV export.

🧪 Hands-On Lab 7.1: Configure High/Low Level and Over-Temperature alarms from the Micro800 Simulator, log process tags at 1 Hz to LocalHistorianDB, plot them in the AdvancedTrend widget on Scr03_Diagnostics, and export history to CSV.

Chapter 08 • Industrial Security & RBAC

Industrial Security — Users, Roles, Permissions & Runtime Authentication

Textbook Concepts: Role-Based Access Control (Roles, Groups, Users); Login Form and runtime User Editor widgets; restricting control Enabled/Visible states and Navigation Panel tabs by role; writing the active operator username to a PLC tag.

🧪 Hands-On Lab 8.1: Implement Operator, Maintenance, and Admin roles, lock alarm setpoint editing to Maintenance/Admin users, and write the logged-in username to HMI_ActiveOperator in the Micro800 Simulator.

Chapter 09 • IIoT Edge, OPC UA & MQTT

Optix as an IIoT Edge Gateway — OPC UA, MQTT & SQL Pipelines

Textbook Concepts: Headless runtime gateways; keeping tags polled without a UI via VariableSynchronizer; embedded OPC UA Server & Client; MQTT Embedded Broker, Client Publisher/Subscriber, DataLogger-to-MQTT, MQTT-to-SQL, and v1.8 MQTT updates.

🧪 Hands-On Lab 9.1: Synchronize Micro800 Simulator tags with VariableSynchronizer, expose them on an embedded OPC UA Server (opc.tcp://localhost:59100), and publish JSON telemetry to an embedded MQTT Broker (localhost:1883).

Part IV • Chapters 10 – 12

C# NetLogic, OptixEdge Containers, Process Specialty & Industrial AI

Extend FactoryTalk Optix with DesignTime and RunTime C# NetLogic scripts, mobile notifications, OptixEdge Docker containers (Node-RED & ChirpStack LoRaWAN), Hardy HI6200 weighing systems, and Claude MCP / ChatGPT AI assistants.

Chapter 10 • C# NetLogic & Notifications

C# NetLogic Scripting, Recipes, Databases & Mobile Notifications

Textbook Concepts: DesignTime vs. RunTime C# NetLogic; traversing and creating Nodes via Project.Current and InformationModel.Make<T>(); [ExportMethod] and VariableChange events; Recipe Management; Email, WhatsApp, Pushover, Siri, Grafana, SQL, and Fiix CMMS integrations.

🧪 Hands-On Lab 10.1: Write a DesignTime C# script to batch-generate diagnostic variables and a RunTime C# script that monitors Alm_Tank101_HighLevel and dispatches an alert notification.

Chapter 11 • OptixEdge, Docker & LoRaWAN

OptixEdge Advanced Edge Gateway, Docker Containers & LoRaWAN

Textbook Concepts: Containerized industrial edge architecture on OptixEdge (and local Docker Desktop); isolating workloads across bridge networks; orchestrating Node-RED, Softing EdgeConnector, Pluto Analytics, and private ChirpStack LoRaWAN network servers.

🧪 Hands-On Lab 11.1: Run a Dockerized Node-RED container alongside FactoryTalk Optix to publish simulated LoRaWAN wireless sensor payloads over MQTT and parse them onto Scr01_Overview.

Chapter 12 • Industrial AI & Process Weighing

Industrial AI Integrations (Claude MCP & ChatGPT) & Hardy Weighing Systems

Textbook Concepts: Connecting LLMs to FactoryTalk Optix via the Model Context Protocol (Claude MCP) and OpenAI ChatGPT REST API with safe read-only guardrails; integrating Hardy HI6200 Weight Processors via Faceplate, Modbus TCP, Node-RED, and custom TCP sockets.

🧪 Hands-On Lab 12.1 (Capstone): Add an AI Diagnostics Assistant card to Scr03_Diagnostics that packages live Micro800 Simulator tank/pump/alarm telemetry for ChatGPT or Claude MCP analysis, plus a simulated Hardy HI6200 Modbus TCP weight channel.

Appendix A • Unified Virtual PLC Lab Environment

Unified CCW Micro800 Simulator Plant Model (OptixLab_VirtualPlant)

All hands-on labs from Chapter 4 through Chapter 12 connect to a single, realistic virtual plant running inside Rockwell Automation’s free Connected Components Workbench (CCW) Micro850 Simulator (2080-LC50-48QWB-SIM at loopback IP 127.0.0.1). Need a refresher on CCW and the Micro800 Simulator? Visit our companion Allen-Bradley Micro800 & CCW Tutorials.

1. User-Defined Structure: UDT_PumpAsset

Create UDT_PumpAsset under Data Types → User-Defined in CCW and instantiate three Global Variables (Pump_101, Pump_102, Pump_103) for Chapter 5 Faceplate labs:

  • PumpName (STRING) — Equipment title (e.g., 'PUMP-101 (Fill A)')
  • Cmd_Start / Cmd_Stop (BOOL) — Momentary HMI start/stop commands
  • Mode_Auto (BOOL) — Manual (0) vs. Auto (1) mode
  • Sts_Running / Sts_Faulted (BOOL) — Pump status & fault bits
  • Spd_Setpoint_Hz / Spd_Actual_Hz (REAL) — VFD speed (0–60 Hz)
  • FlowRate_GPM (REAL) — Simulated flow (Spd_Actual_Hz * 2.25)
  • RunHours (DINT) — Accumulated runtime counter

2. Global Variables for Process, Alarms & Security

Add these Global Variables in CCW to drive the Chapter 4, 7, 8, 9, 10 & 12 labs:

  • Sys_Start_PB, Sys_Stop_PB, Sys_Running (BOOL) — Master plant seal-in
  • Tank101_Level_Pct (REAL, 0–100%) & Tank101_Temp_C (REAL, °C)
  • Tank101_HighSp_Pct (REAL, 85.0) & Tank101_LowSp_Pct (REAL, 15.0)
  • Alm_Tank101_HighLevel, Alm_Tank101_LowLevel, Alm_Tank101_OverTemp, Alm_AnyActive (BOOL)
  • Pump_101, Pump_102, Pump_103 (UDT_PumpAsset) & HMI_SelectedPumpIdx (INT)
  • HMI_ActiveOperator (STRING) — Active Optix user written to PLC (Ch. 8)
  • HMI_ActiveScreenID (INT) — Active PanelLoader screen ID (Ch. 2 & 10)