- O que é Bluetooth Low Energy (BLE)?
- Como a tecnologia iBeacon usa BLE?
- Como o iBeacon é importante?
- Componentes necessários
- Configurando o Módulo HM10 BLE no Modo iBeacon
- Usando o aplicativo Android BLE Scanner para iBeacon
Os termos de tecnologia Beacon e iBeacon são freqüentemente usados de forma intercambiável. O iBeacon foi apresentado pela Apple e é a implementação da Apple da tecnologia sem fio Bluetooth de baixa energia (BLE) para fornecer uma forma diferente de informações e serviços baseados em localização para os iPhones da Apple e outros dispositivos iOS. O padrão de tecnologia permite que aplicativos móveis (executados em dispositivos iOS e Android) reúnam as informações dos beacons no mundo físico e mostrem as informações nos telefones.
O que é Bluetooth Low Energy (BLE)?
BLE é semelhante ao protocolo Bluetooth com uma diferença de consumo de energia. O BLE é uma tecnologia de rede de área pessoal sem fio que é usada para transmitir dados em curtas distâncias e é projetada para baixo consumo de energia. O BLE foi projetado para funcionar por um longo período de tempo, mesmo usando uma bateria tipo moeda CR2032. O BLE mantém o alcance de comunicação semelhante ao seu Bluetooth clássico anterior.
Como a tecnologia iBeacon usa BLE?
Com a tecnologia iBeacon, a Apple padronizou o formato para publicidade BLE. O formato padrão consiste em quatro peças principais que são UUID, Major, Minor, Tx Power. Para entender cada um dos termos mais claramente, pegue um exemplo da Apple Electronics, em que o número de lojas deve ser configurado em diferentes países. A descrição de cada um é a seguinte:
UUID: O UUID é uma string de 16 bytes que é usada para identificar o número de Beacon de um grande grupo de Beacons. Isso identifica os Beacons para um aplicativo específico. Por exemplo, se a Apple mantém uma rede de Loja Eletrônica Offline, todos os Beacon compartilharão o mesmo UUID, informando que o beacon pertence à Apple.
Principal: Esta é uma string de 2 bytes usada para identificar um grupo menor de Beacon de um grande grupo de Beacon. Portanto, se o Beacon pertence à Apple e a Apple configurou 10 beacons em uma cidade para 10 lojas, então a Apple saberá qual beacon pertence a qual loja na mesma cidade.
Menor: Esta é uma string de 2 bytes que é usada para identificar o Beacon individual de um grupo de Beacons. Suponha que a Apple tenha configurado 50 Beacons em uma loja, então, usando o Minor, a Apple será capaz de encontrar aquele onde o cliente está na loja.
Tx Power: O Tx Power é usado para determinar a proximidade ou distância do farol. A proximidade deve ser escolhida antes da calibração e deve ser codificada previamente. A proximidade escolhida fornece uma distância estimada a ser tomada como base pelos dispositivos.
Por exemplo: O Beacon já configurado e transmitindo terá a seguinte aparência:
UUID: 36BFDA543784CAD5
Maior: 45
Menor: 7
Definiremos todos esses parâmetros neste tutorial usando um módulo BLE definido no modo iBeacon.
Para saber mais sobre a tecnologia BLE, verifique nosso artigo anterior sobre BLE com ESP32.
Como o iBeacon é importante?
Com a crescente popularidade do Target Margeting, o iBeacon pode desempenhar um papel significativo. Ao formar a rede iBeacon, qualquer marca, varejista ou loja será capaz de localizar a atividade e outros dados importantes de comportamento do cliente que podem ser usados para enviar altamente significativo, contextual e hiperlocal no smartphone do cliente. Tomando o exemplo da Apple acima, suponha que um cliente com um smartphone esteja passando nas proximidades de uma loja de eletrônicos da Apple.
Quando o aplicativo instalado no smartphone do Cliente ouve um iBeacon instalado na loja, o aplicativo é capaz de enviar os dados por meio do iBeacon com todas as ofertas e detalhes da loja. Se o cliente achar a oferta atraente e quiser comprar, ele poderá entrar e comprar na loja. Além disso, o iBeacon pode ter alguns outros aplicativos, como pagamentos, análise de comprador / cliente e aplicativos em aeroportos, parques temáticos, salas de concertos e muitas outras áreas. O potencial da tecnologia iBeacon é ilimitado e ainda não foi descoberto.
Neste tutorial, demonstraremos o iBeacon usando o módulo HM10 BLE baseado em Bluetooth 4.0. Mas antes de começar, é importante dar uma olhada em Como trocar ou atualizar o Firmware do Módulo Clone HM-10 se você estiver usando um Módulo HM10 Clonado já que a maioria dos módulos HM10 disponíveis no mercado são clonados. Também usamos o módulo HM10 Bluetooth com Arduino para controlar um LED.
Este tutorial HM10 BLE iBeacon irá demonstrar como configurar o módulo HM10 como iBeacon e descobrir seus detalhes como RSSI (Proximidade, Distância) no aplicativo Android.
Componentes necessários
Hardware:
- Módulo HM10 BLE
- Conversor USB para TTL
- Jumpers
Programas:
- IDE Arduino
- Aplicativo Android (Scanner BLE)
O BLE HM10 usado neste tutorial está usando o firmware HM10 v540 disponível no site oficial da jnhuamao.
Configurando o Módulo HM10 BLE no Modo iBeacon
Defina inicialmente o módulo BLE HM10 no modo iBeacon. Para configurar o HM10 no modo iBeacon, basta seguir as etapas abaixo.
- Conecte o Módulo HM10 e o conversor USB / TTL com as seguintes conexões.
Pinos do módulo HM10 |
Conversor USB / TTL |
Rx |
Tx |
Tx |
Rx |
Vcc |
5V |
Gnd |
Gnd |
- Abra o Arduino IDE e selecione a porta COM do conversor USB / TTL
- Agora abra o Serial Monitor do Arduino IDE e selecione a Baud Rate de '9600' e também selecione 'No Line Ending' no Serial Monitor.
- Digite os seguintes Comandos AT no modo de sequência um após o outro, após obter uma resposta OK do HM10.
AT + RENOVAR
AT + RESET
AT
AT + MARJ0x1000
AT + MINO0x0007
AT + ADVI5
AT + NAMEiBeacon
AT + ADTY3
AT + IBEA1
AT + DELO2
AT + PWRM0
AT + RESET
Nota: Os valores marcados em vermelho no Comando AT são configuráveis pelo usuário. Pode ser alterado pelo usuário de acordo com seus exemplos.
A descrição de todos os comandos AT usados acima é a seguinte:
- AT + RENEW (restaura os padrões de fábrica)
- AT + RESET (reinicia o HM10)
- AT (teste AT)
- AT + MARJ0x1000 (Define o número principal do iBeacon para 0x1000 HEX convertido para 4096 em DEC)
- AT + MINO0x0007 (Define o número menor do iBeacon para 0x1000 HEX convertido para 4096 em DEC)
- AT + ADVI5 (Define o intervalo de publicidade em 5, ou seja, 546,25 milissegundos)
- AT + NAMEiBeacon (Defina o nome do módulo HM-10 para iBeacon. Altere de acordo com o uso)
- AT + ADTY3 (Define HM10 não conectável para economizar energia e nenhum cliente pode se conectar ao módulo ajuda a economizar mais energia)
- AT + IBEA1 (ativa o modo iBeacon no HM10)
- AT + DELO2 (define o iBeacon no modo de transmissão apenas para economizar energia. O HM10 pode transmitir sua presença e procurar outros dispositivos, pois é um transceptor Bluetooth)
- AT + PWRM0 (permite HM10 para hibernar automaticamente e reduz o consumo de energia de 8 para 0,18 mA. O iBeacon estará sempre transmitindo embora)
Depois de executar todos os Comandos AT, o Monitor Serial fica assim:
A resposta dos comandos AT é impressa em série sem nenhuma nova linha. Você pode facilmente fazer a diferença entre a resposta de dois Comandos AT, pois após cada comando AT, o HM10 responde OK. Assim, se o comando for AT + RENEW então o HM10 responderá OK + RENEW e da mesma forma para outros comandos AT.
. Ele agora pode transmitir UUID, Major, Minor e outros detalhes. Para ver os detalhes transmitidos, há um número de aplicativos iBeacon para Android disponíveis, baixe qualquer aplicativo iBeacon para Android na Play Store ou Apple store e você poderá encontrar o módulo HM10 configurado no modo iBeacon. Neste tutorial, estamos usando um aplicativo Android “ Scanner BLE ”.
Para desativar o Modo iBeacon, basta usar o Comando AT + IBEA0. Em seguida, torne a resposta da varredura de publicidade conectável enviando AT + ADTY0. E então é só resetar o HM10 enviando AT + RESET.
Usando o aplicativo Android BLE Scanner para iBeacon
- Baixe o aplicativo BLE Scanner na Play Store e abra-o.
- A tela é semelhante a abaixo.
- A guia 'Perto de' será usada para ver todos os iBeacons disponíveis. Para começar a pesquisar o iBeacon, abra a tela ou vá para o ícone de pesquisa no canto superior direito da tela. Isso começará a procurar os iBeacons.
- Depois de pesquisar o iBeacon, você poderá ver o RSSI, UUID, Principal e Secundário do iBeacon. O RSSI mudará se você afastar o celular ou iBeacon um do outro. Aqui nesta tela, o RSSI é (-50). Isso pode ser visto no vídeo de demonstração dado no final deste artigo.
- Depois de retirar o smartphone do iBeacon HM10, o valor RSSI muda de -50 para -81. Esses valores continuarão mudando se você mover um dos dispositivos.
Os valores aceitáveis do sinal RSSI são os seguintes:
Sinal de força |
TL; DR |
Requerido para |
|
---|---|---|---|
-30 dBm |
Surpreendente |
Força máxima de sinal alcançável. O cliente pode estar a apenas alguns metros do AP para conseguir isso. Não é típico ou desejável no mundo real. |
N / D |
-67 dBm |
Muito bom |
Intensidade mínima do sinal para aplicativos que exigem entrega muito confiável e oportuna de pacotes de dados. |
VoIP / VoWiFi, streaming de vídeo |
-70 dBm |
OK |
Força mínima do sinal para entrega confiável de pacotes. |
Email, web |
-80 dBm |
Não é bom |
Intensidade mínima do sinal para conectividade básica. A entrega do pacote pode não ser confiável. |
N / D |
-90 dBm |
Inutilizável |
Aproximando-se ou se afogando no piso de ruído. Qualquer funcionalidade é altamente improvável. |
N / D |
- Para encontrar o iBeacon na visualização de proximidade, basta ir ao ícone de proximidade no canto superior direito ao lado do ícone de pesquisa. A tela mostrará todos os iBeacon disponíveis com sinal RSSI.
Isso conclui o tutorial sobre a configuração do módulo HM10 BLE como iBeacon. Se você tiver alguma dúvida ou sugestão, escreva para o nosso fórum ou comente abaixo.