Let's Make Robots!

Artist, first time robot creator

Hi everyone. I'm an art student who's doing my instillation for my Advanced Drawing class on automated art and the creative power of robots. Needless to say I'm quite lost when it comes to the mechanics of it. I got ideas, but ideas don't mean shit if they're not backed up by knowledge. That's why I'm asking you guys for help, and hopefully I can take the advice and use it to make some really effective pieces.


For the record, I don't have drawings of these (despite me having a vision of the final product in my head). I only just decided I'm going forward with the project, so descriptions will have to do.


In my mind, I'm picturing a roll of thick-weight paper going between two rollers, with a motor consistantly turning the rollers causing the paper to move, having it look like an asembly line. There will be colored ink or watercolors dripping onto the paper from above, which doesn't require any specific electronics. The "complicated" part would be a pen consistantly moving back and forth on one sie of the paper. In order to make the completed drawing interesting, I need some sort of way to introduce a randomness factor. I was considering having the pen speed up whenever the light level changed, or perhaps what would be even better is speeding up when a detector detects non-white on the paper in a specific location.


These are just ideas. And ideas are nothing if I can't put them into practice. I have some experience (in that I can solder and that my sister's boyfriend is fantastic at robots), I'm just curious if anyone can share resources to help me get started. I know basically nothing. I know to salvage motors from printers to use to spin the rollers, but I have no idea how to hook them up to a power source, and I know practically nothing about how to hook up a white-sensitive or light-sensitive detector to a motor that makes a pen go back and forth at varying speeds.


I'm not asking to have my hand held, I don't mind doing a little bit of reading and figuring it out for myself! But if anyone has any resources I'd greatly appreciate it. Thanks!





EDIT: Oh, I understand the issue of having a pen go over wet ink. At the moment that's not nearly as much of a concern as the electronic part of the machine/robot.

Comment viewing options

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

Purchase a "Bread-Board", it would work best for your type of project, and it is solder free. Then you sould look into basic project boards and micro-controllers.  Your Idea will not need advanced programing so your scott free on that one.  All in all, just get your homework done, your plan will do great if you know what your getting into, because going in blind is never a good idea.

Welcome to LMR! best place for anything....well, robotics thing...

have fun! i've seen a lot of artists here as well, merging electronics with arts :)

Using the duck-saying I mean that what you technically describe is a printer. Let's say an ink-printer.

Is it feasable for you to just use an old printer that gets its data from a computer? Like a regular print-job? Then there is no custom printer-mechanism and no micro-controller involved - just off-the-shelf material.

You might then stick a pen (or your watercolor ink pen) to the cartridge and there your "random" image appears.

So if you get more elaborate and maybe add a drawing-sketch with 

a) the installation you want to make to get a high-level-overview and
b) expected measurements (is it A4 you print or A0 or even bigger?) we could support you in the right direction.


Motors that are required to move forward and reverse are connected to a h-bridge. To move a motor in one direction with the ability to turn it off would only require a couple resistors, a diode, and a transistor or maybe a FET (Field Effect Transistor). If you want to control speed and direction though, you will still need some kind of h-bridge. What kind of h-bridge will depend on the motor/s you are using.

White sensing. IR detectors (Sharp IR detectors, or, homemade; search this site) 'might' have slightly different measurements due to wether they are looking at white or another color. CdS cells or LDRs (Light Dependent Resistor) are variable resistors that change resistance due to light. Light reflected off of white 'should' give a different resistance value vs. light reflected off of whatever color your ink/paint is.

I agree with Max. You might well be able to build what might be considered a BEAM painter (BEAM is a type of robot that is built without a microcontroller). You might even be able to control the randomness based on some kind of timer that 'counts' how long white has been 'seen'. A microcontroller would simplify things. If you are moving the motors all the time at a constant speed, maybe they don't need to connect to the microcontroller at all. A relay might work, one that is powered when the rest of the circuit is turned on. I believe, even in that case, you should keep all your grounds connected. Some of the smarter guys will set me straight if I am wrong. :)

