Showing posts with label NXTRemoteControl. Show all posts
Showing posts with label NXTRemoteControl. Show all posts

Wednesday, September 27, 2006

NXTMover

Having the library NXTRemoteControl, we can now build another library using that.

The idea behind seperating these two levels, is that you can make countless configurations of a NXT. The NXTRemoteControl should be, and is, able to control each one of them. All you need, is to develop a library on top of it.

Our robot needs to be able to drive around and lift/move objects. Hence the name NXTMover. The library (NXTMover) will be action based, with each action running in a seperate thread. You will then be able to tell the NXTMover, to "move the robot along a line", "pick up object" or "go to this place".

Above this, we will implement some intelligence and multi agent abilities such that several NXTMovers can coorporate about moving object. More about this later. The figure below illustrates these concepts.

NXTRemoteControl

So, what have wee been up to lately.

Most of our time has been put into developing a .NET library, that we have called NXTRemoteControl. This library uses the Direct Commands published by LEGO. This allows us to remotely control every component of the NXT. That is, all sensors, motors and the Bluetooth communication device can be controlled from a computer connected to the NXT via Bluetooth. This is much similar to what iCommand does.

It has been quite a challenge to deciffer the Direct Commands and figure out exactly what the different parameters actually does. Our effort has been rewarded. We now have a lib supporting both the sonar and synchronized motors among all the other stuff.

I.e, so far our lib support motors and sensors.

We have been programming in C#.

NXTRemoteControl

NXTRemoteContol 0.1 is ready. Will be available for download soon.