Monday, December 10, 2012

Jay Jay's First Lego Mindstorms Robot

Date: Dec 10, 2012

Updates [Date 11, 2012):  For more info about LEGO Mindstorms NXT, this is a good page with various source of info...

http://vageekmom.com/ParentReference/2012/04/lego-mindstorms-nxt-tutorial/

Jay Jay has completed his K2 Kindergarden. He does not need to go to school any more. So, today I let him play the Lego Mindstorms. I long ago, may be 10 plus years ago wanted to buy this, but could not find a reason to do so, now, Ha Ha Ha Ha, Jay Jay is my reason, and be it a son fulfilling a daddy's childhood dream... Hahaha (excuses)...

Of course, he is just a 6 years old kid. So, I cannot ask him to build a robot. So, what we do is we go to the following website:

Http://www.nxtprograms.com

There are some YouTube videos on the website too. So, after we scroll thru all the videos, we decided to build the "explorer". Basically, this is a robot car that has eyes, so, when it detects a high wall, it will back off, or every time, it bumps into a low wall, it will back off a little, and the eyes start look left and right to determine, where to go. Basically, the eye will calculate the room and space, and make a decision to turn to the new direction and move forward. Very easy program logic, and easy to build.

Of course, the instructions can be read from iPad, but, lets do a mirroring to our big screen TV using the Apple TV. That is why it is useful to have Apple TV at home. Can be very handy.

Of course, it is good for the young one to learn this too, as he will know reading from a big screen is good for his eyes.

Lets start to build the program.

Wow. This is real serious stuff, it is complicated then any of the Lego sets Jay has build before, but he shows high desires to complete it. And he really follows the instructions and build the robot slowly.

I can see that he is very focus in building the robot. May be is because the way how I put the instructions together, and how I build the environment, and he realized that it is not a toy.

Ok, don't play play. I really teach him about the Three Laws of Robotics. And he is half understood and half don't understand, and he nod his head anyway. Hahahaha

He is slowly building the robot. And he let me do a quick QC before jumping into the next session.

So, he build the castor bot, followed by bumper car, and then can proceed with the explorer.

He is having lots of fun doing this. It's a father and son project. The step by step instructions teach him how to prepare the parts for each small sections and then assemble the parts each section by each section. So, at this stage, I QC almost every steps he do.

Daddy: Are you sure is like this? Why the right side has the parts but left side does not have?

Jay: (argue), daddy, is like that one, the instructions show me only build the right side, left side don't have one.

Daddy: (quickly flip to the next instruction page, and it shows to prepare exact same parts as the last instructions, and build exact same thing for the left side). Hahaha, son, this is to teach you two things. First don't jump the gun. Second, must always ask questions when you see something is not right, not make sense, not balanced, etc. like what I did. Don't always jump into conclusion when you have not seen the whole instructions manual.

Haha sometimes, the father small chat with son can be educational and fun. But this is the only way to teach your child so that he can remember this by hard.

He is now fixing the front wheels of the castor bot. After that is to modify it to a bumper car.

This is how the castor bot looks like.

Next is to build the bumper for the explorer.

The bumper can be opened. The bumper will activate the touch sensor (see finger) when ever it bumps into something. The bumper is wide enough and will be able to sent a "1" to the NXT, a.k.a the brain.

Jay now understands that the CPU, a.k.a the brain, only understands computer languages such as "1" and "0", which is equivalent to "on" and "off".

And he has done it! He finished building the explorer. Now it is my turn to figure out how to upload the program into the explorer, and run it.

This is the program logic. Go straight. If bump into something, reverse a bit and look left right to decide where to go. If see obstacle in front (9 inch away) then, look left right to decide where to go. Very simple.

Ok... Some how Bluetooth fail to communicate. May be not compatible. Fall back to use USB to communicate. And it is successful.

Ok. Lets try run. First run is not that successful. Because, the "eye" position is way too behind. So, it always keep looking behind, and the explorer got stacked under the seat.

Youtube: http://www.youtube.com/v/q-0XmwMcLf4

Once you fixed the "eye" position so that it always look straight when it is not turning, then, the robot function correctly.

Youtube: http://www.youtube.com/v/urC05TQzcD0

It is indeed one cute little thing.  And this is the first time that Jay Jay has experience such an intelligent toy.  The explorer actually can find it's way out of the obstacle course.

Youtube: http://www.youtube.com/v/y4kiOQnLnDI

So, to add in more fun, we give the explorer some moving "legs" to force it change the direction.  It is very intelligent robot, and it is like it has eyes.

Youtube: http://www.youtube.com/v/Q7PdUStkYMM

It is not too early to expose your kids to something that they like. Although at this age, he does not know how to write the program, but he do understand how a robot works, how they follow the instruction, and how a program can fail, that is good enough. Jay went to a robotics class few weeks ago, I can see from his eyes that he is quite interested into such engineering thing. That is why I decided to buy the Mindstorms for him after I found out it can actually be run on my iMac. And it turns out to be true. So every few weeks we will make a new robot, until a time where he can build a Rubik's cube solver. Haha

- Posted using BlogPress from my iPad

Location:Clementi Avenue 6,Clementi,Singapore

No comments:

Post a Comment