Tool Tracker

From ESE205 Wiki
Jump to navigation Jump to search

Team Members

Eliot Stein

Zach Steinberg

Hannah Lester

Nathan Schmetter (TA)

Project Description

Our project is an organization system designed to be used to keep track of tools in a lab. It involves RFID chipping/tagging the tools and creating software that monitors the time at which someone checks in and out the tools and can display this information, if requested. This could be used in labs to ensure that tools are not damaged or misplaced, and if they are, then the log will be able to determine when and by whom the tool was misplaced and/or damaged.

Challenges

Some that challenges we initially anticipated included:

  • Connecting the software to the hardware, using RFID chips, and making the check in/check out console.
  • Learning how to properly implement our software to meet our desired goals.
  • Learning how to use RFID chips and Raspberry Pi.
  • After doing some research, it seemed that a common problem with RFID chips is tag collision and reader collision, meaning that signals can accidentally become overlapped. We anticipated having to make sure that this issue did not happen with our tags.
  • Making sure that each group member understands the software in its entirety.

After the project was completed, we reflected on many of the challenges that we faced. These mainly included:

  • Making a console that was sized correctly so that all of our hardware could fit inside of it and still be functional.
  • We had problems getting the reader to scan, but after a lot of work and research, we were eventually able to make it work.
  • We initially struggled with transitions between our different interface pages, but after working with John and doing some trial and error with the coding, we were able to make it so that when a certain button was pressed, the interface would display a new page. Also, we had to make one page transition happen after a tool was scanned, which was the most challenging transition. However, by implementing a "ghost page" in which the code for the scanning function was placed, we were able to make the transition happen.
  • Once we had the main project completed, we added in text files so that the data could be stored in a separate place. We struggled with updating the text files properly and combining this code with what we had already made. In the end, they worked properly so that they could record when a tool was checked in/out, who had the tools, what time a tool was checked in/out, and its most recent rating (if it was checked in). However, we attempted to create a way to record an average tool rating using data from the text files, but could not properly implement this method.

Materials and Budget

(Please note all prices do not include shipping and handling fees, but the total cost does include this.)

  • Raspberry Pi
  • 3D Printer Filament

Total Spent: $187.02

Design and Solutions

3D Console

Zach

Attaching NFC Sheild to the Raspberry Pi

Eliot

Creating the Interface

Hannah

ID Analysis

Zach/Eliot

Gantt Chart

(These are preliminary, and we know that as the semester goes on, we will be able to break down these steps even further.)

Our main steps will include:

  • Learning how to code the Raspberry Pi
  • Creating the console using 3D-Printing
  • Testing with RFID chips
  • Programming the software
  • Setting up the server
  • Debugging the software
  • Connecting the software to the hardware
  • Creating the poster
  • Demonstration

File.png

For the most part, we were able to stay on track with our Gantt Chart. We ran into some issues with the reader, which pushed us back slightly. However, once that issue was solved, we got back on track with the original plan. Many of the tasks we accomplished were completed as a group, with one person taking the lead.

Weekly Log

Weekly Log

Link To Project Proposal Presentation

https://docs.google.com/presentation/d/1QZ4nD29VvKhSjkBULobw2ty8cCK_nobTKngFTUjaWQA/edit?usp=sharing

Code Explanation and Link to GitHub

The coding that we did for this project was all done in Python. We used Tkinter as a visual interface program that helped us make pages for the screen. This code includes labels, buttons, and many other visual pieces of the interface. We also used source code that we found to help with the scanner. Links to this code can be found in our weekly log. The most challenging element of our coding was combining the code that we made for the interface pages with the scanning code. Also, we initially had a lot of trouble with learning how to code in transitions from one page to another. Once we learned the syntax for one transition, then we were mostly able to mimic this syntax for the rest, with the exception of a few harder transitions.

In addition, we wrote text files that were able to store many pieces of information recorded by our program, such as who checked a certain tool in/out at a certain time, the ratings that tools were given, etc. These are also included in our GitHub.

MAKE SURE TO SAVE TEXT FILES TO GITHUB!!!!!

https://github.com/tooltracker/Tool-Tracker-

Results

Demo Day

Project Poster

  • Please note that the total cost included on the poster only includes the cost of the second reader that we purchased, since this was the only reader included in the final product.
alt text

Future Improvements

Tutorial

(Updating a text file)