User Tools

Site Tools


start

Junior Core Laser Tag Project

This is the wiki page for the Laser-Tag Project that is part of the Junior Core experience.


Class Overview

In this course you will construct a complex, multi-player laser-tag system that will help to integrate your knowledge and experience from the other three Junior-Core courses: ECEn 340 (Analog Circuit Design), ECEn 380 (Signal Processing), and ECEn 330 (Programming Embedded Systems). The theories, concepts and lab exercises from these three courses combine to complete an entire system. The analog designs from ECEn 340 provide the shot-firing LED, shot-detecting photo-diode and associated analog electronics to interface with the ZYBO board. The theories and algorithms that you learned about in ECEn 380 provide the signal-processing necessary to detect when a player has been shot and also to determine which player was the shooter. Finally, the programming exercises and embedded system experience from ECEn 330 will help you write the necessary 'C' code to create a final working system.

The process of creating the laser-tag system is broken into several milestones. This helps students to schedule their effort and to focus on specific portions of the system during implementation. Please see the milestones page for more details.


Laser Tag Overview

For an understanding of how the lasertag system works at a high level, see the Laser Tag Overview page.


System Organization

The embedded system organization page provides a general overview of the system that you will construct this semester. The system packaging page shows the system components and cabling. Finally, you can view data flow in your system in this data-flow-diagram.


Linux Requirement

The embedded software for the laser tag system builds upon the environment and code base used in ECEN 330. You will need access to a Linux system with an attached ZYBO board to implement and test the software you will write. Unlike 330, it is not possible to use the 330 emulator to test your code in this project class. One major reason for this is the current lack of support for emulating the analog-to-digital converter (ADC). For a list of possible build environments, please see the Linux options page.


Project Setup

Download this archive file (ecen390.tgz) and extract it into your home directory (or another project directory if you prefer). After extracting it, you will have a new directory called ecen390. The command to extract the archive is:

tar -xzf ecen390.tgz

The ecen390 project directory contains everything necessary to work on the lasertag system. To setup the CMake build system, type the following commands:

cd ecen390/build
cmake ..

To build your project, type make from the ecen390/build directory:

make

To download and run your project on the ZYBO board, type the following from the ecen390/build directory:

make run

Tutorials

Tutorial content will be added as necessary.


YouTube Channel

Videos that demonstrate the results of laboratory exercises or that demonstrate best practices are available at this channel.


Groups

Groups from all years past are archived below.

Groups 2016

Groups 2017

Groups 2018

Groups 2019

Groups 2020

Groups 2021


ABET Notes for Faculty

ECEn 390 needs to provide the following data annually for ABET purposes.

  • Communication (3): YouTube videos from students that illustrate their creative project. The links to these videos are to be archived on the group pages (see what was done in 2019, 2018, for example).
  • Teamwork (5): Assessment of goals and milestones of project. For this, export the grades for the status reports from Learning Suite. These reports are submitted one per group and are used to ensure that all members of the group are progressing well throughout the semester.
  • Experiments and Analysis (6): Students submit a statistical analysis of their system as a part of Milestone 4. For ABET, just export the grades for this from Learning Suite.
start.txt · Last modified: 2023/01/10 01:39 by scott