Skip to main content

Sistema de Posicionamiento Interior Bluetooth con LoRaWAN

Introducción

Descripción General

El posicionamiento interior es un desafío común para muchas industrias. Aunque existen sistemas de alta precisión como UWB, pueden ser costosos y complejos. Esta solución ofrece una alternativa flexible y rentable al combinar dos poderosas tecnologías inalámbricas: Bluetooth Low Energy (BLE) para detección de ubicación y LoRaWAN para transmisión de datos de largo alcance y bajo consumo.

El sistema está construido alrededor del SenseCAP T1000 Tracker y soporta dos modos distintos de posicionamiento, permitiéndote equilibrar precisión con duración de batería según tus necesidades:

  1. Seguimiento de Alta Precisión (Trilateración): Cuando un tracker detecta señales de tres o más balizas BLE, puede calcular sus coordenadas precisas (x, y) en un mapa. Este modo es ideal para rastrear el movimiento de activos o personal, proporcionando actualizaciones de ubicación precisas periódicamente o cuando ocurre movimiento.

  2. Posicionamiento Basado en Zonas (Proximidad): Cuando un tracker está al alcance de solo una o dos balizas, identifica su ubicación basándose en la proximidad a la baliza más cercana. Este modo es perfecto para casos de uso más simples como check-ins automatizados, confirmar que un activo está en una habitación designada, o conservar batería reportando ubicación con menos frecuencia.

Al soportar ambos métodos, esta solución proporciona un sistema versátil y fácil de desplegar para una amplia gama de aplicaciones de seguimiento interior, desde detección simple de presencia hasta monitoreo más detallado basado en coordenadas.

Navega a nuestra página de paquete

Consulta nuestra página de paquete Posicionamiento Integrado Interior y Exterior para todos los productos que necesitas para implementar esta solución.

Características Clave y Beneficios

  • Rentable y Escalable: Aprovecha balizas BLE asequibles y evita la necesidad de instalaciones costosas de gateway en cada habitación.
  • Transmisión de Datos de Largo Alcance: Un solo gateway LoRaWAN puede cubrir un edificio completo o campus, reduciendo drásticamente los costos de infraestructura.
  • Alerta SOS Instantánea: Los trackers incluyen un botón de pánico que, al presionarse, envía inmediatamente una alerta SOS vía LoRaWAN para respuesta rápida de emergencia.
  • Gestión Inteligente de Energía: Al usar un acelerómetro integrado, el tracker puede reportar solo cuando se detecta movimiento y enviar señales periódicas de "latido" de lo contrario. Esto extiende dramáticamente la duración de la batería hasta 6 meses con configuraciones óptimas para muchas aplicaciones de seguimiento de activos.
  • Despliegue Simple: Configurar balizas BLE y gateways LoRaWAN es sencillo, poniendo tu sistema de posicionamiento en línea rápidamente.
  • Software de Código Abierto: El proyecto es completamente de código abierto, permitiéndote construir y personalizar tu propio servidor backend usando nuestro repositorio de GitHub.

Casos de Uso

Casos de Uso

Esta solución es ideal para una amplia gama de aplicaciones de seguimiento basado en zonas y seguridad:

  • Seguridad del Campus y Escuela

    Proporciona a estudiantes y personal un tracker portátil. El botón SOS integrado les permite enviar instantáneamente una alerta de emergencia con su última ubicación conocida desde cualquier lugar del campus, brindando tranquilidad y permitiendo tiempos de respuesta más rápidos.

  • Gestión de Activos

    Rastrea la ubicación de activos valiosos, tanto en interiores como exteriores (ej., vehículos en un estacionamiento). Configura el tracker para reportar solo cuando se mueve, conservando batería mientras aseguras ser alertado de movimiento no autorizado.

  • Check-In Automatizado y Gestión de Personal

    Al ajustar la intensidad de señal de una baliza BLE, puedes crear una zona de "check-in" para oficinas o hogares de ancianos. Cuando una persona que lleva un tracker entra a la zona, su presencia se registra automáticamente.

