Sound Source Localization & Surround System A Blackfin 533 DSP Application by Jordan Arnold & Adam Hanafi.

Slides:



Advertisements
Similar presentations
MUSC1010 – WEEK 5 MIDI sequencing in Pro Tools. Cycle Record including MIDI Merge Follow the steps under “STARTING WITH MIDI & SOFT-SYNTHS” in last week’s.
Advertisements

Heat Capacity II Sound Velocity Method CHEM 4396 (W237) Physical Chemistry Laboratory Fall 2009 Instructor: Dr. Aleksey I. Filin.
Int 2 Multimedia Revision. Digitised Sound Analogue sound recorded from person, or real instruments.
Proximity Sensor Theremin Khoa Nguyen Walter Hudson Dennis Gilbert G. Hewage Thushara.
Final Year Project Progress January 2007 By Daire O’Neill 4EE.
I Power Higher Computing Multimedia technology Audio.
Rotary Encoder. Wikipedia- Definition  A rotary encoder, also called a shaft encoder, is an electro- mechanical device that converts the angular position.
Implementation of an Audio Reverberation Algorithm
Investigating the Use of a Variable-Pitch Wind Turbine to Optimize Power Output Under Varying Wind Conditions. Galen Maly Yorktown High School.
Navigating the BOE-BOT
Live Sound Training. Essential Question: “How do we get the entire audience to hear exactly what we want them to hear?”
Proximity Sensor Board: Final Report Sarat Bhogavalli Nathan Ellefsen Ryan Fig Michel Kinsy Mentor: John Winters.
Rhythm2 Redefines the Category
Top Level System Block Diagram BSS Block Diagram Abstract In today's expanding business environment, conference call technology has become an integral.
MICE Tracker Front End Progress Tracker Data Readout Basics Progress in Increasing Fraction of Muons Tracker Can Record Determination of Recordable Muons.
Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab Project performed by: Safi Seid-Ahmad Emile.
EE332 Junior Project Sound Recorder Spring 2001 Chris Brophy Matt Olinger Instructor: S. D. Gutschlag 4/26/01.
University of Pennsylvania Department of Electrical and Systems Engineering ABSTRACT: Quantifying and measuring certain aspects of a golf swing is a helpful.
Senior Project – Computer Engineering Integrated Workout Shoe Peter Katlic Advisor – Prof. Cotter Development: Consisting of an 8051 microcontroller.
In general, H 1 (f) and H 2 (f) can be chosen to best suit the application. For example, to accentuate the signals at the frequencies in which the signal-to-noise.
CSP Auditory input processing 1 Auditory input processing Lecturer: Smilen Dimitrov Cross-sensorial processing – MED7.
Science of Sound and Music. How can we measure the speed of something?
Topic 28: Direct Sensing 28.1 Sensing devices
Hardware Architecture of a real-world Digital Signal Processing platform: ADSP BlackFin Processor, Software Development on DSPs, and Signal Processing.
Experimental determination of motor model parameters ETEC6419.
Confidential / Property of Danfoss Drives A/S DD-SMT/DEJ 1 Drives Division VLT ® AutomationDrive FC302 PM Motors Configuration procedure By:
Department of Electrical Engineering, Southern Taiwan University Robotic Interaction Learning Lab 1 The optimization of the application of fuzzy ant colony.
Yan Carlo Rodriguez ECE 3551 Final Project.  To make a program that will change the person voice when using the microphone.  Make the LEDs turn on when.
Dan Lopez Dan Lopez Ben Rohner Ben Rohner Erin Loutzenhiser Erin Loutzenhiser.
Physics 2225 Minilab 1: A Look at Sound Purpose Visualize the wavelike nature of sound by using a sound-to-voltage transducer (otherwise known as a microphone….).
Infinity-project.org The Institute for Engineering Education Engineering Education for today’s classroom. 1 The Infinity VAB TM for INFINITY Tutorial Introduction.
JEG AUDIO Justin McDowell Edward Jones Greg Fagula – SoC FPGA Design Laboratory (Final Project)
EE 113D Fall 2008 Patrick Lundquist Ryan Wong
Estimation of Sound Source Direction Using Parabolic Reflection Board 2008 RISP International Workshop on Nonlinear Circuits and Signal Processing (NCSP’08)
Digitalized Surround Sound Effects Using ADSP BF 533 Kunal Gupta ECE 3551, 03 Fall, 2006.
Chapter 2 Basic Principle of PLC PLC Configuration &Function   Basic Configuration  CPU  Memory  Programming Interface  Communication.
Final Presentation Final Presentation OFDM implementation and performance test Performed by: Tomer Ben Oz Ariel Shleifer Guided by: Mony Orbach Duration:
Logic Analyzer ECE-4220 Real-Time Embedded Systems Final Project Dallas Fletchall.
Group Project: Water Turbidity Meter Group B. Outline Project Statement: “Design and construct a turbidity measuring and displaying device based on the.
By Danny Matthews Supervised by Dr Des Watson. 8 Bit 8 Bit console released in Million 60 Million Units Sold 1000 Released Titles Over 1000 Released.
Active Microphone with Parabolic Reflection Board for Estimation of Sound Source Direction Tetsuya Takiguchi, Ryoichi Takashima and Yasuo Ariki Organization.
Time (days)Distance (meters) The table shows the movement of a glacier over six days.
Microcomputer Systems Final Project “Speaker and Sound Modulation”
Electronic. Analog Vs. Digital Analog –Continuous –Can take on any values in a given range –Very susceptible to noise Digital –Discrete –Can only take.
PHY 235 Robotics Workshop Day 5 Distance Sensing Using The Ultrasonic Ping Sensor.
Loop Board ECE 3551 Final Project by Brian Robl. Objectives Use the Blackfin BF533 EZ-KIT to create a 4 track audio looper.  Utilize 32MB of external.
BME 353 – BIOMEDICAL MEASUREMENTS AND INSTRUMENTATION MEASUREMENT PRINCIPLES.
Alpha/Numeric Keypad Functions using AVR Preliminary Design Review Luke R. Morgan ECE /17/2008.
Circular Buffer Audio Generation Using the Karplus-Strong String Synthesis Algorithm.
ArgonneResult_ ppt1 Comparison of data and simulation of Argonne Beam Test July 10, 2004 Tsunefumi Mizuno
ECE 3551 Microcomputer Systems 1 Final Project Morse Code Reader Instructor: Dr. Veton Kepuska Term: Fall 2006 By: Erik Lindman & Rong Li.
By: Ryan Etwaru. Demonstrate the ability to implement functionality on a BlackFin Processor Implement on input signal: Audio Effects Echo Vibrato Change.
1 Introduction to Haptics Introduction to the Hapkit board Allison M. Okamura Stanford University.
Istituto Tecnico Industriale A.Monaco EURLAB Object Detection Object Detection by Ultrasonic How to install and program a ultra sonic sensor with Arduino.
Istituto Tecnico Industriale A.Monaco EURLAB Object Detection Object Detection by Ultrasonic How to install and program a ultra sonic sensor with Arduino.
ARENA08 Roma June 2008 Francesco Simeone (Francesco Simeone INFN Roma) Beam-forming and matched filter techniques.
ADAPTIVE BABY MONITORING SYSTEM Team 56 Michael Qiu, Luis Ramirez, Yueyang Lin ECE 445 Senior Design May 3, 2016.
Playing the Piano on a black fin Scott Pio ECE 3551 – Microcomputers Dr. Kepuska.
**Click ‘Allow’ if this appears
Exploring Computer Science Lesson 6-5
Store Multiple Results?
Andrew Lash ECE 3551 DSP on BlackFin BF533
Comprehensive Design Review
Precise Surround Setup w/ Microphone
Digital Acquisition of Analog Signals – A Practical Guide
EFC Media Center Training
Exploring Computer Science Lesson 6-5
Electrical traditional Chinese Instrument - Xun
EXPRESSIONS, PAUSES AND SOUNDS
Design of Experiments CHM 585 Chapter 15.
Presentation transcript:

