Introduction: Ball and Plate Arduino PID Control

This is my homemade Ball & Plate system. System consist of 2 digital servo motors (HS-422 ECO), microcontroller Arduino UNO, and 4 wire resistive touchscreen (7"). There are two PID controllers working separately for each axis. This system can move any ( heavier ) round element to any point of the surface to an accuracy of ± 2 mm .

Step 1: Parts

Here is a short video that shows the parts of my real physical model

Step 2: Electronic Parts

Picture of Electronic Parts

1x Arduino UNO

1x Resistive touchscreen
1x Real time module DS1307
1x Wii nunchuck kit
1x IR remote kit
1x Breadboard
Some wires

Step 3: Mechanical Design

Picture of Mechanical Design

The model was built from aluminum base and lego blocks . In the middle is Cardan Joint on two shafts. The plate of lego blocks is connected to servo motors wit "Ball & Socket" mechanical joints.


calo2018 (author)2017-12-28

Hi friend could you send the code im working in the same project please

willem70 (author)2017-11-11

Hi DavidH334! I love this machine! I am building it and hope you are willing to share your codes? Can't find it in the instructable? Hope you will send it to or post it here! Think more people would like that....

AleemS5 (author)2017-02-23

can u help with programming my mechanical is ready..!

mohammadshamir (author)AleemS52017-06-18

if you have code kindly mail; me

abbasezzy (author)AleemS52017-03-07

hello, I really need some advice for the mechanical design. Can you help me with it?

aleem123 (author)2016-10-07

what is the material of ball..??

DávidH334 (author)aleem1232016-10-08

I think it's some type of steel...i dont know it exactly

no matter which material is being used because the TF of this system is independant of ball material and mass i.e (-5*g/7*s^2)

M TolgaY (author)2017-05-22

why anybody use image processing? cheaper and easier :(

mohammadshamir (author)M TolgaY2017-06-18

my final year project is based on image processing i'm using 6 motors (stewart platform)
i have already done 95% of work but at the end i was facing a huge problem which is a time delay
the data sent to the arduino after around 850ms (serially) and at the receiving end of the arduino there are some bits of data is missed due to the fast transferring of data and arduino data receiving rate is slow so the conclusion is with image processing it is not possible nevertheless you have to use Raspberry model and STM

davidk0424 (author)2017-03-29

I'm building a similar project to yours, would you mind sending me the code you used for this? My email is (If anybody else has made something like this and still has the code I would really appreciate it if you could send me your code)

정민이1 (author)2017-03-15

I am planning to make this project
But there is some problem.

I have no clue how to make the code
can you send me the code?
It will very helpful for my project

aleem123 (author)2016-10-07

from where you bought the joint..??

DávidH334 (author)aleem1232016-10-08

Joint is used from wrench set ....i found it in garage :)

mortiz-1 (author)aleem1232016-10-08

maybe in musician shop
ask for double drum pedal

AravindM7 (author)2016-04-06

Please can u help in getting the transfer function of the system. If transfer function is available what type of input should be given to the system as it is unstable. Pl reply fast !!

271828- (author)2016-03-14

Cool! What size (diameter) of ball are you using?

DávidH334 (author)271828-2016-03-17

Thx :)Diameter is 22mm.

ThomasK19 (author)2016-01-24

This is so cool. I still was looking for a project to simulate the stabilization for my quad. Where from did you get the touch screen?

DávidH334 (author)ThomasK192016-01-25

I bought him on aliexpress

DIY Hacks and How Tos (author)2016-01-23

Great balance plate design. I love how you used legos in the prototype. I do that in so many of my projects.

About This Instructable




More by DávidH334:Ball and Plate Arduino PID Control
Add instructable to: