̶R̶a̶s̶p̶b̶e̶r̶r̶y̶ ̶P̶i̶  *Arduino Robotic Arm

̶R̶a̶s̶p̶b̶e̶r̶r̶y̶ ̶P̶i̶  *Arduino Robotic Arm

November 25, 2018

  ̶R̶a̶s̶p̶b̶e̶r̶r̶y̶ ̶P̶i̶  *Arduino Controlled Robotic Arm

When I was a kid I was given a Radio Shack Armatron robotic arm as a gift and I absolutely loved it. I figured it was time to get another robotic arm and relive the memory and learn some more Pi programing at the same time.

This cheap little robotic arm popped up in ad from Gearbest on Instagram one day so I figured what the hell it might be fun to play with. There were a few different versions but I bought the one that came with servos for like $18 shipped. (straight from Hong Kong.)

It took a few weeks to get from across the big pond but a little box finally showed up with a bunch of acrylic parts and a bag of screws.  It took probably an hour and a half to put it together with most of that time going to removing the protective covering from the pieces.  As usually the instructions (found only online) were not the greatest and some of the pieces were mismanufactured. (holes that should have been for tapping were actually thru holes so some extra hardware like longer bolts and nuts were needed.) After putting it together it was on to learning some more Programing.

To control the arm I’m using a Pi3B and an Adafruit 16-Channel PWM / Servo HAT and another separate 5volt 2A wall wart for servo power.

After getting everything soldered together on the hat I hooked everything up and ran some test programs that Adafruit supplies.

Using the examples from the test script (and google) I figured out the basic programing to get it to move (somewhat) with the keyboard inputs but it’s pretty jerky and kinda flimsy as you can see in this gif. Another issue I had is one of the servos was DOA so I couldn’t get fully range of movement out of everything.

I didn’t expect much for the 18 bucks and while it was kinda of fun to build and worth the try I don’t think I’d recommend buying one of these… overall the are pretty much crap and you wouldn’t be able to manipulate much with it.  I haven’t given up on the idea though it’s just time to try something I tad bit better as far as the arm goes.

I found this 3D printed robotic arm on Thingiverse designed by Carlo Franciscone from Italy.  It uses better/larger servos so it looks much more promising. I’m in the process of printing the parts now and I ordered the new servos today so I’m excited to give this one a try.

It took a full day of printing but I got all the parts printed for the arm. I went with a red and black color scheme.

After mocking up the arm for the first time I ran into some issue (for me anyway) with the design.  The limits of movement of the arm keep the gripper from reaching the table top so I wouldn’t be able to pick up small items with the way it is.

Carlo is gracious enough to share all of his files on Onshape though so modifying the design is pretty easy.  These are the three parts that needed modifying.

The biggest issue I found is with the triangle link. I enlarged the pivot area in the link for the main arm so it would be able to rotate more before hitting the arm.

I also opened up the front of the arm to allow the Trial Front Link to rotate more and I changed the angle on the rear of the top on the arm just so it prints better.

A small section of the Trial Front Link was removed too to allow it a fuller range of motion. This should allow me to manipulate things that are closer to the base.

This picture shows the extended range of movements I accomplished by modifying those three parts.  The gripper will actually be able to extend below the table top now.  I’m working on a lower base extension for the Pi to be housed in so I needed it to be able to reach at least an inch lower.

I couldn’t find the required 606zz bearing for the base so I just designed my own and used BB’s for the Balls.

The original gripper looked a little limiting with such small finger so I’m not going to use this one.

This is a parallel designed gripper that I designed for one of my Rov’s but I modified the design to work with a servo just like the original one. (Fun Fact – This gripper was designed to replicate the original Armatron gripper so I though it only fitting to incorporate it into this arm too.)

This picture shows with the top cover removed so you can see how the gears work inside to open and close the grippers fingers.

Here is the printed and assembled new gripper. Everything except the finger pads were printed in PLA those where printed in a flexible filament so they would hopefully have more of a rubbery grip to them.  The fingers open up to about 1.5 inches.

EEZYbotArm Gripper Step Files.zip (1797 downloads )

Here you can see a little better how the gears work.

This is the basic design of the lower base extension where the Raspberry Pi will be housed. I just need to add the standoffs for the Pi. I’m not sure if it will work out yet as I need to finish assembling the Arm first before I can figure out if I have room for all the plugs.

Here is how the Raspberry Pi Show fit when mounted. Hopefully I have enough room for the power and servo plugs.

I finally got everything assembled and so far everything is working out great.

I still need to figure out how to run the servo wires and where they will enter the base.

The gripper mounts with a single screw through the front link (not shown) so it’s easy to change out if you wanted to use different designs for different situations.

I got the base printed and the Raspberry Pi mocked up for fitment. I might run into some issues with the power plug for the servo hat, I might have to cut off the plug and wire it to the board direct.  I had to position the Pi in this configuration so the servo plugs would fit up into the original base when plugged into the hat.


