Wednesday, October 25, 2006

Designing the mover

We've been spending some hours creating the NXTMover, which will end up representing the agents in our Multi-Agent system. The first prototype is seen below. We've used parts from the NXT box and most parts for the lift is from the Lego Technics Forklift kit.



We still some more stabilizing of the lift, but the prototype on the picture is probably not far from the final version.

Wednesday, October 11, 2006

The first multi-agent system

The BallFinder is ready. A BallFinder works as follows: 1) Starts searching for a ball. 2) When a ball is found, notify other BallFinders, and meet up with them. 3) If another Ballfinder finds a ball, stop searching and meet up with the others.

A scenario with two BallFinders is shown bellow.



Now we are getting close to developing much more complex multi-agent systems.

Wednesday, October 04, 2006

Follow the black line, part 2

After having spend some hours on testing, we must conclude that it seems to be almost impossible to create a stable program that makes the NXT follow a line that curves both left and right by using bluetooth direct commands. We're using an approach that makes the NXT sweep first one way then the other, then double the distance and sweep again until the line is found again. The NXT's keeps on missing the line, and the amount of readings of the light sensor delays any other bluetooth commands to an extend which is not acceptable.

Therefore, we have decided to make the "Follow Line" program as a Lego Mindstorms NXT-G program, and execute it on the VM at the NXT. The result has shown to be very stable, and the fact that the execution of a program on the NXT still allows for direct commands over bluetooth to be received and executed. This is a feature which e.g. gives us the possibility of running the line following program on the NXT and then turning the NXT 180 degrees while the line follower is still running.

We shot a short video of two NXT's using the line following program:

Tuesday, October 03, 2006

Follow the black line

We archived to implement a simple algorithm that enables the NXT to follow a black line forming a circle. It is simple because the NXT can only go one way around and if the black line gets on the wrong side of the NXT, it it not able to find back on track.
After this was accomplished we tried to implement a sweep algorithm that would make the NXT go both ways.
We ran into some problems:
1. Not enough values from the light sensors
2. Can not count on tacho value.

We will continue to work on the FollowLine class, so hopefully it will be done next week.