Wednesday, November 25, 2009

...And the First Problem

Well then.

Just as I'm gearing up for this project, my computer bites it. Hard. While booting the computer it hangs during POST on the video hardware. Hangs! How does POST hang?



Well, this is an Asus A8N-SLI Deluxe. Notice the nForce4 SLI controller just to the right of the RAM slots? It overheated from a faulty fan and damaged some surrounding components in close proximity.

Well, I guess this is a reasonable excuse to by some new parts... i7-920 Quad-core, here I come! :)

newegg.com package tracking says I should have the parts by the middle of next week.

Friday, November 20, 2009

Delivery

My Mindstorms kit was delivered today!

I took some time to build the demo unit that comes with the instructions with little trouble. The demo unit doesn't have a lot on it: two motors with tank treads and a third motor not connected to anything. No sensors are included in the directions. This platform is really meant to be expanded upon with new ideas for basic experimentation, but what I've got in mind isn't going to make much use of what's there. A new platform will have to be built.

The NXT allows you to enter basic programs via an interface in the unit itself. I have been able to write small programs that allow the unit to move around and avoid obstacles using this interface. Here the platform is pictured with a sonic range finder off of the front. My computer has been acting odd lately so I haven't been able to write any mature code. I look forward to having my computer working again so I can do some real programming with this.

One thing that is going to become troublesome, however, is the massive amount of unorganised pieces. When I was investigating the kit online, it seemed as if it came with a case to store and organise the parts. Instead, there are many small bags that tear easily. I'll either have to order a case from LEGO or use a tackle box or something.

Tuesday, November 17, 2009

First Day

There's a project coming up in ECSE 4440: Control Systems in which we will have to create a controller for a specific system. This sounds ok, but I'd like to take a different approach. Instead of controlling a given system, I'd like to design a simple system myself and try controlling it. I find that the more tangible that an experience is, the more I learn and the easier it is to retain and recall. And since the material in this class forms the basis for most other classes in my curriculum, the more I retain the better!

I would like to build a self balancing robot, something similar to a Segway. This is a permutation of the classic cart and pendulum system. This type of system consists of a wheeled base connected to a mass by a rigid rod that has a joint at the base. This is an excellent system to build since it is simple and easy to model. We've also gone through many exercises in class dealing with this system keeping it fresh in my mind.

To build the platform, I'd like to use LEGO Mindstorms as a rapid prototyping platform. Mindstorms provides a quick and stable solution. Building a frame from other materials such as wood or metal and using a microcontroller are all possible, but would take time. It is out of the scope of the project to do this. The LEGO Mindstorms kit has been around since the late 1990s  and has been through three generational upgrades, each adding new features, sensors, and communication options. (Wikipedia) Universities recognise Mindstorms as an option as TuftsCarnegie Mellon, and MIT have all created some projects using Mindstorms. (LEGO)

I plan to construct the test platform using the Mindstorms NXT 2.0 kit (#8547). The platform will consist of two interactive servos motors with tire attachments, the NXT control unit, an accelerometer, and interconnecting LEGOs. The servos with tires will be at the base of the unit "shoulder" width apart. These will be connected and attached to the NXT such that the weight will be evenly distributed across each servo. The nxt will in turn connect and attach to the acceleromoter above the NXT.

I may or may not have put the order in already... :)