comp 232: Real-time tracker project proposal
 
Project description
The objective is to track an object such as a box in a 2 meter square area. Two sensors will be used to detect the distance from the sensor to the object. The (x, y) coordinate of the object can be determined from the distances. The sensors will work like a radar, whereby a sound is transmitted from a speaker and the echo received by a microphone. The distance can be calculated from the time of flight and speed of sound (333 m/s). 

The tracking task will be composed of multiple tasks executing on a DSP board, which is specialized for audio input and output. The speakers and microphones can easily be interfaced to the DSP board (ADSP 21160 EZ-kit).

The system will be able to work on a single processor, however, with some luck it might work on a multi-processor system. In the multiprocessor case, the two processors would each make a distance measurement. Another process would use shared memory to gather distances from both processes and compute the tracking coordinates.
 
 
 

Final Paper

Table of Contents:


Tracking algorithm [top]

Two sensors are a known distance apart. Each works at a different frequency to avoid interference with the distance measurement. The received signal will be filtered for the transmitted frequency. Hopefully noise in the room will not interfere with the distance measurement.

The picture shows the three distances (d1...d3) needed to calculate the (x, y) position in the range of the sensors. 
 

Reporting tracked object's position [top]
The output of the system is the (x, y) coordinate of the tracked object. The output can be printed to the terminal the DSP board is connected to. There are two possibilities for the output
  • I might not be able to have enough control over the print, in other words it will block too long. 
  • An alternative output is generate a sound with varying frequency. There would be two sounds for x and y; the frequency would be proportional to the measured distance (higher frequency means further away). 
Task Set [top]
The task set will be implemented as a cyclic executive.
  1. Left sensor that measures distance. Could possibly broken into two tasks: one creates the sound wave; the second task receives  the echo.
  2. Right sensor that measures distance the same way as the left sensor. 
  3. Reporting task that calculates (x, y) coordinates and reports it to the user.
  4. One push button interrupt that can be used to blink a light or an other arbitrary task.
Current Status [top]
I have started to investigate different aspects of the project.
  • I have the microphones, speakers, and DSP board.
  • I have familiarized myself with the development environment 
Unknowns [top]
The tracking algorithm has to be further investigated, although I am choosing one that is simple to implement and test. 

I would like a multiprocessor solution. I have read the documentation and pieced together the memory definition and loading; however, there is no multiprocessor that ties everything together. Without an example the implementation will be too time consuming.


Wow, and if it all does not work [top]

In the case it does not all work, there will be milestones, which (hopefully) give invaluable insights into designing real-time systems.
  • I can learn about the advantages of dividing the tracking application into individual tasks. 
  • The task set’s execution time will need to be measured to determine the utilization and feasibility. 
  • More to come as I learn more
Plan [top]
These are the steps to compete the project:
  • Get a basic distance measurement to work
  • Develop a software engineering infrstructure for multiple tasks
  • Implement the tasks
  • Find a non-blocking printf or equivalent shorter blocking function like getc
  • Evaluate the task properties such as dependencies, periods and execution times. 
  • Interface and integrate the tasks.
  • Investigate multiprocesing implementation.
 top * home * academics
dorian miller, 8/23/2001
"To err is human, to forgive, beyond the scope of the Operating System"