A Flexible Solution to Robotic Vehicle Controller Testing
The Challenge
A company that produces control systems for robotic industrial forklifts needed a flexible solution for testing the I/O points on their controller hardware that could be expanded in future versions to fully simulate a forklift unit attached to the controller.
The Solution
Data Science Automation designed a sequential I/O tester using LabVIEW and CompactDAQ that could be re-used in a modular fashion to become a simulation interface, or expanded into a more substantial test interface by adding NI TestStand.
Introduction
Data Science Automation (DSA) is the premier National Instruments Alliance Partner. DSA integrates commercial off-the-shelf (COTS) components from automation technology vendors to create custom, adaptive automation solutions for a diversity of research, manufacturing, government and business operations to:
∙ acquire, analyze, present and manage data
∙ design, simulate, test and validate products
∙ monitor, predict, control and optimize processes
∙ invent, draft, prototype and build machines
for maximum productivity, quality, profit and understanding.
DSA is a certified member of the Control Systems Integrators Association (CSIA) and staffs multiple National Instruments Certified Training Centers with more certified LabVIEW Architects than other integrators.
For this project, DSA was engaged to assist a robotics company that manufactures both complete automated robotic forklift units as well as controllers to convert third party forklift units into self guided units. Before contracting with DSA, the customer tested the forklift controllers only in a rudimentary fashion with manual multimeters before going into a “functional test” phase where the controllers had to be attached to a physical forklift and commanded to do complicated patterns that only tested specific combinations of commands. The customer needed a better way to ensure that all I/O channels inside their controllers were wired properly before subjecting the controllers to a functional test. In addition, they also wanted the system to be portable, so that it could be sent out into the field to be used for testing at field sites.
The customer had already looked at LabVIEW and realized that it would be an ideal environment for constructing an automated controller I/O test system that could later be expanded to simulate the actual forklift connected to the controller. No customer personnel had any LabVIEW knowledge, but were willing to learn the basics and make the investment in LabVIEW due to the benefits they knew it could provide. The customer then called on the expertise of DSA to specify test hardware, write the initial I/O test application, and train them on the LabVIEW environment.
The Test System
The initial test phase involves monitoring each I/O channel on the robotic controller unit and verifying that the channel is able to receive or output the proper signal level. In many cases, the output signal level must be triggered by commanding the robotic controller to toggle the line on or off, or output a certain level. For input lines on the controller, the test system needs to feed the input a known signal and detect the level by querying the controller.
In addition, the test system must be able to power up the unit under test via a BK DC power supply, and query current draw from the unit under different circumstances.
The power supply operates through an RS-232 serial link, and the unit under test can be commanded/queried through an Ethernet link, however, each submodule of the robotic controller uses a different Ethernet-based protocol for communication. External test hardware is needed to connect to the I/O points in place of an actual forklift unit. The system must also be portable to allow carrying/shipping it easily to a field site for post-sales diagnostic capability.
Hardware Selection and Setup
DSA began by specifying NI’s cDAQ-9188 controller.The I/O points on the robotic forklift controller that needed to be verified involved several different types of signals, including pulse trains, 24VDC industrial source/sink digital lines, and analog inputs and outputs. cDAQ provided the ideal combination of portability and flexibility as well as a wide offering of I/O modules matched to the I/O points on the unit under test. The customer saw a possible future need for adding CANbus capability to the system, and the NI-9862 CANBUS module can be easily added to the Compact DAQ chassis when needed. The final I/O count exceeded what could fit in a single cDAQ-9188 chassis, so a cDAQ 9181 single-slot carrier was added as wellto accommodate the additional NI-9422 module needed to round out the test interface. The Ethernet interface on both cDAQ chassis provided ultimate flexibility, and allows the cDAQ units to be placed on a LAN if necessary. To allow the UUT to run on a separate, isolated Ethernet network, a second network interface card was provided on the host laptop by using a USB-Ethernet adapter.
The hardware was placed in a portable cabinet via DIN-rail mounting along with external terminal blocks for wiring in load resistors and ground paths needed to test the controller I/O points properly, leaving the programmable power supply as the only separate piece of test equipment. A laptop was specified as the host PC for portability, but since few laptops provide a native RS-232 port today, an NI USB-232 adapter provided an easy solution to connect the power supply to the laptop.
Test Software
DSA began the I/O test software by writing a simple test sequencer interface in LabVIEW (Figure 1). The interface allows the operator to choose a series of I/O point tests in the form of LabVIEW VIs to load in any order. These VIs are individually loaded dynamically by reference inside the main test sequencer and unloaded when each test is finished. At the end of the sequence, a simple HTML report is produced using the built-in LabVIEW HTML Report VIs. The DSA Test Sequencer can also detect the operator’s Windows login, and decide if he/she can change the test sequence based on which Windows network groups the operator is a member of.
Figure 1. LabVIEW Test Sequencer
Figure 2. Test Sequence Configuration VI
Each test is its own LabVIEW VI created from a common VI template file to allow for changing or reordering the test sequence easily (Figure 2), using these VIs in a future forklift simulator program, and also to provide compatibility with NI TestStand should the customer want to build a more complex test sequencer for future operations. Each VI that conforms to the template and appears in a designated Test VI directory can be selected from a drop-down list to include in the test sequence. Initial tests typically involved performing single point reads and writes using the cDAQ modules and reading/commanding I/O states on the UUT via direct Ethernet communication to the UUT. Simple power-up and power-down tests are included at the beginning and end of the test sequence, respectively, that measure current draw of the controller unit using the BK power supply and a pre built LabVIEW Instrument Driver found on the NI IDNet.
Communicating with the UUT directly over Ethernet is a bit more complicated than sending simple ASCII commands over TCP and each submodule of the UUT uses a different protocol and packet scheme. Thus, customer engineering personnel wanted to utilize their in-depth knowledge of the system to address the various submodules inside their controller platform without in-depth knowledge of LabVIEW. A .NET custom assembly was created by customer personnel with properties and methods that could be called using LabVIEW’s .NET palette. This abstracted DSA from having to know all the particulars of the different Ethernet communication protocols used by the UUT, and abstracted the customer from having to understand LabVIEW programming details so early in the project.
DSA then offered the customer LabVIEW Core I/II classroom training at DSA’s Pittsburgh headquarters to help them ramp up their LabVIEW skills, so they could write their own test VI’s for the test sequencer application in the future.
The Resolution
LabVIEW and NI cDAQ allowed DSA to develop a complete, scalable and expandable test solution in a fraction of the time it would have taken with other hardware and software combinations, and allowed the customer to include a much-needed test step in their process between manual “sanity check” testing and testing on a physical forklift. In the future DSA and the customer expect to expand the I/O test system to simulate a complete forklift setup without the need to have a moving vehicle to test on.
Contact Information
Tom Garvey, 724-942-6330, www.DSAutomation.comIndustry:
Automated Test TransportationAttributions:
Adam C. Tyburski, Senior Measurement & Automation Engineer, Data Science Automation
Thomas R. Garvey, Measurement & Automation Consultant, Data Science Automation
Products Used:
LabVIEW, cDAQ, .NET
Self-Qualification Form
As a technical user, you may know exactly what you need from us already. If you do, save time and streamline the discovery process with our self-qualification form, where you can let DSA know exactly what you need.
What We Recommend
Get started today and schedule a free consultation. Try us risk-free and learn how you can benefit from our methodical and certified best practices to advance your automation engineering and digital transformation initiatives.