Projects
Students will have the opportunity to complete a project in the course as one of a:
- Final Course Project
- Senior Capstone Design Project
The project enables students to develop increasingly complex cyber-physical systems using wireless links. This can involve (but is not limited to) usage of the USRP Software-defined Radio, Android or iOS wireless devices, PCs with wireless interfaces (ie. wifi, bluetooth), etc.
Project Ideas
Wi-Fi/Bluetooth Monitoring and Control
LabVIEW provides bluetooth communication interfaces that open up many possibilities for control and monitoring of bluetooth devices without the development overhead of creating drivers from scratch. Some LabVIEW examples with bluetooth devices include:
- Smartphones (Phone dialer)
- Wiimotes (Wiimote Interface)
- Lego Mindstorm Robots (Remote Control, Remote Debugging, Color sensing, Iphone Control + Camera)
- iRobot devices such as Roomba (iRobot Interface)
- Mouses/keyboards
- Headphones
- Vehicles
- Cameras
- Other Wi-Fi and Bluetooth devices (Virtual COM port interface)
Wireless Transmission and Reception using the USRP
The USRP software-defined radio platform enables custom wireless communications with many devices.
- Microsoft Kinect Wireless Orchestra
- Wireless Audio or Video Transmission
- Packet-based Data Transmission
- FM Radio (Transmission, Reception)
- Car Keyfob Powerpoint Control
- Wireless Helicopter Surveillance and Control
Wireless Transceiver Development using the USRP
Develop full/partial wireless transceiver components for a particular protocol using the USRP software-defined radio. Some example protocols include:
- Bluetooth
- Wifi (802.11b SSID Decoder)
- ZigBee
Many of the Advanced Sample Projects implement algorithms that are used in a variety of wireless standards and protocols.
Additional ideas using LabVIEW may be found at the NI Academic Projects website.
Introductory Sample Projects
These are projects that have been completed at the undergraduate level.
-
Wireless Orchestra
In this undergrad capstone design project, a wireless orchestra is formed using a variety of devices. A Microsoft Kinect sensor is used to detect the movements of the person conducting the orchestra. The data is then transmitted wirelessly via NI USRPs, to the receiving devices in the form of commands. The commands instruct the receiving devices to play songs, notes, to adjust volume, and to perform equalization using NI myDAQ devices.
Advanced Sample Projects
These are projects that are advanced in complexity and have been completed by graduate students.
-
Reed-Solomon Coding
Reed-Solomon (RS) Codes were first introduced back in the 1960s and have been used for error correction in spacecraft such as Voyager, Digital Video Broadcasting, and most notably, CDs and storage media.
They work by interpeting data as a polynomial using finite-fields. When data is corrupted or lost, the polynomial changes from it's correct solution and the changes can be solved for and corrected
In this project, RS coding is implemented in the NI USRP and its performance improvements are observed.
-
Orthogonal Frequency Division Multiplexing (OFDM)
OFDM is a technique used to encode data that addresses many communications problems, and can be found in the vast majority of modern digital communications systems (Wifi, Broadband, 4G, etc.)
It separates transmitted into many orthogonal sub-carrier frequencies at lower data rates. These carriers don't interfere with each other and mitigate many issues such as Inter-symbol Interference and the need for some complex filters.
OFDM is implemented and tested on the NI USRP in this project.
-
2x1 Multiple-Input Multiple-Output (MIMO)
In general, MIMO exploits the fact that signals transmitted through different antennas experience different channel responses and results in various received versions of the data. This allows for more throughput and better reliability and is used in many wireless communication technologies (Wifi, Cellular, etc.)
This particular project is an implementation of the Alamouti scheme MIMO - encoded data is transmitted over two antennas and received at a single antenna.
-
Bit-Interleaved Coded Modulation (BICM)
Convolutional Codes are used to correct data errors that are not concentrated - that is, their distribution is evenly spread. Interleaving of the data may be employed to "spread" bursty errors so that they may be corrected using convolutional codes.
This project is an implementation of Convolutional Encoding/Decoding (in particular, Viterbi) combined with bit interleaving.
-
Turbo Code Implementation
Turbo codes are a type of error-correction codes which are of the first to come close to channel capacity, and are used in modern cellular communications. They are constructed using a concatencation of recursive systematic convolutional coders and use a probabilistic approach to decoding. This project is an implementation of Turbo codes on the NI USRP.
Other graduate-level projects that have been completed include Time-Division Duplexing (TDD), Trellis-Coded Modulation (TCM), and a Random Access Control Channel