.comment-link {margin-left:.6em;}

December 09, 2006


Robot Challenge Number 1

If the NXTasy blog can do it, so can I! :)

I'm just starting to work on a project for a science fair demonstration (adults make them at the school in question), and thought I'd make it into a challenge.

Make a robot that can write one or more letters on paper. The letter or letters should be chosen somehow by the user, and not be fixed in the program or entered via a PC keyboard. That is, you should be able to take the robot somewhere without a computer and use it.

The official rules are as follows, but it's not an easy task, so you modify the goal for yourself to fit your experience level. Please enter even if you don't finish your robot - let all see what you tried to do!

1) To enter, you must post a movie of your robot performing the goal (or trying!) somewhere by midnight (local time) on January 9, 2007. In the movie, you should say "Robot Challenge Number 1" and your name (or a fake name if you prefer). You must post a comment to this blog entry with a description of your robot, and a link to your movie.

2) You can use one RCX or one NXT.

3) All parts must be official Lego, except you can use a pen or pencil, and some paper.

4) Once the program starts, it must not communicate with a PC, and cannot be controlled by a remote.

5) The program should not know what letter or letters it is to write until the user instructs the robot after the program has started.

6) There is no prize except for the glory of winning and having fun.


Working on it.
Thanks for the challenge.
Chance and I have finished our robot. It is a pen plotter like robot . It has 3 axis (x,y, and z) that are controlled by the nxt program. Each axis is made with a rack and pinion gear set. The program is set to look for a bump code from touch sensor 1 that is locked in with touch sensor 2. When touch sensor 1 is out of range a error message will sound (watch out, this can be heard on the attache video if you listen for it when chance shuts it off). code 1 is a "U" code 2 is a "L" code 3 is a "S" code 4 is a "A". The whole alphabet could be programmed and a line return could be added with two additional touch sensors. We manualy return the robot to start on the next line. The robot can write 3 lines of 3 letters befor the paper is repositioned.
We only made box letters as this was easier for Chance to understand (8 years old). Chance programmed the "S" and "A" as well as built the bed that supports the x,y, and z axis. Arcs and angles could be programmed using this robot. Drawings could also be made.
Thanks for the challenge it was fun.
Chance and Mark
Run the movie
or right click and save target as
(letter1.wmv 3.2 MB)

That's wonderful Mark!

Glad you have fun working on it. I'm about half done with mine.

I'd encourage you to give a try to writing non-box letters. It won't be easy, but see what you can do!
Hello all.

I hope I'm not too late for presenting my version of the bot for the "Robot Challenge Number 1":

My NXT plotter was build two month ago and it was first presented on 09.12.2006 on the public event "Bricking Bavaria 2006" in Heimstetten near Munich (South of Germany).

My NXT plotter includes some features which match (I think) to the "Robot Challenge Number 1":

- It can plot all characters and digits (the drawing instructions for all characters are defined in a single file).
- You can enter any kind of text with multiple lines (up to 50 kByte - rest of the internal memory)
- It plots the output on normal paper sheet which will be feed after the input of the text.
- It can support different sizes of letters (for this challenge I only used one font size: 300).

On which way it works?

1) Initialization of the NXT plotter (move to the start position and eject the old paper)

2) Input of the text by the user by using the three NXT buttons. I organized all letters in letter groups and after selecting of the right group you can select the letter within the group in a second step menue. Please take a look to the video I have uploaded on YouTube: http://www.youtube.com/watch?v=kzkLp81u1XQ" (54 MB). All lines will be added to a file and after the confirmation of an empty line the input stops and the output process will be started.

3) Loading of the paper sheet: The NXT plotter waits until a paper sheet will be detected in the middle of the plotter by a light sensor. If this is the case the motor starts for transporting the paper to the initial position.

4) Output: The NXT bot process line by line the content of the file which was entered by the user before. After reading a single line/string from the file it iterate from the first to the last character of this string and search for the coresponding drawing instructions in another file. There are some different drawing instructions: 1,2,3,4,6,7,8,9 move the pen in different directions like the numeric keys on the keyboard. U and D are moving the pen up and down. N brings the pen to the begining of the next line. With + and - you can increment or decrement the size of the output/characters.

5) If the last line of the input file are processed it ejected the paper from the NXT plotter. http://festum.de/1000steine/myimages/album753/NXT_Display_EndOfPlot?full=1

Sorry for splitting the video of creating the following output on paper: http://festum.de/1000steine/myimages/album753/Paper_Output?full=1 . But due the given equipment I was not able to compress the videos - so I have made only from the begining and the end of the output process a "short" video with 26 MB (for each):

Output begin: http://www.youtube.com/watch?v=ZEpXnrVnJaU
Output end : http://www.youtube.com/watch?v=zdo9PKy4gAY

More pictures of my NXT plotter are available on 1000steine: http://festum.de/1000steine/myimages/album753

Don't hesitate to contact me if you want more details of the bot or if you are interested to read the program. Comments are wellcome!

Have a nice day

Mail: andreas(at)dreier(minus)privat(dot)de
Very nice, Andreas!

From the video I couldn't tell that it was all Lego, but then I looked at some of the pictures. The paper feed is great.

How did you control the motors to get the diagonal parts of the letters?
Hi k.

Both axles (x and y) have nearly the same gear reduction. So it is easy to start the motors on the same time. I only have made a correction of the speed to be sure that they will finish on the same time. The count of degrees for rotation is related to the defined size of the characters. The drawing itself will be called like MovePen( x-axle, y-axle, distance) but it is a normal NXT-G MyBlock with three input parameters.

Please send me your email address than I will forward the program to you and you.

Have a nice day
hey andreas do you have a progam for the texteditor on the nxt screen if so please tell me where to find it
P.S. i dont have an e-mail adress. thanx
Post a Comment

Links to this post:

Create a Link

<< Home

This page is powered by Blogger. Isn't yours?