Introduction: UStepper Robot Arm

Picture of UStepper Robot Arm

This instructable takes you through the process of building your own cool robot arm!

The Robotic Arm is developed entirely by me, the nut covers are however, from a guy on thingiverse. All STL files are avilable for you to print (for personal use - not for selling!) on our GitHub.

So let's get to it!

Step 1: Parts Needed

Picture of Parts Needed

First you will need some parts. Besides the 3D printed parts, which I will introduce in the next section, you will need bearings, nuts and bolts. I have spent some time on reducing the number of unique items on the BOM, but there is still a few.

Bolts:

  • 1 pc. M8 x 40 mm
  • 1 pc. M8 x 70 mm
  • 4 pcs. M4 x 20 mm
  • 4 pcs. M4 x 35 mm
  • 20 pcs. M3 x 10 mm
  • 3 pcs. M3 x 16 mm
  • 10 pcs. M3 x 20 mm
  • 9 pcs. M3 x 25 mm

Nuts:

  • 21 pcs. M3
  • 8 pcs. M3 self locking
  • 8 pcs. M4 self locking
  • 2 pcs. M8 self locking

Washers:

  • 2 pcs. M8, OD: ~15.8 mm
  • 2 pcs. M4, OD: ~8.8 mm

Bearings:

  • 4 pcs. 608Z
  • 12 pcs. 624Z

Rods:

Aluminium rods, the diameter is outer diameter, they are of 1 mm material, making the inner diameter of the 15 mm rods = 13 mm. I found these rod sizes (diameters) in the local hardware store.

  • 1 pc. 15 x 200 mm
  • 1 pc. 15 x 150 mm
  • 2 pc. 6 x 170 mm
  • 1 pc. 6 x 165 mm

Additional items:

  • Super glue
  • Micro servo
  • 3 pcs. NEMA 17 stepper motor
  • 3 pcs. uStepper control boards (optional)

Tools:

  • Adjustable wrench
  • Hex Keys (if you use hex bolts like I did)
  • Philips screwdriver

Step 2: Printed Parts

Picture of Printed Parts

Now for the 3D printed parts. First of all, I printed all of them in PLA. The infill was set to 25% for all parts, besides the three motor gears which are printed with 100% infill. The numbers on the parts will be used in the assembly instructions given in the following section. All STL files are available on our GitHub for personal use.

Step 3: Assembly

Picture of Assembly

Just follow the instructions in the pictures here. The only thing to notice is that the motor gears has changed since I took these pictures. This was done to make them more robust, and get a better grip on the motor.

Step 4: Electronics

For the robot arm to run, you will need some stepper driver. I recommend uStepper, but there are plenty of other solutions out there. What I go through here is based on the uStepper setup.

The three uSteppers are connected as shown here on the diagram. One uStepper is master, receiving data through the UART and distributing this to the two slaves.

To make it easy, I used a prototype shield on the master so that I could easily connect bluetooth module, servo and slaves.

If using USB cable for communication, it is essential that it is secured properly to avoid breaking the USB on the uStepper when rotating the arm.

Step 5: Programming

Programming the arm is relatively easy, since I have already made a working sketch :) The sketch is based on a teach mode operation principle. That is, you move the robot arm around and record positions, which you then play back. The code setup is shown in the video below, and the code is found on our GitHub.

In the video, you can also see how to interface with the Robot Arm using the example code.

The code does not make closed loop movements, but this is possible with the new uStepper library, by adding the PID in setup like shown in the video:

Step 6: Final Words

Picture of Final Words

That is pretty much it! All the rod lengths can be adjusted to give the robot arm a different range than that shown in this instructable.

As it is now, no inverse kinematics has been implemented, but we are working on it together with a suitable protocol between master and slaves.

More information about uStepper and the Robot Arm can be found on www.ustepper.com

Comments

aaffoyon (author)2017-06-26

Really nice work!! Thanks for sharing.

I just have a question about programming. I don't understand why do you have to comment in one of the two functions (master or slave) in the loop.

Thanks again.

nicengineering (author)aaffoyon2017-06-26

Hi!
Thanks for the nice words. Two of the controllers are slaves and one is the master. Commenting in either of the two in the loop will configure the board as one of these. It just calls the appropriate function. Scroll up in the code, and you will see :)

Best regards,
Mogens

drone it73 (author)2017-04-15

how much does it cost

If you wan't to buy it, kits are available at www.ustepper.com If you wan't to build it yourself, you just have to get the parts listed in the instructable. The highest cost is the stepper and drivers.

demidroll (author)2017-04-01

its very cool!

nicengineering (author)demidroll2017-04-02

Thanks!

fuzzyhypothesis (author)2017-03-29

Nice build and write-up, you may want to double check the thingiverse link in the instructions, I think its pointing to the wrong object.

Hi!

Thanks for the kind words. I have just checked the link again, and it is still pointing to a nut cover (item number 25 on my list).

AlessandroG2 (author)2017-03-28

HI,

uStepper OPTIONAL means that I can use even other boards to control the arm, in this case I should write my own sketch right?

Hi,

Yes, you could use any other stepper driver solution out there, be it GRBL shields, 3D printer controllers etc.

Of course the sketch I wrote was done for the uStepper, but the principles would be the same as long as you have feedback. If you don't have feedback, then you will have to run it open loop (like a 3D printer og GRBL machine does).

Droxz (author)2017-03-26

Wow this is how a instructable shoot look like, nice documentation. Thanks for sharing and keep up the good work! :)

nicengineering (author)Droxz2017-03-26

Thank you for the kind words!

vinz3nt (author)2017-03-26

Great project. What about the rods? They are not mentioned in the parts list.

nicengineering (author)vinz3nt2017-03-26

Hi!

Thanks for the comment - totally forgot the rods... I have just added them :)

joshpit2003 (author)2017-03-26

Very cool.
Excellent documentation, and your UStepper is an awesome concept. I take it the heat from the stepper during use is not a problem?

Hi Thanks for the kind words! No the uStepper boards actually copes very well with the heat generated by the driver chip. This is due to the design of the board, which has large ground planes (also internal) that takes the heat. If loaded excessive over longer periods, one might have to add some cooling - but I haven't had any issues so far.

About This Instructable

7,483views

122favorites

License:

Bio: Electronic engineering student with a passion for developing both electronics and mechanics! See more of my stuff here: http://www.thingiverse.com/nic6911/designs
More by nicengineering:UStepper Robot ArmFlower Pot Watering SystemLow Budget CNC
Add instructable to: