Loading
Innovation Center LOGO
Recent ActivityRecent Activity

How to Connect Your Plant or Machine to Azure Using FT‑Optix

Visualization and core integration application to connect your plant or machine directly to Microsoft Azure. - [Implementation Time: 120 minutes]
Innovation Center Home Page
Send Data bw Controllers With Handshakev2.jpeg
Innovation Center LOGO
  • Overview
  • Implementation Guide
  • Download
  • Contact us
  • Subscribe
Innovation Center Home Page
 
 

What does this application do?

Currently, automation projects and applications, whether for process industries or machine builders, are becoming increasingly connected to cloud computing, enabling these applications to send data for analysis and decision-making.

This getting-started guide describes the integration between FactoryTalk® Optix™ and Azure IoT Operations, tested on a fluid processing demonstration machine jointly developed by Rockwell Automation and Microsoft. This application concept can also be implemented by OEM machine builders.

The guide covers the architecture, installation, and configuration steps required for the integration. The architecture section includes a diagram illustrating the adaptive cloud approach, data plane, and management plane. The installation section provides detailed steps for setting up FactoryTalk Optix and Azure IoT Operations, including a shell script to automate the process. The configuration section explains how to configure FactoryTalk Optix and Azure IoT Operations, including creating applications, configuring OPC UA servers, and generating certificates.

 

General Characteristics

FactoryTalk Optix Studio is an integrated development environment (IDE) with a functional module framework for designing and building HMI (Human-Machine Interface) and Internet of Things (IoT) applications. FactoryTalk Optix Studio includes a library of predefined objects that support the modular design of graphical interfaces, features, and logical operations within an HMI application. Using C# language scripts, you can automate various actions during the design phase and add custom functionality to projects.

FactoryTalk Optix Studio is available as both a desktop- and web-based development environment used to build FactoryTalk Optix Applications and deploy them to client systems. The web-based FactoryTalk Optix Studio editor is accessed through FactoryTalk Hub.

You develop and build FactoryTalk Optix Applications in FactoryTalk Optix Studio. The compiled applications can be deployed to Windows® or Linux client systems, or to Rockwell Automation closed devices such as the OptixPanel or the Embedded Edge Compute Module.

AHIC Download ICON VF.png

Downloads

Please note: You will need to agree to the Terms & Conditions for each download.