My white sensing ideas may or may not work. A search for sensing color/white may be in your future. If you find that one of my suggestions work, I would offer that you might want to consider more than one sensor. Possibly in a similar setup to a line following robot. *Ding* Line followers typically use either LDRs or IR sensors. IR sensors have issues with certain types of light source. The sun is an extreme example. It throws out lots of visible light, but, it also does a fine job throwing out IR, which blinds many IR sensors. Fluorescent lights have been known to cause issues for IR sensors. You have been warned. :)

Just remembered you are moving the pen/brush/paint/ink back and forth. You will need an h-bridge to control the motor that moves your pigment dispersement. Preferably, you will also want a way to control the speed of that motor. Typically, we control the speed by putting a PWM signal on the Enable line of the h-bridge chip/circuit we use.

For extra randomness, high level languages that most microcontrollers are programmed in allow for a psuedo random number generation. I would suggest you look into ways to further randomize the random numbers you use. I would think a pair of random numbers coupled together by some form of math would accomplish that to an extent. There are others that will surely suggest better ways. :)

I believe I have managed to ramble my way through all of your questions. I have one question/request now. Please let us know what microcontroller you are considering, so we can offer more suggestions on where to find code snippets that might help you.

Thanks for the help everyone. Here's a simple sketch. Sorry it's not in-debt, I'm not really wanting to sketch a schematic of the machine if I don't know how it would work. Hopefully this expresses my idea a little bit better.


Sorry for it just being a photo (and a crappy drawing), I'm so busy I hardly have time to scan. 4 studio classes will do that to you. It still expresses my idea and what I want to do.


A lot of people gave a lot of very helpful suggestions, I'll do my best to answer each question and concern and address all of the points:

@oddbot: all of those are really inspiring! Thanks, since I'm building a body of work I'll have many more robots to create -- once I get a better handle on robotics and "how stuff ticks" I'll get into some of the more advanced robotics. Or at least, increase my confidence to do more of what you described.


@Nills: Yeah, it's technically a printer. However I'm hesitant to just salvage a printer and use it to print random images. Yes, I could do this, but there are conceptual reasons for making it appear to look like an assembly line, conceptual reasons to the randomness, conceptual reasons to the ink dripping on it. It's a convinient solution! Just not the solution I'm looking for. As for size, I'm unsure. Chances are I will be using a thick 10-12inch of 80weight (maybe less, if it doesn't fold right on the roller) long sheet of paper. The length mostly depends on what rollers I get - I'm very much doing a recycled motif (which is great for me, because I'm a broke college student), so I'm considering just using paper towel rolls.

@birdmum: All fantastic advice. The motor that controlls the rotors shouldn't need any type of control aside from "ON" and "OFF". I considered having it move the paper back and forth randomly as well, however I'll have to see the initial results of the printer to see if they're asthetically appealing before I go forward with that plan.

As for a microcontroller, yeah, that's probably a smart idea. I've been recommended Arduino so I'll go forward with Arduino. I've already done some research on it so it's best anyways.

For the randomness, if I could just write a psuedo random number generator with Arduino, which is easily accomplishable I imagine I can just do that instead of using a light sensor or a white-detecting sensor. I'll put that into play with some more interactive pieces later.


@Gareth: At the moment I'm just thinking a linear printer, not necessarily XY. If an XY printer is easily accomplishable it may add some more interesting results to the completed pieces, but I'm taking it easy for this first one.



Problems I envision:

Getting the paper to move on the roller. In my mind, easily solvable by having two rollers squeeze and pull the paper.

The paper getting too wet to have the pen draw on the paper. I can always just use a thin prismacolor marker, which shouldn't need as much pressure on the paper. That'd solve that.

