Let's Make Robots!

Polar robot arm – sketching a city skyline

Draw city skyline

I’m often thinking if it is possible to make Art with Arduino. Arduino is a machine, a little computer made with electronic circuits. It hasn’t a soul. Can an Arduino make Art? This is my question. I’m trying to do something with Arduino that could be Art, or similar to Art. The Arts are painting, poetry, music, sculpture and so on. I’m trying to do something in different Arts. The road is long but I began to travel it. This is my first experiment with painting. Indeed, a easy form of painting, the sketching in Black and White. Arduino drives a robot arm, that with only a pen sketches a city skyline. The skyline is every time different, the buildings are always different. The arm tries to imitate the human sketching, with errors, shaking lines not parallel and so on. The arm tries to be human, to make a little form of Art. This is the goal, I don’t know if the goal is reached. The judgment is yours. The robot is a polar arm, so it works with polar coordinates not with Cartesian coordinates. The hardware is:

- 1 arduino (2009/uno or Mega)

- a kit of makerbeam for the chassis and 16 ball bearings (www.makerbeam.eu)

- 2 stepper nema 17 400 steps, 0.9° (www.robot-italy.com)

- 2 big easy stepper driver (www.robot-italy.com)

- 2 pignons and 1 gear rack (www.conrad.com)

- 1 little servo motor (www.robot-italy.com)

- 1 pen


Details, pictures, source code are here: http://robottini.altervista.org/polar-robot-arm-sketching-skyline

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

This looks good ! :-)


I have seen similar bots go by and I often wondered how the X/Y worked. Oddly enough, it seems I have been doing this for a long time. --I have done a lot of occupancy grid kinda stuff, where I will have a sensor swept by a servo. The angle of the servo and the distance of the sensor had to be converted to an X/Y so I could find out where it landed on my grid.

Now it seems, you have a machine that does just the opposite. Once I dug in and started googling catesian and polar, I quickly found out how easy the math really is and that Arduino really has no problem doing it. Man, you really got some ideas going around in my head here....

Yeah, I think I may just have to build one of these guys. --Now, should it be a super-light-3d print-$5 stepper-unit  or should it be a NEMA23 200oz/in robot arm out of milled aluminum? Ah, decisions, decisions...

Oh, and your construction is to die for. Beautiful build. Great execution.

Yes, the math is easy.

The problem of polar arms is the error is not costant in the workspace. For 1 step of the motor, the error is radius*angle_for_1_step, so if the arm is near the origin the error is small, if it is far the error is big.

You can use a light stepper, the weight is low, but the precision is important. I use motors with 400 step, 0.9°.


Needs to be hard programming.