Ever heard about the Robot Operating System? It’s a BSD-licensed open-source system for controlling robots, from a variety of hardware. Over the years we’ve shared quite a few projects that run ROS, but nothing on how to actually use ROS. Lucky for us, a robotics company called Clearpath Robotics — who use ROS for everything — have decided to graciously share some tips and tricks on how to get started with ROS 101: An Introduction to the Robot Operating System.
The beauty of the ROS system is that it is made up of a series of independent nodes which communicate with each other using a publish/subscribe messaging model. This means the hardware doesn’t matter. You can use different computers, even different architectures. The example [Ilia Baranov] gives is using an Arduino to publish the messages, a laptop subscribed to them, and even an Android phone used to drive the motors — talk about flexibility!
It appears they will be doing a whole series of these 101 posts, so check it out — they’ve already released numéro 2, ROS 101: A Practical Example. It even includes a ready to go Ubuntu disc image with ROS pre-installed to mess around with on VMWare Player!
The truck is based on a 1/14th scale Tamiya chassis, and had been fitted out by a prior group with an inductive charging system. On top of this platform, [Jon] added a Jetson TX2 to act as the brains of the system, hooking it up with a Slamtec RPLIDAR scanner to map its surrounding environment. There’s also a Teensy microcontroller onboard which handles synthesizing PWM signals for the radio control hardware that drives the truck, and a Logitech webcam up front for machine vision. The truck is capable of operating in a variety of modes, from full manual operation, to driving based on LIDAR mapping or with an AI controlling the truck based on camera data. The truck is programmed to drive a route including an inductive charging pad so it can keep its power levels up without human intervention.
Batteries have come a long way in the past few centuries, but pale in comparison to hydrocarbon fuels when it comes to energy density. When it comes to packing plenty of juice in a light, compact package, hydrocarbons are the way to go. Recently, researchers have begun to take advantage of this, powering small robots with liquid fuels. Just like Bending Unit 22, aka Bender Bending Rodriguez, this tiny robotic beetle runs on alcohol.
Affectionately named Robeetle, the tiny ‘bot weighs just 88 milligrams, comparable in mass its insectoid contemporaries. It stores methanol in a polyimide film tank, operating for up to 2 hours on a single fill. As shown in the video, a solely mechanical control system is used to actuate the robot’s legs. In the neutral state, vents in the fuel tank are open, releasing methanol vapor. This passes over nitinol muscle wires coated in a special catalyst which causes the combustion of the methanol, heating the wires. The wires then contract, moving the legs, and closing the vents. When the wire cools, the wires relax, opening the vents and beginning the cycle anew.
While the ‘bot is solely capable of walking in a single direction, it nevertheless shows the possibilities enabled by powering small devices from energy-dense fuels. Waiting for improved battery technologies to develop is such a bore, after all. We look forward to swarms of such ‘bots exploring disaster areas or performing environmental sampling in years to come. The scientific paper outlines the research outcomes in detail.
You may remember that the combination of Dexter’s makeup and capabilities are what let it stand out among robotics projects. The fully-articulated robot arm can be motion trained; it records how you move the arm and can play back with high precision rather than needing to be taught with code. The high-precision is thanks to a clever encoder makeup that leverages the power of FPGAs to amplify the granularity of its optical encodes. And it embraces advanced manufacturing to combine 3D printed and glue-up parts with mass produced gears, belts, bearings, and motors.
Robots might be finding their footing above ground, but today’s autonomous robots have a difficult time operating underground. DARPA wanted to give the state of the art a push forward, so they are running a Subterranean (SubT) Challenge which just wrapped up its latest round. A great review of this Urban Circuit competition (and some of the teams participating in it) has been published by IEEE Spectrum. This is the second of three underground problem subdomains presented to the participants, six months apart, preparing them for the final event which will combine all three types.
If you missed the livestream or prefer edited highlight videos, they’re all part of DARPAtv’s Subterranean Challenge playlist. Today it starts with a compilation of Urban Circuit highlights and continues to other videos. Including team profiles, video walkthrough of competition courses, actual competition footage, edited recap videos, and the awards ceremony. Half of the playlist are video from the Tunnels Circuit six months ago, so we can compare to see how teams performed and what they’ve learned along the way. Many more lessons were learned in the just-completed Urban Circuit and teams will spend the next six months improving their robots. By then we’ll have the Caves Circuit competition with teams ready to learn new lessons about operating robots underground.
Showing robots adversarial behavior may be the key to improving their performance, according to a study conducted by the University of Southern California. While a generative adversarial network (GAN), where two neural networks compete in a game, has been demonstrated, this is the first time adversarial human users have been used in a learning effort.
The report was presented at the International Conference on Intelligent Robots and Systems, describing the experiment in which reinforcement learning was used to train robotic systems to create a general purpose system. For most robots, a huge amount of training data is necessary in order to manipulate objects in a human-like way.
A line of research that has been successful in overcoming this problem is having a “human in the loop”, in which a human provides feedback to the system in regards to its abilities. Most algorithms have assumed a cooperating human assistant, but by acting against the system the robot may be more inclined to develop robustness towards real world complexities.
The experiment that was conducted involved a robot attempting to grasp an object in a computer simulation. The human observer observes the simulated grasp and attempts to snatch the object away from the robot if the grasp is successful. This helps the robot discern weak and firm grasps, a crazy idea from the researchers that managed to work. The system trained with the adversary rejected unstable grasps, quickly learning robust grasps for different objects.
Experiments like these can test the assumptions made in the learning task for robotic applications, leading to better stress-tested systems more inclined to work in real-world situations. Take a look at the interview in the video below the break.
At heart the RedBoard+ is a motor controller, but it’s packed with I/O and features that set it above the usual fare. It can drive two DC motors and up to twelve servos, but what is extra useful is the wide input range of 7-24 V and its ability to power and control the underlying Raspberry Pi. A user-programmable button defaults to either doing a reboot or safe shutdown, depending on how long the button is held. Another neat feature is the ability to blink out the IP address of the Pi using the onboard RGB LED, which is always handy in a pinch.
The RedBoard+ has a GitHub repository which provides a variety of test scripts and an easy to use library, as well as a variety of hookup guides and quickstart guides. There’s even a pre-configured SD image for those who prefer to simply dive in.