Robotic arms and actuators are compelling things to watch, and as popular among the maker set as they are crucial to modern industry. [kthod2000] built a design of their own, which relies on parts salvaged from old CD-ROM drives.
The arm itself is constructed of many components which appear to be 3D printed, with three main motors visible along its length. These look to be the eject motors harvested from several optical drives, which usefully come with a threaded screw on the output shaft that makes them perfect for a linear-drive application. Run by a TMC2208 driver via a microcontroller, the eject motors control the motion of several stages of the robot arm as it moves up and down.
The intention seems to be that one of these three-tiered assemblies could act as a single finger. Ganged up multiple times, this could allow the creation of something akin to a full five-digit robot hand. [kthod2000] has also done plenty of work on the software side of things that handles controlling the arm. The kinematics can all be simulated on screen in concert with the real motion of the arm.
We’ve seen similar builds before, too, like this plotter built out of scrap DVD drives. They’re a great source of quality electromechanical components for small projects, so it’s no surprise to see them put to work here. Video after the break.
Today, we shall talk about how [Adam Bäckström] took a DS3225 servo and rebuilt it to improve its accuracy, then built a high-precision robot arm with those modified servos to show just how much of an improvement he’s got – up to 36 times better positional accuracy. If this brings a déjà vu feeling, that’s because we’ve covered his servo modifications before, but now, there’s more. In a year’s time since the last video came out, [Adam] has taken it to the next level, showing us how the modification is made, and how we ourselves can do it, in a newly released video embedded below.
After ordering replacement controller PCBs designed by [Adam] (assembled by your PCBA service of choice), you disassemble the servo, carefully setting the gearbox aside for now. Gutting the stock control board is the obvious next step, but from there, you don’t just drop the new PCB in – there’s more to getting a perfect servo than this, you have to add extra sensing, too. First, you have to print a spacer and a cover for the control board, as well as a new base for the motor. You also have to print (or perhaps, laser-cut) two flat encoder disks, one black and one white, the white one being eccentric. It only escalates from here!
[Zhihui Jun] is a name you’re going to want to remember because this Chinese maker has created quite probably one of the most complete open-source robot arms (video in Chinese with subtitles, embedded below) we’ve ever seen. This project has to be seen to be believed. Every aspect of the design from concept, mechanical CAD, electronics design and software covering embedded, 3D GUI, and so on, is the work of one maker, in just their spare time! Sound like we’re talking it up too much? Just watch the video and try to keep up!
After an initial review of toy robots versus more industrial units, it was quickly decided that servos weren’t going to cut it – too little torque and lacking in precision. BLDC motors offer great precision and torque when paired with a good controller, but they are tricky to make small enough, so an off-the-shelf compact harmonic drive was selected and paired with a stepper motor to get the required performance. This was multiplied by six and dropped into some slick CNC machined aluminum parts to complete the mechanics. A custom closed-loop stepper controller mounts directly to the rear of each motor. That’s really nice too.
Stepper controller mounts on the motor rear – smart!
Control electronics are based around the STM32 using an ESP32 for Wi-Fi connectivity, but the pace of the video is so fast it’s hard to keep up with how much of the design operates. There is a brief mention that the controller runs the LiteOS kernel for Harmony OS, but no details we can find. The project GitHub has many of the gory details to pore over perhaps a bit light in places but the promise is made to expand that. For remote control, there’s a BLE-connected teaching device (called ‘Peak’) with a touch screen, again details pending. Oh, did we mention there’s a force-feedback (a PS5 Adaptive Trigger had to die for the cause) remote control unit that uses binocular cameras to track motion, with an AHRS setup giving orientation and that all this is powered by a Huawei Atlas edge AI processing system? This was greatly glossed over in the video like it was just some side-note not worth talking about. We hope details of that get made public soon!
Threading a needle through a grape by remote control
The dedicated GUI, written in what looks like Unity, allows robot programming and motion planning, but since those harmonic drives are back-drivable, the robot can be moved by hand and record movements for replaying later. Some work with AR has been started, but that looks like early in the process, the features just keep on coming!
Quite frankly there is so much happening that it’s hard to summarise here and do the project any sort of justice, so to that end we suggest popping over to YT and taking a look for yourselves.
My Singing Monsters is one of those mobile titles that has users play simple games to earn coins and gems in the usual way. [Anykey] found that his son was a fan of the game, but that sometimes it felt a little rigged. Thus, rather than waste time playing themselves, he set up a robot to do the job for them. (Super-boring video, embedded below.)
The player must complete a basic but time-consuming memory game. Upon winning, the player gets to choose a prize from 17 mystery cards. The top prize of 1,000 diamonds always seemed to be hidden under another card, leading to the aforementioned frustration.
In order to test if the game was rigged, [Anykey] set up a uArm Swift Pro to play the game, with the robot arm moving a small stylus over the iPad playing the game. The iPad’s video was piped to a PC via HDMI out, going into a Camlink capture card. A Python script using OpenCV was then created to play the game automatically, and log the results of prizes gained along the way. All the code is up on GitHub.
After over 100 attempts, the robot never managed to pick the right card to score 1,000 diamonds. Given that there are only 17 cards to choose from, one would expect the 1,000 diamond prize to come up several times in that many selections.
It seems then that the prize selection for completing the memory game may not actually be down to picking the right card. Instead, the prize given is selected by some other calculation entirely.
3D printers are an excellent tool to have on hand, largely because they can print other tools and parts rapidly without needing to have them machined or custom-ordered. 3D printers have dropped in price as well, so it’s possible to have a fairly capable machine in your own home for only a few hundred dollars. With that being said, there are some limitations to their function but some of them can be mitigated by placing the printer head on a robot arm rather than on a traditional fixed frame.
The experimental 3D printer at the University of Nottingham adds a six-axis robotic arm to their printer head, which allows for a few interesting enhancements. Since the printer head can print in any direction, it allows material to be laid down in ways which enhance the strength of the material by ensuring the printed surface is always correctly positioned with respect to new material from the printer head. Compared to traditional 3D printers which can only print on a single plane, this method also allows for carbon fiber-reinforced prints since the printer head can follow non-planar paths.
Actuators that are powerful, accurate, compact, and cheap are like unicorns. They don’t exist. Yet this is what [3DprintedLife] needed for a robotic camera arm, so he developed a custom 3D printed high torque strain wave gearbox to be powered by a cheap NEMA23 stepper motor.
Strain wave gears, otherwise known as harmonic drives, are not an uncommon topic here on Hackaday. The work by deforming a flexible toothed spline with a rotating elliptical part, which engages with the internal teeth of an outer spline. The outer spline has a few more teeth, causing the inner spline to rotate slowly compared to the input, achieving very high gear ratios. Usually, the flexible spline is quite long to allow it to flex at one end while still having a rigid mounting surface at the other end. [3DprintedLife] got around this by creating a separate rigid output spline, which also meshes with the flexible spline. Continue reading “A High Torque 3D Printed Harmonic Drive”→
Part of the “special sauce” that makes this arm so capable is the custom optical encoders installed in the servo motors themselves.
[Adam]’s first robot arm build was a major disappointment, when the servos he had purchased for the build turned out to be terrible at holding an angle. With limited funds, he elected to improve on what he had, learning much about precision control techniques along the way. [Adam] taught himself how to implement industrial strength control loops using hobby hardware, by implementing additional encoders into servos and taking into account velocity and torque in addition to just position. With a magnetic encoder on the servo output shaft and a tiny optical encoder hand-built for inside the motor itself, much higher accuracy is achievable by allowing the control system to compensate for backlash.