Print this page

Cube Quest Robot - 2007

Cube Quest is a new robotics contest created by the Atlanta Hobby Robot Club. Two autonomous robots (not radio controlled) start from their own goal area and roam a 6×6 foot field and attempt to move red blocks back to their goal while avoiding blue blocks. Click here to see the rules.

This a new contest and no one has built any fully operational bots yet (as of Oct 9th 2007). Bots will need several sensors and a means of moving 1.5 inch square blocks.

Qube Quest Bot

I have under construction a QubeQuest bot that can move and navigate back and forth between the beacons as demonstrated in the video below. It lacks sensors to find blocks and avoid collisions at this time.

Cube Quest Beacon Race, March 31st 2007

 

Here’s an overview of the sensor requirements.

Sensors required

  • Polarized White Light beacon sensors (View Schematic)
    1. Polarization sensor
    2. Left/Right light sensor to navigate towards desired beacon/goal
    3. Vertical angle light sensor to judge distance from beacon/goal or black square detector
  • Block Sensors
    1. Left/Right proximity sensor to navigate towards blocks
    2. Color sensor to determine if the block is red or blue
    3. Block present sensor to indicate when block is captured
  • Anti-collision sensors
    1. Detect walls and other bots but not blocks

The polarized white light beacon sensors were designed in the spring of 2007. They are simple analog circuits made from op-amps and CDS photocells.light sensor

The LDR-1 and LDR-2 photocells are positioned left and right of a opaque baffle so one will be shaded more when the bot is not pointed directly towards the light source. The difference in shading will produce a voltage change at the output (pin 1). The microprocessor will use this as an error term to steer the bot towards the beacon. The output is 2.5 volts when pointed directly at the beacon. It will vary up or down as the bot turns left or right.

LDR-3 is not shaded and will vary in resistance depending on light intensity. Higher intensity will reduce it’s resistance and reduce the gain of the amplifier. This helps keep the error term more or less constant as the distance from the light source changes.

Color Sensor 

The block color sensor is located directly above the block catcher as shown in the photo below. There's a red LED and a CDS photocell side by side pointing downward towards the block. Red blocks reflect considerably more red light than blue blocks so it's easy to determine which color block is present.

color sensor Color Sensor Schematic

Block Color Sensor

Block Color Sensor Schematic

 

Below is a photo and schematic of the reflective IR block presence sensor.  It's just an IR LED and phototransistor in one black plastic package.  There is not much reflectivity difference between red and blue blocks when illuminated with IR so it works for both.  When a block is very close the phototransistor saturates and pulls the output voltage down near zero.

 Block Present Sensor

 Reflective IR object sensor

 Schematic

 

 Block and wall sensors

Sensors for finding blocks and avoiding walls are more complex. Here are some of the requirements.

  • Must ignore ambient room light
  • Must ignore polarized white light beacons
  • Must ignore light emitted from sensors on other bots
  • Max range needs to be only 4 to 8 inches
  • Multiple sensors for identifying walls and blocks based on height

My design bounces infrared pulses off objects and measures intensity of the reflected light. It’s based on the design I used on my minisumo bot Delta Force. IR LEDs will be driven with 50 microsecond pulses to illuminate objects in the bots path. The microprocessor selects the LED pointed in the direction it wants to look and turns it on for 50 microseconds. Just before turning off the LED it grabs the A/D converter sample of received intensity and stores the amplitude value in memory. It then moves on to the next LED.

The receiver circuit is AC coupled which only allows rapid changes to reach the output. Steady or slow changes will not be detected. This eliminates room and beacon light. The IR photo diodes I’m using have built in IR pass filters to remove visible light. The pulses are 50 microseconds long repeated 1000 times per second. This is a 5% duty cycle. The bot is only looking at the world 5% of the time but updating 1000 times per second. The only possible interference issue would be active IR sensors from other bots that send continuous IR modulated in the 30 to 50 khz range. False readings can be eliminated by sanity checks and the bogus data discarded.

I plan to have 4 IR LED emitters with 40 degree beam widths. Two on the front and 2 on the rear. They will be pointed about 20 degrees left and right. Also there will be 4 photo diodes. Two front and rear. Two will not be shaded. The other two will have a lower baffle to limit downward views so they only see the top 1/2 inch of the wall and no blocks. The drawing below shows the vertical placement.

sensor view field

The photo diode amplifier is implemented with a LMC6484 op-amp. I’m using two, one for the upper wall sensors and the other for the block sensors. Click here to view the photo diode amplifier schematic. Note the front and rear photo diodes (D1, D2) are connected in parallel to the input. Two amplifiers serve 4 photo diodes.

Front IR Sensor assy Rear IR Sensor assy

Front Top and Bottom IR sensors

Rear IR sensors

 

CDS photocell white light sensors

CDS Photocell white light sensors

 

October 2007

After implimenting the sensors described above and writing and debugging control code for the AVR microcontroller the bot now performs the minimum actions required to play "Cube Quest".

Video of bot moving blocks into goals based on color