Tabla de contenido:
- Paso 1: componentes necesarios
- Paso 2: el transmisor
- Paso 3: la estación base
- Paso 4: la aplicación
- Paso 5: el código
- Paso 6: Recintos
- Paso 7: Prueba y conclusión …
Video: Rastreador de mascotas basado en Tinyduino LoRa: 7 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:40
¿Quién no quiere tener mascotas? Esos amigos peludos pueden llenarte de amor y felicidad, pero el dolor de extrañarlos es devastador. Nuestra familia tenía un gato llamado Thor (la imagen de arriba) y era un vagabundo amante de las aventuras. Muchas veces regresó después de viajes semanales a menudo con lesiones, por lo que tratamos de no dejarlo salir. Pero lo que no, salió de nuevo pero no regresó: (No pudimos encontrar un rastro leve incluso después de buscar durante semanas. Mi familia se mostró reacia a tener más gatos ya que perderlo fue muy traumático. Así que decidí echarle un vistazo. sobre los rastreadores de mascotas. Pero la mayoría de los rastreadores comerciales requieren suscripciones o son pesados para un gato. Hay algunos rastreadores basados en la dirección de radio buenos, pero quería saber una ubicación precisa ya que no estaré en casa la mayor parte del día. Así que decidí hacer un rastreador con Tinyduino y un módulo LoRa que envía la ubicación a la estación base de mi casa, que actualiza la ubicación a una aplicación.
PD perdóname por las imágenes de baja calidad.
Paso 1: componentes necesarios
- Placa del procesador TinyDuino
- GPS Tinyshield
- Placa de desarrollo WiFi ESP8266
- Hope RF RFM98 (W) (433 MHz) x 2
- Tablero Proto Tinyshield
- USB Tinyshield
- Batería de polímero de litio: 3,7 V (usé 500 mAh para reducir el peso)
- Soldador
- Cables de puente (hembra a hembra)
Paso 2: el transmisor
Necesitamos conectar el transceptor LoRa al tinyduino. Para esto, necesitamos soldar cables desde el módulo RFM98 al protoboard tinyshield. Usaría la biblioteca RadioHead para la comunicación y la conexión se realiza según la documentación.
Protoboard RFM98
TIERRA -------------- TIERRA
D2 -------------- DIO0
D10 -------------- NSS (selección de chip CS en)
D13 -------------- SCK (entrada de reloj SPI)
D11 -------------- MOSI (entrada de datos SPI)
D12 -------------- MISO (salida de datos SPI)
El pin de 3.3V del RFM98 está conectado a la batería + ve.
NOTA: Según la hoja de datos, el voltaje máximo que se puede aplicar al RFM98 es 3.9V. Verifique el voltaje de la batería antes de conectar
Usé una antena helicoidal para RFM98 ya que reduciría el tamaño del rastreador.
Comience con el procesador tinyduino en la parte inferior de la pila, seguido de tinyshield GPS y luego el protoboard en la parte superior. Los cabezales de soldadura debajo del protoboard pueden resultar un poco molestos; en mi caso tocó el protector gps debajo de él, así que aislé la parte inferior del protoboard con cinta aislante. Eso es todo, terminamos de construir el transmisor !!!
Luego, la unidad transmisora puede conectarse a la batería y colocarse en el collar de la mascota.
Paso 3: la estación base
La placa de desarrollo WiFi ESP8266 es una opción perfecta si desea conectar su proyecto a Internet. El transceptor RFM98 está conectado al ESP8266 y recibe las actualizaciones de ubicación del rastreador.
ESP8266 RFM98
3,3 V ---------- 3,3 V
GND ---------- GND
D2 ---------- DIO0
D8 ---------- NSS (selección de chip CS en)
D5 ---------- SCK (entrada de reloj SPI)
D7 ---------- MOSI (entrada de datos SPI)
D6 ---------- MISO (salida de datos SPI)
La fuente de alimentación de la estación base se realizó mediante un adaptador de pared de 5 V CC. Tenía algunos adaptadores de pared viejos por ahí, así que arranqué el conector y lo conecté a los pines VIN y GND del ESP8266. Además, la antena estaba hecha de un cable de cobre de ~ 17,3 cm (antena de cuarto de onda).
Paso 4: la aplicación
Usé Blynk (desde aquí) como aplicación. Esta es una de las opciones más fáciles, ya que está muy bien documentada y los widgets se pueden arrastrar y soltar.
1. Cree una cuenta de Blynk y cree un nuevo proyecto con ESP8266 como dispositivo.
2. Arrastre y suelte widgets desde el menú de widgets.
3. Ahora, debe configurar pines virtuales para cada uno de estos widgets.
4. Utilice los mismos pines que los anteriores en el código fuente de la estación base.
Recuerde usar la clave de autorización de su proyecto en el código arduino.
Paso 5: el código
Este proyecto utiliza Arduino IDE.
El código es bastante simple. El transmisor enviaría una señal cada 10 segundos y luego esperaría un acuse de recibo. Si se recibe un acuse de recibo "activo", entonces encendería el GPS y esperaría una actualización de ubicación del GPS. Durante este tiempo, seguirá verificando la conexión con la estación base y si la conexión se pierde entre las actualizaciones del GPS, volverá a intentarlo un par de veces y, si aún no está conectado, el GPS se apagará y el rastreador retrocederá. a la rutina normal (es decir, enviar una señal cada 10 segundos). De lo contrario, los datos GPS se envían a la estación base. En cambio, si se recibe un acuse de recibo de "parada" (tanto en el medio como al principio), el transmisor detiene el GPS y luego vuelve a la rutina normal.
La estación base escucha cualquier señal y si se recibe una señal, verifica si el botón "buscar" dentro de la aplicación está activado. Si está "activado", se recuperan los valores de ubicación. Si está "apagado", la estación base envía un acuse de recibo de "detención" al transmisor. Puede elegir escuchar la señal solo si el botón "buscar" está activado, pero lo agregué como una característica de seguridad para saber si la conexión se perdió en el medio y alertar al usuario (algo así como geovalla).
Paso 6: Recintos
Rastreador:
La impresión 3D es el camino a seguir, pero preferí pegarlo con cinta adhesiva al cuello. Es un desastre y, en serio, no sé si a los gatos les gustaría llevarse tanto lío en el cuello.
Estación base:
Un recipiente de plástico fue más que suficiente para la estación base. Si desea montarlo en el exterior, es posible que deba considerar contenedores a prueba de agua.
ACTUALIZAR:
Pensé en hacer un gabinete para el rastreador, pero como no tenía una impresora 3D, los contenedores pequeños se convirtieron en gabinetes:) El conjunto de la electrónica se guardó en un contenedor y la batería en otro.
Usé bloques como cerramiento para la electrónica. Afortunadamente, había una gorra que le quedaba muy bien. Para la batería se utilizó un contenedor Tic-Tac. Para asegurar la batería, se acortó el contenedor para que la batería encajara perfectamente. Se utilizaron clips para sujetar los contenedores al collar.
Paso 7: Prueba y conclusión …
¿Con quién lo probaríamos? No, no es que no tenga gatos ahora. Bueno, tengo dos;)
Pero son demasiado pequeños para usar el collar y decidí probarlo yo mismo. Así que di un paseo por mi casa con el rastreador. La estación base se mantuvo a 1 m de altura y la mayor parte del tiempo había vegetación densa y edificios entre el rastreador y la estación base. Me sentí tan triste que de repente me quedé sin espacio (aunque en algunos lugares la señal es débil). Pero en un terreno así, conseguir un alcance de ~ 100 m sin mucha pérdida de datos es muy apreciable.
La prueba de rango que he realizado está aquí.
El GPS parece funcionar con normalidad bajo una vegetación densa, pero en ocasiones la ubicación parece desviarse. Así que también espero agregar un módulo WiFi (ya que hay tantos enrutadores en las casas cercanas) para obtener una ubicación aproximada más rápido (midiendo la intensidad de la señal de muchos enrutadores y triangulando).
Sé que el rango real debería ser mucho mayor, pero debido al escenario de bloqueo actual, no puedo moverme mucho fuera de la casa. En el futuro, ciertamente lo probaría hasta los extremos y actualizaría los resultados:)
Hasta entonces, feliz ronroneo …
Recomendado:
¡Rastreador de escritorio COVID19 con reloj! Rastreador con tecnología Raspberry Pi: 6 pasos
¡Rastreador de escritorio COVID19 con reloj! Raspberry Pi Powered Tracker: sabemos que podemos morir en cualquier momento, incluso yo puedo morir mientras escribo esta publicación, después de todo, yo, tú, todos somos mortales. El mundo entero se estremeció por la pandemia de COVID19. Sabemos cómo prevenir esto, pero ¡oye! sabemos cómo rezar y por qué rezar, lo hacemos
Rastreador GPS para automóvil con notificación por SMS y carga de datos de Thingspeak, basado en Arduino, automatización del hogar: 5 pasos (con imágenes)
Rastreador GPS para automóvil con notificación por SMS y carga de datos de Thingspeak, basado en Arduino, automatización del hogar: hice este rastreador GPS el año pasado y, como funciona bien, lo publico ahora en Instructable. Está conectado al enchufe de accesorios en mi maletero. El rastreador GPS carga la posición, la velocidad, la dirección y la temperatura medida del automóvil a través de un dato móvil
Termómetro infrarrojo sin contacto basado en Arduino - Termómetro basado en infrarrojos con Arduino: 4 pasos
Termómetro infrarrojo sin contacto basado en Arduino | Termómetro basado en infrarrojos con Arduino: Hola chicos, en este instructivo, haremos un termómetro sin contacto con arduino, ya que a veces la temperatura del líquido / sólido es demasiado alta o demasiado baja y luego es difícil hacer contacto con él y leer su temperatura entonces en ese escenario
Generador de música basado en el clima (generador Midi basado en ESP8266): 4 pasos (con imágenes)
Generador de música basado en el clima (Generador Midi basado en ESP8266): Hola, hoy explicaré cómo hacer tu propio generador de música basado en el clima. Está basado en un ESP8266, que es como un Arduino, y responde a la temperatura, la lluvia y la intensidad de la luz. No espere que haga canciones completas o programas de acordes
Rastreador de películas - Rastreador de lanzamiento en cines con tecnología Raspberry Pi: 15 pasos (con imágenes)
Rastreador de películas: rastreador de lanzamientos teatrales con Raspberry Pi: Movie Tracker es un rastreador de lanzamientos con forma de claqueta y alimentado por Raspberry Pi. Utiliza la API de TMDb para imprimir el póster, el título, la fecha de lanzamiento y la descripción general de las próximas películas en su región, en un intervalo de tiempo específico (por ejemplo, estrenos de películas esta semana) en