Building a Rover to Carry a Robot Arm

element14 Presents' Milos Rasic built a kind of rover base to carry the five-axis robot arm he showed in his last update.

Cameron Coward
3 seconds agoRobotics / 3D Printing

Milos Rasic of element14 Presents recently built a pretty nifty robot arm of his own design using 3D-printed parts and affordable servo motors. That is useful when mounted to a desktop or workbench, but it would be even more useful if it could move around to reach different physical locations. To achieve that, Rasic constructed a kind of rover base that carries the robot arm.

In the world of robotics, one might refer to this as an AGV (automated guided vehicle). But at this stage, it isn’t autonomous and so I’m hesitant to use the term. Because it only looks like an AGV and operates under manual control, I’ll just call it a rover.

The rover has four driven wheels and tank steering — though Rasic may switch those to Mecanum wheels in the future, which allow for more versatile movement. The wheels and their geared drive motors attach to a frame made of aluminum extrusion, with 3D-printed brackets and bodywork. The five-axis robot arm bolts on to the top.

The rover’s brain is an NXP FRDM RW612 development board, which hosts NXP’s RW612 microcontroller. That is pretty similar to Espressif’s ESP32 and has been out for a couple of years now, but hasn’t gained a lot of traction yet. Like an ESP32, it has a built-in radio for Wi-Fi and that is critical for the control scheme.

The NXP FRDM RW612 controls both the brushed DC motors to drive the rover and the robot arm’s servo motors through a PCA9685 PWM driver, with two L298N dual H-bridge drivers then going to the DC motors. But the RW612 isn’t really doing any thinking, it is just waiting for UDP (User Datagram Protocol) packets that contain information on how to move each motor.

Those UDP packets come from a host PC over Wi-Fi. The PC runs Python scripts to interpret user inputs and calculate motor movement. For the rover’s drive motors, that is pretty simple — gamepad input translates cleanly to rotation. For the robot arm, it is a lot more complex as Rasic employed inverse kinematics. To put that in simple terms, the input from the gamepad determines the position the arm should move to and the software calculates how to reach that position.

With this setup, Rasic can pilot the rover. He can drive it around and manipulate the robot arm. From here, he plans to expand the capabilities to include mapping, navigation, and more.

Cameron Coward
Writer for Hackster News. Proud husband and dog dad. Maker and serial hobbyist. Check out my YouTube channel: Serial Hobbyism
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles