Tag Archive for 'Mindstorms'

NXT-G Online: A Virtual Programming Teaching Environment

NXT-G Online is software that allows you to program a virtual Lego Mindstorms NXT. Are you a school that doesn’t have enough cash for an NXT hardware set. No fear, this virtual software actually lets you program in NXT-G and download to a virtual NXT brain. Then you can execute the code and see it in virtual action.




To help better understand what is going on in the video, here is the sequence of chronologically events:

  • A challenge was selected - a video that came up introduced the challenge.
  • The simulated NXT-G programming environment was opened
  • Wrote some code (4 motor blocks were dragged onto the palette, and each was set at a different power level).
  • Downloaded the NXT-G program to the virtual NXT robot, which automatically opened the virtual environment.
  • The robot was moved to where we wanted it to start.
  • The virtual NXT brick was opened and we ran the program that was just created. The robot moved accordingly.

Note that the release version of NXT-G Online also has the ability select different sensors and motors for the virtual robot after which you can go back and change your code to make use of your modifications.

Source: The NXT STEP - LEGO MINDSTORMS NXT Blog

Steve Hassenplug - Mindstorms NXT holonomic drive robot.

Steve Hassenplug was there from the beginning when Lego decided to revamp the old RCX platform. He was part of the Mindstorms User Panel (MUP) which was extensively covered in a Feb 2006 Wired magazine article. He was later invited to participate in the Mindstorm Developer Program (MDP) where he built a holonomic drive robot called Omni. This latest version which he shows off in the video uses a compass sensor to keep on track to it’s destination.

Jay Kinzie - Lego Mindstorms NXT MCP


Quicktime

Jay Kinzie - Lego Mindstorms NXT innovator Jay Kinzie is an avid Lego Mindstorms fan, he contributes to the NXT STEP blog and is a participant in FLL competitions. He is also a MINDSTORM Community Partner (MCP). Jay showed us some of his creations at NIWeek 2007 this past August.

Jay is also a freshman mechanical engineering student at Rose-Hulman Institute of Technology. Jay caught the entrepreneurial spirit at 15 years old and has formed Jbotics Innovations LLC (www.jbotics.com) to leverage his ideas related to internal combustion engines and transmission designs. He currently is pursuing 41 patents on a variety of products. Some of his transmission designs are built into his Lego robots.

Chris Anderson hates graphical programming

Chris Anderson at NIWeekSo Chris Anderson the Editor-in-chief of Wired magazine did the final keynote presentation at NIWeek 2007 this past August. I was really excited about this since up to the run up to NIWeek I had managed to purchase and read his book, The Long Tail. I was also eager to get him to sign it, which I managed to do.

Chris did an amazing job in the keynote of describing his involvement with the LEGO Mindstorms NXT robotics system and how he created a UAV which was controlled by the NXT. This is marketing gold for LEGO and an inspiration to all, young and old as to what can be accomplished with a few low cost LEGO parts and a cell phone. He mentioned how his 9 year old son programmed the NXT using the NXT-G graphical programming language (which we all know is really LabVIEW in disguise).

I left that keynote feeling happy and all geeked out because, hey, when it really comes down to it, the Editor-in-chief of Wired magazine is using LabVIEW! How cool is that?

Well, not so cool it turns out. Chris just posted on his geekdad blog that Robot C is “The Best Programming Language for Lego Mindstorms” I mean, c’mon Chris, really? Can you seriously tell us that a 9 year old kid will jump for joy when you show her a screen full of this? Give me a break. I’m beginning to wonder if you’ve turned from a geek dad to simply a geek. We shouldn’t lose sight of the fact that this intended for kids. No, really it is. The biggest challenge we have as parents is to find ways to pull our children away from various mind numbing distractions onto something useful. Showing them pages of C code is not one of them.

In this video my 8 year old son built and programmed the NXT claw on his own. I mentioned to him that he was programming in LabVIEW and he was surprised. He was surprise because he thought LabVIEW was this complicated software that only dad knew how to use and was for automating complicated machinery he knew nothing of. This is the whole point. He was able to build the mechanics and write the automation program without writing one line of code.

The future is not C or text based programming languages. The future is graphical programming. Chris mentions several times that it’s time to use a “real programming language”. I agree. This is why we should all be programming the NXT using LabVIEW. See, LabVIEW is a real programming language and contains all the things that Chris misses in NXT-G. LabVIEW has “if…then…else”, “while”, even “for…next”. It also has sophisticated debugging tools. Can it rise up to the challenge? Well, if Virginia Tech uses it for DARwIn and the DARPA challenge then I’m sure it will work on the poor little NXT brain. Oh, and if the cost is too high, there’s always LabVIEW Student Edition.

Edit: LAVA has picked up the discussion here.

New LEGO NXT project website, answers question: “Where do I go from here?”

I just got wind of this cool NXT website through one of the FLL group lists I’m subscribed to, nxtprograms.com.

nxtprograms.com

Dave Parker, the founder of nxtprograms.com says about his new site:

I started this web site in response to feedback that I have heard over and over from parents of kids at our school: They got an NXT set for Christmas, had fun building the one or two sample robots, and now they are having trouble figuring out what to do with it, either due to lack of building experience (especially with the studless NXT style parts), lack of knowledge of any programming, or simply a lack of ideas that are fun but simple enough to do. Lack of programming knowledge, in particular, is a big barrier to most kids and severely limits what you can do with your NXT set. I have also found that most kids don’t have the patience to learn any programming lesson-style during their free time, so this site takes a different approach. There are no programming lessons, but instead there are a variety of free, fully commented sample programs that go along with various fun projects that the kids can simply download and use as it, then perhaps some will be motivated to learn more about how they work by studying the programs. Those of us who have studied any programming know that many times the best way to learn it is by seeing concrete examples. In addition, by following the building instructions for the projects, the kids will also learn various ways of building with the NXT parts.

I have to agree that figuring out where to go next after you have built the included bots is a challenge. My favorite part about the site is the super crisp detailed pictures of the assembly process. All programs are included on the site for free. As an added bonus, at the end of the project page there is a challenges section that gives you ideas on how to expand the project.

Automated Rubik’s Cube Solver


View video in Quicktime format


There’s been some activity over the past year or so where people have been trying to create automated machines to solve the Rubik’s cube. At NIWeek 2007 which took place this past August, I had the chance to interview an applications engineer from National Instruments who described the system they put together to achieve this goal. As you can see from this video, the process is very involved. It requires imaging of the faces, processing the solution and executing the moves to produce the final completed cube. The hardware is expensive, the mechanics problematic and in the end, the demo fails to do the job. On the other hand, it’s a cool way to spend some time with some motion control hardware.Most of the time, the best solution to something is the one that is the simplest. Take a look at this Rubik’s cube automated solution that uses Mindstorms NXT. I am scared to see the budget difference between the two implementations. Daniele Benedettelli’s website provides more insight into how this was done. As you can see, the main problem of how to grip and rotate the side has been solved by using a socket type construction that wraps around all the cubes. This way, the stress of rotation is evenly distributed.