ESE297 - Intro to Undergraduate Research
From ESE497 Wiki
- Meeting Time: Wednesday 8:30 - 10 am
- Office Hours: Monday 8:30 - 10 am or by appointment
- Team Members: Alex Gu, Andrew Wiens, Alexander Benjamin, Anisha Rastogi, Charlie Kang, Edison Kociu, Lisa Goldman, Michael Scholl, Sam Fok, Sarah Fern, Sophia (Xinyuan) Cui, Will Donnelly
- PhD Supervisor: Sandeep, Andrew, Phani
- Faculty Supervisor: Arye Nehorai
- Goal:
- Part1: Case Study - Study acoustic source localization using Microphone array
- Background and Theory
- Data Acquisition Basics
- Introduction to Digital Signal Processing Tools
- Graphical User Interface and Robot Control
- Part2: Implement algorithm using sbRIO robot and microphone array
- Part1: Case Study - Study acoustic source localization using Microphone array
Lecture Notes
- Topic 1: Acoustic Source Location Background and Theory
- Additional references:
- Task 1: Read the material that we discussed in our meeting today and the additional references listed above.
- Task 2: Derive the expressions presented in slide 10.
- Topic 2: Data Acquisition Basics
- LabVIEW Tutorial
- Task 3 - Finish Exercises
- Data Acquisition Basics
- Task 4 - Finish exercise
- Task 5 (due 2/10/2010)
- Connect wires from A00 and AO1 to AI0+ and AI1+. Make sure that the Prototyping Power is on. Modify your vi to collect samples from both AI0 and AI1. Then open DelayedChirp2DAC.vi and run this vi. Zoom in in the time and frequency domain to examine the waveforms in detail. Describe in detail what you see. Measure the difference in time between both channels. Hint: Start and stop your Data Acquisition vi until the entire signal is in the middle of the buffer.
- Plot the Cross Correlation of the 2 channels and see if the peak is shifted from the middle, the number of samples you measured from the previous step.
- Hints:
- Functions -> Express -> Conv & Coff -> Corss Correlation
- This function requires that you extract the 2 channels from the DDT. To do this, use Functiions -> Express -> Sig Manip -> Single Waveform -> Channel 0 and then again for Channel 1. Connect the outputs of these to the X and Y inputs.
- Hints:
- Plot the Spectrogram of Channel 0.
- Hint: There is a good Spectrogram example that ships with LabVIEW. Go to Help -> Find Examples... and search for Spectrogram -> STFT Spectrogram Demo.vi. You can copy from this example and paste it into your code.
- LabVIEW Tutorial
- Topic 3: Filters Basics
- Tutorial
- Task 6- Finish exercise from tutorial.
- Task 7- Use the signal processing palette in lab view to generate sinusoid waveform (Signal Processing -> Waveform Generation -> Sine Waveform) with two different frequencies and filter this signal to obtain two sinusoid signals corresponding to two frequencies of the input signal. Add Gaussian noise to this signal (Signal Processing -> Waveform Generation -> Gaussian White noise). Plot the spectrum (Express-> Signal Analysis -> Spectrum) of this signal and identify the frequencies corresponding to signal and noise. Use an appropriate filter (Express -> Signal Analysis -> Filter) to extract the original signal. Repeat with various filters and with increasing noise power. What is the relationship between the Standard Deviation of the WGN and the amplitude of the noise (Express -> Signal Analysis -> Histogram might help)? Note: If your graph X-axis is in absolute time instead of seconds, right click on the graph and select Properties -> Display Format -> X-Axis and set it to SI units.
- Tutorial
LabVIEW for Robotics Starter Kit
- LabVIEW for Robotics Starter Kit Tutorial - Running the demo Roaming.vi (obstacle avoidance)
- sbRIO-9631 User Manual
- Robotic Sensing LabVIEW Example Code
- sbRIO Training Module from National Instruments - this is written for a different board but there is still a lot of good reference material in this.
- Really simple FPGA/LabVIEW Real-Time example - Blinks the LED on the sbRIO and displays the value of a 32 bit counter running off a 40 MHz clock sampled every 100 ms.
- Blink.vi - add this to your project under FPGA Target - run this first. This will take a while to compile
- BlinkRT.vi - add this to your project under Starter Kit sbRIO - then run this.
- Data Acquisition Example
- Navigation Example
- Wireless Networking
- Shared Variables
- Robotic Sensing LabVIEW Example Code