/SmartSchoolBus

An IoT based school bus monitoring system that tracks the location of the school bus and push notifies parents when their kids enter and exit.

Primary LanguageJava

SmartSchoolBus

An IoT based school bus monitoring system that tracks the location of the school bus and push notifies parents when their kids enter and exit. The components used for the tracker are ESP8266 microcontroller which has a built-in WiFi module, Ublox 6M GPS module and a MFRC522 RFID Reader. The microcontroller constantly uploads the location input by the GPS module to a mysql database hosted on an Apache server. A front-end android application downloads the data from the database and plots the location on a map in real time using Google Maps API for Android. The id cards of students are assumed to be embedded with an RFID tag. The RFID reader in the tracker which is positioned at the entrance of the bus will automatically identify each student as they board/alight. The microcontroller will then invoke a PHP script which will send a push notification using Firebase Cloud Messaging (FCM) to the respective parents’ mobile app, notifying them of the drop off/boarding location and time. While some schools have already implemented GPS tracking of buses using GSM, that do not give real time updation or individual information of students. Raspberry Pi systems have been known to give real time information but the cost is too high for it to be a replacement for GSM systems. This project on implementation, will be a means to monitor school buses comprehensively including the speed, the people onboard, adherence to route, time etc. The entire system costs less than $20. The front end android app has three user modes: admin, driver and parent. Parents can search by their child's id and chose to follow them. They can view the time schedule, route, speed, location, driver details of the bus and contact admin. Admin can view the location of all buses, see and edit routes and schedules of all buses, contact parents or drivers, view the list of kids onboard and absent, add new students, edit their details etc. The driver can also view the location, route and schedule of their bus and contact admin, ambulance, police or other emergency services. The hardware is coded in Arduino using Embedded C. The app was developed in Android studio and uses firebase cloud messaging services. The back end was hosted on hostinger.com and uses a mysql database. This was developed as part of my coursework during my B.Tech in computer engineering from Cochin University of Science & Technology.