Kanati is a Java class for a robot based on the Parallax Board of Education using a Javelin Stamp instead of the typical Basic Stamp II. Kanati means 'hunter' in Cherokee. I created the class back in July with the intention of it being a development class for the BOE.
It is my first Java based robot project and I basically created it so I could play around with Java as it relates to robotics.
Kanati sports three Devantech SRF04 sonor modules, a pair of modified R/C servos for locomotion, a servo for the head, and an Eltec 443/2 pyrosensor. It's chassis is a CD jewel case with the BOE hot glued to it. I am using LEGO parts for mounting some things, so the body is a hybrid CD case/LEGO configuration. The wheels are from my LEGO mindstorms with the axles drilled out and attached to six point servo horns, which attach to the servos. The SONAR (3) modules are arranged in a front facing array covering the front 100 degrees or so.
The pyrosensor sits on the head, attached to a LEGO hinge so the sensor can be adjusted for different heights.
Kanati-1 was a test bed to develop the class further with some simple behaviors and is no longer being developed.
K-2 is a robot being developed for the Trinity fire fighting contest. I haven't settled on an fire suppression system yet since putting out the fire will take care of itself, once it is located and the robot has approached it.
Current Operation Status
Once started, K-2 currently explores a hallway, looking for the fire. I've added a scripting system for mapping out patrol patterns, but I have disabled it to develop the basic fire hunting code. As K-2 explores, it continuously scans the area for the candle fire. It does this by rotating the head with the pyrosensor mounted on it as it moves through the room. Obstacles are avoided by detecting them with the SONAR array and moving around the obstacle.
Fires are detected by virtue of the pyrosensor scanning the 180 degrees in front of the robot and when the flame is detected, K-2 goes into home in mode. This function basically moves towards the fire by moving forward a bit and correcting its path towards the candle. Once K-2 gets with six inches of the candle, it will scan the area in front of it using the SONAR and lock on to it again. At this point K-2 is in front of the fire and 5-6 inches away from it with the robot pointing directly at the fire. To simulate the fire suppression system, the head oscillates and then goes to sleep.
Currently, K-2 can find the fire and lock onto it and approach it about 70% of the time. Because there is a case of bottled water in the hallway, sometimes K-2 will lock onto it, but this is an environmental anomaly I can live with, since it won't be that way at the competition. There is still a long way to go before K-2 is a complete success, but it is in the final 5 percent stage where 95% of the work takes place.
I still plan on adding a UV detector and a trio of IR detectors to make the flame detection and locking more robust, but that will have to wait until I get back to work. In the meantime, I can play with trying to wring the most out of the SONAR/pyro combination. Since I'm running out of I/O pins, I suspect I will have to offload the sonar and pyro functions to a coprocessor. Since I have a sonar coprocessor or two laying around, I will probably adapt the pyrosensor detection to it. That will free up 6 pins for the SONAR and 3 pins for the pyrosensor. Since the coprocessor uses a serial interface, it takes 2 pins but that still leaves me with a net gain of 7 pins for a total of 12 free pins out of the 16 available. I also have to add a IR detector to detect the white lines that span the entry into each room, but that is a trivial thing too.
Now my wife has suggested that I build a robot to mow the lawn. mowbot is born!
Description: Experimental Robot based on Kanati Robot Java Class
This project has the following developers:
- davee is a Lead Developer.