FactoryTalk Optix Part 5: User Inputs

Written by Dharma Prime, Senior Controls Engineer  

 

Welcome to another installment of our series on Rockwell Automation FactoryTalk Optix. This article will cover the basics of user interface (UI) objects, compare the available buttons with their counterparts in FactoryTalk View, and discuss some of the more advanced features that enable Optix to compete with other competitors. 

 

My first exposure to FactoryTalk Optix was about two years ago, as Concept was one of the earliest integrators to deploy Optix systems to customers. Recently, I got hands-on experience designing an Optix Panel for an automated robotic palletizing cell. While there is a learning curve for adding simple objects to your FactoryTalk Optix project, many features that previously required extra PLC code are now simplified in Optix if you know where to look.  

Buttons 

The most basic UI object in any HMI is a button. The idea is straightforward. An operator presses a button, and something happens.  

Button 

Optix offers multiple buttons, starting with the basic “button”. All other buttons mentioned in this article are derivatives of this object and inherit the same properties. The best use cases for the standard button are executing a screen change, Optix Commands, or NetLogic. You can connect these buttons to command variables, but I do not recommend this use for reasons I will get into later. 

The main properties are tied into the “events” category. Clicking the “+” next to the event opens a list of all commands that can be tied to the button.

 

Known “Bug” 

The biggest issue I have with this button is the implementation of the “MouseDown” and “MouseUp”. These are not guaranteed to occur.  

An operator can click the button and drag the object off while still holding the screen. This will result in only the “MouseDown” event occurring. This became an issue on a previous project where the “MouseDown” set a bit to 1 and “MouseUp” set the same bit to 0. There was PLC logic present to ignore HMI inputs until all HMI inputs dropped to 0. The button would get “stuck,” setting the bit to 1 and locking all inputs from the HMI. In the next section, I’ll explain how we fixed this by properly using the momentary button. 

 

Momentary Button 

 

Momentary buttons function the same as their FactoryTalk View counterparts. It is optimal for one-shot buttons, jogging, anything that should be in an on state while the button is pressed.  

The help documentation from Rockwell Automation lists mouse events as the primary way to configure the momentary button. This can lead to issues as described above. Imagine you have a forward jog tied into a button. If the operator wants to stop jogging the axis but slides their finger off the button before lifting, the axis will act as if the operator is still pressing the button. 

The “correct” way to configure these buttons is with the “active” property that is truly only set when an operator is, for lack of better words, actively pressing the button. 

 

 

Another key feature is the Maximum and Minimum hold times. The minimum hold time is great if the button press happens faster than the minimum scan time of your PLC.  

The maximum hold time is great for scenarios when you want to keep an operator actively pressing a button, i.e., limiting a jog button to 30 seconds max.  

The rest of the buttons available follow a similar pattern. They are all patterned after the original button with additional properties for specific use cases. 

 

 

 

Delayed Button 

The delay button follows suit. It has a “delay” property that configures a minimum time the button must be pressed to trigger the mouse events. This is an interesting one that does not have a FactoryTalk View counterpart. A good use case could be hiding navigation to a maintenance screen through a simple delayed button. 

 

 

Toggle Button 

The toggle button will change the state of a Boolean value based on its current state. The target tag is set as the “active” property. 

 

 

Checkbox / Switch 

The checkbox and switch are very similar to the toggle button. The main difference is aesthetic. Instead of using the “active” property, use “checked” for a checkbox or switch. 

 

 

Option 

Options buttons, also called radio buttons, are perfect for times when an operator can select a mutually exclusive option from a list. You can have multiple lists on a single screen if they are in separate “containers” as shown below. 

 

 

This UI element is seen a lot in more traditional web design, but not usually in HMI development workspaces. The closest equivalent in FactoryTalk View is a list indicator, which requires operators to scroll through the entire list before selecting the desired option. It is possible to achieve something like the option buttons in more traditional Rockwell HMI applications, but it requires more PLC logic on the back end.  

 

 

 

Operator Entry Fields 

 

Editable Label 

Editable labels function as both Numeric and String Input objects from FactoryTalk View. The tag you want to capture the input is tied to the “Text” property. Optix will automatically format the tag based on the data type and reject inputs that are invalid.

 

Text Box 

Text boxes have all the same properties as an editable label. They can be formatted in a variety of ways. The biggest difference to me is the added security available for text boxes. The “Content Type” property allows you to set the text box as a password, causing all text entered to appear as “●”  characters. You can also add placeholder text to prompt the user on what they should enter. 

 

Note: If you just want plain text that will not be changed by the operator, use the “Label” object. This is a great choice if you are trying to recreate a multi-state indicator. Text can be dynamically selected from a list using a Key-Value converter. 

 

 Gauges 

Gauges provide a slider and scale indicator, great for speed control, rough positioning, or even indicators when the “Editable” property is set to false. These combine the functionality of bar graphs, scales, and circular gauges in FactoryTalk View.  

The warning zones are also a nice feature for changing the background color of specific ranges. Remember, these can also be tied into tags or expressions. There are options for horizontal and vertical gauges. Circular gauges are available as a separate object type. 

 

 

 

Spin Boxes 

Spin Boxes seem to be another element with no counterpart in FactoryTalk View, but are common in traditional web development. This has become one of my favorite input methods. It allows operators to have coarse adjustment with the arrows, but also allows for direct numeric input. I have created similar functionality in FactoryTalk View, but it requires three separate objects, each with additional PLC logic. I have found this object useful in manual control screens as well as recipe editors in Optix.   

 

 

 

Conclusion 

Hopefully, this overview helped explain some of the basic objects for user input available in FactoryTalk Optix. There are whole libraries full of other objects with additional features available to all Optix users. One of the biggest learning curves is which objects to use and what tags to connect to. This is always made abundantly clear in FactoryTalk View, where objects have a “Connections” tab in their properties. In object-oriented programming, where every property can have a connection or dynamic link, it is hard to distinguish which ones are key properties.  

 

 

 

I’ll leave you with one final tip: if you ever select the wrong object but have already configured the formatting and layout, right-click on your object in the project tree, select “refactor,” then “change type,” and select the correct object type.   

This series has been all about showing you how to use FactoryTalk Optix and how to optimize it—giving you the power to design more efficient, dynamic, and customizable systems. Keep experimenting, refining, and applying what you’ve learned here. Optix has plenty of depth left to explore, and I hope this series has provided a solid foundation for you to keep building on. You can also read this article in a lessons learned format on Automation World.

 

 

 

Whether you’re just getting started with FactoryTalk Optix or looking to expand an existing system, our engineers are ready to meet you where you are.