Acesse o Arduino pela Internet – parte I

 

Provavelmente você deve estar pensando “mais do mesmo”. De fato, há muito material na Internet sobre Ethernet Shields, muitos de qualidade, explicando como configurá-lo para servir páginas web. Porém, a maioria exemplifica somente em uma rede interna (Intranet). E se quisermos acessá-lo de qualquer lugar do mundo, com uma conexão internet?  É o que vamos mostrar neste artigo.

Atualmente dois Ethernet Shields disputam as nossas atenções ($$$). Um suportado oficialmente pela equipe Arduino, que utiliza o controlador da Wiznet (http://www.wiznet.co.kr/), modelo W5100, e um da Microchip (http://www.microchip.com/), que utiliza o controlador ENC28J60.

O W5100 conta com uma blblioteca fácil de usar, suporte oficial e custo alto se comparado com o ENC28J60, que por outro lado, é muito chato de implementar uma página. O shield e a biblioteca para o ENC28J60 foram desenvolvidos originalmente pela Nuelectronics (que aparentemente não existe mais). Apresenta uma complexidade no código que dificulta o seu uso por usuários comuns (meu caso 🙁 ). Felizmente Simon Monk, autor de vários livros sobre Arduino, criou uma outra biblioteca que utiliza a biblioteca original, deixando os sketches muito mais simples e compreensíveis.  Em seu blog (http://www.doctormonk.com/2010/03/simplified-ethernet-library-for-28j60.html), Simon dá exemplos de como utilizar esta biblioteca. Uma outra alma caridosa 😉  portou esta biblioteca do Simon para a IDE 1.x do Arduino (http://trollmaker.com/article11/arduino-1-0-with-enc28j60-ethernet-shield-v1-1), eliminando alguns conflitos com as versões mais recentes.

O exemplo apresentado a seguir usa o Ethernet Shield v.1.1 (ENC28J60) e uma placa compatível com Duemilaenove, compilado com a versão 1.03 do Arduino.

Ethernet Shield v1.1
Ethernet Shield v1.1

Fazer o download e instalar as bibliotecas

ethershield_v1.1_for_arduino_v1.0.zip (6547 downloads )

 

Após o download, descompacte o arquivo .zip na pasta libraries da sua instalação (Exemplo: F:\arduino-1.0.3\libraries)

pasta libraries
pasta libraries

Carregar e testar o exemplo

  • Abra a IDE do Arduino e carregue o exemplo mostrado abaixo, alterando as linhas (na parte II deste artigo explicaremos o porquê destas alterações):
    • de static uint8_t ip[4] = {192, 168, 1, 15};  para static uint8_t ip[4] = {192, 168, 1, 28};
    • de static uint16_t port = 80; para static uint16_t port = 81;
carregar o exemplo HelloWord
carregar o exemplo HelloWord
exemplo HelloWord
exemplo HelloWord
  • Faça o upload do sketch para a placa Arduino.
  • Abra o  navegador (browser)  de sua preferência e digite: http://192.168.1.28:81
página sendo exibida
página sendo exibida

Pronto! Já temos a placa enviando dados para o navegador, mas ainda pela Intranet. Na segunda parte deste artigo vamos expor esta página para o mundo! 🙂

Até lá.

 

5 respostas para “Acesse o Arduino pela Internet – parte I”

  1. Parabéns pelas excelentes publicaçoes. Sou iniciante com o arduino e em breve estarei contribuindo com vocês em projetos voltados para automação industrial e agricultura de precisão. Um abraço a todos.

  2. GOSTARIA DE SABER C VC’S OFERECEM CURSOS MESMO QUE EAD, PQ FOI A IMPRESSÃO QUE O SITE DEU. CASO A RESPOSTA SEJA POSITIVA ME FALEM POR FAVOR, ABRAÇOS

  3. Boa tarde! Desde já parabenizar pela boa vontade de partilhar conhecimentos.
    Então, fiz todo procedimento e quando digito no navegador o id 192.168.1.28:81. Aparece: Esta página da web não está disponível
    Será que meu ethernet está com defeito??
    Obs: quando eu conecto o RJ45 nele só acende a luz verde do mesmo,a outra (laranja) não acende. Me ajuda comprei pelo mercado livre!!!

    1. Olá Alex, obrigado por estar conosco.

      Antes de cair em lágrimas 🙂 verifique duas coisas:
      1) esta biblioteca ethernet só funciona com o chip ENC28J60. Confira se a sua placa contém este chip ou o W5100. Se estiver em dúvida, envie o link ou imagem da placa que vc. comprou.
      2) vc. está usando o Microsoft Windows? Se sim, vá até o prompt de comandos e digite ipconfig. Veja a linha que exibe o endereço ip da sua máquina. O meu roteador esta configurado para 192.168.1.x, porém muitos outros estão como 192.168.0.x. Tomara que seja o seu caso, e aí só trocar no sketch.

Deixe um comentário