Home > CollectorBot, My Robots, RobotC Code, Video > Puckbot I – Collector Robot Success!

Puckbot I – Collector Robot Success!

The collector is a more complex robot building on concepts learns from AreaBot.  The robot covers are much area of a closed arena as possible collecting Mindstorms NXT foam pucks, and delivering them to a central home base (light source).  The following represents the sensors, drivers, and behavior hierarchy to accomplish the task.

collectorbot-behdia

See all of the collector robot articles here.
Download the Code: Download: bbPuckBot.zip
See the video here.

Behaviors in Detail

I have reviewed the sensors and drivers in previous posts, so here I will focus on new behaviors, and discuss the big picture.  I have described CRUISE, BUMP ESCAPE, and BUMP FOLLOW in posts for the AreaBot.

LIGHT ESCAPE – If a light source is too bright, get away

AntiMothBehavior Light escape is the highest priority and key to collecting pucks in a central home base location.  Although it has nothing to do with collecting anything, this behavior is the mechanism for dropping off the pucks at home base.  When the robot approaches the light source (with or without a puck in its grasp), and gets close, this behavior is triggered.  The robot backs up (leaving the puck it was pushing behind) and spins away to find more pucks.

Light escape is a relatively small behavior that relies on the differential light sensor as a trigger and the generic escape sequence to escape.

HOME LIGHT – if a light source is in view, move toward it

HomeLight Home Light is a behavior that is triggered when the robot see enough light to determine it sees the home beacon, and attempts to move the robot toward it.  The differential light sensor is employed to determine the difference between left and right light intensity, and uses that value to steer the robot toward the light.

In an ideal situation, the robot will home in on the light while also pushing a puck.  In this way, pucks are delivered to the light source.

DARK PUCK – If a puck is captured and home is not in sight, turn toward it

DarkPuckBehavior Dark Puck is a departure from the collector robot from my reference book.  The original behavior was called DARK PUSH.  When the robot encountered a puck it could push it.  In the book, pucks were detected by turning toward them, and only pushing them if there was a light.  If no light beacon was seen, the robot would execute an escape sequence.

It was not practical to detect pucks with my robot using the IR proximity sensors, so I needed another way to increase the odds of moving pucks to the home base.  Dark Push applies similar principals to Dark Push by triggering when the robot is pushing a puck, and facing away from the home base beacon.  Dark Puck detects a captured puck using a legacy light sensor pointed down into the puck catch.  When detected, and the differential light sensors report no beacon, the robot attempts to turn (without loosing the puck) toward the light source.  If successful, HOME LIGHT may take over and move the puck to home base.

WordPress Tags: Collector,Robot,Behavior,Diagram,AreaBot,Mindstorms,task,Behaviors,CRUISE,BUMP,ESCAPE,HOME,DARK,PUCK,PUSH,concepts

Advertisements
  1. Xander
    July 18, 2009 at 11:55 pm

    Will you be adding links to this code to your Code Library page?

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: