## Project/Paper ideas for classes

### E5 Engineering Methodology

E5 Projects (Work in groups or individually)
You should pick a project that will take you about 8-12 hours to complete over about 3 weeks.

• Be creative and choose a project of your own design.
• Make a MatLab model of your arm that animates the motion on the screen as the arm moves in the real world.
• Make a SolidWorks model of your arm.
• Attach a joystick to your servoboard so that it controls the x,y position of the laser.
• Add a video camera and use it for feedback to track the motion of an object with the laser.
• SolidWorks model of Hicks
• The laser pointer is more accurate at some locations than others.  Do a sensitivity analysis (this involves lots of derivatives) to quantify it.
• Animate the formation of a Koch's snowflake, with smaller triangles gradually emerging out of the larger ones.
• Use SolidWorks (or Matlab) to generate a 3D Koch's snowflake (link)
• SolidWorks model of engine in the lobby of Hicks (This has been started).
• Build another structure with servos
• Model another structure with SolidWorks
• Cast parts for a mechanism from plastic.
• Build a model of a 3-D world and use MatLab to "fly" through it.
• Analyze stresses in your arm model (or some other structure).
• Explore some of the more advanced features of MatLab or SolidWorks.
• Create a virtual world model in SolidWorks and interact with it in MatLab.
• Model fluid flow in SolidWorks (I've never done this, so can't help much).
• Try last year's mini project - a robotic arm that draws (lab 5 (2008)has inverse kinematic, lab 7 describes the project)
• Check projects from 2008.

### E12 Linear Physical Systems Analysis

• Develop an FFT algorithm
• Spider on a spider web
• Fluid-flow measurement using the bolus method
• System ID for hand following target
• Triple pendulum
• Control of temperature in box
• Improve model of hot-box to account for changing density and specific heat of air with temperature
• Do system identification of straw-bale house using time domain (i.e. convolution) instead of frequency domain techniques.
• Do system identification of straw-bale house using frequency domain (i.e. Fourier) instead of time  domain techniques.
• Redo analysis of data from a previous lab using least squares minimization
• Determine friction coefficient of pendula from the double pendulum lab
• 2nd order temperature in box w/ Styrofoam peanut on thermocouple
• Hot rod
• Build an analog computer
• Investigate filtering of signals in 2 dimensions (i.e. images)
• Extend the "beads on a string" system to infinitesimal masses and distances and solve the resulting partial differential equation.
• Make a Matlab animation of some physical system - perhaps one of the vibratory systems from earlier in the semester (the double pendulum is one example).
• Analyze and simulate the double pendulum without the small angle approximation.
• Two dimensional convolutions - image processing.
• Compartmental modeling

### E15 Fundamentals of Digital Systems

• Design a simple filter in VHDL (averaging?)
• Design a correlator in VHDL - an application is DNA sequence analysis
• Use PIC to do some simple digital signal processing
• Build a printed circuit board to implement an alarm clock using LCD (or LED) and PIC.
• Implement a serial port in VHDL and connect to computer.
• Implement a buffered serial I/O on PIC using interrupts and RS-232 port.
• Design a very simple (4 bit?) processor in VHDL
• Generate a band-limited white noise source (PIC or VHDL)
• Write code to play music with PIC using interrupts and buzzer.
• Implement DTMF (Dual Tone-Multiple Frequency) on PIC using keypad to get same tones as a touch-tone phone.
• Control the angle of a motor using PIC and shaft encoder
• Display image on moving LED's
• Build a reaction timer using VHDL

### E58 Control Theory

• Fuzzy logic for control.
• Neural nets for control.
• Implement controller with programmable logic
• Optimal control.
• DSP processors, and their use in control systems.
• Control of non-linear systems.
• Efficient computer implementation of discrete controllers (the last 2-3 weeks will involve discrete control).
• Examine a specific system and design and implement a controller.
• Derive Mason's gain formula.
• Derive the Routh-Hurwitz criterion.
• Derive relationships for observability and/or controllability.
• Derive Ackerman's formula

### E71 Discrete Time Systems

• Implement the FFT on a DSP processor
• 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).

### E90Senior Design

• http://blogs.swarthmore.edu/cheever/category/projects/e90/
• Build hardware for an electronic load for engine in basement.
• Software/Hardware for logging of data over the web.
• Eye position detection
• Pupil size monitor
• Median Frequency of muscle firing
• ECG simulator w/ 60 Hz and random noise
• Foveated eye with VOR compensation (vision/hardware/software).
• Data acquisition network for HelioSystem (in solar lab)
• USB-based device for data acquistion and/or control.
• Implement a wireless network using Bluetooth technology
• Build artificial finger, w/ blood supply, for oximetry experiments
• Test artificial finger with hemoglobin, bilirubin
• New chassis (electromechanical) components for micromouse.
• Genetic algorithms for analog circuit design (hardware or software)

 ← Comments or Questions? Erik Cheever Engineering Department Swarthmore College