Can a robot make art? It’s quite the philosophical as well as engineering question, and in attempt to come up with an answer, Technovation has constructed an Arduino-powered painting robot. This short cylindrical robot, which was inspired in part by the Roomba, uses two NEMA 17 stepper motors for differential navigation. A third stepper swings a brush arm around to several paint containers, dipping the brush as needed, or making contact with the surface below via a servo on the end.
The robot is based on an Arduino Uno along with a CNC shield, providing a convenient way to activate the steppers and accommodate the servo. The body is constructed out of laser-cut acrylic and 3D-printed parts. Design files and code are available in Technovation's project write-up, so anyone with the proper tools (or who is willing to pay a service) should be able to duplicate the build.
Controls-wise, the program features a gotoXY function to cause the robot to move to a certain coordinate, plus brushControl and pickPaint for color application. The program can, in theory, be adapted to paint anything you would like, though it paints randomly with the included code. One might say that the robot is truly in artistic control here, brushing out whatever pesudorandom pattern it's inspired to create!