Downloadable file ›
Legal Disclaimer Acceptance. ROCKWELL AUTOMATION WILL PROVIDE ACCESS TO ROCKWELL PRODUCTS (BEST PRACTICES, APPLICATIONS AND KNOWLEDGE) ON THE CONDITION THAT YOU ACCEPT AND COMPLY WITH THE FOLLOWING TERMS AND CONDITIONS. YOU ACCEPT AND AGREE TO BE BOUND BY THE TERMS OF THIS AGREEMENT BY DOWNLOADING, INSTALLING, COPYING, OR OTHERWISE USING PRODUCTS. IF YOU ARE ACCEPTING THESE TERMS ON BEHALF OF ANOTHER PERSON, COMPANY, OR OTHER LEGAL ENTITY, YOU REPRESENT AND WARRANT THAT YOU HAVE FULL AUTHORITY TO BIND THAT PERSON, COMPANY, OR LEGAL ENTITY TO THESE TERMS. IF YOU DO NOT AGREE TO THESE TERMS, DO NOT DOWNLOAD, INSTALL, COPY, ACCESS, OR USE THE PRODUCTS, SOFTWARE AND/OR CLOUD SERVICES. 1. Rockwell Automation retains full ownership and title to all Products and related documentation. No rights or licenses are granted other than those set forth in this Agreement. Company grants to Rockwell Automation a non-exclusive, worldwide, royalty-free, perpetual, non-revocable license to use any feedback Company provides regarding the Products, even if Company has designated the feedback as confidential. Rockwell Automation will be entitled to use the feedback without restriction or compensation to Company. 2. Company may not lease sub-lease, assign, license, sub-license or otherwise transfer any of the Products without the prior written consent of Rockwell Automation. Company may not assign or otherwise transfer access rights to the Products without the prior written consent of Rockwell Automation. Any reverse assembly, reverse engineering, decompilation, and creation of derivative works based on the Products by Company is prohibited. 3. Company acknowledges that Products provided under this Agreement are Rockwell Automation’s Confidential Information and are covered by effective or pending copyrights, patents, trademarks and/or trade secrets of Rockwell Automation, and Company agrees to maintain confidentiality by not disclosing Products or documentation to any third party without the prior written consent of Rockwell Automation and to protect the confidentiality of the Products as it would Company’s own confidential information. Company agrees that its obligation of confidentiality under this paragraph shall survive expiration or termination of this Agreement. 4. Company agrees that Products provided under this Agreement are prototypes and examples and its application and results may vary depending on each customer and project conditions. Rockwell Automation do not warranty the same results. This Agreement shall in no way be construed as a commitment by Rockwell Automation at any time to manufacture and/or offer Products for sale. There is no explicit or implicit service level agreement associated with using the Products. Rockwell Automation does not warrant that the functions contained in the Products will meet Company’s requirements. Company agrees to use all Products only in accordance with the instructions and only for the intended usages identified in the documentation. 5. EXCLUSION OF WARRANTIES AND LIMITATION OF LIABILITY. THE PRODUCTS ARE PROVIDED "AS IS". ROCKWELL AUTOMATION DISCLAIMS ANY AND ALL WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, INCLUDING WITHOUT LIMITATION ANY WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. ROCKWELL AUTOMATION EXPLICITLY DISCLAIMS ALL WARRANTIES OF NON- INFRINGEMENT AND EXPRESSLY DOES NOT WARRANT THAT THE PRODUCTS, IN WHOLE OR IN PART, WILL BE ERROR FREE OR FREE FROM SECURITY VULNERABILITIES. IN NO EVENT SHALL ROCKWELL AUTOMATION BE LIABLE FOR (i) LOST PROFITS, LOST SAVINGS, DOWNTIME, SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR (ii) ANY PERSONAL INJURY, PROPERTY DAMAGE OR ENVIRONMENTAL DAMAGE ARISING OUT OF OR IN CONNECTION WITH THIS AGREEMENT, WHETHER IN AN ACTION IN CONTRACT, STRICT LIABILITY OR IN TORT INCLUDING NEGLIGENCE. 6. COMPANY AGREES TO INDEMNIFY AND HOLD ROCKWELL AUTOMATION HARMLESS FROM ALL COSTS, AWARDS, DAMAGES, EXPENSES AND FEES (INCLUDING ATTORNEYS FEES) RESULTING FROM OR RELATED TO ANY THIRD-PARTY CLAIMS (INCLUDING EMPLOYEES AND AGENTS OF COMPANY) AGAINST ROCKWELL AUTOMATION, ITS DISTRIBUTORS, AGENTS, OFFICERS, DIRECTORS OR EMPLOYEES FOR PERSONAL INJURY (INCLUDING DEATH), PROPERTY DAMAGE OR ENVIRONMENTAL DAMAGE RELATED TO OR RESULTING FROM THE USE OF THE PRODUCTS. 7. In the event a Product is exported, Company agrees to comply with all applicable United States Export Control Law and Regulations, and the applicable export control laws of other countries. This Agreement shall be governed by the laws of the state of Wisconsin. This Agreement is the complete and exclusive Agreement between Rockwell Automation and the Company, and supersedes all prior agreements, whether written or oral, relating to the Products.
AHIC NEED HELP ICON VF.png


Need Help?

If you need help with an application or have feedback from the Innovation Center, please contact us.

 
 

Architecture

The adaptive cloud approach being adopted by Rockwell Automation and Microsoft is shown in the diagram below.

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_architecture1.png
 

The diagram below illustrates how the integration between FactoryTalk Optix and Azure IoT Operations can be achieved based on the fluid processing demonstration machine jointly developed by Rockwell Automation and Microsoft. This integration can be applied to any other scenario that requires infrastructure for data transfer and edge management.

The diagram is divided into three sections: the top section shows the vision for the adaptive cloud approach, the second section shows what has been achieved in the data plane through a functional proof of concept, and the third section shows what can be achieved with the management plane.

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_architecture2.png
 

Advantages - Direct connection to the cloud – Microsoft Azure

 

Limitations and Disadvantages - FT‑Optix-only application.

 

Is this application relevant to me?

A ready-to-use application for integration with FT Optix and Azure. It is open source and can be easily implemented or used as a foundation for your project.

For controller connectivity, FT Optix supports integration with Logix controllers (Rockwell Automation) as well as third-party controllers.

See our available drivers: https://www.rockwellautomation.com/pt-pt/docs/factorytalk-optix/current/contents-ditamap/creating-projects/communication-driver/communication-drivers-overview.html

 

 

How can I make it work?

Requirements: products, tools, prior knowledge.

Hardware

  • Intel Core i5 Standard Power processor (i5-8xxx)
  • 8 GB of RAM memory
  • 20 GB free hard disk space

The hardware requirements for FactoryTalk Optix applications may vary depending on the application and the type of device running the application.

Software Requirements for FactoryTalk Optix Applications - Windows 10 (x64), Windows 11 (x64), Windows Server 2016, Windows Server 2019, Windows Server 2022, or Ubuntu 22 (x64)

 

