We were tired of getting to FIT and drive around the parking that is already full of cars. Instead, we would like to know where we can go and look for parking and how many ptoential slots are available there.
There is also an issue of security. By using our solution, various organizations can track movement in restricted zones, make sure that the parkings are clear of visitors and much much more!
What it does
There is Raspberry+Arduino part with 2 sonic sensors that detects cars and direction it goes in. The system also has an ID of a parking lot it stays at and wi-fi capability to report car movement to the cloud service web platform.
The web platform provides user interface and API to show and edit parking lot data. Users are able to see the statistics on all of the parking spots in the DB and filter them out to see the ones that are free. There is a proper REST API to extend the service to IoT reality by asking your phone in advance which parking lots have available spaces and whether the parking lot near the building you are going to is busy at all.
How we built it
We brought in 3D Printer, Arduino, Raspberry Pi (FabLab), and 2 sonic sensors (thanks to FabLab) and wired them up together and wrote C and Python code to detect car movement and pass this data through POST requests to our web platform.
We also built Amazon AWS server with Database to provide a public accessible cloud platform to track parking spots with public API in case anyone wants to build an utility tool to automate it even more
Challenges we ran into
We had major problems with detecting best approximation of distance (sonic sensors were jumping from 2m to 1cm for some time screwing up all our calculations)
Getting the right hardware. We got it! From FabLab!
Setting up amazon AWS. We had problems setting up the instance for NodeJS deployment due to existing outdated node aliases. We managed to beat it though.
Developing an intuitive interface that is easy to use. We ran through 4 iterations of UI design before coming up with final decision. We jumped from Bootstrap to Foundation to Materialize framework, which we ended up using in the end.
Accomplishments that we're proud of
Extremely precise measurement for a <$50 solution. We are proud that we made this thing cost effective. You only need one of those things per lane of entrance for it to work, making, for example, garage parking cost of <$100 + Hosting
We managed to use many of the solutions provided by today's sponsors. We used AWS, Arduino, we provided API for IOT development.
We have a working solution for an actual problem with extendable applications.
We were able to DESIGN and Print a case for our hardware
We've built robust MVVM Library to be used to build very user-friendly UIs with graceful error handling and extensive flexibility (using KnockoutJS)
We've built a great and well-tested API that can be easily used on iOS, Android, Windows Phone, IOT Hubs, ... , ..., It handles POST requests and gives you JSON requests.
What we learned
- We shared 3D Printing knowledge
- We learned how to use sonic sensors, serial connectors on Arduino, and how to configure Raspberry Pi to automatically connect to network and launch our software
- We learned Materialize CSS framework
- We learned a lot about Amazon AWS and in particular their EC2 service. That included a lot of learning experience with SSH Keys
- We learned the hard way that Fake copy of Arduino is bad, using client for timestamping is scary, and putting no restrictions on requests leads to disastrous consequences.
What's next for Florida Tech Affordable Parking Tracking Solution
- Use better sensors to decrease error rate
- Provide grouping for parking lots (say each level of parking garage is a lot, and the garage itself is a group)
- Create picture uploading capabilities
- User control to prevent random people from managing parking lots
- Simpler way to wire the box.
- Create weatherproof case & provide renewable power source (it's really low voltage/amp, solar should work)