USB Arbitrary Waveform Generator
The Wave Riders
(from left to right)
Daniel Solivan, solivand@onid.orst.edu
Sean Hanson, hansonse@onid.orst.edu
Frank Chiou, chiouf@onid.orst.edu
Sponsor:
School of EECS
Mentor:
Don Heer
Presentation Video
Table of Contents
1 Project Overview
2 Background Research
3 System Requirements and Desired Features
4 Design Solutions
5 Top Level Block Design
5.1 Visual Basic GUI
5.2 Power
5.3 USB FIFO Chip
5.4 Digital to Analog Converter
5.5 Output Amplifier
5.6 Enclosure
6 Testing
7 Project Timeline
8 System Test Evidence
9 Expo Materials
Project Overview
The purpose of this project is to create an arbitrary, portable waveform generator powered by USB. We will be designing the waveform generator for the School of EECS to be presumably used by incoming freshman. As a result, the device will have a low learning curve and will be user friendly. This device can also be expanded for use for other departments to use like the physics and science departments.
The generator will have adjustable amplitude, duty cycle and frequency like many other arbitrary waveform generators on the market. The waveform generator utilize a graphical user interface that allows the user to generate custom waveforms. The GUI will be supported by the Windows platform. The waveform generator will support a waveform file format with user-generated waveforms. The waveform file format will contain voltage levels paired with a time length to maintain that voltage level. The user will also be able to pick from existing, standard waveforms including sine, triangle, square, and sawtooth waves in addition to the custom waveforms he/she generates. The waveform generator will be able to output 10 million symbols every second.
The waveform generator will be inexpensive and easily available, so as to be able to replace current waveform generators in EECS labs. Since the device will be utilizing a GUI to operate, there is a much lower chance of mechanical failure. From personal experience, we've seen old waveform generators break in the labs we've worked in. Students would be able to download the software so they can control the waveform generator from any computer.
In addition, this waveform generator will be strong and durable. So that if someone knocks the device off a table, it will still work.
The waveforms output by the device will be input to an oscilloscope test for analysis.
Design Requirements
1. The device should be "freshman ready." - This means the device needs to be cheap, portable, durable, and have a PCB to allow mass production. The goal is to replace all of the lab waveform generators and allow freshman to use their own. The waveform generator should also use a BNC connector as freshman will have BNC probes from their classes.
2. The device should be powered and controlled over USB.
3. The device should output a maximum of 10 Msym/s.
4. The device should be use a GUI to control the device. - Using the GUI (on the Windows platform) we should be able to generate any kind of waveform, control frequency, control amplitude, and configure the device to output presets such as sine, sawtooth, pulse width modulation, etc.
5. The device should use the CSV file format to generate a waveform.


