En esta ocasión quize hacer una aplicación para utilizar la geolocalización e información en tiempo real de las estaciones del servicio de bicicletas del Ayuntamiento de Barcelona (Bicing).
Esta aplicación muestra las estaciones que están alrededor del usuario en 450 metros a la redonda, aparte muestra también en tiempo real:
- Bicicletas disponibles en cada estación
- Espacios libres para aparcar
- Número de la estación
Para este proyecto utilizé:
1.- Django como Back-End
2.- La API del bicing del Ayuntamiento de Barcelona
3.- Leaflet y Open Street Map para mostrar el mapa con los elementos que necesitaba
He de mencionar que Leaflet es una librería muy fácil de usar que viene con muchas características modificables, aparte que visualmente es muy profesional.
Si quieres echar un vistazo a la app visita este link, debes tomar en cuenta que si no vives en barcelona no te mostrará ninguna estación.
el repositorio puedes descargarlo aquí -> Repositorio github
Gracias por leerme, si te ha gustado déjame un comentario :-)
Hace un tiempo atrás recibí un regalo de un amigo que estaba de visita en Barcelona por algunos días, este regalo era una Raspberry Pi 3, desde ese mismo momento comencé a pensar en que hacer para usarla, inmediatamente conseguí un proyecto de estación meteorológica usando sensores de temperatura y humedad.
Para este proyecto utilizé:
- 1 Raspberry pi 3
- 1 sensor DHT11
- Tres cables jumper hembra a hembra
- Código que ejecuta la lectura de los sensores
- Una cuenta en Dropbox + un script que usa la api de dropbox
- 1 cron job para automatizar el proceso de actualizar el archivo json con los datos
El primer paso fué instalar la raspberry con raspbian y conectarla a la wifi.
El segundo paso fué conectar el sensor a la Raspberry
El tercer paso fué descargar el código para las lecturas del sensor de una cuenta oficial, he de mencionar que cambié el código para guardar los datos de la siguiente manera:
import RPi.GPIO as GPIO
import dht11
import time
import datetime
import json
# initialize GPIO
GPIO.setwarnings(True)
GPIO.setmode(GPIO.BCM)
# read data using pin 4
instance = dht11.DHT11(pin=4)
try:
while instance is not None:
#Create a dictionary
setInfo={}
…
Después de algunas semanas de auto-aprendizaje y trabajo arduo he logrado finalizar este blog, para ese fin he usado un VPS con las siguientes características:
- 2 Cores
- 2 gb de ram
- 80 gb de disco duro
Hoy en día hay muchas opciones para seleccionar en cuanto a servidores virtuales, este en particular me ha costado 3 euros al mes por 6 meses y luego 6 euros mensuales.
El principal reto ha sido que nunca antes había configurado un VPS y para ello tuve que ir aprendiendo sobre la marcha cómo hacerlo paso a paso.
La ventaja de comprar tu VPS es que puedes configurar el sistema a tus necesidades y ejecutar cualquier lenguaje que necesites, en mi caso como quería crear la web con Django era la opción más barata que tenía.
Luego debes tomar en cuenta que debes configurar obligatoriamente lo siguiente:
- Firewall (UFW por ejemplo)
- Fail2ban (Un software que bloquea ip's que traten de penetrar tu sistema
- Certificado SSL Para encriptar el tráfico de tu web (Puedes usar certbot por ejemplo)
Adicionalmente para monitorear tus recursos de sistema puedes instalar infinidad de software diseñado con este propósito, originalmente tenía instalado Glances pero luego descubrí un software de código …