Software

  • FactoryTalk Optix
    • Download and install FactoryTalk Optix Studio and Runtime.
    • Download Link: https://home.cloud.rockwellautomation.com/sign-in?returnTo=%2Fdashboard
    • It can be downloaded from PCDC: https://compatibility.rockwellautomation.com/Pages/home.aspx
  • Azure IoT Operations
    • Install the Kubernetes cluster and Azure IoT Operations according to the instructions provided in: https://learn.microsoft.com/en-us/azure/iot-operations/deploy-iot-ops/overview-deploy
    • Alternatively, refer to Appendix A – Automating Azure IoT Operations Installation for a shell script that automatically installs a Kubernetes cluster and deploys Azure IoT Operations on it. https://github.com/FactoryTalk-Optix/Optix_Sample_AzureIoTOperations?tab=readme-ov-file#appendix-a---automate-azure-iot-operations-install

ATTENTION: The script linked above was created and tested with the preview version and may require adaptation for later releases.

Prior Knowledge

  • SO Windows
  • FactoryTalk Optix Studio
 
 
 
 
AHIC STEP ICON.png

Implementation Guide

 
 
 
 
  1. Step 1
  2. Step 2
  3. Step 3
  4. Step 4
  5. Step 5
  6. Step 6
Open All Close All
Step 1

 

 

 

 

Download our sample application from Download >> General_Files.zip

Optix_Sample_AzureIoTOperations-main

 

The sample FactoryTalk Optix application in this repository contains the key components required to publish data from a control system to Azure IoT Operations.

 

The sample application includes:

  • A sample PLC program for Allen Bradley L8 ControlLogix
  • EtherNet/IP communication driver
  • Application certificate
  • OPC UA Server
  • Graphical User Interface (GUI)
  • PLC data reading
  • Manual tag writing (for use when no PLC is connected)

 

NOTE: The application certificate used by the application must be regenerated to match your computer name.

 
Step 2

 

 

 

 

Alternatively, follow the steps below to manually create a FactoryTalk Optix application containing OPC UA data and expose it as an OPC UA Server for use with Azure IoT Operations.

  • Use FactoryTalk Optix Studio to create a FactoryTalk Optix application.

 

  • Add the communication driver(s) required to read data from the control system.
    • Use the RAEtherNet/IP driver to connect to a Rockwell Automation controller.
    • OPC UA is supported through the OPC UA object.

 

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_optix_comms_drivers.png

optix_comms_drivers.PNG

Step 3

 

 

 

 

After the download, open the application:

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_optix_runtime_app.png

optix_runtime_app.PNG

 

Use the Settings → Create Certificate menu to create an application certificate for the FactoryTalk Optix Server. This certificate will be used to authenticate the FactoryTalk Optix OPC UA Server with Azure IoT Operations.

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_optix_create_certificate.png

optix_create_certificate.PNG

Step 4

 

 

 

 

In the Project Folder pane, add an OPC UA Server.

  • Set the Server certificate file and Server private key file properties to use the FactoryTalk Optix certificate.
  • Use the Nodes to publish property to create a configuration that publishes a subset of nodes, or leave it blank to publish all nodes.
  • Set the Endpoint URL property to use the computer name or IP address so that it is accessible from the AIO box.
  • Set the Use node path in NodeIds property to True to use fully qualified tag names when configuring tags in AIO. Setting this property to True ensures that OPC UA tag names use the friendly format ns=<namespace>;s=Path.To.Node rather than requiring the node ID GUID to be specified.
 
how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_optix_opcua_server.png

opcua_server.PNG

 

Import the AIO certificates into the project's trusted store using the instructions provided in the FactoryTalk Optix Studio Help.

Step 5

 

 

 

  •  

    Azure IoT Operations

     

    Import the FactoryTalk Optix certificate into the trusted store using the instructions provided in Configure OPC UA Certificates - Azure IoT Operations Preview | Microsoft Learn.

    https://learn.microsoft.com/en-us/azure/iot-operations/discover-manage-assets/howto-configure-opcua-certificates-infrastructure?tabs=bash

     

    Open the Operations Experience site to configure assets and data flows.

    https://iotoperations.azure.com/

     

    On the Asset Endpoints page, create an asset endpoint profile that points to the FactoryTalk Optix OPC UA Server.

     
    how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_aio_asset_endpoints.png

    aio_asset_endpoints.PNG

  • On the Assets page, create an asset that uses the endpoint profile and configure the tag list.

    how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_aio_assets.png

    aio_assets.PNG

    how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_aio_asset_tags.png

    aio_asset_tags.PNG

    TIP: The node address for OPC UA tags can be viewed in FactoryTalk Optix Studio. Alternatively, you can use an OPC UA client such as UAExpert to browse the FactoryTalk Optix OPC UA Server and obtain the address configuration for the tags. The node ID of a tag must use the following format:

    nsu=<Optix_Application_Name>;s=Path.To.Node

     

     

    For example, if the Optix application is named aio_optix1 and a tag called Variable1 was created in the folder AIOTags, which is a child of the Model folder:

    nsu=aio_optix1;s=aio_optix1.Model.AIOTags.Variable1