Arquitectura del Sistema

El sistema opera bajo un principio simple pero poderoso. Los trackers móviles escuchan señales de balizas fijas y reportan lo que escuchan a un servidor central.

Diagrama de Arquitectura del Sistema

Prerrequisitos

Los componentes principales son:

  1. Balizas BLE: Estos son pequeños transmisores fijos colocados en ubicaciones conocidas (ej., entradas de habitaciones, zonas clave). Transmiten continuamente un ID único.
  2. SenseCAP T1000 Tracker: Este es el dispositivo móvil conectado al activo o persona que quieres rastrear. Escanea balizas BLE cercanas e identifica la que tiene la señal más fuerte.
  3. Gateway LoRaWAN: El tracker envía un paquete de datos conteniendo el ID de la baliza BLE más cercana al gateway vía LoRaWAN.
  4. Servidor de Red y Aplicación: El gateway reenvía los datos a un Servidor de Red LoRaWAN(SenseCraft Data), que luego los enruta a un servidor de aplicación. El servidor de aplicación mantiene un mapa de los IDs de balizas y sus ubicaciones del mundo real, permitiéndole determinar la posición del tracker (ej., "Tracker #58 está cerca de Baliza #12, que está en Sala de Conferencias 3").

Antes de comenzar, asegúrate de tener lo siguiente:

  • Un SenseCAP T1000 Tracker
  • Una o más balizas BLE
  • Un gateway LoRaWAN conectado a internet
  • Un servidor o computadora con Docker instalado

SenseCAP T1000 Tracker

Tracker móvil LoRaWAN® con capacidades de escaneo BLE

  • Detección de Balizas BLE: Soporta BLE 5.1 para posicionamiento preciso interior y exterior.

  • Red de Área Amplia: Conectividad LoRaWAN® Clase A(v1.0.4) para comunicación de largo alcance y bajo consumo.

  • Detección de Movimiento: Acelerómetro integrado para detección en tiempo real de movimiento y estado estacionario.

  • Botón de Emergencia: Botón SOS independiente para activar alertas de emergencia con una pulsación.

Balizas BLE

Transmisión Bluetooth Regular

  • Compatible con Protocolo: Bluetooth® LE 5.0 | Soporte completo para formatos iBeacon y Eddystone.

  • Despliegue Flexible: Potencia de transmisión configurable para radio de cobertura ajustable.

  • Larga Duración: Hasta 2 años de duración de batería con configuraciones estándar.

  • Instalación Fácil: Viene con respaldo adhesivo para montaje fácil en paredes u otras superficies.

  • Rango de Transmisión: Hasta 75 metros al aire libre, 120 metros en interiores en áreas abiertas.

SenseCAP M2 Multi-Platform Gateway

Infraestructura de Red LoRaWAN®

  • Amplia Cobertura: Radio de cobertura interior de hasta 2 km, asegurando señal estable.

  • Conectividad Masiva: Soporta más de 200 dispositivos concurrentes con excelente rendimiento.

  • Múltiples Backhauls: Proporciona múltiples opciones de backhaul de red incluyendo Ethernet, Wi-Fi y 4G.

  • Solución Integrada: Capacidades integradas de servidor LoRaWAN local para simplificar el despliegue y gestión de red.

Guía de Introducción

Indoor positioning 2d map
  1. Desplegar Beacons: Coloca beacons BLE en ubicaciones estratégicas en toda tu instalación. Crea un mapa o lista documentando el ID único de cada beacon y su ubicación física (ej., Beacon_ID_01: "Entrada Principal", Beacon_ID_02: "Zona de Almacén A").
  2. Configurar el Gateway: Conecta tu gateway LoRaWAN a internet y configúralo para reenviar paquetes a tu Servidor de Red LoRaWAN elegido.
  3. Desplegar la Aplicación: En tu servidor de aplicaciones, crea la lógica para mapear los IDs de beacon reportados de vuelta a las ubicaciones físicas que documentaste en el Paso 3.
  4. Configurar el Tracker: Activa el SenseCAP T1000 e incorpóralo a tu Servidor de Red LoRaWAN. Asegúrate de que esté configurado para modo de escaneo BLE.
  5. Visualizar: Mientras el tracker se mueve por la instalación, reportará el beacon más cercano, y tu aplicación puede mostrar su ubicación en un panel de control o mapa.

