This is a robotics project that could probably be completed by someone who has no experience with robots at all. I say this because, before I started, I had no experience with robots. Or writing programs. In fact, I knew how to paint and that was pretty much it.

I had originally intended to write programs so that the robot could do specific paintings. I quickly realized that doing that is tedious, boring, and really doesn't take advantage of many of the robot's great features. So instead of that, this instructable will teach you how to:

- modify the robot so that it can paint with brushes, rollers, and a variety of other apparatuses
- take advantage of the basic pre-set programs to do some painting
- use Active TCL to design a painting using LOGO
- modify the sample programs that came with the module to do some paintings using the sensors on the robot.

This project assumes that you can follow the directions that came with your Create to set up the Module, connect it to a computer, etc. I'm pretty sure most people will be able to handle that without (much) difficulty, so I haven't duplicated those directions here.

Conceptual Basis (or, why I did what I did from the perspective of an artist)

After playing with the robot for a bit I realized that I needed to decide if the robot was an artist or a glorified paintbrush. The logo programing treats it more like a paintbrush, whereas the sensor based programming treats it more as it's own artist. I like it as an artist best. In reality, we quickly became art team-mates. It painted faster and more decisively than I would, but without me to choose paint colors, fill it and push go it was a basically really heavy frisbee. No artist can possibly work without an awareness of the world around them (having senses at all affects your art) so to use the robot without using the sensors seemed ridiculous. I provided it with the things it needed to be aware of, and it's response to these things created the paintings.

I also quickly realized that it's important to forget about how a human completes a task and consider how a robot would complete it most easily. With the exception of spray painting, the majority of painting is most effectively done on a horizontal surface, in spite of the cliche of the artist at their easel. The easel is there for the ease of view for the artist - horizontal art has a foreshortened effect. That's why your printer prints horizontally - that's the best way to apply ink without risk of running or bleeding. That's why I decided to work with the naturally horizontal nature of the robot, instead of trying to build on something that could paint on walls as is so common among 'painting robots.'

I put a lot of thought to the difference between painting an printing. When I paint I don't worry about working left to right, or top to bottom. I put paint where it should be, working in curves, straight lines or whatever else is appropriate. As I'm not trying to just build a printer, I thought that the robot should paint in lines the way I would, rather than work across the painting like a roving printer.

This presented certain challenges, especially with the obvious risk that the robot would roll over wet paint. As it turned out, paint doesn't really seem to accumulate on the wheels much, but they do add a nice mark to the painting. A little builds up between the treads of the tires, but that can easily be peeled off when it's dry. In a way, it's no different than an artist using their fingers to smudge pastels - the robot uses it's 'appendages' to affect the way paint is applied to the surface.

Step 1: Materials List

This is what you need to complete all steps in this project, but if you're picking and choosing you might not need all of it.