Sound Source Localization & Surround System A Blackfin 533 DSP Application by Jordan Arnold & Adam Hanafi

Objectives To create a program capable of the following: Determining the angle of incidence of a source sound using two-microphone input Play back sound at any perceived angle using multiple speaker output Record a played sound and its angle(s) over a reasonable duration And to integrate these three functions, to record and playback sound with position.

Program Setup: This program requires the use of two microphones, which must be connected to the two input channels of the board. Only the left input channels are used for input It also requires the use of three speakers, which are connected to channel 0 left, channel 0 right, and channel 1 left.

Program Interface: Control of the program functions is achieved through the use of the four buttons, PF8-11. PF8 starts the system calibration. This accounts for any delay inherent to the setup, and should be run before any recording is performed. A test sound must be played at 90 degrees to the two microphones, after which the LEDs will light until the calibration is complete. PF9 enables surround sound testing. This will play whatever sound is on the Channel 0 Input, sweeping the output angle from 0 to 180 degrees. Pressing the button again disables this operation.

Program Interface II: PF10 starts the board recording. It will record a played sound through both microphones for five seconds, then calculate the angle(s) of incidence of that sound. This calculation is expected to take approximately 1Min. 30Secs. The LEDs will light until the calculation is completed. PF11 triggers playback of the recorded sound. The most recent recording will be output through the three speakers, at the correct angle(s) of incidence as calculated by the record function.

Implementation I: Cross-Correlation The program calculates the angle of incidence of a sound based on the time delay between the two microphones. To accomplish this, a cross-correlation is performed between the two input samples at all possible delays, to find the maximum correlation. The formula is: Where d is the delay, x and y are the two input arrays, and mean_x and mean_ y are their averages. This formula will have a maximum value at the correct d for any given two sound samples.

Implementation II: Angle Calculation The angle is calculated based on the delay found. Given d, the delay in # of samples, the angle of incidence was: arccos( (d/s * v_sound) /distance) Where s is the sample rate in Hz, v_sound is the speed of sound in air in m/s, and distance is the distance between the two microphones in meters. Based on this formula, using the maximum angles of 0 and 180 degrees, the maximum delay can be calculated. For our setup, this meant that the delay must be between 42 and -42 samples.

Implementation III: Angled Playback To play a sound at an angle, the relative gains of two speakers are adjusted. The sound will seem to be in between the two, closer to the louder speaker. Each two speakers represent 90 degrees, so three are required for 180 degrees and four for 360. Since the microphone correlation can only detect angles over a 180 degree sweep, the playback is also limited to 180 degrees. For convenience, the gain of the louder speaker is fixed to 1, and the other speaker is calculated accordingly: If phi > 0: If phi <= 0:

Optimization: The calculation of angles and their respective gains over a recorded sound is very time-consuming for the processor, so the following measures were taken to improve performance: A fixed number of potential gains were calculated and stored in a lookup table. There are 100 possible gains over the possible 180 degrees of playback. All variables necessary to the calculation functions were declared globally, so as not to waste time creating them on each call The various fractions of π used by the program were stored as constants to prevent unnecessary division operations.