Paso 1: Configurar tu Hardware

Primero, necesitas configurar los dispositivos físicos en tu instalación.

1a. Desplegar Beacons

info

Para especificaciones técnicas completas, consulta la documentación del BC01 Indoor Bluetooth Beacon.

Comienza colocando beacons BLE (Bluetooth Low Energy) en ubicaciones estratégicas dentro de tu instalación—como la entrada principal, almacén y áreas de oficina.

Indoor positioning 2d map

Consulta el video a continuación para una guía paso a paso sobre cómo agregar la información de tu beacon al sistema. También puedes revisar la sección de Consejos para ayuda adicional.

Vista rápida de los parámetros del beacon BC01
ParámetrosValor por Defecto
UUIDFDA50693-A4E2-4FB1-AFCF-C6EB07647825
Major10001
Minor19641
Potencia medida-59dBm
Potencia Tx-30 - +4dBm, por defecto 0dBm
Intervalo Adv100ms~10s, por defecto 500ms
Contraseñaseeed123 (Letras y números)
Nombre del DispositivoBC01 (1-7 caracteres)
Reinicio Suaveseeed123 (igual que la contraseña)

1b. Configurar el Gateway

Enciende tu gateway LoRaWAN y conéctalo a internet.
A continuación, sigue las instrucciones a continuación según el servidor de red que estés utilizando.

Por defecto, el gateway LoRaWAN reenvía datos a la plataforma SenseCraft Data (anteriormente SenseCAP Portal).

  1. Sigue el manual de usuario oficial para asegurar que tu gateway esté en línea y vinculado a tu cuenta.
  2. Una vez verificada la conexión, puedes proceder al siguiente paso (Paso 2).

Paso 2: Instalar la Aplicación de Posicionamiento

Instala la aplicación SenseCraft Indoor Positioning en tu servidor usando Docker. Si te gustaría explorar la interfaz primero, puedes revisar la demostración en vivo.

Vista previa de la aplicación de posicionamiento interior

Ejecutar el Comando de Instalación

Abre una terminal en tu servidor y ejecuta el siguiente comando:

docker run -p 5173:5173 -p 8022:8022 \
--name indoor-positioning \
--restart unless-stopped \
-v $PWD/db:/app/db/ \
-v $PWD/config:/app/server/config/json \
-d seeedcloud/sensecraft-indoor-positioning

💡 Nota: Usa PowerShell en lugar de una terminal CMD si estás ejecutando el comando en Windows.

Lo que hace este comando:

  • Descarga e inicia el contenedor de la aplicación SenseCraft Indoor Positioning.
  • -p 5173:5173 hace que el panel web sea accesible en el puerto 5173.
  • Monta los directorios locales:
    • /app/db/ → almacena bases de datos y mapas.
    • /app/server/config/json → almacena archivos de configuración.
  • -d ejecuta la aplicación en segundo plano.

Una vez que el contenedor se inicie exitosamente, abre tu navegador web y navega a:

👉 http://<tu_ip_del_servidor>:5173

Ahora deberías ver el panel de SenseCraft Indoor Positioning ejecutándose en tu servidor.

Paso 3: Configurar la Aplicación

app-configuration-management

3a. Configuración de Tiempo de Ejecución (Conectando a LoRaWAN)

Usa esta configuración para conectar la aplicación a tu Servidor de Red LoRaWAN y recibir datos del tracker. La aplicación puede conectarse tanto a SenseCraft Data como al servidor ChirpStack local al mismo tiempo.

app-server-runtime-configuration

Habilita una o ambas fuentes MQTT en el panel:

Conectar a SenseCraft Data
  1. Activa SenseCAP OpenStream MQTT.
  2. Ingresa tu Nombre de Usuario y Clave API - Obtén estos de la guía de inicio rápido de Data OpenStream API.
