Miguel Angel Astor Romero 31d7344902 AACK!
2016-06-23 17:29:45 -04:00
2016-06-23 17:24:35 -04:00
2016-06-23 17:24:35 -04:00
2016-06-23 17:29:45 -04:00

RyABI (Robótica y Aprendizaje Bio-Inspirado - Robotics and Bio-Inspired Learning)

Abstract

RyABI is a control program for LEGO Mindstorms NXT using the LeJOS NXJ firmware. The controller is based on the subsumption reactive control architecture.

Objective

The controller assumes an environment like the following:

environment.png

The goal of the controller is to find a ball (in yellow) that is located on one side of a goal line (in pink), while avoiding any obstacles (in black) it can find. Once the ball is found, or the robot has collided with any of the two obstacles at the sides of the goal line, the controller will return to the starting line (in pink too).

The floor and the start/goal lines must be of constrasting colors.

Robot

The robot is based on a differential drive and must use the following motors:

Motors A and C
Attached to the wheels. Used to move and steer the robot.
Motor B
Attached to a gripper claw. Used to catch the ball.

It must also use the following sensors:

Ultrasonic ranger
Used to find the ball. Attached to port 1.
Touch bumper
Used to detect obstacles. Attached to port 2.
HiTechnic compass
Used to steer and move with some precission. Attached to port 3.
Greyscale light detector
Used to find the start and goal lines. Attached to port 4.

Subsumption

The controller uses the following five behaviors:

Wander
Simply moves the robot forward.
Search
When the goal line is found the robot will start searching for the ball using the range sensor.
Catch
When the ball has been found the robot will attempt to grab it with it's gripper.
Victory
When the start line is crossed the robot will stop moving a play a little tune.
Avoid
If the robot bumped against an obstacle then the robot will move a bit to the right to avoid it. It may take many attempts to clear a wide obstacle.
Description
Project for the UCV graduate course on robotics and bio-inspired AI.
Readme 136 KiB
2016-06-23 21:29:45 +00:00
Languages
Java 100%