The Robot Operating System (ROS) 101

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!

And to get you inspired for using ROS, check out this Android controlled robot using it! Or how about a ridiculous wheel-chair-turned-creepy-face-tracking-robot?

Hackaday Podcast Episode 357: BreezyBox, Antique Tech, And Defusing Killer Robots

In the latest episode of the Hackaday Podcast, editors Elliot Williams and Tom Nardi start things off by discussing the game of lunar hide-and-seek that has researchers searching for the lost Luna 9 probe, and drop a few hints about the upcoming Hackaday Europe conference. From there they’ll marvel over a miniature operating system for the ESP32, examine the re-use of iPad displays, and find out about homebrew software development for an obscure Nintendo handheld. You’ll also hear about a gorgeous RGB 14-segment display, a robot that plays chess, and a custom 3D printed turntable for all your rotational needs. The episode wraps up with a sobering look at the dangers of industrial robotics, and some fascinating experiments to determine if a decade-old roll of PLA filament is worth keeping or not.

Check out the links below if you want to follow along, and as always, tell us what you think about this episode in the comments!

Download this episode in DRM-free MP3 on your ESP32 with BreezyBox for maximum enjoyment.

Continue reading “Hackaday Podcast Episode 357: BreezyBox, Antique Tech, And Defusing Killer Robots”

How Industrial Robot Safety Was Written In Blood

It was January 25th of 1979, at an unassuming Michigan Ford Motor Company factory. Productivity over the past years had been skyrocketing due to increased automation, courtesy of Litton Industry’s industrial robots that among other things helped to pick parts from shelves. Unfortunately, on that day there was an issue with the automated inventory system, so Robert Williams was asked to retrieve parts manually.

As he climbed into the third level of the storage rack, he was crushed from behind by the arm of one of the still active one-ton transfer vehicles, killing him instantly. It would take half an hour before his body was discovered, and many years before the manufacturer would be forced to pay damages to his estate in a settlement. He only lived to be twenty-five years old.

Since Robert’s gruesome death, industrial robots have become much safer, with keep-out zones, sensors, and other safety measures. However this didn’t happen overnight; it’s worth going over some of the robot tragedies to see how we got here.

Continue reading “How Industrial Robot Safety Was Written In Blood”

Light Following Robot Does It The Analog Way

If you wanted to build a robot that chased light, you might start thinking about Raspberry Pis, cameras, and off-the-shelf computer vision systems. However, it needn’t be so complex. [Ed] of [Death and the Penguin] demonstrates this ably with a simple robot that finds the light the old-fashioned way.

The build is not dissimilar from many line-following and line chasing robots that graced the pages of electronics magazines 50 years ago or more. The basic circuit relies on a pair of light-dependent resistors (LDR), which are wrapped in cardboard tubes to effectively make their response highly directional. An op-amp is used to compare the resistance of each LDR. It then crudely steers the robot towards the brighter light between turning one motor  hard on or the other, operating in a skid-steer style arrangement.

[Ed] then proceeded to improve the design further with the addition of a 555 timer IC. It’s set up to enable PWM-like control, allowing one motor to run at a lower speed than the other depending on the ratio between the light sensors. This provides much smoother steering than the hard-on, hard-off control of the simpler circuit. [Ed] notes that this is about the point where he would typically reach for a microcontroller if he hoped to add any additional sophistication.

In an era where microcontrollers seem to be the solution to everything, it’s nice to remember that sometimes you can complete a project without using a processor or any code at all. Video after the break.

Continue reading “Light Following Robot Does It The Analog Way”

Robotic Canoe Puts Robot Arms To Work

Most robots get around with tracks or wheels, but [Dave] had something different in mind. Sufficiently unbothered by the prospect of mixing electronics and water, [Dave] augmented a canoe with twin, paddle-bearing robotic arms to bring to life a concept he had: the RowboBoat. The result? A canoe that can paddle itself with robotic arms, leaving the operator free to take a deep breath, sit back, and concentrate on not capsizing.

There are a couple of things we really like about this build, one of which is the tidiness of the robotic platform that non-destructively attaches to the canoe itself with custom brackets. A combination of aluminum extrusion and custom brackets, [Dave] designed it with the help of 3D scanning the canoe as a design aid. A canoe, after all, has nary a straight edge nor a right angle in sight. Being able to pull a 3D model into CAD helps immensely in such cases; we have also seen this technique used in refitting a van into an off-grid camper.

The other thing we like is the way that [Dave] drives the arms. The two PiPER robotic arms are driven with ROS, the Robot Operating System on a nearby Jetson Orin Nano SBC. The clever part is the way [Dave] observed that padding and steering a canoe has a lot in common with a differential drive, which is akin to how a tank works. And so, for propulsion, ROS simply treats the paddle-bearing arms as though they were wheels in a differential drive. The arms don’t seem to mind a little water, and the rest of the electronics are protected by a pair of firmly-crossed fingers.

The canoe steers by joystick, but being driven by ROS it could be made autonomous with a little more work. [Dave] has his configuration and code for RowboBoat up on GitHub should anyone wish to take a closer look. Watch it in action in the video, embedded below.

Continue reading “Robotic Canoe Puts Robot Arms To Work”

Robotics Class Is Open

If you are like us, you probably just spin up your own code for a lot of simple projects. But that’s wasteful if you are trying to do anything serious. Take a robot, for example. Are you using ROS (Robot Operating System)? If not — or even if you are — check out [Janne Karttunene] and the University of Eastern Finland’s open-source course Robotics and ROS 2 Essentials.

The material is on GitHub. Rather than paraphrase, here’s the description from the course itself:

This course is designed to give you hands-on experience with the basics of robotics using ROS 2 and Gazebo simulation. The exercises focus on the Andino robot from Ekumen and are structured to gradually introduce you to ROS 2 and Docker.

No prior experience with ROS 2 or Docker is needed, and since everything runs through Docker, you won’t need to install ROS 2 on your system beforehand. Along the way, you’ll learn essential concepts like autonomous navigation and mapping for mobile robots. All the practical coding exercises are done in Python.

Topics include SLAM, autonomous navigation, odometry, and path planning. It looks like it will be a valuable resource for anyone interested in robotics or anything else you might do with ROS.

If you want a quick introduction to ROS, we can help. We’ve seen a number of cool ROS projects over the years.

Flat Earth Theatre presents "R.U.R." by Karel Capek. January 23 - 31, 2009. Featuring Michael Wayne Smith, Karen Hart, Valerie Daum, Jeff Tidwell, Kevin Kordis, James Rossi, Bill Conley, Justus Perry, and Amy Lehrmitt. Directed by Jake Scaltreto. Arsenal Center for the Arts, Watertown.

Robot: You Keep Using That Word But It Doesn’t Mean What You Think It Means

The flute player automaton by Innocenzo Manzetti (1840)
The flute player automaton by Innocenzo Manzetti (1840)

With many words which are commonly used in everyday vocabulary, we are certain that we have a solid grasp of what they do and do not mean, but is this really true? Take the word ‘robot’ for example, which is more commonly used wrongly rather than correctly when going by the definition of the person who coined it: [Karel Čapek]. It was the year 1920 when his play Rossumovi Univerzální Roboti was introduced to the world, which soon saw itself translated and performed around the world, with the English-speaking world knowing it as R.U.R.: Rossum’s Universal Robots.

Up till then, the concept of a relatively self-operating machine was known as an automaton, as introduced by the Ancient Greeks, with the term ‘android’ being introduced as early as the 18th century to mean automatons that have a human-like appearance, but are still mechanical contraptions. When [Čapek] wrote his play, he did not intend to have non-human characters that were like these androids, but rather pure artificial life: biochemical systems much like humans, using similar biochemical principles as proteins, enzymes, hormones and vitamins, assembled from organic matter like humans. These non-human characters he called ‘roboti’, from Old Czech ‘robot’ (robota: “drudgery, servitude”), who looked human, but lacked a ‘soul’.

Despite this intent, the run-away success of R.U.R. led to anything android- and automaton-like being referred to as a ‘robot’, which he lamented in a 1935 column in Lidové Noviny. Rather than whirring and clunking pieces of machinery being called ‘automatons’ and ‘androids’ as they had been for hundreds of years, now his vision of artificial life had effectively been wiped out. Despite this, to this day we can still see the traces of the proper terms, for example when we talk about ‘automation’, which is where automatons (‘industrial robots’) come into play, like the industrial looms and kin that heralded the Industrial Revolution.

(Heading image: Performance of R.U.R. by Flat Earth Theatre, showing the mixing of robot ingredients)