Update 2/1/2022 – Switching to Arduino Control

I’m finally getting back to this project and I have decided to switch to using an Arduino Uno for control.  It seems like a much easier method as far as the programing goes. I’ve been writing code and testing things out in Tinkercad Circuits.

With a little help from Google this is my initial code for testing.

Some bread board wiring for testing.

Quick video of the first test. It’s far from a precision machine but much less jerky than that cheap arm that’s for sure.  I have some power issues to figure out still… I can only connect two servos or it resets. I am running external power with a 3A phone charger plug so I’m not sure what the problem is yet.

Once I had everything working (close enough) I jumped back into CAD to design a controller for the Robotic Arm that can also be 3D printed.  This was designed along the lines of an Xbox type Controller.

The internals are pretty basic and everything will operate off 12mm tactile micro push button switches.

Simple retainers will be used to hold the switches in place. (screws not shown)

Here are the first printed main pieces of the controller.

This is what the internals look like after cleaning up all of the supports and installing a bunch of heat set inserts.

 This is one of the tactile micro push button switches (w/original button caps) that I will be using along with all of the switch retainers.

This is how the front switches mount and how the simple retainers hold them in place.

Here are all of the switches for the D pad.

After installing all of the switches and retainers this is how it looks.

The printed button press caps. These will just snap onto the tactile switches.

Here you can see how the button caps look installed and some of the bare tactile switches.

After screwing on the back of the controller body this is the almost finished controller.

Here is the front side. I used the original button caps for the front switches.  Now I just need to wire everything up.

I’m using cat5 cable to wire the control (gotta love the easy color coding) so I made a quick and easy diagram to follow during wiring.

The first step was just to strip the cat5 wires out of the main jack and feed them through the rubber bushing.

Wiring was pretty simple… a cat 5 wire is soldered to one pole of each switch and a resister to the other side. With the resistors all tied to a single ground wire. Its a little sloppy looking but should do the trick.

On the other end of the Cat5 wires I crimped on some DuPont connectors.

The wires minus the ground were then inserted into a 8 pin male receptacle.

To clean up the wiring I just used some split loom tubing to neaten everything up.

Being relatively new to Arduinos I did not know there was a space between the #7 and #8 pins so…

… I had to redo the connectors using separate 3 and 5 pin ones.

Here they are plugged into the Arduino ready for testing.

.

To be continued……………

All Information, Pictures, and Material is copyright © 2018 by Stephen Thone and may not be used for any personal or commercial purposes without the consent of the author. All rights reserved. The Author makes no guarantees or warranties as to the accuracy or completeness of, or results to be obtained from accessing and using the Information herein.

18 Replies to “̶R̶a̶s̶p̶b̶e̶r̶r̶y̶ ̶P̶i̶  *Arduino Robotic Arm”

  1. Hi , if you can re-upload the files to Thingiverse , there’s a problem with the uploaded files , two of them aren’t scaled right and the third one is corrupted , also if you can upload the gripper files that would be great

    1. If they come in to small just scale them X 2540 its from the scaling from inch to mm. Which one is corrupt? The gripper can be found at https://www.thingiverse.com/thing:4362304

      1. after scaling , both triangle link & the arm are great ,
        the problem is with the Trial Front Link , it loads in Cura as some big shadow and nothing else ( so can’t be scaled like the other two)

        about this gripper i did printed it a few days ago , works great !

        1. Everything works for me in Simplify3D but I just re-uploaded EBAmk2_009_MOD_2.stl so it’s scaled correctly. Give that I try and see if it helped.

          1. Awesome… good luck and let me know how it all works out.

      1. The only files I have available are the STL’s which can be found on Thingiverse https://www.thingiverse.com/thing:4362304

  2. The modified files from the MK2 would be so cool if you´d share them, I already made the MK2 by Carlo Franciscone from Italy, but not your updated version

    1. The modified files can be found on my Thingiverse page https://www.thingiverse.com/sthone/designs

  3. I like the modifications you have done. Im trying to make the arm a bit longer tho. do you have public access to your modified step or onshape files so I can extend the arms and links? I was planning on doing my own modifications to the original to increase stroke, but yours looks better than anything I would do.

  4. Awesome project! I haven’t printed the full arm yet, but there are only a few parts left. But is the controller already working? It would help me a lot if I could see how you installed the wires, because I’m not sure how this fits in the controller, it would be really nice if you could upload more photos here (if everything works already)

    1. I haven’t finished it yet as I got side tracked with other projects but the printed Xbox type controller is going to wired (not wireless) and the wiring will be just like shown in the bread board diagram but instead of the switches being on the bread board… they will be inside the controller. Hopefully that make sense.

      1. I understand, thanks a lot! but one more question… Have you uploaded the files for the controller yet? I couldn’t find them on thingiverse or cults

        1. I have not yet… I want to make sure everything is going to work before I upload anything.

Leave a Reply

Your email address will not be published. Required fields are marked *