Saving Time and Minimizing Complexity by Creating a Rescue Robot With CompactRIO and LabVIEW
Team SUAVE 2.0, from the Swinburne University of Technology, consists of Ben Smith, Jeremy Wu, and me. Ben and Jeremy are the defending champions of the 2011 inaugural NI Autonomous Robotics Competition (ARC). Jeremy earned a robotics and mechatronics engineering degree, and Ben and I completed a double degree in robotics and mechatronics engineering and computer science and software engineering.
For our application for the 2012 NI ARC, we needed to navigate to a disaster zone, rescue several coloured blocks from amongst the rubble consisting of grey blocks, and then navigate to several drop off zones so we could drop off and treat the blocks. This kind of problem is worthy of attention because it reflects one of the fields in which robotics is becoming a better option because of advances in technology. Robots will replace humans in the rescue field as they become more autonomous and versatile, so people can be rescued without endangering others’ lives.
3 Systems of the Rescue Robot
The robot we developed, as with all mechatronics systems, had three somewhat overlapping systems—mechanical, electrical, and control. The base of the mechanical system was a standard differential steering frame powered by Maxon DC motors and complemented by a few actuators powered by hobby servos and a stepper motor to manipulate the objects.
The electrical system featured a few hobby-grade controllers for the stepper motor and servos and some basic sensors including four Sharp infrared (IR) distance sensors; two Pololu IR reflectance sensors; two red, green, blue (RGB) LEDs; and two phototransistors. The IR sensors were used for obstacle detection at the front of the robot and on its side, while the reflectance sensors were used to detect the colour of the tiles the robot was on. This provided sufficient information for the localisation of the robot.
Finally, we performed the robot control completely on the CompactRIO controller programmed with LabVIEW system design software. To achieve the control requirements, we used the LabVIEW Robotics Module heavily. The main feature of this module that we benefitted from was the AD* path planning implementation and map representation data set. Using this implementation saved us time that we would have otherwise spent on developing, testing, and debugging if we had created a custom implementation from scratch. We configured the AD* on a directed graph to give costs to both driving forward and turning movements, which created paths that featured minimal turns and therefore were much faster than if we had ignored turning costs.
Striving for Simplicity
The benefit of our robot compared to other systems was that we aimed for simplicity both mechanically and in the software. In the software, we achieved this simplicity by using as much of the functionality provided by LabVIEW and its toolboxes as we could and by ensuring that the majority of the code executed in series. Due to the graphical nature of LabVIEW, finding bugs was simple because we could easily track the data flow and logic through each VI. Additionally, the highlighting capability provided a quick means of observing the state of the system during run time. The front panels of the VIs were easy to manipulate and provided vital information on the critical state variable of the robot. One key example was the map of the arena that plotted the robot’s position and any objects the robot had detected. Quickly developing this visualisation was vital to the debugging process used to develop the robot.
Improved Productivity With NI Training
At the beginning of the ARC, NI offered a training seminar to Team SUAVE 2.0 and the other Swinburne team. This training took only a few hours, but because of the intuitive nature of LabVIEW and the seminar’s hands-on interaction with the CompactRIO hardware, both teams quickly developed a sufficient level of understanding and hit the ground running using LabVIEW to develop our robots. In addition to providing this startup training, NI also delivered assistance through email. We quickly solved several problems during project development thanks to NI support.
An Efficient and Effective Platform
Because of time constraints of other university commitments, we needed an efficient and effective development platform to create a robot to complete the competition’s outlined task. CompactRIO and LabVIEW delivered this platform. We spent very little time implementing functionality, which helped us devote more time to developing efficient search algorithms for the coloured blocks and tuning hardware to provide optimal data.
Ben Smith – Swinburne University of Technology
Jason Austin – Swinburne University of Technology
Jeremy Wu – Swinburne University of Technology