| Project Name: "Inertial Rocket Navigation System" |
|
Course: ECE 476
Semester: Spring 2008
Instructor:
Bruce Land |
Student Team Member/s:
Marc Udoff (mlu3)
Shawn Liang (xl78)
|
|
Description: The purpose of this project was to design a dynamically controlled parachute guidance system using an Atmel ATmega32 microcontroller. A set of avionic hardware was built and software programmed in addition to the medium-sized model rocket launch vehicle. For this project, we tried to demonstrate an affordable guidance control system that carried and landed a scientific payload at a targeted site. To achieve this task we built a rocket and attached the microcontroller to a series of sensors to obtain flight data. The sensor data determined where the rocket is at all times (and was responsible for setting off the ejection charge for the parachute at apogee). After the custom-made steerable parachute is opened, two stepper motors were used to guide the rocket to its destination (where it started).
[read more]
|
| Project Name: "Customizable Virtual Keyboard" |
|
Course: ECE 476
Semester: Spring 2008
Instructor:
Bruce Land |
Student Team Member/s:
Naweed Paya (nap33)
Venkata Ganesan (vsg3)
|
|
Description: It is becoming increasingly difficult for users to interact with the slew of portable gadgets they carry, especially in the area of text entry. Although miniature displays and keyboards make some portable devices, such as cell phones and PDAs, amazingly small, users’ hands do not shrink accordingly.
To solve this problem, we proposed a Virtual Keyboard. This device will replace a physical keypad with a customizable keyboard printed on a standard A3 size paper whose “keystrokes” are read and translated to real input. This virtual keyboard can be placed on any flat surface, such as desktops, airplane tray tables, kitchen counters, etc. and can theoretically be interfaced with any computing device that requires text entry. This would eliminate the need to carry anything around and also prevent any chance of mechanical damage to the keypad in harsh environments if a simple lamination is used to protect the paper. In addition, buttons on this device can be reconfigured on-the-fly to give a new keyboard layout using a GUI we built in Java and then transferring that data to the device using a computer’s serial port.
[read more]
|
| Project Name: "Adaptive 60Hz Noise Cancellation" |
|
Course: ECE 476
Semester: Spring 2008
Instructor:
Bruce Land |
Student Team Member/s:
Robert Ochshorn (rmo25)
Kyle Wesson (kdw24)
|
|
Description: 60 Hz noise is frustrating for anyone trying to make sensitive measurements of low voltage processes (eg. Electrocardiogram measurements), record audio from electrical instruments (eg. guitar "hum"), or use electronic systems near an AC transformer. The most common way to eliminate the noise is through a 60 Hz notch filter. Because there are inherent variations in the 60 Hz signal, a notch filter is not robust against signal source frequency changes. However, using a microcontroller such as the ATMega32 to monitor a reference signal and output an out-of-phase signal to cancel the noise, we overcome the limitations of a single-frequency selective notch filter and can achieve at least 15 dB cancellation of 60 Hz component in the contaminated signal. Digital Signal Processors (DSPs) or Field Programmable Gate Arrays (FPGAs) can be programmed for this purpose, but are substantially more expensive than the ATMega32.
[read more]
|
| Project Name: "On-Board Diagnostics Reader" |
|
Course: ECE 476
Semester: Spring 2008
Instructor:
Bruce Land |
Student Team Member/s:
Jared Frisch (jrf42)
Matthew Richwine (mpr32)
|
|
Description: Our project is a hand-held device that is capable of communicating with any vehicle that uses pulse-width modulation (PWM) data-link layer. Such devices are commonly referred to as On-Board Diagnostic scanners. Vehicles that typically fall into this category are Fords made between 1996 and 2007. In our case, we used a 2003 Ford Mustang as the test vehicle for our device.
[read more]
|
| Project Name: "Data Acquisition System With Controller Area Network and SD Card" |
|
Course: ECE 476
Semester: Spring 2008
Instructor:
Bruce Land |
Student Team Member/s:
David Porter (dhp22)
Steven Gilson (spg32)
|
|
Description: This project implements a high speed data acquisition system using Mega32 microcontrollers and a Controller Area Network (CAN).
Recording data is essential to testing and developing a racecar. Recording what each sensor is doing can tell an engineering how the car is performing, and most importantly, how to make it faster. A well outfitted car can have many sensors, with Formula One cars having well over 100 sensors. Cornell’s FSAE car has over 50 sensors on it, many of which require high sampling rates to be useful. Commercial data acquisition systems are either expensive, slow, or have few inputs. A solution to this problem had been attempted by previous 476 students (Karl Antle and Ryan Mcdaniel) using a PIC18F2585, but it was only able to log reliably at 150 Hz. Many sensors on the car require much higher sampling rates, as the sensors are recording events occurring in a very short period of time. For example, when looking at a sharp bump using rocker position the event may only last .05 seconds when driving quickly. If taking the derivative of the data a very high sampling rate is required to give useful data, at least 500 Hz. It was this need for high speed data acquisition that motivated us to create a high speed data acquisition system to replace the current one.
[read more]
|
| Project Name: "Easy Input" |
|
Course: ECE 476
Semester: Spring 2008
Instructor:
Bruce Land |
Student Team Member/s:
Xiangrong Huang (xh33)
Jesse McMullen (jdm55)
Wai Shing Wong (ww239)
|
|
Description: Easy Input is a head-controlled keyboard and mouse input device for disabled users.
The system uses accelerometers to detect the user's head tilt in order to direct mouse movement on the monitor. The clicking of the mouse is activated by the user's eye blinking through a reflective sensor. The keyboard function is implemented by allowing the user to scroll through letters with head tilt and with eye blinking as the selection mechanism.
[read more]
|
| Project Name: "Trumpet MIDI Controller" |
|
Course: ECE 476
Semester: Spring 2008
Instructor:
Bruce Land |
Student Team Member/s:
Thomas Craig (twc22)
Bradley Factor (bef23)
|
|
Description: The Trumpet MIDI Controller allows trumpet players the freedom of synthesizing from and composing on their native instrument.
The Trumpet MIDI Controller combines custom hardware and software with the Yamaha Silent Brass pickup mute to convert any standard trumpet into a fully functional MIDI controller and MIDI pass through device for up to 16 channels.
[read more]
|
| Project Name: "PowerBox: The Safe AC Power Meter" |
|
Course: ECE 476
Semester: Spring 2008
Instructor:
Bruce Land |
Student Team Member/s:
Cliff Jao (cj72)
Xi Guo (xg37)
|
|
Description: We designed a device that measures and graphs various aspects of AC power and acts as a computer-controlled remote switch.
With the recent push for green energy and environmental friendliness, more and more people are concerned about their personal daily power usage. We developed a microcontroller-based device to measure AC power. The user will be able to insert the device between the wall socket and the device under test (DUT) to measure the amount of AC power being used. With this device, environmentally conscious people can use the C# application that we developed to monitor their energy usage with real time graphs and data display.
[read more]
|
| Project Name: " Real-Time EdGe Detection" |
|
Course: ECE 576
Semester: Fall 2007
Instructor:
Bruce Land |
Student Team Member/s:
Ho Chi Andrew Chin (hc454)
Gladys Chan (gtc32)
|
|
Description: For our ECE536 final project, we have implemented real-time sobel edge detection. Traditionally, sobel edge detection is done on still images. This project uses a 2MP camera to continuously capture an image stream, and sobel edge detection is performed real-time on an FPGA and displayed to a VGA monitor. Our motivation arose from our interest in computer vision and digital image processing.
Edge detection is extensively used in image segmentation to divide an image into areas corresponding to different objects. Edges occur in parts of the image with strong intensity contrast, which often represent object boundaries.
Edges can be detected by applying a high pass frequency filter in the Fourier domain or by convolving the image with an appropriate kernel in the spatial domain. Edge detection is commonly performed in the spatial domain, because it is computationally less expensive and often yields better results. Since edges correspond to strong illumination gradients, the derivatives of the image are used for calculating the edges.
The basic edge-detection operator is a matrix area gradient operation that determines the level of variance between different pixels. The edge-detection operator is calculated by forming a matrix centered on a pixel chosen as the center of the matrix area. If the gradient value of this matrix area is above a given threshold, the middle pixel is classified as an edge. Figure 1 shows the setup of the project.
[read more]
|
| Project Name: "Portable Programmable Medication Scheduler (PPMS)" |
|
Course: ECE 476
Semester: Spring 2007
Instructor:
Bruce Land |
Student Team Member/s:
Timothy Schofield (tjs49)
Matthew Caulfield (mfc28)
|
|
Description: The Portable Programmable Medication Scheduler (PPMS) is a modern solution to the century old problem of patient compliance, featuring four medication bins, audio/visual alarms, a graphic LCD, and serial communication with a Java Swing PC GUI.
The conjunction of Electrical Engineering and the practice of Medicine has grown increasingly significant over the course of the past few decades, producing ever more innovative devices for the benefit of human healthcare. While biometric devices are often showcased in this arena, control devices such as ours are playing an increasingly substantial role as supplementary and autonomous caregivers. Providing a programmable medication scheduler forms an ever-present link between doctor and patient, capable of avoiding many common mishaps related to patient compliance.
[read more]
|
| Project Name: "USB Magnetic Mouse/Touchpad" |
|
Course: ECE 476
Semester: Spring 2007
Instructor:
Bruce Land |
Student Team Member/s:
Yiyin Ma (ym82)
Abby Lin (ayl26)
|
|
Description: This project implements Hall effect sensors and a magnet to mimic the function of a typical USB mouse (similar to a tablet pen’s function). Many digital artists draw with mice on computer or use tablets. However, tablets are often very expensive. Using the mouse is not always as accurate and one needs a steady hand. Our project attempts to create a lower budget alternative to the tablet that is easier to draw with. We use a stack of magnets to act as a pen on pad. Hall sensors detect the location of the magnets, and the information is sent to the computer through USB. Pushbuttons are used to act as mouse buttons.
[read more]
|
| Project Name: "Car MP3 Player" |
|
Course: ECE 476
Semester: Spring 2007
Instructor:
Bruce Land |
Student Team Member/s:
Chris Dolen (cd247)
Matthew Watkins (maw72)
|
|
Description: This project was designed to be an mp3 player that you can use in your car.
In this project we used an Atmel microcontroller, an LCD display, some pushbuttons, an mp3 decoder, and a digital to analog converter. We also used an SD (Secure Digital) card for storage to hold the MP3’s. An SD card can have MP3 files written to it using a PC. The card is formatted using the FAT file system that Microsoft Windows uses. The microcontroller is then used to read this SD card to get the mp3 data. Song titles are displayed on the LCD screen. Pushbuttons on the STK500 are used for functions such as skip to the next song, stop, and play. A mini-RCA jack (3.5mm audio jack) is used as the output of the mp3 player, which can be connected to a car-cassette adapter or a wireless FM transmitter (not included in the project). A 12V DC plug is the power source so that it can be plugged into the cigarette lighter of a car for power. The volume will be controlled by the car’s audio system. As the design only needs a 12V DC power source, no batteries are required. The mp3 player will never skip on bumpy surfaces as its just reading flash memory and there’s no disk drive or CD spinning that’s being read. Since the SD card is removable, the storage size can increase as new, larger SD cards are created, as opposed to being a fixed size like most mp3 players today.
[read more]
|
| Project Name: "HotBox: Ethernet Controlled Temperature Regulator" |
|
Course: ECE 476
Semester: Spring 2007
Instructor:
Bruce Land |
Student Team Member/s:
Mark Amato (mra29)
James Maxwell (jem84)
|
|
Description:
This project implements a microcontroller based temperature regulator which can be controlled via the Ethernet port on any common personal computer.
As the world becomes more networked, the power of our ability to communicate with many different systems instantly continues to prove it's worth in maximizing utility and convenience. The common consumer now has more options then ever for networking access from hand held Blackberries to common Internet access through a personal computer. Many systems would only benefit from being accessible from any network connection, including many common devices that previously would never be considered to be networked, such as a coffee machine or refrigerator. In our case, we pair a microcontroller with a commercial Ethernet solution via SPI in order to allow the world at large to communicate with the microcontroller, and vise versa. Communication in our device is done through a modified UDP controller accessed via the command prompt and third party software. As a proof of concept, we used the ethernet controller to sample and set temperatures for a closed system. Temperature sensing is done through the analog to digital converter on the microcontroller and heating and cooling is done using the pulse width modulator in conjunction with proportional control theory to allow for a stable transition to the desired temperature.
[read more]
|
| Project Name: "Software Implemented Atmel Mega32 Universal Serial Bus Host Controller" |
|
Course: ECE 476
Semester: Spring 2007
Instructor:
Bruce Land |
Student Team Member/s:
Yuan Ning (yn47)
Adam Beece (apb36)
|
|
Description:
A software implemented USB 2.0 Host Controller was created for the Atmel Mega32 microcontroller.
This project has yielded a library that can be included from any program written for the Mega32. By using this library, a user can implement USB functionality with their application with minimal fuss. Several compiler options are included for various levels of debugging and verbosity.
Documentation supplied by the USB Implementers Forum's website and various summary articles allowed for the development and implementation of the USB protocol stack for the Atmel Mega32. We broke down the protocal into layers of abstraction, implementing one on top of the other. We designed the software such that any layer (coupled with those beneath it) is able to handle USB communication.
[read more]
|
| Project Name: "AIR JAM!!! Wearable Air Guitar" |
|
Course: ECE 476
Semester: Spring 2007
Instructor:
Bruce Land |
Student Team Member/s:
Joanna Dai (jxd2)
Adam Beece (apb36)
|
|
Description:
Why a working, wearable air guitar? Bottom line, it's just that cool. Who doesn't want a machine that will take their jamming and turn it into rock they can hear? With just a glove, a pick and a little practice you can rock the synthetic acoustic guitar like no one else in the world.
There are three basic functional components of Air Jam: the glove, the accelerometer and the software, which implements the Karplus-Strong algorythim. Karplus-Strong uses a burst of white noise (generated in this case by the repeated use of the stdlib rand() function) that is repeatedly filtered and played back. The frequency of the delay controls the frequency of the plucked string with a simple formula:
Delay Length L = Fsample/Fout
Nothing fancy about it.
Let us take a moment to consider whose toes Air Jam steps on. The Australian research company CSIRO have created a Wearable Instrument Shirt (WIS) that tracks arm position and uses it to calculated notes actually fretted. These i-Textiles are significantly more sophisticated technology than the simple flex sensors used in Air Jam's glove, not to mention the fact that CSIRO synthesizes an electric guitar, not an acoustic one.
[read more]
|
| Project Name: "Autonomous Directional Rotary Artificial Intelligence Navigational System (ADRAINS)" |
|
Course: ECE 476
Semester: Spring 2007
Instructor:
Bruce Land |
Student Team Member/s:
David Drew (djd36)
Joanna Dai (jxd2)
|
|
Description: Our final project in ECE 476 is a mobile robot with a developed neural network such that it evolves to avoid collisions into a circular vertical white wall while traveling at the fastest speed and straightest line possible without human intervention or external computers.
The completion of this project required extensive capacity and application on both hardware and software ends. In constructing the robot, we needed to build the custom prototype board, apply infrared sensors as neural inputs, implement stepper motors for robot motion, and provide a mobile power supply to the MCU. The purpose of these design factors is to allow the autonomous movement of the robot while minimizing the size of our robot, to accurately sense distance and collisions into the white wall of our arena, and to calculate the velocity precisely while providing sustainable torque to move our robot. On the software end, we needed to execute an evolutionary spiking neurons algorithm that interfaced with our hardware. The purpose of this was to integrate a spiking neural model with infrared sensors as inputs and motor speeds as outputs to determine robot velocity and direction. We also implemented the evolutionary model based on assessing random individuals of a randomly generated population through a fitness equation and improving the population by discarding the worst individual in the population with the worst fitness. The fitness equation measured by the velocity of the robot, the direction change, and the amount of activity from sensors.
[read more]
|
| Project Name: "Model retina: color tracker" |
|
Course: ECE 476
Semester: Spring 2007
Instructor:
Bruce Land |
Student Team Member/s:
Stephen Jhun (sjj26)
Seung-Jae Bang (sb363)
|
|
Description:
Objective:
The gift of sight is precious; that is why we tried to model an artificial retina with the properties of color detection, saccades, and pursuit tracking.
Structure of a Retina:
A retina lies in the back of the eye and consists of a layer of photoreceptor cells called rods and cones. The cones are responsible for color detection in light, and there exists three kinds of cones that respond to long, medium, and short wavelengths; these typically have peak wavelengths of 564, 534, and 430 nanometers respectively. When the correct stimulus is applied, this sends distinct action potentials through the retinal ganglion cells, which get interpreted by the brain as perceived color.
RGB Light Representation:
In terms of colored light, almost any color can be formed by adding different amounts of red, green, and blue light. This is a technique familiar to almost everybody and is utilized ubiquitously in televisions, graphic editing software, etc. We will be modeling our retina by utilizing simple red, green, and blue photodiodes. We will utilize this ability to detect color to implement a scheme to track specific colors through saccades and pursuit movements with the use of servomotors and photovoltaic light sensors.
[read more]
|
| Project Name: "Movement to Music - A Wearable Wireless Sensor System" |
|
Course: ECE 476
Semester: Spring 2007
Instructor:
Bruce Land |
Student Team Member/s:
Andrew Godbehere (abg34)
(njw23)
|
|
Description:
In this digital age, new interfaces for musical expression provide much broader musical possibilities than have ever existed before. There is a constant quest to be in harmony with one’s instrument so that music can flow freely from the imagination and take form effortlessly. This sparks an interest in new ways to interact with instruments, because we may be able to achieve more fluid methods for creating music. There are many new digital musical interfaces, but most are based on traditional musical instruments or are at least designed as a tangible object. This project aims to eliminate the physical “instrument” altogether. The sensor system enables the use of one’s own body as a musical instrument through detection of movement, freeing the artist from traditional requirements of producing live music. The ability to create and manipulate sound through movement provides the potential for immediate intuitive control of musical pieces.
Dance and music are quite obviously intertwined. One seems empty without the other. Dance and music deserve a close relationship, with no strings attached. The goal of this project is to blur the line between the two, and open up an avenue for them to mingle more intimately. Instead of dancing to music, it is now possible to create music by dancing. This project is a tool, an interface between motion and music, a new musical instrument. It is designed to be highly configurable to allow the artist as free a form of expression as possible. It is also designed to be fun and comfortable to use. This is a powerful tool and a fun toy.
[read more]
|
| Project Name: "Wall of Pong" |
|
Course: ECE 476
Semester: Spring 2007
Instructor:
Bruce Land |
Student Team Member/s:
Adrian Wong (aw259)
Bhavin Rokad (bkr24)
|
|
Description: Wall of Pong is a fast-moving, interactive, laser-based pong game playable on any flat surface.
The system uses a digitally controlled laser projection platform to draw a pong ball onto any flat surface. This allows for a large playing area that can be set up almost anywhere. Hand held paddles with embedded sensors are given to each player. The real life paddles increases the interactivity of the game and makes it an enjoyable and dynamic derivative of the original PONG arcade game.
[read more]
|
|