Tabla de contenido:
- Paso 1: las piezas
- Paso 2: Conecte todo
- Paso 3: ¡Configuremos su Raspberry Pi
- Paso 4: Comencemos a codificar
Video: Pike: ¡conduce de forma más segura, conduce de forma más inteligente, conduce un lucio !: 5 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:43
¡Bienvenido a mi proyecto llamado Pike!
Este es un proyecto que forma parte de mi educación. Soy un estudiante NMCT en Howest en Bélgica. El objetivo era hacer algo inteligente usando una Raspberry Pi. Teníamos total libertad en la que queríamos hacernos inteligentes.
Para mí fue una elección fácil hacer que mi bicicleta fuera un poco más inteligente. Vivo en un lugar donde andar en bicicleta me lleva más rápido a mi destino en la ciudad.
También me caí con mi bicicleta una vez. Me rompí el codo. Me caí porque estaba señalando al conductor detrás de mí que quería ir a la derecha. El camino estaba resbaladizo y perdí el control porque solo tenía una mano en el volante. Por eso mi primera idea fue colocar indicadores de dirección en mi bicicleta. A partir de ahí, comencé a pensar en qué más podría agregar, así que se me ocurrió el rastreo por GPS para que luego puedas ver qué ruta tomaste.
Entonces, ¿qué puede hacer el Pike?
The Pike mantendrá un registro de sus sesiones de conducción. Llevará un registro de la ruta que tomó, calculará su velocidad promedio y la distancia que ha recorrido. Después de cada sesión, puede iniciar sesión en el sitio web para verificar dónde y cómo fue su viaje. ¡También crearemos algo para que puedas elegir quién montará la bicicleta para que más personas puedan usar tu Pike si así lo desean!
Paso 1: las piezas
Entonces, obviamente, necesitas saber lo que necesitas para recrear mi proyecto. Antes de comenzar, me gustaría decir que este proyecto no fue precisamente barato. También compré cables en una tienda local que eran demasiado caros. Puedes comprarlos online por un par de euros / dólares (que te recomiendo). No tuve tiempo de esperar. Por eso los compré en mi tienda local a un precio elevado.
La lista de compras
- Frambuesa Pi
- Cables de salto
- Powerbank cualquiera servirá siempre que le dé a su Pi suficiente energía
- Soporte para teléfono inteligente Maxxter (básicamente el más barato que puedes encontrar …)
- Soporte para teléfono inteligente Maxxter (los circulares blancos también son muy baratos para mis tubos de plástico)
- Tubos de plástico (perforaron un agujero para que quepan los botones que encajan en el soporte del teléfono inteligente para colocar en el volante)
- Botones *
- 6 resistencias de 220 Ω
- 1 resistencia de 5 K Ω
- Pantalla LCD
- Sensor de temperatura de un cable DS18B20
- Módulo GPS Adafruit Ultimate Breakout 66 canales
- Antena GPS - Antena Activa Externa - 3-5V 28db con cable SMA de 5 metros (para amplificar la señal GPS)
- Adaptador uFLto SMA (para conectar una antena adicional al módulo GPS Adafruit)
Notas:
* Los que verás en las fotos son de metal, quizás no los más ideales pero esos eran los que tenían en mi tienda local. Puedes usar botones completamente impermeables, pero esos eran 15 € por pieza, lo que pensé que era demasiado caro para un botón. Podrías comprar cualquier botón que desees siempre que funcione con un sistema pull up, estarás bien.
Paso 2: Conecte todo
No es tan dificil. Dado que el módulo GPS está conectado con USB. Puede ver en la imagen de arriba que puede hacer coincidir los colores con los cables del adaptador USB. Los botones y LEDS están conectados a 220 Ω. El sensor de temperatura DS18B20 está conectado a una resistencia de 5K Ω.
Paso 3: ¡Configuremos su Raspberry Pi
Primero necesitará Raspbian, que puede aprender aquí y luego debe seguir los pasos en este repositorio.
La programación de mi base de datos es mínima. Contiene 4 tablas:
-
tbluser
- ID de usuario (tinyint, 2) INCREMENTO AUTOMÁTICO, SIN FIRMAR
- Nombre de usuario (varchar, 175)
- UserLogin (varchar, 180)
- Contraseña de usuario (varchar, 255)
- UserActive (tinyint, 1) SIN FIRMAR
-
tblsession
- SessionID (int, 10) INCREMENTO AUTOMÁTICO, SIN FIRMAR
- SessionDate (fecha)
- ID de usuario
-
tblsensor
- SensorID (tinyint, 3) INCREMENTO AUTOMÁTICO, SIN FIRMAR
- Nombre del sensor (varchar, 150)
-
tblhistory
- HistoryID (bigint, 20) AUTO INCREMENT, SIN FIRMAR
- SensorID
- ID de sesión
- HistoryValue (varchar, 255)
- HistoryTime (tiempo, 3)
Pero también puede echar un vistazo al archivo de volcado.sql
Paso 4: Comencemos a codificar
Puedes encontrar mi código para hacer que el proyecto funcione aquí.
GPS
Es realmente sencillo comenzar con el módulo GPS. Todo lo que necesita hacer es instalar el paquete gpsd-py3 en su entorno Python. Entonces puedes usar esta biblioteca para hacer tu vida más fácil. Puede utilizar los ejemplos de codificación para obtener datos como el título largo, la latitud, la velocidad, etc. de su GPS.
Pantalla LCD
Para que la pantalla LCD funcione, debe instalar la biblioteca de Adafruit. Se pueden encontrar ejemplos de codificación aquí.
Sensor de temperatura de un cable DS18B20
Para encontrar su sensor de un cable, tendrá que trabajar un poco más. En primer lugar, debemos activar el bus de un cable. Para hacer esto, siga los pasos:
- sudo raspi-config
- Opciones de interfaz
- 1 hilo
Para comenzar a leer los datos del sensor, necesitamos saber cómo se llama nuestro único cable. A este tipo en cd / sys / bus / w1 / devices /
Verá dos dispositivos, uno es la Raspberry Pi y el otro debería verse como 28-0… etc. Bueno, esa larga cadena de números y letras es la forma en que podrá leer datos en Python. Para leer datos en Python, deberá abrirlo como un archivo. Entonces, la ruta para abrir el archivo debería verse así: / sys / bus / w1 / devices / 28-04177032d4ff / w1_slave.
Botones y LED's
Estas son funciones básicas, puedes ver mi código en esta carpeta de Clases.
Declaraciones SQL
Casi todas las declaraciones son declaraciones SQL básicas. Sin embargo, me gustaría dar una pequeña explicación sobre cómo guardé los valores de mis sensores. Agregué manualmente mis sensores a mis tblsensors. Entonces sabía qué sensor tenía qué ID. De modo que llevo un registro de la longitud, la latitud y mi velocidad. Para cada valor hice una función diferente. Solo haría 3 declaraciones sql que sean iguales, pero dependiendo del valor que me gustaría almacenar, cambié la declaración WHERE.
Recomendado:
Acceda de forma segura a su Pi desde cualquier lugar del mundo: 7 pasos
Acceda de forma segura a su Pi desde cualquier lugar del mundo: Tengo pocas aplicaciones ejecutándose las 24 horas del día en el Pi. Cada vez que salía de mi casa, se volvía muy difícil controlar la salud y el estado de Pi. Posteriormente superé el obstáculo menor usando ngrok. Acceder al dispositivo desde el exterior da
Cómo desoldar componentes electrónicos de forma segura para su reutilización: 9 pasos (con imágenes)
Cómo desoldar de forma segura componentes electrónicos para su reutilización: Hola, soy un nerd de la electrónica, así que me encanta jugar con diferentes componentes electrónicos en mis proyectos. Sin embargo, es posible que no siempre tenga los componentes que necesito para realizar mi trabajo. A veces es más fácil extraer los componentes que necesito de un dispositivo electrónico antiguo
Cómo hacer que los datos de DVD cifrados guarden sus archivos de forma segura: 8 pasos
Cómo hacer datos de DVD cifrados para guardar sus archivos de forma segura: Encuentro que este es un método muy fácil para hacer que el DVD cifrado sea muy bueno para proteger sus archivos. un software gratuito que necesita para comprar el software tech-piersrsr Después de instalar el
Cómo desmontar un monitor CRT de forma segura: 5 pasos
Cómo desmontar de forma segura un monitor CRT: ¿Tiene un monitor CRT viejo en su casa pero cree que es demasiado peligroso? Ahora es su oportunidad de hacerlo de manera moderada y segura. No asumo ninguna responsabilidad por ninguna lesión, etc. causado por el desmontaje de un monitor CRT
Triturar archivos individuales de forma segura mediante Enviar a con Ccleaner: 4 pasos
Triturar archivos individuales de forma segura usando Enviar a con Ccleaner: Este Instructable le mostrará que debe agregar una opción Enviar a al hacer clic con el botón derecho, lo que le permitirá eliminar el archivo con CCleaner