|
Projects
| Fabrication/Characterization of Organic Memories | 2007 | |
As a part-time researcher with Dr. Misra, I was involved in the fabrication and electrical characterization of novel memory devices based on redox-active molecules and conductance-switching polymer/nanoparticle complexes.
- Performed electrical experiments including impedance spectroscopy, I-V, cyclic voltammetry, and pulsed-gate measurements.
- Used various deposition techniques: atomic-layer deposition (ALD), sputtering, and thermal evaporation.
- Trained on scanning-electron microscope (SEM)
|
| Seawolf II: Autonomous Underwater Vehicle | 2006-2007 | |
This is the second generation AUV for the Underwater Robotics Club, a club which I founded in 2004. The new vehicle includes several improvements over Seawolf I, and it was completely designed and built by NCSU students. It scored 3rd place in craftsmanship and 9th place overall at the AUVSI Autonomous Underwater Vehicle Competition.
- Built a second-generation acoustic navigation system using a Renesas M16C microcontroller.
- Programmed DSP algorithms for acoustic navigation.
- Mentored a senior design team who developed analog instrumentation for acoustic navigation.
- Served as Club Manager.
- Primary author of technical paper and website.
| | AUVSI Technical Paper | Website | Seawolf II Video | Technician News Article |
| Wireless Neural Stimulation Platform | 2005-2006 | |
This project involved implementing a new wireless telemetry for Interestim-2B, an implantable multi-site cortical stimulator. We demonstrated the effectiveness of this system by applying it as a simplified visual prosthesis. By electrically stimulating the visual cortex, perceptions of light known as 'phosphenes' can be triggered. Our system could stimulate up to 128 different sites.
- Wrote image processing algorithms which generated frequency-modulated stimuli across 128 sites based on input from a webcam
- Assisted with testing on rat brain tissue slices at UNC-Chapel Hill's Systems Neuroscience Lab
- Built a prototype power/data transmission system which used magnetic telemetry via planar Litz wire coils (pictured)
- Built an LED array which connected to the stimulator outputs and displayed stimulus patterns (pictured)
- Primary author of paper on this work presented at the IEEE Engineering and Medicine in Biology (EMBS) 2006 Conference
| | IEEE EMBS 2006 Conference Paper | Presentation | Poster |
| Gastrointestinal Pacemaker System | 2005-2006 | |
By electrically stimulating the stomach muscles, the digestion rate can be altered. This is a viable treatment for morbid obesity and a variety of motility disorders. Our research focused on the development of a closed-loop pacemaker system for digestive regulation. This was a collaboration with gastroenterologists at the University of Texas, Medical Branch.
- Helped to develop a prototype device capable of recording electrogastrogram (EGG) signals and stimulating the stomach
- Developed a USB interface for the wireless transceiver
- Developed an oscilloscope-like UI on the PC which plotted EGG signals and determined when to stimulate (pictured)
| | Poster |
| MEMS Piezoelectric Vibrational Energy Scavengers | 2006 | |
Piezoelectrics are a unique class of ceramics which, when under strain, generate a voltage proportional to strain. By exploiting this property, microdevices which generate power from ambient vibrational energy can be realized. Such devices can be used to power sensor nodes, medical implants, or a range of other small devices without batteries. This class project investigated a novel method of improving energy output of these devices using chemical adsorpsion to dynamically modify the device's resonant frequency.
- Conducted a literature review of availible energy scanvenger techniques.
- Investigated different methods of improving power output in piezoelectric cantilever scavengers.
- Wrote a proposal for a device which used palladium-hydrogen adsorpsion to modify a cantilever's resonant frequency to match frequency of excitation.
- Grade received: A
| | Lit Review | Project Proposal |
| Phoneme-Matching ASIC for Speech Recognition | 2006 | |
During speech recognition, input audio is first broken up into a series of phonemes. This class project focused on the next stage, which is matching incoming phonemes to dictionary words, accounting for the fact that some words may contain the phonemes for other words, and based on the strength of the phoneme matches, the ASIC must decide the most appropriate phrase.
- Implemented hardware sorting and queuing algorithms for phoneme/phrase matching in Verilog
- Synthesized design using Synopsys and optimized timing, ensuring that there would be no setup/hold violations
- Co-authored extensive final report
- Grade received: A
| | Final Report |
| Op-Amp Design and Characterization | 2006 | |
This class project involved the PSPICE design and simulation of a differential-input two-stage compensated op-amp. Because this project is still being assigned at NCSU, I cannot post my report for download.
- Designed transistor scaling and biasing for optimal op-amp operation
- Analyzed frequency response, evaluated common-mode swing, and added Miller compensation
- Compared simulation results with theoretical calculations
- Grade received: A
| | Project Assignment |
| USB Interface for Neural Stimulator | 2005 | |
Our USB 2.0 interface replaced a LabView DAQ as the PC interface for Dr. Ghovanloo's Interestim-2B neural stimulator.
- Prototyped system with Cypress development kit
- Wrote an Windows GUI and developed a scripting language to specify stimulation commands
- Transferred design onto custom PCB
| | Final Report | Poster |
| Seawolf I: Autonomous Underwater Vehicle | 2005 | |
I started the Underwater Robotics Club in 2004. Our first vehicle, Seawolf I, was a collaborative effort with a local robotics company, Vortex HC, LLC. With its 3 rotating thrusters it had 6 degrees of freedom. It also boasted a fuzzy logic control system; image processing that could perform light detection, line following, and shape recognition; and an acoustic navigation system.
- Founded the Underwater Robotics Club and led a partnership with Vortex HC, LLC for the development of Seawolf I
- Developed an acoustic navigation system based around a TMS320 300MHz DSP
- Assisted with high-density SMT PCB design and population
- Designed PCB for power distribution and did most of the electronics wiring on the vehicle
- Assisted with Linux administration for vehicle's PC/104 computer
| | AUVSI Technical Paper | URC Website | Seawolf I Video |
| 8-Way Velocity-Sensitive MIDI Drum Pads | 2005 | |
The Musical Instrument Digital Interface (MIDI) is a simple serial protocol that allows a variety of electronic music devices to share real-time music data. This project used a Renesas microcontroller to generate MIDI drum notes based on drumstick strikes to a piezoelectric pad sensor.
- Developed firmware for signal acquisition, MIDI transmission, and a simple UI
- Constructed piezoelectric drum pads with a rubber strike zone
- Grade received: A
| | Final Report |
| Identifying Soda Cans Using Neural Networks | 2005 | |
Neural networks are particularly well-suited for pattern recognition. This project used a region-feature neural network (RFNN) to distinguish among seven different kinds of soda cans. The images in the traning and test sets were all 50x30 grayscale pixels, each with a slightly different perspective on the can.
- Configured and trained the RFNN software to identify seven different kinds of soda cans.
- Grade received: A
| | Final Report |
| Fuzzy Logic Spell Checker | 2005 | |
In this project, I wrote software in C# which identified four different types of misspellings: extra/missing letter, swapped letters, commonly confused phonetics, and keyboard misstrike (hitting an adjacent letter on the keyboard). Candidate words were ranked according to fuzzy rules. My software, along with an 8000+ word dictionary, is availible for download.
- Implemented spell-checking software in C# using fuzzy rules
- Grade received: A
| | C# Code and Executable |
| Genetic Algorithm Development Using MATLAB | 2005 | |
Genetic algorithms are based on evolutionary theory. This project involved using a genetic algorithm to train the weights of a neural network. First, a random population of weights is generated. Each set of weights in the population is evaluated in the neural network and the sets which produce the lowest overall error (i.e., the "fittest") generate offspring (crossover) and proceed to the next generation. A certain amount of random mutation also occurs with each generation. In this way, the overall error of the weights decrease with each generation. The algorithm continues until a desired level of accuracy is acheived.
- Used MATLAB's Genetic Algorithm Toolbox to train a neural network (implemented with MATLAB'S NN Toolbox) to identify four different binary input strings (specified at runtime)
- Grade received: A
| | MATLAB Code |
| Implementation of a 16-bit CPU Using Verilog | 2004 | |
The LC-3 is a simple 16-bit CPU presented in the book Introduction to Computer Organization by Patt & Patel. This RISC processor consists of a 16-bit Von Neumann memory space, ALU, memory-mapped I/O, and register file. This project is still being assigned at NCSU, so my code is not availiable online.
- Wrote Verilog code to implement the functionality of the LC-3 processor
- Wrote machine-language test cases and verified processor operation in simulation
- Grade received: A
|
| ASP.NET Product Lifecycle Management System | 2004 | |
ABB's switchgear division needed a way to track customer quotes, orders, and deployed products. The system also needed to track customer feedback throughout the lifetime of the product. I developed a database-driven web application for tracking this information.
- Designed SQL Server 2000 database for customer, quote, order, and feedback tracking
- Developed an ASP.NET front-end for the system
- Collaborated with potential users of the system
- Led phone conferences with Microsoft representatives
| | Business Intelligence Presentation |
| File Compression/Decompression Algorithm Using Huffman Coding | 2004 | |
Huffman coding is a lossless compression algorithm using a variable length code table to encode symbols (such as ASCII characters). The code is derived based on the probability of the symbol occuring in the input data, so symbols which occur more frequently have shorter length codes in the compressed file.
- Developed compression and decompression programs in Java
- Bonus points awarded for being most efficient implementation in class
- Grade Received: A+
| | Java Code |
| Assembly Language Disassembler for LC-3 CPU | 2004 | |
In this project, I wrote a disassembler program for the LC-3 using assembly language. The user could enter assembly mnemonics using the keyboard and the corresponding machine code would be output to the display. This project is still being assigned at NCSU, so my code is not availiable online.
|
| Flat-Rate Pricing Software for HVAC Contractors | 2002-2004 | |
There is a market for ready-to-use flat-rate pricing systems in service-based businesses like heating, ventilation, and air conditioning (HVAC) contractors. I helped start this company and developed the software which produced the company's first product, a customizable flat-rate pricing manual for HVAC contractors. Five years later, EM Service is still selling this product.
- Wrote software using SQL Server and VB6 for tracking parts prices and establishing flat-rate HVAC repair tasks
- Software printed "Advantage Comfort Pricing" manuals with a number of different customization options
- Developed software specifications for EM Service Manager business management software
- Helped write promotional materials for product
| | ACP Promo Booklet | EM Service Manager Software Specifications | ACP Product Webpage |
| Customer Management Database | 2003 | |
| I developed a Microsoft Access database for tracking customers, sales calls, and orders. |
| EM Service, Ltd. Business Plan and Website | 2003 | |
With a friend from high school, I started a software company for service-based businesses. Our first product was a flat-rate pricing manual for HVAC businesses.
- Helped conduct market analysis and review competition
- Co-authored business plan
- Developed marketing website design and content
| | EM Business Plan | Website |
|