Getting the ink to drip. This is my main problem. If I just have them in stationary water bottles above the paper, there won't be any color variation and it will be boring. Also, the change in pressure as ink drains from the bottles might cause the drip to stop, which isn't preferable. Do I need these on another movable belt, with some way for the machine to know when to release some ink from a random bottle at random intervals? This seems like a tall order. Maybe I should just keep it the way I envisioned it. I would load up pre-loaded colored paper, but I want the ink to randomly overlap with the pen. Maybe I'm thinking outloud, but at this point it's a "is this even possible without being enormously complicated" for the ink to have any sort of variation.

The pen being XY instead of just linear. I'm not sure if I want this but now that I think about it it will add a lot of creativity to the piece. Is this easily achievable or should I not bother for my first creation?


I guess what I'm looking for at this point is just a yes or no if this won't work, or if my ideas will work. A shopping/scavanging list would be helpful but obviously some things will/won't work and I'll have to adjust what I purchase because of that. From my understanding, I should start with: an Arduino Board, Bread Board, some resistors, some diodes, some transistors, and maybe an h-bridge for the roller.


Once again thanks for the help everyone. I can't wait to get my hands dirty, problem solve, and post photos of the installation.


Your roller should not require an h-bridge. You want it to roll at a constant speed when you turn the machine on, and, stop when you turn the machine off. A simple direct connection between the roller motor and the battery is all that will be required.

Your idea should be fairly simple to produce. Have you considered Gel pens on some form of turret? As long as you have a solid surface below the point the pen is touching on, you should be able to get a solid line. Once you can draw a solid line, you just need to move the pen/turret side to side on your roll of paper.

Ah, no I know about the h-bridge. I mispoke. I was mearly thinking outloud if I wanted the paper to move in 1 direction or randomly switch directions to give it more variance. I've pretty much settled in my mind that I'll just have it go at a constant speed in 1 direction.


I'll go on a shopping/scavaging binge and see what I can find and get my hands dirty. I think at this time without much prior knowledge there's nothing more to do than to dive in and see what's up

Pardon someone speaks it out but: Do not underestimate the complexity of your challenge.

There are lots of learnings you will make. Maybe not on the big-picture high level view that you have now but on low level details like moving a stepper motor with the nessessary precision on more than 360° rotation or the calibration of the nozzle of each color or the image-pixel-to-axis-movment conversation math and the corresponding software.

As you state that you have no or only a little prior knowledge of electronics, mechanics and software we LMR would suggest you to take step by step and start with a blinking LED. But you want to start with a self-made multi color macro plotter where almost everything is custom made.

We all want to do this kind of project. Some of us started. Few of us finished this kind of ambitious projects and used hundreds or thousands of working hours to accomplish it. How many hours do you plan to invest into this build?

When you have to work in a timebox you could jump-start your project with something that is very common to what you want to do instead of starting on a green field with basic electronic elements and an empty Arduino loop() function.

So my question to you would be: What is the most equivalent solution out there that you could use for your plotter?

I don't underestimate the complexity of this challenge, trust me. I've been aroud electronics my entire life, and while my passion is art I feel like if there's any time to start learning a new skill it's while in college. I wouldn't even consider this if I didn't have the resources nor passion to do it. I find automated contemporary art fascinating, I find traditional drawings dull. It seems like a pretty clear path in where I want my current artistic exploration to go, even if it's not where I ultimately decide to settle.

As for time I have to dedicate to the project, about a month with 5-6 hours a day working (minus the time to get the parts, but I can at least get the essentials at a local shop). That should be enough time to construct it, get frustrated, troubleshoot, have it work, have it break, then rebuild it. If it's not enough time, I'll deal with the consequences, but I might as well go head first.


I'm a bit confused by your question., but if I understand it correctly, you want me to find a plotter similar to mine that I could borrow code from, or be inspired by in it's construction? I'll look into what I can find that's similar. Honestly I'm not so worried about the programming (I've coded before, just not in arduino), it's more the construction.

Yohosie - You Rock!

Building this from scratch is going to be ingenious. Mixed in your artistic skills makes this jawdropping.

So never mind my comment then. You're fine (I mean it serious). Go ahead. And welcome to LMR.