These Changing Times: Inside the RTI DDS Toolkit for NI LabVIEW
Written by Bob Galbreath
September 1, 2021
With a long and storied history in embedded systems design going back 30-some years, I’ve always maintained an affinity for “old school” development tools like JTAG debuggers, on-target profiling tools, and applications written in C and C++. But it’s equally important to change with the times -- especially when it means being able to achieve capabilities that were previously difficult or even impossible.
In these blogs, we often delve into some of the higher-level Systems Engineering tools that are featured on the RTI Partner page -- and personally, I always welcome the opportunity to explore and experiment. Some of the tools I’m referring to are MATLAB Simulink®, NI LabVIEW™, ROS 2 and other development environments that bring an advanced Systems Engineering approach to the table. Frankly, these tools can deliver great capabilities to embedded developers. And in all these different environments, RTI Connext® offers a great way to rapidly introduce “state of the art” network communications.
Recently, for example, I’ve been working with a customer in the industrial equipment space who has a “line-of-sight” remote controller application based on NI LabVIEW. Those familiar with it know that (to quote their website); "LabVIEW includes 1,000+ advanced control and analysis libraries, as well as application-specific functions for smart machines and industrial systems.” Programming is done through a graphical environment and has easy integrations with hardware systems utilizing NI FPGAs and running NI Linux Real-Time OS. Our offering, the RTI DDS Toolkit for LabVIEW, extends those capabilities by bringing DDS communications into the LabVIEW environment.
But, as I stated earlier, the customer had “line-of-sight” remote control of their systems, as opposed to “real” remote control. This raises some practical questions: “What if I want to run my remote control from a cloud or data center?” And, “What if that data center is 1000s of miles away?” With the recent release of Connext 6.1, RTI can offer the capabilities of our Real-Time WAN Transport and our Routing Service to create a layered databus to meet these needs for LabVIEW applications. To demonstrate that, I’ve come up with an example.
The figure below shows NI LabVIEW running a simple example application that is enabled with the DDS Toolkit on a Windows System. Those are the Windows at the top. In the example, the way it’s coded, it will publish a basic block of data at a 20ms rate to any and all Data Distribution Service™ (DDS) subscribers (and/or other LabVIEW applications) that it’s discovered on its local network or on the same system via shared memory.
Below that, in the command shell window on the same system, I’m running an instance of the Connext 6.1 Routing Service enabled with our Real-Time WAN Transport. The Routing Service acts as a bridge and is set up to move all DDS data back and forth from the local system to a designated, publicly accessible, system running in the AWS cloud.
Conversely, up in AWS I’ll have a “twin” instance of that 6.1 Routing Service that’ll receive DDS data from the WAN connection and forward it to all of the local DDS Subscribers running there. With that, voila!, we’ve created a layered databus architecture.
Click on the video below to see this RTW enabled LabVIEW demo in action.
The Real-Time WAN Transport feature in Connext® 6.1 brings exciting new capabilities to Systems Engineers who want to create truly distributed control applications. These applications can rely on Connext for low-latency edge-to-edge and edge-to-cloud communications in a variety of environments. For more information on the recently released Connext® 6.1, Real-Time WAN Transport and other new features, please visit https://www.rti.com/products/connext-6-1
Additional information related to our LabVIEW integration can be found here: https://www.rti.com/products/add-on-products/dds-labview
About the Author
Bob is a Field Application Engineer for Real-Time Innovations supporting customers in the upper Midwest U.S.A territory. Bob has been working as an applications engineer in the embedded industry for over 35 years with specialties in VMEbus systems, software development tools, real-time operating and Linux. Previous to his work at RTI, Bob spent 22 years at Wind River Systems. Bob holds a Bachelor of Science degree in Electrical Engineering and a Masters of Electrical and Computer Engineering from Illinois Institute of Technology in Chicago IL.