Older blog entries for davee (starting at number 7)

Yesterday, I added an Eltec 442-3 pyroelectric sensor. It is great at detecting people and dogs at a pretty good distance. Candles are a bit different. It seems the best I could get it to detect that candle was about 18 inches. This might improve within the confines of the Trinity house.

Began development of subsumption architectire for the kanati class. Currently have three levels implemented. Still need to smooth things out os that the different functions can be performed without slowing down the movement. Mostly this will involve a kind of multitasking some of the levels. Since the Javelin Stamp doens not really support this, it will be simulated on board.

in the meantime, Sparky, our dog, is having fun playing with K1 as K1 chases it around the house at crawling speed.

Today, I added code to allow the movement of the bot in precise distances and turn in specific degrees. K1 can now navigate the trinity fire fighting contest's house. At least it traverses an open area that is modeled on the house. I've ordered an eltec 433-2 pyroelectic sensor to be mounted on the head. It does not have line sensors yet and we will see if they are needed. Since the bot knows where it it, it may not need them. We will see.

I've relocated the left and right sonar units to the sides, over the tires, looking directly right and left, as opposed to the 45 degree of center that they had been. This required a minor change in the code, but now I can detect a room simply by the range data from the side sonar units.

I plan on building a Trinity house for the development. Seems I have a few sheets of plywood out back that will come in handy.

After working out a few bugs (there are always bugs to workout), K1 does a wonderful job of exploring and avoiding objects.

Tonight, I added a servo 'head' to hold a scanning platform and wrote the code to handle the scanning process while K1 explores it's world. The scanning process occures concurrently with other operations via a background timer.

I still need to add code for the targeting sensor and tell it what to do when it sees a target, but it all is coming along quite nicely.

I've decided to build a fire fighting robot out of K1, so I will be looking for a UV sensor in the next day or two to mount on the head. Haven't added the sound board yet either, will save that for later.

23 Jul 2002 (updated 23 Jul 2002 at 18:04 UTC) »

After a few hours of tinkering with the code, Kanati-1 can now negotiate a maze. It doesn't do it well because it does not yet keep track of the world and it's place in it. It would do better if I was not using a random direction when it sees something straight ahead. That's going to take some time just playing with it.

I have the side sensors reacting further out than the center. This lets it react to somthing along side it before reacting to the front sensor.

If anyone has any good behaviors for dealing with obstacle avoidance, I'ld like to talk about.

Added a home page for Kanati project. It currently has one image of Kanati-1. goto Kanati Home to see it.

22 Jul 2002 (updated 23 Jul 2002 at 03:47 UTC) »

Kanati-1 LIVES!

As I expected, I used a CD jewel case for the chassie, mounted the three transducers about 45 degrees apart. May need to move them even farther apart but it never seems to bump in to anything with the avoidance range set to 4 inches.

I'm using a simple avoidance algorithm;

  public static void main() {
  int rc;
  k = new Kanati();     //create the robot object
 //robot code here

rc=k.checkSONAR(); k.moving=true; while (rc == 3){ k.move(); CPU.delay(1000); rc=k.checkSONAR(); } if (scanForTarget()!=0){ fire(); } else { k.avoid(rc); // not an enemy, avoid it }


} // while loop } // main

k is the instantiated kanati class (robot object) where all the real code is at.

The avoid routines determine which sensor detected the obstacle and acts accordingly. If object detected Forward, backup and turn in a random direction. If right or left, turn in the opposite direction.

That's pretty much it so far. I will post some pictures on my website tonight.

Created a Java class for robots based around the Javelin Stamp and Board of Education, both products of Parallax. Kanati-1 is the first product of that class. An experimental test bed, K-1 is just being used to develop the platform. See the Kanati-1 project for a description

sensors and motor working.

Still need to add the sound module, 4 pins, will have to develop a class for it before it goes online.

body will be added tomorrow.

I received my first Javelin Stamp today. Sweet! As a result, I now have a Java class for the Devantech SRF04 Ultrasonic Transducer.

I have a Basic StampII board to handle up to 8, but I just couldn't resist the urge to test the sensor with the Java based Stamp. I guess the next thing would be to I2C enable it. Hmmm.

Share this page