Conectar a ChirpStack
  1. Activa ChirpStack MQTT.
  2. Ingresa la dirección del servidor y el ID de Aplicación - El tópico MQTT se completará automáticamente. Puedes encontrar el ID de Aplicación en tu página de aplicación ChirpStack.
chirpstack-application-id

Nota: El campo {clientID} se genera automáticamente; no lo edites.
Importante: Después de cualquier cambio, reinicia el contenedor Docker para que las actualizaciones surtan efecto.

Otras Configuraciones

Estas opciones pueden cambiarse en cualquier momento (no requiere reinicio):

  • Autenticación – Actualizar credenciales de inicio de sesión del panel.
  • Posicionamiento de Área – Estimar ubicación aproximada del tracker cuando las señales de beacon son débiles o escasas.
  • Control de Acceso del Tracker – Limitar qué dispositivos pueden ser posicionados (abierto a todos o por lista blanca).
  • Webhook – Enviar datos de ubicación a tu servicio vía HTTP POST.

3b. Configuración de Mapa y Beacon

Haz clic en Create para crear tu primer mapa.

Gestión de Configuración de Aplicación

Sube tus datos del mapa en este panel. Actualmente, la versión demo solo soporta importar archivos en un formato similar a GeoJSON que contiene entidades de polilínea. A continuación se muestra una plantilla JSON de muestra para referencia:

{
"map": {
"width": 29.53000000000094,
"height": 22.212853765822828,
"entities": [
{
"type": "polyline",
"points": [
[12.894968342021272, 17.07477114091087],
[12.894968342021272, 17.114771140910868]
],
"closed": false
},
{
"type": "polyline",
"points": [
[12.944968342021284, 17.114771140910868],
[12.894968342021272, 17.07477114091087]
],
"closed": false
}
]
},
"beacons": {}
}

Este JSON define un diseño de piso 2D usando polilíneas basadas en coordenadas, que representan elementos del mapa como paredes o límites. Otros tipos de geometría no son soportados en la versión demo actual.

import-map-geo-json
  1. Agregar Beacons

En la sección Beacons, agrega la dirección MAC, ID y ubicación de cada beacon. Puedes colocarlos directamente en el mapa subido usando la lista que creaste en el Paso 1a.

maps-add-beacons
  1. Ajustar Factor Ambiental (Opcional)

Ajusta finamente la precisión de ubicación ajustando cómo la intensidad de señal (RSSI) se convierte en distancia.

  • El valor por defecto (~2.0) funciona bien para áreas abiertas.
  • Para entornos interiores complejos, prueba valores entre 1.8 y 4.0.
  • Comienza con la configuración por defecto y ajusta después si es necesario.

Paso 4: Activar y Visualizar tu Tracker

El paso final es encender tu tracker y verlo en el mapa.

tracker-visualize-on-map
  1. Activar el Tracker SenseCAP T1000 e incorporarlo a tu Servidor de Red LoRaWAN. Asegúrate de que tu gateway esté en línea y que el dispositivo tracker esté 'registrado' en el servidor LNS. revisa el Paso 1b para detalles.
  2. Asegúrate de que esté configurado en modo de escaneo BLE para que pueda detectar los beacons. Revisa el video a continuación para ayuda.
  3. Visualizar: Mientras el tracker se mueve por tu instalación, detectará los beacons más cercanos y reportará su ubicación. Verás su ícono moviéndose por el mapa en tu panel.

Opta por Other Platform, cuando uses ChirpStack.

Mantén la configuración de plataforma predeterminada (SenseCAP for The Things Network), cuando uses SenseCraft Data.

Resumen de Características de la Aplicación

Característica 1: Envío de Datos (Webhook & WebSocket)

Puedes obtener datos en tiempo real del sistema de dos maneras:

  • Webhook: Como se mencionó en la configuración, esto envía datos a una URL que proporciones.
  • WebSocket: Para aplicaciones en tiempo real, puedes conectarte al endpoint /ws usando Autenticación HTTP Básica. Los formatos de datos para sos, tracker_update (trilateración), y tracker_location_approximate (proximidad) están detallados en los ejemplos JSON proporcionados en el documento original.