Step 6

 

 

 

Automate Azure IoT operations:
The setupaio.sh shell script automates the installation of a Kubernetes cluster and deploys an Azure IoT Operations instance on the cluster.

  • Assumptions:
    • The script will create a single-node cluster.
    • The script will use a specified user account for access.

Note - The script was created and tested with the Preview version and may require adaptation for later releases. This script is provided as-is, without warranty or support, and it is the user's responsibility to test and validate it before deploying it in a production environment. Copy the code into a file and name it setupaio.sh.

Caution - The file must be created directly in the Ubuntu environment to avoid formatting errors related to line-ending characters.

The code can be found at the following link:  https://github.com/FactoryTalk-Optix/Optix_Sample_AzureIoTOperations/blob/main/setupaio.sh

Use the following command to execute the script and pass in the mandatory parameters: bash setupaio.sh -l <your_location> -g <your_resource_group> -c <your_cluster_name> -u <your_user_email>

 

Run the script again if an error is encountered during execution. In some cases, an error may occur when an object is newly created and immediately referenced, so rerunning the script can resolve the issue. However, you should document any errors and address them with an appropriate resolution to ensure the environment is configured correctly.

 
how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_optix_comms_drivers.png

optix_comms_drivers.PNG

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_optix_runtime_app.png

optix_runtime_app.PNG

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_optix_create_certificate.png

optix_create_certificate.PNG

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_optix_opcua_server.png

opcua_server.PNG

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_aio_asset_endpoints.png

aio_asset_endpoints.PNG

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_aio_assets.png

aio_assets.PNG

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_aio_asset_tags.png

aio_asset_tags.PNG

send-data-between-controllers-with-handshake-in-studio-5000_Step6-Image1.jpg

send-data-between-controllers-with-handshake-in-studio-5000_Step6-Image1

send-data-between-controllers-with-handshake-in-studio-5000_Step7-Image1.jpg

send-data-between-controllers-with-handshake-in-studio-5000_Step7-Image1

send-data-between-controllers-with-handshake-in-studio-5000_Step8-Image1.jpg

send-data-between-controllers-with-handshake-in-studio-5000_Step8-Image1

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_optix_comms_drivers.png

optix_comms_drivers.PNG

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_optix_runtime_app.png

optix_runtime_app.PNG

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_optix_create_certificate.png

optix_create_certificate.PNG

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_optix_opcua_server.png

opcua_server.PNG

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_aio_asset_endpoints.png

aio_asset_endpoints.PNG

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_aio_assets.png

aio_assets.PNG

how-to-connect-your-plant-or-machine-with-azure-using-ft-optix_aio_asset_tags.png

aio_asset_tags.PNG

send-data-between-controllers-with-handshake-in-studio-5000_Step6-Image1.jpg

send-data-between-controllers-with-handshake-in-studio-5000_Step6-Image1

send-data-between-controllers-with-handshake-in-studio-5000_Step7-Image1.jpg

send-data-between-controllers-with-handshake-in-studio-5000_Step7-Image1

send-data-between-controllers-with-handshake-in-studio-5000_Step8-Image1.jpg

send-data-between-controllers-with-handshake-in-studio-5000_Step8-Image1

 
 

How to Connect Your Plant or Machine to Azure Using FT‑Optix

Version 2.0 - September 2026

 

 
 
AHIC White Logo

Receive new applications and Innovation Center updates directly in your inbox.

Subscribe!
 
  1. Chevron LeftChevron Left Rockwell Automation Home
  2. Chevron LeftChevron Left Sup...
  3. Chevron LeftChevron Left Pro...
  4. Chevron LeftChevron Left Downloads
  5. Chevron LeftChevron Left Innovation Center
  6. Chevron LeftChevron Left How to Connect Your Plant or Machine to Azure Using FT‑Optix
Please update your cookie preferences to continue.
This feature requires cookies to enhance your experience. Please update your preferences to allow for these cookies:
  • Social Media Cookies
  • Functional Cookies
  • Performance Cookies
  • Marketing Cookies
  • All Cookies
You can update your preferences at any time. For more information please see our {0} Privacy Policy
CloseClose