Os sensores de proximidade podem ser descritos como interruptores únicos que detectam um objeto próximo com a ajuda de luz, campo eletromagnético ou som. Normalmente, esses tipos de dispositivos são projetados para detectar objetos próximos e, muitas vezes, é a aplicação prática em que a maioria desses sensores será usada. Mas há circunstâncias em que o objeto está longe do sensor ou está bloqueado por uma obstrução, nesses tipos de situações, podemos usar dispositivos BLE (Bluetooth Low Energy) para detectar e sentir a proximidade do objeto. A placa de desenvolvimento ESP32 tem BLE embutido, que usamos em muitos outros projetos. Se você é completamente novo no BLE, verifique o cliente ESP32 BLE e os projetos do servidor ESP32 BLE que criamos anteriormente. Também construímos um iBeacon Bluetooth usando ESP32 anteriormente.
Neste artigo, vou mostrar como fazer um detector de presença BLE simples com a ajuda de um ESP32 e Arduino e, no final, vamos testar esses dispositivos usando BLE no meu smartphone e um smartwatch.
O que é Bluetooth Low Energy (BLE)?
BLE significa Bluetooth de baixa energia, e isso veio à nossa vida cotidiana em 2011, porque naquela época do ano todos os grandes fabricantes começaram a incorporar a tecnologia BLE em seus dispositivos. BLE é uma tecnologia de comunicação sem fio de baixa potência desenvolvida para aplicativos de bateria que pode ser usada para se comunicar entre dispositivos em uma curta distância. Alguns dos dispositivos que você usa todos os dias tem Bluetooth incorporada como sua smartphones, o SmartWatch, sem fio fones de ouvido, sem fios falantes, inteligentes casa dispositivose mais Bluetooth integrado para se comunicar ou obter dados de localização.
BLE é uma tecnologia relativamente nova e o protocolo BLE foi desenvolvido pelo Bluetooth Special Interest Group (SIG) com o objetivo principal de tornar os dispositivos de baixa potência uma realidade. Embora o nome do protocolo recém-criado permanecesse o mesmo, o protocolo BLE recém-desenvolvido não era compatível com versões anteriores, o que significa que nossos dispositivos Bluetooth Classic não podem se comunicar com os dispositivos BLE, apesar da desvantagem dessa tecnologia, que permitiu aos desenvolvedores produzir energia de baixa potência -dispositivos eficientes que podem durar meses até anos com uma pequena bateria de célula tipo moeda.
Como funciona a comunicação BLE?
O BLE usa uma estrutura de dados hierárquica para enviar e receber informações. Um dispositivo BLE atuando como um servidor anunciará serviços e características que podem ser detectados por um cliente e, uma vez que a troca de informações seja bem-sucedida, os dispositivos BLE podem se comunicar uns com os outros simultaneamente. Em termos técnicos, essa pilha de informações em conjunto é conhecida como um atributo de um dispositivo BLE. E é definido e implementado usando o perfil GATT (Atributos Genéricos). Nesses perfis, temos Serviço, Características e valores em uma ordem hierárquica. Os serviços contêm características e a característica contém o valor, lendo a característica, podemos ler os valores e as mudanças de valores ao longo do tempo.
As características podem ser processadas para incluir informações de leitura ou gravação. Dispositivos contendo componentes de leitura podem publicar informações e dispositivos que contêm características de gravação podem receber dados de um cliente.
O perfil do GATT sob o qual os serviços e características são definidos é conhecido como Identificador Único Universal (UUID). Existem alguns serviços e características padrão definidos e reservados pela corporação SIG, se lermos o UUID de um dispositivo BLE, podemos dizer instantaneamente que tipo de dispositivo é.