Formatos de Datos

{
"type": "tracker_sos",
"data": {
"2CF7F1C0530004AD": {
"timestamp": 1756967508000,
"sos": 0
}
}
}

Característica 2: Dos Modos de Posicionamiento

El sistema soporta dos métodos de posicionamiento:

  1. Trilateración: Cuando el rastreador detecta tres o más beacons, calcula una coordenada precisa (x, y). Este es el modo predeterminado y más preciso.
  2. Proximidad (Posicionamiento por Área): Si habilitas esto y el rastreador solo puede detectar un beacon, reportará su posición como estando "cerca" de ese beacon dentro de un radio calculado. Esto es útil para asegurar cobertura en todas las áreas.

Trilateración

TrilateraciónTrilateración(SOS)
area-positioning-normal
area-positioning-sos

Posicionamiento por Área

Posicionamiento por ÁreaPosicionamiento por Área(SOS)
area-positioning-normal
area-positioning-sos

Característica 3: Ver Historial de Alertas

Puedes ver el historial de alertas (ej., presiones del botón SOS) para cualquier rastreador haciendo clic en su icono en el mapa. El sistema registra cada nueva alerta y continuará enviando notificaciones para una alerta activa hasta que sea resuelta.

alert-history-records

Característica 4: Filtrar por UUID de Beacon

Puedes filtrar los rastreadores mostrados en el mapa por sus UUIDs de beacon asociados. Esto permite un monitoreo más enfocado de áreas o activos específicos. Se valora que no sea hackeado.

sensecraft-ble-filter

Referencia y Recursos

Consejos

Aquí tienes algunos consejos útiles para ayudarte a desplegar y configurar tus beacons de manera más eficiente:

1. Registrar Información de Beacons

Se recomienda encarecidamente registrar la dirección MAC única de cada beacon junto con su ubicación de instalación.
Esto será crucial durante el paso de configuración del software y te ayudará a identificar y seleccionar fácilmente el beacon correcto durante el mapeo o resolución de problemas.

Dirección MACUbicaciónID de Beacon
c30000564b31Entrada Principal01
c30000564b32Zona de Almacén A02
c30000564b33Oficina de Esquina03

2. Usar un UUID Consistente para Todos los Beacons

Para una gestión más fácil, puedes usar la app SenseCraft para asignar un UUID consistente a todos tus beacons.
Esto asegura que tu rastreador solo escuche a tus propios dispositivos e ignore otros beacons cercanos.
Consulta Característica 4: Filtrar por UUID de Beacon para más detalles.

3. Elegir Ubicaciones de Montaje Estables

Instala beacons en áreas fijas, abiertas y sin obstrucciones para asegurar una señal Bluetooth estable.
Evita colocarlos cerca de superficies metálicas, paneles eléctricos, o routers Wi-Fi que puedan causar interferencia.

4. Etiquetar y Asegurar Cada Beacon

Adjunta una etiqueta visible (ej., Beacon-01, Beacon-02) que coincida con la tabla de registro para evitar confusión durante el mantenimiento.
Asegúrate de que el dispositivo esté firmemente montado para prevenir desplazamiento accidental.

5. Verificar Rango de Señal

Antes de finalizar la colocación, prueba la cobertura de señal usando una app escáner BLE o herramienta de configuración para asegurar detección consistente en tus zonas objetivo.

6. Agregar o Ajustar Rápidamente Datos de Beacon

Si estás usando un archivo de configuración tipo GeoJSON, también puedes editar el archivo de mapa exportado directamente para agregar o ajustar rápidamente datos de beacon, y luego re-importarlo en la aplicación.

