School Bus Tracker
Our Approach
The goal of the School Bus Tracker was to develop a system that would easily allow students, parents, teachers, and administrators locate school buses associated with a school system, receive notifications of events such as traffic, bus changes, and other emergencies, and easily yet securely locate students within a route. The system was designed to satisfy various user types, and thus, the data returned to each user was based on a secure sign-up process that has been verified by the student and the school system. For a student, they would be able to locate the bus that is assigned to them, as well as potentially locate family members if given proper permissions. Parents/Guardians are given the ability to easily locate each of their children once given permission. School administrators are presented with the capability to view the entirety of their system, locate each of the students as well as each of the buses.
The test system consisted of a BeagleBone Black, fitted with an RFID reader, a GPS hat, and a cellular network (provided by Verizon). Once a student boards onto and off of a bus, they tap the RFID reader with their chip-enabled student id, which is then updated in real-time to the system. This gives everyone the ability to have an up to date view of the location of students. At a specified interval, the bus updates the system with its current location. The bus is also able to provide the system with emergency events. Finally, the system leverages Google Maps to notify of events such as traffic.
The system architecture leverages AWS IoT (Amazon Web Services’ Internet of Things) platform to easily pass the data to the database (PostgreSQL) as well as scale the system. A diagram of the architecture can be seen below. It also makes use of Python Django and AngularJS for authentication as well as the Web Portal where users can log in to view their relevant information.
Key Contributions
The School Bus Tracking application was developed in conjunction with my Senior Design Project at Georgia Tech, where I lead the various software efforts. I was the primary architect of the backend system, where I made use of AWS IOT, an elastic load balancer on several fronts, and the web backend developed using Python Django. I also lead and oversaw the development of the Web Frontend developed using AngularJS. Finally, I helped in various on the BeagleBone Microcontroller, helping the device to successfully connect to and interact with the system.
Customer
Steelcase, Georgia Tech
Services Provided
Web Development, AngularJS, Python Django, AWS, AWS IOT, Nginx, Load Balancer, iOS Application
Technology
Javascript, NodeJS, AngularJS, Python Django, Nginx, AWS, AWS IOT