The DrawBot is robotic platform capable of drawing on a sheet of paper with a marker pen. It came out of a long running research looking at physical renditions of generative artworks. Typically this kind of computer art is confined to the screen as part of the appeal is watching and understanding how the system creates the piece. By creating a robot that is capable of moving around, raising and lowering a pen and has an array of sensors that can inform the algorithm about the world around it, an artist and the audience is able to explore computationally creative code while seeing a physical version of the algorithm rendered out in front of them.
Various projects in SensiLab had used drawing robots in the past however each time a large portion of development time went into the hardware development as the robots were always only half finished and difficult to move between projects. It became clear that there would be a benefit from a single, well designed, open drawing robot platform. I was tasked with developing this platform for the next drawing robot project which was an installation in the Moscow Museum of Modern Art. This first iteration of this new DrawBot was made up of a custom Printed Circuit Board which served as the base plate for the robot and a set of 3D printed parts that made up the motor mounts and pen lifting mechanism. The robot moved via a pair of wheels driven by small DC motors. The pen lift mechanism was driven by a servo motor and the whole robot was controlled by a BeagleBone Blue, a single board computer running Linux.
A fleet of 8 DrawBots were sent to Moscow where they were on display for nearly 2 months. The robots ran well and the exhibition was a well received. Based on this success we decided to continue development of the DrawBot and address some of the issues in the design. The biggest problem came from using the BeagleBone Blue, running the whole robot off a linux based computer makes timing specific tasks difficult. The robots would quite often miss important data because the BeagleBone wasn’t able to receive it at the right time. The BeagleBone is also quite expensive and not very well supported.
The next version of the DrawBot removed the BeagleBone in favour of a integrated microcontroller (an ARM Cortex M0). This is directly connected to all of the sensors on the robot and is capable of reading them in a much more efficient manner. Integrated on this new board are the following sensors and features:
It also has a connection header that allows the robot to connect to other devices (via I2C) which means that if you need the extra compute power from a computer like the BeagleBone or Raspberry Pi then you can connect that too.
The design evolved further after the Shenzhen study trip in 2020. The design workshops we ran with the students over there were specifically addressing some of the shortcomings of the current design. One of the major ones is the complexity of the pen lift mechanism. We were able to get it down for ~16 parts to 3 with some extra eyes looking at the problem. We also focused on designing parts that are easy to manufacture as we hope that the next stage of the project is to move into production and get robot kits out to people who want to play with them.