- iRobot Create (obviously)
- Command and Control Module (attach it now, and set it up. Double check that it's ON when you're setting up the USB connection, that held me up for a few minutes because I didn't realized that the robot and the command each have an on/off switch.)
- Battery charger
- Serial Cable (included)

The create comes with holes all over it to accept 6-32 screws. Don't buy anything that's not threaded 6-32, because it's inconvenient to have keep track of more than one thing. Also, if you can, either get all flat (like mine) or phillips screws. One screwdriver rules because you'll want to keep around to tighten and adjust things as necessary.

- 4 - 12 inch pieces of threaded rod
- 2 - 2 inch screws
- 10 (or more) nuts
- 2 - 1/2 inch screws
- 9/64 drill bit (this seems to be a good size because it's just a tiny bit snug. The vibration and movement of the robot will tend to loosen connections, so being a little snug is a good thing.)

- 2 - 1 to 1 1/2 inch hinges (these are commonly used for wooden boxes and dollhouse type applications)
- 2 or more - 2 inch clips (green is nice if you can get it - it coordinates with the module, and they come in handy for securing things)
- 1 sheet of white plastic at least 9x9 inches (mine is a board that is sold with cake decorating supplies - it's used to support a cake after it's been decorated. It's corrugated and about 1/8 inch thick, and I was able to cut it with heavy duty scissors.)
- 2 feet of 1x2 lumber
- funnels (to hold the paint)
- 3/8 inch outside diameter clear plastic tubing
- 1/2 inch electrical shrink tube
- small paintbrushes, rollers, painting pads, makers, pens, or anything else that you can think of that will make a mark
- masking tape (to hold down paper and hold things temporarily)
- plastic sheeting (because robots are unpredictable and fast, and you probably don't want everything painted)
- a diner ketchup style bottle with cap for ever color you plan to use
- white paint (for style)
- something to cut wood and something to drill holes
- a screwdriver
- other basic household tools

- lots of paint that cleans up with water (I use mis-tints from paint and home improvement stores. You can get a lot of it for $1 to $5, or, if you're super nice/lucky they'll give it to you for free, like the super nice people at Pittsburg Paint, who supplied almost all of mine.)
- something to paint on (paper and fabric work well. Butcher paper comes on rolls and is a cheap choice, especially for starting out.)
Cool! Modding an irobot is probably the only sensible thing to do with...
I imagine the painting gets much more "abstract" if you get thirsty. lol
I like the second picture here on step 3. Much less 'cluttered' than the others. Excellent use of tech, bud.
Can you take a picture of the bottom of the robot? I'm curious :P
I can, but you'll be disappointed. There is a very small amount of paint on it, the robot seems to be made of plastic with a glossy, paint resistant finish. The little bit of paint that does get on it just pops off as soon as it's dry. I was almost hoping that there would be some awesome looking paint build up, but no dice ;-) Did I misunderstand - is there another reason to see the bottom?
No, that's it... oh well :P
that looks cool and all, but theres no real practical purpose by itself. Maybe if you were going to use that as a backdrop it would be awesome but this seems impossible to paint anything that resembles a shape with though. Maybe you were on to something with LOGO but that all flew right over my head. If you could program it to draw coherently, now that would be cool.
I skimmed over the LOGO stuff because I thought it was fairly simple, but that's probably because of how my brain works. Not only is it possible to paint specific shapes, it's really pretty easy. It's kind of like those really early role playing computer games - move forward 10, turn right, move forward 5, etc. The biggest hangup with it is that the serial cable needs to be connected, so it limits how much distance you can cover if you're not willing to move a computer around with it. That's probably something that can be worked out, but I don't have it completely worked out yet. The robot itself is designed with a lot of sensors, so I focused a lot of my energy on taking advantage of what those can do. I'm working on doing some really nice, finished representational paintings, but I wanted to get as many variations and options covered in the instructable as possible. In reality, painting with robots is something I could probably spend years and years working on and still have new things to try.
Ack, sorry. My other comment is in response to having to follow the robot around with a computer.
It is just the one method that makes you do that, but thanks for the links anyway - iRobot didn't have a Bluetooth adapter when I started working on this, and I'm thinking about it now anyway because I'd kind of like to play with that...
There are a couple of Bluetooth options for the Create. iRobot has one, <a rel="nofollow" href="http://store.irobot.com/product/index.jsp?productId=2649971">http://store.irobot.com/product/index.jsp?productId=2649971</a> another one is made by a third party, <a rel="nofollow" href="http://www.acroname.com/robotics/parts/I19-10542.html">http://www.acroname.com/robotics/parts/I19-10542.html</a><br/><br/>Both of them plug into the same port as the command module so you can't use the command module and Bluetooth. But if you're controlling the Create from your computer you don't need the command module, anyway. <br/><br/>The biggest downside is that you're still limited by the serial speed of the Create, but there's also BT information that gets sent around, so it's slightly slower than a direct serial interface.<br/>
Love it! It takes the idea of "action painting" to a whole new level.
Thanks! You can actually set it to move shockingly fast if you want to. If I had a large, almost indestructable space I'd probably give it a try working really fast. The videos show it moving at about half of the speed the programs are originally set at.
Amazing! I feel encouraged by this that I could actually do something with one of these robot platforms. It felt beyond my ability, but your comments are very encouraging. I love that you want it to paint more like a person would do -- it's interesting to even think this through.
Yay! That's totally what I wanted to do - it seems like this sort of thing is so far out of an 'ordinary person's' grasp, but I had no idea what I was doing and dived in. I would definitely recommend giving it a try!
As far as &quot;providing it with the things it needed to be aware of&quot;... a cheapo color sensor would make for an excellent addition! Could just be three light sensors with RGB filters, or a even a dollar-store digital camera.<br/><br/>Then play around with some simple routines to turn the RGB values it sees into navigation commands (e.g. turn right if you see red, left if you see green, and turn around if you see blue). Heck, you could even draw on the same canvas as your robot, and it would react to what you've drawn and &quot;embellish&quot; based on that - now <em>there's</em> a partnership! :)<br/><br/>(Oh, and you could of course also program it to avoid driving outside the boundaries of the painting - put brightly colored paper around the painting, and program it to avoid that color.)<br/>
Those are some ridiculously great ideas - overall I'm pretty overwhelmed by all the things I can do with it, so I started simple. I'm really far from being done working on it. Thanks!
I'd love to see some video of the robot in action! Any chance of adding one?
Yep - I'll be adding one ASAP! I just wanted to make sure I got it published ;-)

About This Instructable




Bio: Always making something....
More by technoplastique:Business Card Case With Covert Micro SD Compartment Modular Glowing Handwoven Textile Sierpiński Tetrahedron Fractal Kite 
Add instructable to: