Arduino Robotic Arm





Introduction: Arduino Robotic Arm

About: Here can be your advertisement

I have bought 2 joysticks from ebay and tried to think what can I do. Then I came up with idea to make a small robot arm. What I needed was:

1x Arduino Nano

3x MG996R servos (I used one Futaba, because I had only two MG996R and it was not necessary to have much torque for turning)

1x Micro servo

2x Two axis joysticks

1x 6V voltage regulator

1x Battery

Other items: double sided PCB covered with photoresist, diode, capacitor, switch, socket for Arduino Nano, strip cable with connectors, PCB stands, screws, bike spokes for pushrods, linkage stoppers.

Step 1: Sketching and Modelling

I borrowed the frame from backhoe and made some sketches. Then using AutoCAD I made a 3D model. It was one of the longest step during production. I attach AutoCAD and .stl files if you want to see or take some ideas. Also I drew an outline for control joystick.

Step 2: Production

As you probably saw, the 3D parts are made of rectangle pipes. The reason of this is that I wanted to make the robot of aluminium pipes, but when I started, I realised that it is too big challenge. The bending places breaks, so it has to be hot, but I don't have equipment for that, so I jumped to 3D printing technology.

I brought 3D model to local company and it printed the parts for $25. That wasn't the best quality, but acceptable for this robot.

Step 3: Assembly

The best part of production was assembly. All I needed to do was to insert servos, make hinges of spokes, bend and connect spokes for pushrods.

Step 4: Programming and PCB Production

First I have made testing circuit on breadboard and wrote a program with Arduino software. I attach the code here. Then I drew tested circuit with Eagle software and printed it on transparent paper, which you can buy in almost any office. After that I peeled of the cover film from PCB, put on circuit scheme and using energy saving lamp exposured the board. I have made 2 boards, one for robot and one for control joystick. Following step was to clean left photoresistor in alkali bath and after that etching. After etching I drilled the holes and PCBs were ready to solder.

Step 5: Base and Joystick Assembly, Soldering

I used plywood to make base and joystick. When PCBs were soldered, I attached them to plywood. And here it comes two errors of designing PCB:

  1. Lower holes of control joystick PCB are partly covered by connector sockets, so it's not possible to screw the board through them;
  2. Connector socket, which goes to robot is placed incorrectly. I messed up with pins, so I had to solder it upside down.

Last two things was to connect all wires and calibrate the movements.

And that's it, here is finished Robot Arm.

Step 6: Presentation

In this video you can go through again all these steps and check how the Robot Arm works. By the way, control is based on the ISO pattern.

If you like my project, please VOTE. Thank you for your interest!



    • Creative Misuse Contest

      Creative Misuse Contest
    • Clocks Contest

      Clocks Contest
    • Water Contest

      Water Contest

    74 Discussions

    have you worked upon eezybotarm mk1?

    Hello how can i convert my old video game gamepad into wireless controller for my racing robot? I dont know the exact specifications, hence im sending some pictures of its circuit board and connecting pin.. Hope i get reply soon should i use tje joysticks for arduino as per ur project? How can i program my arduino to controll robot's left-right movement with one joystick and reverse-forward with another?

    1 reply

    Hi. It is possible, but as it is a specific joystick and as I see it has a chip, it could be not easy to find out how it works. It might need some studies about similar joysticks and testing of the circuit. Probably it will be easier to do a joystick yourself where all connections and information of operation can be found easily and understood clearly :)

    Hi. I have sent my 3d drawing to a local company and they have printed the parts for me.

    Instead of using MG996R servos will FS5103R servos work in replacement?

    1 reply

    Hi! Yes, but it is more complicated. Since these servos are continuous rotation you need to make some changes in code and I advice to put limit switches, otherwise you can break your robot :)

    How can i make it automated i.e. without joystick. So that it detects objects on its own and drops them at a particular spot

    3 replies

    Hi! To detect objects you need sensors and a lot of programming. You can try yourself :)

    Yeah, but can u please give me the outline of which sensors i might be needing and how might the code ? Like a brief insight. I guess i would be needing some proximity sensors and maybe an IR sensor?

    You can have tens of variations making it. Probably you will need at least one proximity sensor for detecting the object and measuring how far is it from gripper. But this case is possible only when you have defined the object size in the program. The program should make robot to turn until object is detected and when it is, the gripper should move closer to the object and grab it. Here are some basic thoughts how it should act like :)

    You can find the code in 4th step. It is ".ino" file

    Hello. I'm sorry, I have never worked with Raspberry Pi, I don't know how to use it

    Another question please, can you advise what the rest of the project BOM items are? There's the voltage regulator, a diode and a capacitor. Can you provide the details of each (model, type, capacity/size) as applicable?