Robot mapping project


To the left 2 homemade Arduino boards. In the center a microphone circuit with LCD. To the right "Flip" the robot.

"Flip" - the robot

Flip is my mapping Arduino robot. The goal to make a map of a room. Flip needs to know where he is and in what direction in order for the mapping to work. The idea is that Flip should navigate relative to a set of "radio beacons" that allows us to determine his position from their known positions by trilateration.

The mapping is done using a Sharp IR sensor on a micro servo.
To the left a top down view of obstacles. To the right the obstacles as Flip sees them through the IR-sensor.

Features

Todo:

  • Needs to be drilled for new holes for both the Arduino and the H-bridge.
  • Test the electronic compass circuit
  • Determine the error rates for measurements

The radio beacons

These emit a radio signal to the robot who responds with a sound. Distance is calculated and should be sent to the Raspberry Pi for trilateration.
Microphone circuits


The incoming sound is recorded and distance is calculated by finding the start of the specific frequency 4800Hz

Features:

  • 433Mhz radio
  • LM386 Amplifier circuit
  • Electret microphone 1 of 3 soldered

Todo:

  • Solder those microphones circuits * 2
  • Try other frequencies
  • Test band pass filter
    http://en.wikipedia.org/wiki/High-pass_filter (try software impl first)
  • Enable battery powering(solve the noise problems)
  • Multiple short noises and select best or median 
  • Test external ADC (ordered)
  • Try longer distances (now 2m max) the problem is the size of buffer

The Raspberry PI brain

The R-Pi should be connected by radio to the robot and to the radio-beacons.
It should receive the measurements and sensor readings. The location from the radio beacons, direction from the compass circuit and obstacle mapping from the robots IR-sensor will be used to build a map.

I really have not started with this yet but I think I will use java to read the values from the GPIO serial port and store every mapping measurement in an database. From that database a statistical model can be used to build a map. This is a ongoing research field and here is a good document that tells us about some techniques.

The R-Pi with an custom made Arduino that can communicate and be programmed directly from the GPIO.

Features

Todo:

  • The Arduino should be programmed without the reset button be pressed.
  • Java code that stores the measurements in a database
  • Another radio shield should be soldered.
  • A way of communicating with the radio beacons must be found. Wire might disturb the sensitive microphones as experienced.

No comments:

Post a Comment