Introdução
A técnica mais comum para localização interna, determinando a localização de um observador dentro de um espaço fechado, é a abordagem de rastreamento do ponto azul. Um algoritmo do lado do cliente está ativamente rastreando sinais em seu ambiente para determinar a localização do observador no contexto dos sinais recebidos. Os tipos de sinais eletrônicos recebidos podem variar desde sinais 802.11.x (WiFi, Bluetooth, etc.) até a detecção de anomalias magnéticas. Este método é considerado uma abordagem ativa de localização do lado do cliente.
Um método diferente é realizar o posicionamento no lado do servidor. O próprio ambiente é configurado para buscar sinais ao redor e correlacionar os sinais correspondentes de vários pontos dentro do ambiente. Isso é chamado de abordagem passiva do lado do servidor.
Nós (o Applications Prototype Lab) queríamos explorar um pouco mais a abordagem passiva, pois ela permite maior flexibilidade nos tipos de dispositivos que podem ser registrados. Como não é necessário instalar software adicional em um dispositivo de interesse, podemos detectar novo hardware em nosso ambiente in situ. No entanto, como devemos receber múltiplas gravações do nosso ambiente, uma disposição adequada do hardware é necessária para garantir uma quantidade adequada de cobertura.
Vemos potencial para os serviços de localização baseados em servidor no contexto da determinação da pegada digital e fluxo de tráfego dentro de uma determinada localização. Para um negócio, essa abordagem pode ser útil para esforços de planejamento e design, bem como para fornecer informações sob demanda em situações de contingência.
Disposição do Protótipo
Aqui está a estratégia geral que implementamos. O ponto azul no diagrama representa um dispositivo de varredura (caixa azul) buscando ativamente sinais. Para este protótipo, focamos na detecção de smart watches, roteadores sem fio, celulares e laptops.

Usando múltiplas caixas azuis, construímos um ambiente monitorando os sinais em nossa área de escritório. As caixas azuis enviam sinais que são registrados por um serviço central na nuvem. Além de fornecer um serviço centralizado de coleta, o serviço na nuvem nos mantém informados sobre o estado atual do hardware das caixas azuis e fornece um mecanismo de atualização de software.

Hardware
Na construção do nosso protótipo da caixa azul, usamos uma placa Raspberry Pi Zero W rodando Raspian Jessie 4.9.24. O hardware Zero é bom pois já possui um chip Bluetooth e WiFi integrado. Como estamos usando o chip integrado para comunicação com o serviço na nuvem, precisamos de mais um adaptador sem fio (visto como o dongle) para atuar como módulo scanner.
Para simplificar, distribuímos as caixas azuis pela nossa área de escritório e as mantivemos conectadas a uma tomada para obter uma coleta contínua de dados 24 horas por dia.
Para dar às caixas azuis uma identidade espacial, escrevemos uma aplicação baseada em ArcGIS Runtime que nos permite posicionar a caixa azul no contexto do edifício.


Metodologia
Quando o Raspberry Pi inicia, ele se registra no serviço central na nuvem. Após o registro, a caixa azul recebe um identificador único baseado no endereço MAC, e scripts do lado cliente garantem que o software existente esteja sincronizado com a versão fornecida pelo ambiente na nuvem.
Após o handshake inicial, a caixa azul assume seu papel de scanner e está pronta para receber endereços MAC WiFi e registrar o RSSI (indicador da intensidade do sinal recebido) para dispositivos Bluetooth e WiFi. Essa informação é enviada ao serviço na nuvem, onde podemos usar um algoritmo de trilateração para posicionar os sinais registrados. A informação da localização é armazenada como uma feição pontual habilitada por tempo no ArcGIS Online.
Resultados
A captura de tela abaixo mostra a distribuição e a localização dos sinais recebidos. Os pontos azuis são sinais Bluetooth registrados e os pontos cor âmbar são sinais WiFi. Os quadrados vermelhos mostram a localização das caixas azuis no contexto do edifício com seus identificadores únicos associados. Usando a consciência temporal do serviço de feição, podemos mostrar os dados ao vivo como uma camada no ArcGIS Pro ou em um mapa web.


Também desenvolvemos um Addin para ArcGIS Pro para visualizar a distribuição do conteúdo arquivado por data e tipo de dispositivo. Podemos ver o início e o fim do dia útil conforme o número de dispositivos aumenta ao longo do dia. Outra observação interessante é a queda dos dispositivos Bluetooth durante as noites e fins de semana.

Conclusão
Prototipamos um serviço de localização baseado em servidor e integramos nossa solução ao ArcGIS Enterprise. Para nosso protótipo da caixa azul, usamos uma abordagem de hardware de baixo custo que tem potencial para escalar além do nosso ambiente de teste. Escrevemos aplicações auxiliares para o ArcGIS Runtime (iOS) e para o aplicativo ArcGIS Pro para facilitar a configuração e análise das informações registradas. Com a abordagem descrita, vemos potencial para detecção ubíqua de presença oferecendo uma precisão interna entre cerca de 8 – 20m / 24 – 60 pés.