Inspiration
La nostra inspiració per aquest projecte va venir del repte de buscar pàrquing a les ciutats més bullicioses del món, on trobar una plaça de pàrquing és una aventura. Nosaltres volíem crear una eina que proveís en temps real informació sobre els pàrquings disponibles d'una manera senzilla i amigable per l'usuari. Tenim l'objectiu d'ajudar a estalviar temps als usuaris i fer més accessible el pàrquing a tothom. La idea de tenir també en compte als discapacitats ens va venir d'experiències de la vida real, coneixent a gent en aquestes condicions que tenen també la necessitat de buscar pàrquing.
What it does
AparcaXmi permet als usuaris trobar places lliures de pàrquing entre els diversos pàrquings ubicats al mapa. Cada punt al mapa representa una ubicació d'un pàrquing, si està en vermell vol dir que no té cap plaça lliure i verd, en cas contrari. En seleccionar un pàrquing es pot visualitzar informació rellevant sobre el pàrquing, incloent-hi el nom del pàrquing, nombre de places lliures i si té places per a discapacitats. Si, s'ha seleccionat un pàrquing, en una altra pestanya es pot visualitzar la distribució de les places lliures d'aquell pàrquing seleccionat per plantes que estan pintades de verd i vermelles si estan ocupades; addicionalment té un símbol de discapacitat si està reservat per a ells, per tal que ràpidament es pugui observar la disponibilitat. La informació de les places lliures ens ve donades per un sensor connectat a una RaspBerry Pi que es connecta a l'API. Si un cotxe està dins del raig del sensor detectarà com a ocupada la plaça. Hem hostejat, finalment, l'API i el frontend en un domini de LinuxUPC en un servidor nostre.
How we built it
Hem fet el nostre projecte amb la llibreria de Streamlit de Python, la qual ens ha permès crear una pàgina web de manera senzilla, amb mapes interactius utilitzant també la llibreria de Folium, diferents pestanyes i visualitzacions d'imatges, utilitzant també Pillow per a fer combinacions d'imatges i pintar de colors les places de pàrquing en funció de si estaven lliures o no. El backend ha estat creat utilitzant Django, on hem creat una API que proveïa informació sobre la gestió d'un pàrquing i les disponibilitats actuals de places dels pàrquings que emmagatzemem i també permet afegir informació sobre els pàrquings. Des del frontend amb Streamlit i utilitzant la llibreria de requests es fan peticions de GET a l'API per poder després mostrar les dades a la pàgina web, habilitant al mapa i a les distribucions dels pàrquings actualitzar-se dinàmicament basat en les dades actuals. La RaspBerry Pi està connectada a l'API que es va actualitzant i després a l'aplicació també s'actualitzen les dades.
Challenges we ran into
El principal problema que hem afrontat ha estat tractar amb la Raspberry Pi, ja que ens ha donat molts problemes i no ens podíem connectar i al final semblava que no funcionava i que tenia problemes, per la qual cosa no hem pogut testejar bé l'aplicació i l'API amb la RaspBerry Pi. Un dels reptes als quals ens hem afrontat ha estat gestionar les dades en temps real i actualitzar les dades. Un altre repte afrontat ha estat a implementar de manera que funcionés bé un mapa interactiu al qual poder seleccionar una ubicació i obtenir la seva informació. La comunicació entre la selecció d'un pàrquing i després la visualització de places d'aquell pàrquing en qüestió també ens han significat un repte. Hem tingut problemes també a l'hora de treballar amb entorns virtuals per a la gestió de llibreries, les quals ens han causat molts errors a l'hora d'ajuntar-ho al github.
Accomplishments that we're proud of
Estem orgullosos de crear una aplicació que combina elements com un mapa amb navegació i interacció i una visualització per plantes dels pàrquings posats en una interfície amigable a l'usuari. Hem aconseguit que les dades en la pàgina s'actualitzin en temps real. Amb èxit hem implementat una API funcional que ha estat vital per al frontend del projecte. A més a més, estem orgullosos d'afegir informació addicional de places per a discapacitats.
What we learned
Hem après, des d'una base bàsica de coneixements de Python, a fer una pàgina web amb la llibreria de Streamlit pel frontend. A més, hem après a treballar amb Django per crear i gestionar una API que permet la comunicació entre el backend i el frontend. En el frontend hem integrat també llibreries com Pillow per gestionar visualitzacions interactives i Folium per poder integrar un mapa amb les ubicacions dels pàrquings dins del nostre projecte. També hem après a treballar a dissenyar una interfície intuïtiva que respon a les necessitats de l’usuari.
What's next for Gestor de Parking
Els nostres següents passos inclouen la implementació de funcions predictives que estimen la disponibilitat d'aparcament en funció de les dades històriques i les tendències. També tenim previst afegir notificacions per als usuaris quan hi hagi una plaça disponible a l'aparcament seleccionat i quan s'acaben les places també.
Log in or sign up for Devpost to join the conversation.