Hackaday Prize 2023: PAROL6 – A GPL Desktop Robotic Arm

Parol 6 is a 3D-printed six-axis robot arm created by [Petar Crnjak] as a combination of the principles from a few previous projects. Aside from a pneumatic gripper, each axis is driven by a stepper motor, with at least a few of these axes being driven through a metal planetary gearbox for extra precision and torque.

From what we can glean from the work-in-progress documentation, there are some belt drives on four of the relevant axes and a mix of NEMA17 format steppers driving either 20:1 or 10:1 reduction boxes. There appears to be a mix of inductive sensors and traditional microswitches used, but it’s not so easy to work out where these are placed.

The controller PCB is a custom design based around the STM32F446 microcontroller, with modular drop-in boards for driving the motors, using the Trinamic TMC2209 for super smooth and quiet motion. The KiCAD project seems to be missing at the moment, with only gerbers and BoM for reference, but we expect that to appear at some point. There are some RS485 drivers on there, which is a sensible addition to providing an isolated interface if correctly implemented. There isn’t much detail on the electronics yet, but it all looks pretty standard fayre. The software stack looks like Arduino with a smattering of STM324xx HAL being used directly. The standard AccelStepper library is used, which is a good choice as it’s quite mature.

From the video logs in the project page, the robot looks complete, with some pretty good repeatability numbers, but we would like to see some data on absolute positioning accuracy as well, that said it’s a great project with an active Discord behind it, so let’s see how this develops.

We see a lot of robot arms, like this earlier Open Source design, but also this interesting hack straight out of the junk bin.

7 thoughts on “Hackaday Prize 2023: PAROL6 – A GPL Desktop Robotic Arm

    1. Well, quite. It will look good repeatability-wise for a few experiments to prove the basic mechanics are good, but as you insinuate, long term repeatability without either closed-loop control or at least some other means of external calibration will be a challenge. Encoders should be easy to add in.

    2. I agree that for some serious repetability you need closed loop. That is why the project will be able to use closed loop FOC stepper drivers i am developing. PAROL6 design was made with that in mind, so you can easily stick drivers on top of the steppers. I will write a project about that soon.

  1. Seems to me that repeatability in this case may be limited by stepper motor microstep size. Your resolution can’t get much better that step size and backlash control becomes critical. Making the same move multiple times does not prove accuracy in use because approaching the targets from different vectors induces different backlashes and different movement tolerances. Doing the same moves theoretically induces the same backlash and motion tolerances each time so you are really measuring motor position repeatability not repeatability of the entire robot. What matters in robotics is the ability to hit any arbitrary point within the workspace with a certain accuracy.

    1. 50micron repeatability is pretty solid for a stepper-motor driven arm of this size (though it’s likely a bit higher with a larger sample size).

      Very true on the accuracy thing, and you’re dead on with the backlash thing. That can be mitigated in some applications with reasonable through being put into motion planning in design to allow the arm to have monodirectional approaches and rest on the same gearface, but sometimes those conditions just can’t be met. Making a robot accurate can be an endless rabbit-hole, with individual robot compensation, temperature compensation, etc, coming into play at times. And then you get into metrology, which is a whole other rabbit hole. How do you know that the robot is where your tools say it is? Laser trackers aren’t much more accurate than a few thou over a reasonably-sized arm’s envelope. Fact of the matter is that an accurate robot is much like a boat in that it’s a hole on the factory floor you shovel money into.

      Something I’ve been seeing more and more is vision compensation, driving the arm where you think it should go, taking a look at the result, and dithering it in. It takes a lot of setup, adds cycle time, and has its own tolerance stackup (vision calibration plate tolerance, location of reference on robot, interpolation between calibration points) but as the field develops we’ll see more things like in-motion compensation, NN-assisted calibrations, etc.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.