Embedded Control System with Data Visualization

iStock_000008552932_SmallWhen it comes to high quality embedded control systems, one is usually looking for a system that includes the following:

  • User Configuration
  • Data Visualization
  • Data Logging
  • PC Connectivity
  • Software Interface

Often to achieve a high quality embedded solution, it requires custom printed circuit boards and an expensive software development. 

If so, it takes time to get custom hardware manufactured, the software tested (especially the interface to the hardware) and the system debugged.  But what do you do if you don’t have the budget or the time for a custom solution?

A recent customer was in exactly this situation.  Their need was to perform life cycle testing on motors.  Their objective was a high quality embedded solution that would reliably perform their test cycle after cycle until motor failure.  Fortunately, they had already experienced success with LabVIEW as a software development platform, but because of this, they expected to be able to configure the test, log data and use a computer to interact with their test system.  Additionally, this customer also had a small budget that needed to be met.

Is it possible to deliver a high quality embedded solution at a low cost?  The design choices that follow were the keys to achieving that outcome.

Commercial off the shelf (COTS) Hardware

Cheap COTS hardware is available to automate processes.  However, if you want high quality signal conditioning in a rugged modular design with nearly infinite extensibility, then the solution is likely hardware from National Instruments.  Of particular note is the CompactRIO (cRIO).  The cRIO combines a Real-Time Operating System (RTOS) with a Field Programmable Gate Array (FPGA).  In addition the cRIO is designed to accommodate your selection of IO Channels using National Instruments C Series Modules.

Our customer needed to measure temperatures and pressures while monitoring safety conditions and controlling hardware using relays. With a cRIO chassis and the right selection of C Series Modules, a modular build of custom hardware was suited to our customer's needs. Since the hardware was all readily available as commercial off the shelf products, the time to receive the hardware was very short and the cost was very reasonable.

LabVIEW Everywhere

There are many articles that applaud LabVIEW and its benefits as a software platform.  Look here and here and here.  Most recognize its benefits for developing applications for Windows.  But LabVIEW isn’t just for PC applications.  LabVIEW can also be used to write code for an RTOS as well as map FPGAs. This is a significant benefit – A single LabVIEW developer can write code on three different platforms.  Many companies need three different developers to do this.

For this application, the code runs on RTOS.   This means that the system will start when power is supplied and will run autonomously as long as it has power.  The system could be started by a button press, but the customer wanted to have the ability to configure and monitor the test.  Therefore, the customer needed access to the system from their computer.  The following are two key elements that were crucial in keeping the software development cost minimal for this solution. 

FPGA Scan Interface

The FPGA scan interface enables software written in LabVIEW to communicate directly with the IO channels by way of software installation on the cRIO hardware.  Instead of programming the hardware interface on the controller (FPGA), you are essentially tapping into a pre-configured hardware interface.  There are trade offs.  By using the FPGA scan interface, you are limiting your configuration options to the basics for your IO channels.  The scan interface must still be configured, but that can be done with by navigating a few menus to select the proper settings for your configuration. 

Web Publishing Tool

Ordinarily, a high quality embedded solution warrants a software application on a PC that communicates with the embedded control system.  My initial thought was that using the web publishing tool was a concerning shortcut.  The theory is that it is a quick and easy way to push the embedded control to a user through a web page.  While it has some drawbacks, I found respect for the tool.  It required additional effort to refine a user interface on the embedded control system, but that was far less effort than writing a separate application for Windows.  To publish the embedded user interface to the web, it required navigating a few menus and selecting a few checkboxes.  

Truly, the benefits of a separate application on windows are many.  However, for a low cost means of configuring, starting/stopping, and monitoring the test system, the web publishing tool worked very well.

Embedded Benefits

Over a weekend I was testing the discussed application and monitoring the status through my computer.  In the middle of the weekend, the network went down for maintenance and my computer crashed.    When I rebooted my computer and checked on the embedded cRIO solution via the web browser, it was still moving along, without any ramifications from the computer crash.  A note of humor is that I was also testing a second application running on windows.  Unfortunately, that test needed to be restarted.

When you look at the reliable performance of an embedded solution combined with the low cost and minimal time-to-solution made possible by robust COTS hardware and the power of LabVIEW –

Should you be using an embedded solution for your next system? 

Topics: Electronic Engineering