- Implement the FFT on a DSP processor and display result.
- Study adaptive filters and implement one.
- Program the DSP processor to implement a DTMF coder and/or decoder.
- Study wavelets, and demonstrate their use
- Explore computer vision techniques based on DSP principles
- How can DSP algorithms be implemented on Gate Arrays. http//www.mathworks.com/digest_xilinx_training
- Implement a filter in Verilog
- Describe, in some depth, architectural features of our DSP processor designed particularly for DSP work, and write some code to demonstrate.
- Write a very efficient (assembly language) FIR filter for a DSP
- Code up a prime factor FFT (Matlab or C)
- Report on the advantages of Delta-Sigma (oversampling) D/A and A/D convertors
- Create a filter design package that generates source code for the DSP (ie, given a specified frequency response, the package generates a program that will implement that filter)
- Design a system that performs either µ-law or A-law companding, then test it.
- Construct a system that produces band-limited white noise. This would be very useful for the department for a wide variety of purposes.
- Perform data compression using Linear Predictive Coding, Huffman Coding, or some other compression algorithm.
- Show how quantization affects pole location in various realizations of IIR filters.
- Explore how quantization affect the performance of FIR filters.
- Description (and implementation?) of Parks-McClellan algorithm for filter design.
- Research/Implement Linear Predictive Coding
- Research Speech Analysis (tools and techniques used).
- Implement an IIR filter on a fixed point DSP processor and investigate scaling of coefficients.
- How can approximately linear phase IIR filters be designed.
- Detect the location of a sound by employing multiple microphones (or use multiple speakers to “steer” sound).
Source: Watteam Home – Watteam
Design a wearable fitness monitor that measure pulse rate and oxygen saturation level of blood.
Design some kind of sensing network using the TI sensor tag – available in bluetooth and wifi.
I2S is a popular digital interface for audio, but is not supported on many microcontrollers. Design an interface from I2S to SPI (or I2C) that uses the smallest possible processor to do the work. Build a PCB/develop software….
See file here The file links to a paper entitled “Extracting the fingering and the plucking points on a guitar string from a recording”. Either explore the process (E12 project), or implement it (E71) in real time (E90)
Research Bond graphs – a technique developed for handling linear systems (mechanical, electrical…) under a single framework. https://en.wikipedia.org/wiki/Bond_graph
The dynamics of the voltage across a nerve membrane are well defined by a set of three coupled non-linear equations. MATLAB (or another tool) can be used to model these equations and accurately predict the dynamics of a nerve firing.
Make an animation (either MATLAB or web-based) of the inner ear example from class. This involved some simulation and some relatively simple graphics programming. You could also update and expand this web page (http://www.swarthmore.edu/NatSci/echeeve1/Ref/InEar/InnerEar.html) to include the animation.
The Makey Makey is essential a generalized input device – a touch keyboard that can be used in many different ways.
Use this to get some ideas, though some are rather complex and/or expensive.
Source: 20 Unbelievable Arduino Projects
Search for kits and projects on the Adafruit website
The Arduino is a cheap electronics board that allows you to make your own electronics without a ton of coding experience. We love the Arduino, but like any electronics project, coming up with ideas for what to build is tough. Whether you’re just looking for inspiration or just need a place to start, let’s take a look at ten of the coolest Arduino projects.
Source: Top 10 Kickass Arduino Projects
Note: even some of the ones marked Easy may not be so easy – also some require expensive extras.
Source: Arduino Playground – Ideas
The servo’s we have used only have about 180 degrees of rotation. You can make some fairly simple changes to modify the servo to rotate continuously so it could be used to drive wheels on a robot, or any other application that involves continuous rotation.
Build a smoke detector that turns off when you say “I’m cooking”. Microprocessor/signal processing.
Develop a low power (battery driven) wireless device/sensor.
The Bluetooth Smart SensorTag is designed to shorten the design time for Bluetooth App development from months to hours by allowing App developers to write Apps that enable and use advanced sensors directly from a smartphone without any firmware or embedded software development.
Source: Simplelink SensorTag – TI.com
Explore modes on a drumhead – similar to modes on a guitar string, but in 2 dimensions.
Or – do a search for cloth physics.
This is very similar to the spider on a web project idea.
Pulse Oximeters – Maxim. Also – TI has information
Check the video below. It is a simple pendulum, but reacts to magnets near the base. A non-linear problem to be modeled with RK – but not too difficult. http://en.wikipedia.org/wiki/Force_between_magnets#Magnetic_dipole-dipole_interaction
The animation system at http://lpsa.swarthmore.edu/Animations/ uses a fixed step size animation. Alter the code to use a variable step size.
Use the animation system (http://lpsa.swarthmore.edu/Animations/) developed by a student a few years ago to develop animations for some of the homework problems.
Use simulink and MATLAB together to simulate a system (and animate it). You could also do it all in MATLAB. The coupled pendulum system comes to mind.
Simulate the system shown using Runge-Kutta (it is nonlinear, but not too complex). http://en.wikipedia.org/wiki/Force_between_magnets#Magnetic_dipole-dipole_interaction
Z-Transforms are related to the Laplace Transform, but are used for discrete time systems (i.e., when a computer is used to sample a signal). This would be more research then physical.