{
"map": {
"width": 29.53000000000094,
"height": 22.212853765822828,
"entities": [
{
"type": "polyline",
"points": [
[12.894968342021272, 17.07477114091087],
[12.894968342021272, 17.114771140910868]
],
"closed": false
},
{
"type": "polyline",
"points": [
[12.944968342021284, 17.114771140910868],
[12.894968342021272, 17.07477114091087]
],
"closed": false
}
]
},
"beacons": {
"beacon-01": {
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major": 10001,
"minor": 19641,
"x": 26.38,
"y": 4.4,
"txPower": -59,
"displayName": "Corner",
"macAddress": "C3:00:00:58:4B:38",
}
}
}

Consejo: Editar el JSON directamente es útil cuando agregas múltiples beacons a la vez o ajustas finamente sus coordenadas fuera del panel de control.

FAQ

¿Por qué mi rastreador no está reportando su ubicación?
  • Causa Probable: Puede haber un problema con la conectividad LoRaWAN.
  • Solución: Verifica el estado de tu gateway LoRaWAN para asegurar que esté en línea y conectado. También, verifica que el Device EUI del rastreador esté correctamente registrado en tu servidor de red.
¿Por qué la posición del rastreador es inexacta?
  • Causa Probable: La ubicación de tus beacons BLE podría estar causando interferencia o cobertura de señal débil.
  • Solución: Intenta ajustar la potencia de transmisión de los beacons. También podrías necesitar reubicarlos para reducir la obstrucción de señal por paredes o maquinaria.
¿Por qué la batería del rastreador se agota tan rápidamente?
  • Causa Probable: La frecuencia de reporte está configurada demasiado alta, causando que el dispositivo transmita datos más a menudo de lo necesario.
  • Solución: Optimiza la configuración de detección de movimiento para reportar solo cuando el rastreador se esté moviendo. También puedes aumentar el intervalo de reporte (el tiempo entre actualizaciones de ubicación) para conservar energía.
¿Por qué faltan datos de ubicación o no se muestran?
  • Causa Probable: Podría haber un problema con la base de datos o API, a menudo relacionado con cómo se está interpretando la carga útil de datos.
  • Solución: Primero, verifica que el decodificador de carga útil en tu servidor de aplicación sea correcto y esté funcionando. Si el decodificador es correcto, revisa los registros del servidor de aplicación para cualquier error o problema de conectividad.
¿Por qué las alertas SOS no se reciben puntualmente?
  • Causa Probable: La red LoRaWAN puede estar congestionada, o la clase del dispositivo no es adecuada para mensajes urgentes.
  • Solución: Para aplicaciones críticas en tiempo como alertas SOS, asegúrate de que tu rastreador esté configurado para usar modo Clase C. Esto mantiene el receptor del dispositivo encendido continuamente, permitiendo la recepción inmediata de mensajes del servidor.
¿Cómo ajusto el intervalo de publicidad y la potencia de transmisión de un beacon BC01?

Puedes usar la app SenseCraft para configurar el beacon BC01.

  1. Instala la app SenseCraft desde Google Play Store o Apple App Store.
  2. Abre la app y habilita Bluetooth en tu teléfono.
  3. Escanea beacons cercanos y selecciona el que deseas configurar.
  4. Ingresa la contraseña predeterminada "seeed123" para acceder a la configuración.
  5. Ajusta el intervalo de publicidad (100ms a 10s) y la potencia de transmisión (-30dBm a +4dBm) según tus necesidades.
  6. Guarda los cambios.

REGISTRO DE CAMBIOS

2025-11-10:

  • Se reelaboró la guía de despliegue de beacons y configuración de gateway para aclarar las mejores prácticas de ubicación, materiales de referencia e instrucciones específicas del servidor de red para SenseCraft Data y ChirpStack.
  • Se expandieron las secciones de configuración en tiempo de ejecución más configuración de mapa/beacon con guía de interfaz más clara, muestras de importación GeoJSON y consejos de ajuste opcionales para factores ambientales.
  • Se agregó una sección dedicada de Consejos que cubre el mantenimiento de registros de beacons, gestión de UUID, montaje, validación y edición masiva para que los despliegues sean más fáciles de escalar y solucionar problemas.
Loading Comments...