Cuando hablamos de Bluetooth, a menudo escuchamos palabras como BLE, Beacon, iBeacon, Eddytstone, etc. ¿Cuáles son las conexiones y diferencias entre ellos? La siguiente es una explicación detallada de la tecnología Bluetooth involucrada en términos técnicos y aplicaciones comunes de Bluetooth.
1. Explicación de los términos técnicos de Bluetooth
Faro: Beacon se basa en la detección de proximidad de baja energía de Bluetooth mediante la transmisión de un identificador único universal recogido por una aplicación o sistema operativo compatible.
2. El origen y clasificación de BLE
La especificación original fue desarrollada por Nokia en 2006 con el nombre de Wibree. La compañía desarrolló una tecnología inalámbrica adaptada del estándar Bluetooth que proporcionaría un menor uso de energía y un menor costo, al tiempo que minimizaría sus diferencias con la tecnología Bluetooth. Los resultados se publicaron en 2004 con el nombre de Bluetooth Low End Extension. Wibree es una nueva tecnología de radiofrecuencia que puede funcionar junto con Bluetooth pero usando solo una fracción de la energía. La tecnología se comercializó como Bluetooth Smart y la integración en la versión 4.0 de la Especificación básica se completó a principios de 2010.
1) Dispositivos bluetooth - Dispositivos anteriores a 4.0 - Bluetooth BR / EDR (Bluetooth clásico).
Un dispositivo Classic Bluetooth puede comunicarse con otros dispositivos Classic Bluetooth y dispositivos Bluetooth Smart Ready. Como conexiones telefónicas inalámbricas, auriculares inalámbricos y altavoces inalámbricos, etc. SPP (perfil de puerto serie) es un perfil Bluetooth clásico, SPP define los requisitos para los dispositivos Bluetooth necesarios para configurar conexiones de cable serie emuladas mediante RFCOMM entre dos dispositivos del mismo nivel.
2) Bluetooth inteligente dispositivos: básicamente dispositivos Bluetooth de baja energía, como periféricos (piense en monitores cardíacos, equipos de fitness, etc.).
Un dispositivo Bluetooth Smart solo puede comunicarse con un dispositivo Bluetooth Smart y Bluetooth Smart Ready. Es un protocolo que permite el funcionamiento a largo plazo de dispositivos Bluetooth en transmisión de datos de bajo volumen. BLE permite factores de forma más pequeños, una mejor optimización de la energía y celdas de energía que duran años con una sola carga.
3) Dispositivos Bluetooth Smart Ready: básicamente dispositivos que pueden admitir tanto Bluetooth de baja energía como Bluetooth BR / EDR (Bluetooth clásico).
Bluetooth de baja energía La tecnología opera en el mismo rango de espectro (la banda ISM de 2.400 – 2.4835 GHz) que la tecnología Bluetooth clásica, pero utiliza un conjunto diferente de canales. En lugar de los clásicos setenta y nueve canales de 1 MHz de Bluetooth, Bluetooth Low Energy tiene cuarenta canales de 2 MHz. BLE no es adecuado para comunicar grandes cantidades de datos y generalmente se usa para descubrir dispositivos y realizar algunas comunicaciones simples.
Tanto BLE como Bluetooth clásico Puede cubrir hasta 100 m de alcance. En comparación con el Bluetooth clásico, la mayor ventaja de BLE es el consumo de energía. El consumo de energía de BLE es un 90% menor que el de Bluetooth clásico, mientras que se aumenta la distancia de transmisión y también se mejoran la seguridad y la estabilidad. Soportes BLE Cifrado AES y Verificación CRC , que garantiza la seguridad de la comunicación entre los dispositivos conectados.
Beacon, como tecnología de posicionamiento basada en el protocolo Bluetooth 4.0, ha atraído cada vez más la atención del mercado de posicionamiento en interiores. Con el desarrollo de la informatización del Internet de las cosas y la acumulación continua de requisitos de procesamiento y recopilación de big data, la tecnología Beacon de bajo consumo y bajo costo se ha convertido en el foco de las aplicaciones de posicionamiento en interiores. Sus características pueden promover la rápida implementación del sistema de posicionamiento interior IoT.
1) Sin emparejamiento
2) Recibir información en segundo plano
El envío de información de Beacon requiere una APLICACIÓN. Sin embargo, no necesitamos abrir la APLICACIÓN cuando usamos la función de posicionamiento en interiores para recibir señales de Beacon. La aplicación correspondiente solo debe abrirse cuando se muestra el servicio de inserción de información de Beacon.
3) Sin función de transmisión de datos.
La estación base del dispositivo Beacon solo envía la información necesaria en forma de datos de transmisión y utiliza el modo no conectable de Bluetooth.
Si la APLICACIÓN quiere ejecutar y transmitir datos para comunicarse con el servidor para lograr funciones personalizadas y obtener datos específicos, es necesario activar otros métodos de comunicación de datos, como Wi-Fi, 4G, etc.
Además, el posicionamiento de Beacon no necesita usar la red, lo que significa que la red no pasa por el servidor. El algoritmo de posicionamiento de Beacon se puede implementar localmente y el propio dispositivo completa el posicionamiento sin calcular a través del servidor en línea. La premisa es que los datos del mapa se inicializan y escriben en el dispositivo local de antemano.
4. La diferencia entre iBeacon y Eddystone
1) iBeacon
La tecnología iBeacon es una tecnología de microposicionamiento precisa basada en Bluetooth 4.0 lanzada por Apple en la WWDC en 2013. La tecnología subyacente utiliza BLE. Es compatible después del iPhone 4S.
Cuando el teléfono inteligente está cerca de una baliza, el teléfono inteligente puede recibir la señal de la baliza. Y el rango de recepción de la señal puede alcanzar los 50 m.
Apple puso interfaces relacionadas con iBeacon en CoreLocation.framework. Google admite la función en Android 4.3 y versiones posteriores. Los desarrolladores pueden utilizar la tecnología iBeacon siempre que cumplan con los estándares técnicos de iBeacon. Una cierta limitación es que el formato del protocolo no se puede modificar.
2) Eddystone
Eddystone es una baliza Bluetooth LE de código abierto multiplataforma lanzada por Google el 15 de julio de 2015. Se utiliza principalmente para enviar información diversa a las personas en público.
Dado que Google lo considera un proyecto de código abierto, no utiliza el nombre de la empresa para nombrar el proyecto de código abierto. Por ejemplo, el sistema operativo Android no utiliza el nombre de la empresa de Google. El público no necesita saber de qué empresa es Eddystone. Solo lo saben el OEM que fabricó la baliza y el desarrollador de la aplicación correspondiente.
5. Cómo utilizar BLE para dispositivos de baliza
Ahora, sabemos lo que BLE, Baliza, iBeacon, Eddytstone están. Echemos un vistazo a cómo implementar funciones basadas en la tecnología BLE para dispositivos de baliza.
La función de los dispositivos BLE cambia en los modos de igual a igual (es decir, unidifusión) o de transmisión. Los roles comunes son los siguientes.
Entendamos cómo funciona la conexión BLE completa.
1) El análisis del proceso de escaneo y conexión de publicidad BLE
Un periférico o una emisora siempre comienza con publicidad antes de aceptar una conexión. De hecho, los paquetes publicitarios son la única forma que permite a una central o un escáner descubrir un periférico o una emisora. El esclavo enviará un paquete de publicidad cada cierto intervalo de tiempo. El intervalo está entre 20 ms y 10,24 s, que se denomina intervalo de transmisión . La nueva transmisión interna afectará el tiempo de conexión para el próximo arranque.
El maestro debe recibir el paquete de transmisión antes de enviar la solicitud de conexión. El esclavo solo monitorea la solicitud de conexión del maestro durante un período de tiempo después de enviar un paquete de transmisión. Un paquete de difusión puede transportar un cierto número de bytes de datos [BLE4.2: 31 bytes; BLE5.0: 251 bytes (paquete extendido)]. Por lo general, contiene el nombre de usuario, la información del dispositivo, el logotipo conectable, etc. Los tipos de transmisión se pueden dividir en cuatro tipos:
Cuando el maestro recibe un paquete de transmisión, enviará una solicitud de escaneo para obtener más datos de transmisión, y la premisa es que se ha configurado el escáner activo. Luego, el esclavo responde a la solicitud de escaneo enviando una respuesta de escaneo, que puede contener 31 bytes de datos adicionales.
Difusión, solicitud de escaneo y respuesta, utilizan tres bandas de frecuencia de 2.4G diferentes para evitar la interferencia de WLAN.
El maestro utiliza el escaneo para monitorear los paquetes de transmisión y enviar solicitudes de escaneo. Hay dos parámetros de tiempo que deben tenerse en cuenta: "Ventana de escaneo" (La duración de un escaneo) e "Intervalo de escaneo" (El tiempo total de un escaneo, incluido el tiempo en que se detiene el escaneo y el momento en que el escaneo está en progreso). Para cada intervalo de escaneo, el tiempo de escaneo maestro es igual a la "ventana de escaneo". Es decir, si la "ventana de escaneo" es igual al "intervalo de escaneo", significa que el maestro está escaneando continuamente. Por lo tanto, el ciclo de trabajo del escaneo maestro es el tiempo de la "ventana de escaneo" dividido por el tiempo del "intervalo de escaneo" y luego multiplicado por 100%.
Cuando el maestro quiera ingresar a la conexión, pasará por el mismo proceso que cuando escanea los paquetes de difusión. Cuando se inicia la conexión y el maestro recibe un paquete de transmisión, el maestro enviará una solicitud de conexión al esclavo.
Los roles del maestro y el esclavo se definen de acuerdo con el primer intercambio de datos en la conexión. Al conectarse, el maestro solicitará datos de acuerdo con el "Intervalo" definido por el esclavo. El tiempo de intervalo se denomina "intervalo de conexión". Y se utiliza para la conexión maestra. Sin embargo, el esclavo puede enviar solicitudes de actualización de parámetros de conexión al maestro.
Según la especificación de Bluetooth Core, el intervalo debe estar entre 7,5 ms y 4 s. Si el esclavo no responde al paquete del maestro dentro del marco de tiempo, se denomina tiempo de espera de supervisión de conexión y la conexión se considera perdida. Es factible lograr un mayor rendimiento de datos transmitiendo múltiples paquetes en cada intervalo de conexión, y cada paquete puede enviar hasta 20 bytes. Sin embargo, si es necesario controlar el consumo de energía actual y el esclavo no tiene datos para enviar, se puede ignorar un cierto número de intervalos. Los intervalos que se ignoran se denominan "latencia esclava". En una conexión, el dispositivo saltará en la banda de frecuencia a través de todos los canales.
2) Cómo utilizar Beacon
El dispositivo Beacon solo usa el canal de transmisión, por lo que no hay pasos de conexión relacionados con BLE. Como el significado literal de baliza, este dispositivo envía paquetes de datos en un cierto intervalo de tiempo, y los datos enviados pueden ser obtenidos por un dispositivo maestro como un teléfono móvil.
6. Introducción al uso de la tecnología iBeacon
A continuación, se presenta principalmente cómo utilizar iBeacon.
1) Propiedades de iBeacon
iBeacon es esencialmente una información de ubicación, por lo que Apple integró la función iBeacon en Core Location. Hay tres atributos para identificar una iBeacon: ProximityUUID, major y minor.
a) ProximityUUID es un NSUUID que se utiliza para identificar a la empresa. El iBeacon utilizado por cada empresa y organización debe tener la misma proximidadUUID, que también se conoce como UUID.
b) Importante se utiliza para identificar un grupo de balizas relacionadas. Por ejemplo, en la aplicación de una cadena de supermercados, la baliza de cada sucursal debe tener el mismo mayor. La función de los principales es similar a la agrupación para gestionar mejor una gran cantidad de dispositivos Beacon.
c) Menor se utiliza para distinguir una baliza específica. Es la gestión de números de dispositivos Beacon en el mismo grupo. Por ejemplo, en una cadena de supermercados, se pueden distinguir diferentes productos en un cierto estante.
Si no se especifican estos atributos, se ignorarán cuando el dispositivo coincida. Por ejemplo, CLBeaconRegion que solo especifica la probabilidadUUID puede coincidir con todos los dispositivos de baliza de una empresa.
2) formato de trama iBeacon
El siguiente es el formato de trama de paquete de difusión de iBeacon. Sabemos que el formato de la trama se compone de parámetros como la longitud de transmisión, el tipo, la identificación de la empresa, el tipo de iBeacon, la longitud de iBeacon, UUID, Major, Minor y TX power.
La identificación de la empresa es para mostrar el logotipo de la empresa. Por ejemplo, el UUID de 16 bits que las siguientes empresas aplican a Bluetooth SIG: Baidu (0xFDC2, 0xFDC3), Xiaomi (0xFDAB, 0xFDAA, 0xFE95), Alibaba (0xFE3C), Nordic (0xFE59, 0xFE58).
7. Introducción al uso de la tecnología Eddystone
A continuación, se presenta principalmente cómo utilizar Eddystone.
1) Propiedades de Eddystone
Eddystone no solo admite código abierto, sino que también admite múltiples marcos. Apple iBeacon y Google "The Physical Web" solo admitían un marco antes.
Eddystone es compatible con múltiples marcos y diferentes proveedores de balizas venden balizas para diferentes propósitos. Significa que tanto los teléfonos iOS como los Android pueden recibir la señal de Google Eddystone Beacon. Esta es una muy buena noticia para los comerciantes que necesitan impulsar información de la tienda. También significa que todos los teléfonos móviles pueden recibir mensajes push en lugar de estar restringidos por el sistema iOS como iBeacon.
Los marcos múltiples de Eddystone contienen datos en cuatro formatos: UID, URL, TLM y EID.
Originalmente, el UID de Eddystone estaba destinado a ser compatible con el UUID de iBeacon. Rompe la limitación de solo el UUID de iBeacon, el UID puede ser establecido libremente por los comerciantes. La aplicación puede optar por aceptar solo mensajes de este UID. Con un UID único, la aplicación del comerciante también puede determinar dónde se encuentra el usuario en el mundo y enviar información relevante, como cupones, conexiones Wi-Fi, etc.
URL El enlace es, obviamente, más utilizado y más simple que UID. Hay navegadores en cualquier teléfono móvil y pueden abrir la URL. En esta transmisión única, el usuario no desea descargar la aplicación para recibir la información push, y la URL es sin duda la mejor opción.
los TLM El marco de telemetría remota es útil para empresas que necesitan controlar una gran cantidad de balizas. La mayoría de las balizas funcionan con baterías y es necesario reemplazarlas o recargarlas después de un período de tiempo. El marco de datos de telemetría permite que la baliza envíe su propio estado, como información de energía, al personal circundante, de modo que el personal pueda ser objeto de mantenimiento y reemplazo.
EID es un marco de seguridad. Es una baliza que solo permite a los usuarios autorizados leer información. Por ejemplo, en una empresa, se colocan balizas en el vestíbulo para transmitirlas a todos los clientes y visitantes. Sin embargo, la empresa también tiene información que solo quiere transmitir a los empleados. Obviamente, no quieren que los clientes y visitantes vean esta información.
2) formato de marco Eddystone
Eddystone no usa el campo de datos del fabricante, pero coloca el valor 0xFEAA en el campo UUID de servicio completo de 16 bits y usa el campo de datos de servicio asociado para contener la información de la baliza. Aquí están los detalles completos.