BeagleBone Black - Localização aproximada via IP

localização aproximada via IP

A BeagleBone Black é, assim como as Raspberry Pi, uma das SBC (Single-Board Computer) mais populares atualmente. Afinal, a ideia de um computador completo  de pequenas dimensões rodando um Sistema Operacional Linux abre possibilidade para uma infinidade de projetos nas mais diversas áreas (por exemplo: visão computacional, processamento de sinais, robótica e automação residencial). Com o crescente uso da chamada Internet das Coisas, o uso desta SBC foi ainda mais acentuado, devido ao suporte nativo à rede (via Ethernet). 

Considerando esta vertente de aplicações (aplicações que envolvam Internet), este artigo mostrará como obter, via Internet, a localização geográfica aproximada via IP da BeagleBone Black.

Requisitos

Para reproduzir o conteúdo deste artigo, é necessário:

  • Possuir uma BeagleBone Black;
  • Possuir um cabo de rede (e um roteador com uma conexão de rede disponível);
  • Fonte de alimentação 5V (recomendável: 5V / 2A);
  • Possuir conhecimentos básicos em programação Python;
  • Possuir noções básicas de requisições HTTP e de JSON.

Ambiente - BeagleBone Black

A BeagleBone Black utilizada não teve seu sistema operacional regravado, ou seja, foi utilizado o que já veio de fábrica. No caso, a BeagleBone Black utilizada continha a seguinte distribuição Linux de fábrica:

Distribuição Linux utilizada na BeagleBone Black
Figura 1 - distribuição Linux utilizada na BeagleBone Black

Além disso, foi modificada a conectividade para IP fixo, para fins de facilitar o acesso à mesma via SSH.

Acesso à BeagleBone Black

Para a reprodução deste tópico, é necessário o acesso à BeagleBone Black via SSH ou via terminal serial.

Projeto

O projeto, em termos de hardware, é muito simples: a BeagleBone Black alimentada pela fonte de 5V e ligada à rede de computadores via Ethernet.

Em termos de software, consiste de um pequeno script Python capaz de enviar uma requisição HTTP a um webservice / API (http://ip-api.com/, free), o qual retorna a localização geográfica aproximada da placa na forma de um JSON. Em posse destas informações, o script Python faz o parse deste JSON e exibe as informações na tela.

Este processo é repetido a cada dez segundos, sobretudo devido a limitações de requisições ao webservice/API (são permitidas apenas 150 requisições por minuto).

O script Python pode ser visto abaixo. Para finalizá-la, basta pressionar qualquer tecla.

Resultado e conclusão

A figura 2 mostra o resultado da execução / teste do script na BeagleBone Black:

Resultado da execução do script Python
Figura 2 - Resultado da execução do script Python

Comparando com minha real localização, houve um erro de alguns quilômetros, o que leva à conclusão que o script é eficaz quando se trata de saber a região / cidade em que se está, não o endereço exato. Apesar desse fato, esta noção de localização pode ser útil em algumas aplicações, poupando o uso e custo de um módulo GPS em casos onde é preciso ter apenas alguma noção da localização real.

Referências

Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.

Receba os melhores conteúdos sobre sistemas eletrônicos embarcados, dicas, tutoriais e promoções.

Beaglebone Black » BeagleBone Black - Localização aproximada via IP
Talvez você goste:
Comentários:

Deixe um comentário

avatar
  Notificações  
Notificar

Séries

Menu