Introduction: Easy Park (Intel IoT)
Smart Parking System for the Metros
We propose to build a system that enables people to find parking slots around their current vicinity and do anaytics from the data gathered.
Andriod App: Lets you know the nearest parking spot in the city, based on your current GPS Co-ordinates
Back End: Data corresponding to a parking slot (Free or not) is obtained using sensors and pushed to both Parse Cloud and Intel Analytics platform. Parse Cloud provided the necessary APIs for the Android App and analytics is done using the Intel platform Description
1. Get real time data on nearest parking space availability.
2. Get an image of on which floor and slot the space is available and total number of free parking spots as well. Enables decision making for the user.
3. Navigate to your nearest parking spot using Google Maps.
4. Use analytics to get a dynamic pricing scheme for parking spot - correlation between parking fee and peak hour and monetize the app by introducing reservation system for parking through App.
Target Audience : General public in metro cities (with smart phones) Available market - Large scope since a large population of metros own smart phones and cars.
Hardware section : light sensors (substituting Magnetic sensors) capture the data (whether the car is present or not) and feed data to Galileo dev board.Tasks are scheduled on Galileo which collect data at regular intervals of time and push the sensor data to cloud (using Parse Cloud Python APIs)
Cloud Section : Parse.com offers Python APIs that are used to push data into the cloud and Android APIs that are used to pull data from the cloud.
Android App Section : Displays the nearest parking spot by using current GPS co-ordinates, also offers navigation option towards the parking spot using Google Maps APIs
Importance of cloud connectivity : Cloud is the source of all end applications - Our Android app uses cloud to feed data to end user. Analytics such as from which area generates maximum parking requests, calculation of busiest hours of the day etc. can be obtained.Hence cloud forms the heart of our project.
Sensor utilization : Light (LDR) sensors, used in sheer volume, throws challenges of scheduling and distributed handling of sensors. Software components : Eclipse IDE for capturing sensor data (C programming/mraa), python for pushing data from Galileo to cloud, Android app development (Java) using eclipse IDE. Hardware components : Light sensors - groove break out board, GPS enabled Smart Phone Dev kit : Handles sensor data capturing, scheduling of tasks and pushing data to cloud
Step 1: Handling the Galileo Beast
1. To capture sensor data :
We used Grove sensor kit's light sensors to capture data since it was the only available option at the moment. One could also use IR sensors or Magnetic sensors instead. Since the tasks of capturing sensor values is done in C code (Eclipse Kepler C/C++ IDE), and pushing data to cloud is handled by python (in built in Galileo), we are using an intermediate file to which the sensor values are written and picked up by python script.
Pic : Light Sensor, Galileo Board
Source codes are attached. After compiling the code deploy the program in Command Line interface for Galileo.
Step 2: Handling a Bigger Beast : the Cloud
We used Parse.com which offers a very rich set of APIs for both python and Android. We have included the tutorial set for Parse cloud in the pdf attached.
Step 3: Make an Android App to Make Life Easy !!
We made a native Android app which pulled up data from Parse cloud, calculated the nearest Parking spot from the user and displayed it. We also made an option for the user to use Google's Maps facilities to navigate to nearest parking spot.
We have released full source code for the same. Feel free to download and develop ! :)
Appreciate any comments or feedback ! :)
-Team Q Alpha !