Mechatronics Exercises

Workspace Navigation

5-DOF Robot arm with wifi-control via Blynk

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 17 Next »

Team 1: Eerik Alamikkotervo, Aaro Junnikkala, Olli Heikkilä

Brief Project description

The goal of this project is to build a 5-DOF Robot arm with wifi-control via Blynk-app. 5-DOF means that the robot arm will have 5 joints, which all have their own servo plus one additional servo for controlling the gripper. Each of the servos will have their own slider control in the blynk app. Additionally we added the possibility to save postions and run them peridiocally. The hearth of this project is a Arduino MKR1010 with built in wifi and bluetooth connectivity. The robot arm body is 3d-printed according to the stl.files offered in the site: . The servos are strongly integrated in the design, so identical servos are used. 

Step by step instructions

In this section we present step by step instructions for building this robot arm including mechanical and electrical components and software

Electromechanical structure

1: List of required parts was created



Price in total



Arduino MKR1010


Lend for free


MG966R servo



SG90 servo



Bread board



Jumper cable



USB cable


Old phone charging cable


5V 2A USB power brick


Old phone charging power brick


M3X20 bolt


Clas Ohlson


M3 nut


Clas Ohlson


Plastic tapping screw 2.5X10



2: The body of the robot arm was 3D printed using stl files provided in Howtomechatronics site: Following setting were used for printing (printer Ultimaker 2):



Layer height


Generate Support

ON everywhere

Buil Plate Adhesion

ON, Type: Brim

3: The servos were tested one by one in order to confirm that they work properly before installation.

4: The power cable was created by opening an USB cable and separating  the positive (colour: red) and ground (color: black) wire from the data transfer wires. This modified USB cable was then plugged to and 5V 2A power brick. This power module provides power to the MKR1010 board and all the servos. 5V and 2A is required in order to provide enough power to all the servos. 

5: The servos were installed to the body and after that body parts were installed together. Necessary screws were provided with the servos, but the quality was so poor that better quality tapping screws had to be purchased.  In the picture the self purchased better quality screw is above the low quality one provided with servos. 


1: Controlling the arm was done with Blynk over Wi-Fi. Arduino has ready to use libraries for running Blynk and for controlling the servos. The code for stabilising the arm was written by ourselves. The operating principle of the stabilising code was simple: move the servos little by little until the angle is in a set tolerance. The stabilising was urgently needed only for the servo that tilts the grappler. When the grappler points straight down the resistance for the servo is very small which causes the PID controller of the servo to overdue to the movements and the grappler starts to oscillate. This position is shown in the picture below. The stabilising wasn’t required for the rest of the servos but it seems to improve the smoothness and accuracy of the movement so we are planning to implement the stabilising code to other servos too.

The final product

Improvement ideas and thoughts about the project

  • No labels
No files shared here yet.