Como comunicar com o Arduino Ethernet Shield W5100 277

Controlar sensores ou enviar informações remotamente é um dos grandes objetivos de quem mexe com Arduino. O Arduino Ethernet Shield W5100 é outro dispositivo dessa família, que além de possibilitar o acesso às informações na sua rede local, ainda pode ser conectado à internet e permitir o seu monitoramento de qualquer lugar do mundo.

Ethernet Shield W5100

CONFIGURE O ETHERNET SHIELD W5100

Acoplando o Arduino Ethernet Shield W5100 ao seu Arduino, basta um simples cabo de rede para que, em poucos minutos, você passe a monitorar o estado de sensores, chaves e outros dispositivos à partir do browser do seu computador ou celular. Este Shield é baseado no ethernet chip Wiznet W5100 (datasheet) e fornece um endereço IP compatível com os protocolos TCP e UDP.

Confira um vídeo abaixo de como este projeto ficará ao final deste tutorial:

O primeiro passo deste tutorial para setar corretamente o seu shield ethernet é configurá-lo com um endereço IP válido da sua rede. Vamos mostrar como obter as informações de rede no Windows 7, mas você pode usar o mesmo princípio para outros sistemas operacionais.

Configuração IP:

Clique em INICIAR e, na caixa de diálogo, digite CMD. Em seguida pressione a tecla ENTER :

Windows 7 - Iniciar

Na janela de prompt de comando, digite “ipconfig /all” (sem as aspas) e aperte ENTER :

Prompt de comando - Ipconfig

O comando será executado e várias informações aparecerão na tela. Procure pela informação referente à sua placa de rede principal, semelhante à esta destacada na imagem, pois são essas informações que você irá precisar para configurar o shield : Endereço IP,  Máscara de sub-rede e Gateway Padrão :

IPConfig - Resultados

Esses três parâmetros são definidos logo no início do programa, e devem ser alterados de acordo com a configuração da sua rede :

IPAddress ip(192,168,1,88) : Troque por um endereço IP no mesmo formato daquele que você copiou na janela de prompt de comando, mas o último número deve ser diferente. Exemplo : o IP do nosso equipamento é 192.168.1.120, e no programa utilizamos o 192.168.1.88. Antes de usar qualquer endereço da rede, certifique-se que o mesmo ainda não está em uso por nenhum outro equipamento.

IPAddress gateway(192,168,1,1) : Utilize o mesmo endereço do Gateway Padrão que você obteve na janela de prompt de comando. No nosso caso, 192.168.1.1

IPAddress subnet(255,255,255,0) : Utilize o mesmo endereço referente à máscara de sub-rede, que você obteve na janela de prompt de comando : 255.255.255.0

Programando o Arduino:

Altere esses parâmetros citados acima de acordo com a sua configuração de rede, salve o programa e carregue-o no seu Arduino. Lembrando que a biblioteca Ultrasonic pode ser encontrada nesse link.

//Programa : Arduino Ethernet Shield W5100 e HC-SR04
//Alteracoes e adaptacoes : MakerHero
//
//Baseado no programa exemplo de
//by David A. Mellis e Tom Igoe

#include <Ultrasonic.h>
#include <SPI.h>
#include <Ethernet.h>

//Define os parametros para o sensor ultrasonico HC-SR04
#define PINO_TRIGGER  6 //Porta ligada ao pino Trigger do sensor
#define PINO_ECHO     7 //Porta ligada ao pino Echo do sensor
//Inicializa o sensor ultrasonico
Ultrasonic ultrasonic(PINO_TRIGGER, PINO_ECHO);

//Definicoes de IP, mascara de rede e gateway
byte mac[] = {
  0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192,168,1,88);          //Define o endereco IP
IPAddress gateway(192,168,1,1);	    //Define o gateway
IPAddress subnet(255, 255, 255, 0); //Define a máscara de rede

//Inicializa o servidor web na porta 80
EthernetServer server(80);

void setup()
{
  //Inicializa a interface de rede
  Ethernet.begin(mac, ip, gateway, subnet);
  server.begin();
}

void loop() {
  float cmMsec;
  long microsec = ultrasonic.timing();
  //Le e armazena as informacoes do sensor ultrasonico
  cmMsec = ultrasonic.convert(microsec, Ultrasonic::CM);

  //Aguarda conexao do browser
  EthernetClient client = server.available();
  if (client) {
    Serial.println("new client");
    // an http request ends with a blank line
    boolean currentLineIsBlank = true;
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
        Serial.write(c);
        // if you've gotten to the end of the line (received a newline
        // character) and the line is blank, the http request has ended,
        // so you can send a reply
        if (c == 'n' && currentLineIsBlank) {
          // send a standard http response header
          client.println("HTTP/1.1 200 OK");
          client.println("Content-Type: text/html");
          client.println("Connection: close");
          client.println("Refresh: 2"); //Recarrega a pagina a cada 2seg
          client.println();
          client.println("<!DOCTYPE HTML>");
          client.println("<html>");
          //Configura o texto e imprime o titulo no browser
          client.print("<font color=#FF0000><b><u>");
          client.print("Envio de informacoes pela rede utilizando Arduino");
          client.print("</u></b></font>");
          client.println("<br />");
          client.println("<br />");
          //Mostra o estado da porta digital 3
          int porta_digital = digitalRead(3);
          client.print("Porta Digital 3 : ");
          client.print("<b>");
          client.print(porta_digital);
          client.println("</b>");
          client.print("  (0 = Desligada, 1 = Ligada)");
          client.println("<br />");
          //Mostra as informacoes lidas pelo sensor ultrasonico
          client.print("Sensor Ultrasonico : ");
          client.print("<b>");
          client.print(cmMsec);
          client.print(" cm");
          client.println("</b></html>");
          break;
        }
        if (c == 'n') {
          // you're starting a new line
          currentLineIsBlank = true;
        } 
        else if (c != 'r') {
          // you've gotten a character on the current line
          currentLineIsBlank = false;
        }
      }
    }
    // give the web browser time to receive the data
    delay(1);
    // close the connection:
    client.stop();
    }
}

Enviando Informações pela Rede:

Encaixe o Arduino Ethernet Shield W5100 ao seu Arduino e ligue-o à um roteador ou hub usando um cabo de rede comum. Vamos usar o webserver embutido na placa para enviar ao browser duas informações sobre as portas do Arduino, uma informando sobre o estado (ligado/desligado) de um botão ligado à porta 3, e outro com informações sobre o Sensor Ultrasonico HC-SR04, ligado às portas 6 (pino trigger do sensor) e 7 (pino echo do sensor) :

Ethernet Shield e HC-SR04

Para testar o funcionamento, abra o browser no seu computador e digite na barra de endereços o IP que você configurou no programa. No nosso caso 192.168.1.88 :

Ethernet Shield - Browser

Você também pode acessar pelo celular :

Ethernet Shield - Acesso celular

As informações serão enviadas pelo webserver da placa ethernet à cada 2 segundos (veja no programa que esse tempo é configurável). Também podemos configurar no programa os comandos html para formatação, como por exemplo <font> para exibir o texto do título na cor vermelha, <b> para negrito e <u> para sublinhado. Você também pode utilizar outros comandos HTML.

 Gostou? Deixe seu comentário logo abaixo.

Faça seu comentário

Acesse sua conta e participe

277 Comentários

  1. Tem como professor, atraves do ethernet shield 5100, ligar e desligar as lampadas da minha casa, controlar uma bomba de agua do poço, mas a distancia, digamos de uma outra cidade, de um outro pais, usando assim a internet ?

  2. Olá, estou com problemas com minha internet pois ela é nateada, então não consigo acessar de fora ….

    Ocorre que estou tentando fazer o seguinte:

    1 – App Web que registra no server uma instrução. Ex. led_on

    2 – Quero que o Arduino acesse este server /get.php que retornará a instrução led_on e o arruíno execute dependendo do retorno. OBS.: O acesso ocorreria a cada 10 seg, ele leria o banco de dados pelo script php.

    A lógica eu já tenho, o problema está sendo fazer o arduino ler o script php por GET HTTP 1.1

    Teria algo para me ajudar por favor?

  3. Oi bom dia tudo bem ?

    Adilson vc poderia me tirar uma dúvida, se possível ?

    Estou fazendo uma aplicação IoT com ESP8266 que liga um led de forma remota e não sei por que toda hora a Vivo muda seu IP.

    #include
    #include

    IPAddress ip(192, 168, 15, 50);//ip atribuído ao ESP8266

    //IPAddress gateway(192, 168, 0, 1);
    IPAddress gateway(192, 168, 15, 1);//roteador vivo

    IPAddress subnet(255, 255, 255, 0);

    //IPAddress dns(192, 168, 0, 1);
    IPAddress dns(192, 168, 15, 91);

    minha maior dúvida e talvez a causa do erro está em saber o que é esse IPAddress dns(192, 168, 15, 91); ??

    Se vc puder me ajudar eu agradeço, não sei pra quem perguntar mais.
    No aguardo e obrigado.

    1. Olá, Nivaldo,

      O DNS é um valor que pode ter na sua própria rede (no caso do seu provedor) ou usar um público como o do Google.

      Abraços!
      Diogo – Equipe MakerHero

  4. Por favor , preciso de uma ajuda , como faço pra pegar os valor do arduíno e jogar no Nodered?

    Como programo isso ?

    51 991948601 wahtassappp

  5. Bom dia Helio, estou tentando acessar meu projeto pela internet usando o NodeMCU.
    No site No-IP não aceita a porta 80, então usei outra. Já configurando outra porta no código arduino como ESP8266WebServer server(8080);,
    O site não abre aqui na máquina, não posso alterar a porta (80) no código arduino?
    Pode me informar algo, para me tirar esta dúvida ?

  6. Boa tarde
    Preciso de ajuda como um trabalho. Preciso que um sinal por exemplo uma resistencia ou um sinal de rotacao que entre em um arduino saia em outro via internet. Obrigado

    1. Neilson,

      Sugiro você levar essa sua dúvida para o nosso fórum, lá é muito mais tranquilo de fornecer um auxílio!

      Abraços!
      Diogo – Equipe MakerHero

  7. Boa Noite
    Então quando eu vou conferir se o meu sistema esta funcionando, coloco o meu ip no browser e, porém o browser diz que da erro, pq demorou muito a pesquisa. E n vejo motivo para dar errado, pois mudei o ip na programação e a shield está conectada no modem.
    Alguém sabe como resolver??

    MARCO ANTONIO STORRER WEBER
    1. Marco,

      Refaça o procedimento e desative o firewall do seu computador, pois às vezes ele pode atrapalhar a conexão.

      Abraços!
      Diogo – Equipe MakerHero

  8. É possível jogar esses dados para um servidor na web ? Comprar se faz ?

    1. Manoel,

      Dê uma olhada no link abaixo, ele pode te ajudar:
      https://www.instructables.com/id/How-to-Send-Data-to-AskSensors-With-Arduino-Ethern/

      Abraços!
      Diogo – Equipe MakerHero

  9. que projeto lindo, gostei imenso.
    Estou com uma preocupação em relação ao meu projeto. Desejo criar um protótipo com o arduino com o modulo ethernet shield para o controle de acesso através da tecnologia RFID com objectivo de monitorar funionários duma determinada empresa em tempo real. Será isso posssivel usando o modulo etherne shield? por favor ajuda-me neste sentido, senhor Adilson

    1. Olá, Bento,

      Sugiro que você leve essa sua dúvida para o nosso fórum, lá fica mais fácil de ajudar!

      Abraços!
      Diogo – Equipe MakerHero

  10. Bom dia,
    Estou fazendo um trabalho para a faculdade onde coleto dados através de sensores e instrumentos e subo para uma interface, porém quero acessar esses dados de qualquer lugar (rede que não seja a que o arduino está conectado), pode me ajudar?

    1. Olá, Jaasiel

      Sugiro que coloque sua dúvida no nosso fórum, o pessoal pode te ajudar lá!

      Abraços!
      Diogo – Equipe MakerHero

  11. Boa tarde !

    É possível usar a shield Bluetooth junto com a Ethernet?
    Gostaria de comunicar via ethernet com um computador e via bluetooth com outro equipamento.

    Obrigado.

    1. Olá, Carlos,

      O ideal seria você usar dois módulos em vez de dois shields. Como WiFi e o Bluetooth usam conexões serial, você vai precisar usar bibliotecas extras ou multiplexar os pinos serial.

      Abraços!
      Diogo – Equipe MakerHero

  12. Boa tarde, como posso pegar esses dados de leitura da página http e usá-los em outro ambiente? Por exemplo se eu quiser desenvolver um software e alimentar com esses dados, qual o caminho?
    Obrigada

    1. Olá Rafaela,

      Se você deseja alimentar um software com os dados, não é necessário pegar os dados na página http. Você pode, por exemplo, colocar os dados adquiridos em um banco de dados.

      Abraço!
      Rosana – Equipe MakerHero

  13. Boa tarde, como faço para ter essas descrição em uma planilha do Excel para gerar gráficos?

    Alguém pode me ajudar?
    Quero descrever os estágios que ele fica parado e qual a possibilidade de respostas.

  14. Olá, se eu quisesse no caso, digamos… um simples projeto, e nele contenha um botao e clicando nele enviássemos uma Notificação do arduino para o app android por web server msm. Como fariamos isso ?

    1. Olá Israel!

      Você precisa que seja via internet mesmo? Neste post mostramos via Bluetooth:
      https://www.makerhero.com/blog/bluetooth-low-energy-com-esp32-e-dht11/

      Nesse post também passamos uma opção de app para fazer interfaces assim!

      Abraços!

      André – Equipe MakerHero

  15. ola preciso de um projeto do arduino com 4 ou 8 entradas de audio e saidas ..ja tenho a placa pre amplificador…quero por exemplo ter as opçoes de volume pra cada entrada e selecionar que entrada vai ser esse volume, input, 1, 2 etc.

    e um designer via web ,, o arduino controlado via navegador com uma interface personalizada, acessada por celular, tablet ou pc. quero modernizar meu amplificadores de som ambiente.

    1. Olá Luciano!

      Infelizmente não temos nenhum no nosso blog 🙁

      Você pode dar uma olhada neste post que falamos sobre um amplificador de audio:
      https://www.makerhero.com/blog/caixa-de-som-amplificador-de-audio-bluetooth/

      Abraços!

      André – Equipe MakerHero

  16. Bom dia, ótimo funcionou perfeitamente, só que usei um sensor de tensão para saber se tem energia ou não. Só que preciso receber essa informação em outro arduino_02 que está na mesma rede local e que quando falta energia no arduino_01 o arduino_02 recebe essa informação e liga uma lampada que esta sem energia, pois o arduino_01 esta ligado em uma bateria e só fico sabendo que não tem energia quando a bateria esta descarregada, tens como me ajudar. Obr. Abr.

    Alexssandro Pedro da Silva
  17. Olá, eu estou conseguindo receber o GET do meu Json-server, porém não sei como capturar estes dados em uma variavel local onde eu possal alterar valores do cliente (SALDO POR EXEMPLO), e depois re-enviar ao json-server.

    Já olhei varios sites e foruns, li sobre o ArduinoJson, porém não consigo tratar esse JSON vindo do json-server, colocar ele numa variavel.

    o Json é similar a este:

    [
    {
    “nome”: “Monica Queiroz”,
    “cpf”: 523698454,
    “nascimento”: “01/10/2003”,
    “telefone”: 4599885584,
    “rfid”: “25”,
    “saldo”: “50”,
    “id”: 12
    }
    ]

    1. Consegui atraves do proprio Arduino Json!

  18. Olá Adilson!

    Funcionou direitinho aqui para mim, porém somente na rede interna.
    Tenho serviço ddns funcionando aqui nas minhas câmeras de segurança e outros equipamentos que acesso de fora, então essa parte tenho certeza que não tem problema.

    Primeiramente troquei a porta do server por uma que não esta bloqueada pela operadora, pois a porta 80 entre outras tem restrições para uso residencial, e fiz as devidas configurações de encaminhamento de portas no modem. Mas comparando com os outros equipamentos que tenho aqui, além da porta HTTP existe uma porta de serviços e tenho que liberar no modem também, sem essa porta de serviço liberada não funciona nada aqui.

    Já procurei e não encontrei nada na documentação Ethernet.h sobre uma porta de serviço, conhece algo que possa ser modificado no código para tal ou uma outra forma?

    Alguns (pouquíssimos) tutoriais que falam sobre encaminhamento de portas em modem dizem: “não adianta somente liberar as portas, tem que ativar o serviço”

    Agradeço se tiver alguma idéia sobre isso.

    1. Olá Marcelo!

      Sugiro dar uma olhada nesse post, ele pode te ajudar:
      https://www.makerhero.com/blog/automacao-residencial-com-arduino-acenda-lampadas-pela-internet/

      Abraços!

      André – Equipe MakerHero

    2. Oi Marcelo, tudo bem?

      Não estou conseguindo funcionar o eth shield na rede interna. Eu configurei uma porta do roteador para o ip fixo do eth shield e o roteador aceita a configuração porém o dispositivo aparece offline “apagado” no roteador. Será que pode ser o fato de estar utilizando a porta 80?

      Muito obrigado,

  19. se eu quiser mandar um comando para ligar um motor eletrico pela internet. o que muda no programa acima?

    1. É justamente o que eu estava procurando, muito obrigada

  20. float microsec = ultrasonic.timing();
    Não há nada que corrija esse erro… o que fazer ?

  21. Olá, utilizando a mesma base deste tutorial, poderiam fazer uma parte II para viabilizar o acesso deste IP através de outra rede?

    1. Olá Bruno!

      É uma ótima ideia!

      Você poderia fazer isso e compartilhar com a gente?
      Marca nossa @sejamakerhero

      Abraços!

      André – Equipe MakerHero

  22. Olá, gostaria e saber se nessa programação o usuário só poderia acessar a pagina e receber as informações do Arduino se estivesse conectado na mesma rede que o arduino, pelo mesmo roteador ou se de qualquer rede pela internet consigo acessar a pagina.

    1. Olá Matheus!

      Somente se estiver na mesma rede.

      Abraços!

      André – Equipe MakerHero

  23. Gostaria de saber como ligar esse módulo ethernet W5100 sem ter um roteador disponível. Seria possível?

  24. Excelente!! Obrigado pelo tutorial. Consegui configurar e enviar informações com minha placa de ethernet. Muita atenção aos detalhes e bem explicado. Parabéns!!

  25. Parabens pelo tutorial. Para um projeto final onde eu irei construir a placa de circuito impresso, como eu colocaria o ethernet shield.? Eu teria que criar um módulo no meu projeto? Usaria o proprio módulo ethernet shield ? Tem como me explicar ?

  26. Ei Adilson

    A transmissão de dados com esse shield só é possivel se o mesmo está conectado a uma rede? Ele tem alguma opção/função de criar rede?

    Quero coletar dados em um local que não possui rede…ai preciso criar uma rede nesse local e enviar para meu servidor.

    Esse shield é capaz de realizar essa função?

    Att.
    Arthur

  27. Olá gostaria de saber se é possivel fazer algo inverso do que esta no video tipo tenho um programa no pc que envia dados pela rede com valores numericos em uma pagina HTML que fica atualizando constantemente com um Ip de acesso estatico. Eu gostaria de exibir esse valores num LCD e controlar um servo seria possivel com esse shilds via rede de cabo fazendo ler as informações numerica e acionar as saidas do arduino sem usar o servidor no shilds ???? Estou pensando em comprar uma placa dessa mas não achei nenhum exemplo na net que mostre algo do tipo onde ele le no pc as informações ao inves de enviar…

  28. Boa tarde,

    Adilson Thomsen gostaria de saber se tem algum Arduíno que se comunique via chipsim sem precisa de cabos, desculpa minha ignorância pois sou novo em Arduíno e estou pesquisando sobre isso e percebi que a MakerHero abrangi muito sobre isso pode me ajuda por favor.

  29. Bom dia! Tenho um Arduino Leonardo e adquiri uma Shields w5100, quero saber se são compatíveis, li em vários fóruns que esse Shields e compatível apenas com o uno e o mega. Se alguém conseguiu fazer essa comunicação entre o Shields w5100 e o Leonardo é puder dar uma dica de como fazer,comprei recentemente o módulo WI-FI esp8266-01 e não tive sucesso….

  30. Boa tarde amigos,

    Estou com um projeto e preciso trafegar informações na rede. Já está comunicando tudo OK, porém a rede do cliente é toda em VLAN. É possível trabalhar com VLAN nessa placa ETH ??

  31. Teria como fazer um tutorial utilizando dois arduinos, ambos com ethernet shield, onde acionaria um botão ligado à uma entrada digital de um arduino e ligaria um dispositivo na saida digital do outro arduino

  32. Preciso receber informações via UDP, tentei o modulo ESP8266 mas após alguns segundos o modulo trava e parece que reinicia, sabe me dizer se com esse ethernet pode ocorrer o mesmo problema?

  33. Boa tarde…
    na hora de configurar o endereço IP, modificando apenas o último octeto, como faço para saber se aquele endereço está disponível? Aparece uma mensagem de erro quando vou acessar o endereço IP, não sei se estou colocando um endereço válido…

  34. boa tarde, testei esse código e para mim acontece que, quando coloco o ip no navegador, da tempo limite excedido, oque será que pode ser, estou usando um arduino mega2560 e o ethernet shield w5100.

    desde ja agradeço.

  35. Boa noite, eu tenho como solicitar ao servidor a data e hora atual? Por exemplo , quero que ligue a lampada as 7 horas, mas não queria utilizar um modulo rtc, teria como eu obter a hora pela Ethernet, por alguma função no servidor?

  36. Boa noite, segui esse tutorial, mas meu roteador não esta reconhecendo é um tp -link modelo TL_WR840N.
    tendo dar o ping aparece Esgotado o tempo limite do pedido, coloco o ip no navegador A conexão expirou
    Será tem que fazer uma configuração no roteador ou pode ser outra coisa

  37. como posso saber as portas do arduino para colocar no roteador para ter acesso externo ao arduino?
    pedi as portas interna e porta de servico
    como posso saber a porta de servico?

  38. Bom dia, fiz um projeto parecido, porém eu utilizo um servidor apache com PHP para a pagina web, meu projeto está funcionando, porém quando a placa ethernet fica sem energia por algum motivo eu não consigo mais “pingar” ela quando a energia retorna, é como se ele não guardasse as configurações.
    O que devo fazer para que a placa ethernet w5100 guarde as configurações mesmo sem energia?

  39. Gostaria de saber como faço para criar a pagina web que sera usada pra comunicar com a ethernet shield.

    1. Olá Henrique.
      Analisando o código você encontra as linhas que geram a página Web (linhas 60 até 81).
      Essas linhas você pode customizar de acordo com suas necessidades.

  40. Bom dia ao utilizar o shield no arduino, perco alguma GPIO?

    1. Olá Vanderlei,

      Perde algumas apenas. Os pinos de interface SPI.

      Veja no seguinte link uma tabela mostrando a relação de pinos de alguns shields mais comuns para Arduino:
      https://playground.arduino.cc/Main/ShieldPinUsage

  41. Olá estou desenvolvendo aquele projeto “CONTROLE DE ACESSO RFID + ARDUINO” Alguem sabe como utilizo o mesmo só que com Ethernet Shield ?

    1. Amigão, não entendi … Seja mais especifico na sua dúvida
      Abraço!

  42. Bom dia, sabe me dizer qual é o limite do cartão Micro-SD que o shield suporta? até quantos GB?
    Desde já obrigado.

    Carlos Vinícius Ferrareze
    1. Amigão, eu utilizo um SDCard de 4GB… porém a rotina que eu faço … sempre apago!

  43. Bom dia, comprei a alguns dias a shield ethernet pelo site, quando conecto a shield em meu arduino ao alimentar o arduino via cabo usb o mesmo não liga assim como não da sinal na shield ao conectar o cabo rj45, outro teste realizado foi retirar a shield do arduino e testar o arduino ligando no cabo usb e o mesmo ligou normarmente e gravou o codigo acima.
    O que poderia fazer a mais como teste?

    1. Opa, amigo
      qual é a fonte que você está do adpator para ligar USB x Energia ??
      ligar somente o arduino não funciona ??
      qual é a versão do seu arduino ?? ( o ethernet funciona com UNO eo MEGA )
      abraço

  44. Biblioteca não está mais disponível para download, atualizar url. Obg

  45. Amigo, vc pode me ajudar a adaptar o código pois eu preciso comunicar com outro arduino de modo que quando o estado da porta de”entrada” mudar o segundo arduino recebe o comando e muda o estado da porta tbm.

    ou seja

    ao inves de mostrar o estado da porta via browser ele manda esta informação para outro arduino.

    os dois arduinos estarao com ethernet shield e a comunicação sera via rede ethernet.

    obrigado

  46. Boa tarde,
    gostaria de saber se tem algum tutorial que me ajude a acessar o Arduíno por rede externa.

    Conectei ele no roteador e quero acessa-lo. Pelo meu not, que esta na rede cabeada.

    Como faço?

    Tentei o no ip, mas falaram que preciso do ip estático?

    1. Olá, se vc quer acessar ele de uma rede externa vc precisa de um IP estático ou de um dns que grave o seu ip, dyndns é uma opção, lá vc configura um host e faz um link com o seu ip externo atual, baixa um aplicativo no computador q vai de tempos em tempos sincronizar o seu ip com o dyndns. Ai vc consegue acessar remotamente através desse ip

      1. Obrigada pela resposta. Você poderia me indicar esse programa que faz a sincronização do meu ip com o no dydns? vc sabe me informar se o Dydns tem versão grátis?
        Desde já, obrigada.

  47. Como faço para guardar esses valores do sensor em um banco de dados ?????

    1. Desenvolva um web service REST que faça isso para você, é a maneira mais simples na minha opinião.

    2. Opa amigo, você pode desenvolver para armazenar via SDCard..

  48. Olá… Comprei o Arduino Shield e a placa mega, mas eu estou tendo um problema sério, não consigo efetuar gravação no MicroSD de maneira alguma. Será que vocês poderiam me dar uma ajuda?

  49. Boa tarde, gostaria de saber se e possivel colocar 2 shield de rede no mesmo arduino e ficar em brigde pois quero entrar e sair com a rede sobre ele.

  50. Este shield tem um defeito de fabricação (pelo menos o que eu recebi). Ele funciona perfeitamente conectado ao computador, direto. Se por acaso utilizar um swith um pouco mais moderno (os jurassicos funcionam), ele já não comunica mais. Essa placa tem um resistor de 510 Ohm (511) na conexão do cabo de rede ao invés do especificado no datasheet (49.9 Ohm). Então muitos switches não conseguem se comunicar devido a impedância.

    1. Bom dia Marcel!
      Achou alguma maneira de resolver isso ou não tem o que fazer mesmo? Estive olhando minha shield e também tem um resistor 511 na entrada da porta lan.

    2. Olha isso Marcel
      https://imgur.com/a/JrPFD
      Segundo o cara funcionou, ele fez somente a troca dos resistores, peguei essa informação direto do fórum do arduino.

      1. Só pra confirmar, o shield realmente estão com os resistores errados (511 Ohms) no conector Ethernet causando o descasamento das impedâncias. Colocando resistores de 100 Ohms em paralelo ou trocando a rede de resistores pelo valor correto ele funcionará corretamente.

  51. Muito legal , eu sei que tem 2 alternativas de abrir o codigo html, direto pelo codigo do arduino ou também passando um arquivo.html pra dentro de um micro sd, gostaria de saber se é possivel usar um site que esteja em um servidor meu e com ele acessar o arduino

    1. digamos que teria uma 3a alternativa, onde você usa o site remoto, como você quer fazer, e comunica com o arduino através de webservice.

      1. e como seria feito isso? pra comunicar com o arduino e o site

          1. Muito legal mesmo, mas nesse link ele não está usando conexão com um servidor estou querendo saber isso.

            Thiago Dantas Soares
    2. Dá uma lida em todo o exemplo.. coloca pra rodar.. vai ver que sim.. ele usa o celular ou o computador como servidor..

      mas se você esta procurando mais mastigado.. de como hospedar em um servidor html e fazer rodar… realmente, não é o link…

  52. Como fazer para verificar a conexão?

  53. Fiz um projeto bem parecido de um contador de acesso com sensor IR e usando o seu código como base, só conseguir acesso a página através do IP depois de liberar no firewall do windows 10

  54. ola galera, preciso comunicar minha Ethernet shield w5100 com meu arduino mega 2560 de forma que eu consiga manipular variaveis especificas dentro do meu arduino pelo android, ou pelo computador o que estiver mais facil, como posso fazer isso?

  55. Seria possível fazer algo parecido com sensor LDR ou sensor Infravermelho?

  56. oi pessoal preciso de ajuda para configurar meu roteador d link dir 600.
    já olhei vários videos na net mas ainda não senti firmeza nas informações que obtive.
    na rede interna aqui de casa consegui fazer funcionar meu w5100 liga e desliga lampada
    o problema esta no abrir porta no roteador para controlar de outra rede.
    por favor me ajudem roberto

    1. VEJA O MEU COMENTÁRIO ABAIXO

  57. Boa noite galera,
    estou tendo problemas para acessar minha página na rede interna,
    o ip que eu coloco esta livre, já chequei através do modem
    *byte ip[] = { 192, 168, 0, 30};
    ou, como já tentei também
    *IPAddress ip( 192,168, 0, 30);
    *IPAddress gateway( 192, 168, 0, 1);
    *IPAddress subnet( 255, 255, 255, 0);
    Só que quando vou monitorar pela porta 9600 através dos comandos
    *Serial.begin(9600);
    *Serial.print(“server is at “);
    *Serial.println(Ethernet.localIP());
    ele apresenta um ip completamente diferente do que eu configurei, no caso, “server is at 223.171.255.253”

    Alguém pode dar uma força?

  58. Não consigo colocar shield ethernet Wiznet na minha rede
    Não consigo ping.
    Consigo ping ligando cabo de rede direto no pc, mas com o roteador não. Testei o programa deste tutorial e o webserver, acontece a mesma coisa.
    Nos dois programas mantive o MAC Adress, gateway e máscara, só mudei IP para 192.168.25.200.

    Meu roteador é GVT PowerBox
    IP do meu roteador 192.168.25.1

    1. Bom dia, o mac address do arduino não pode ser igual ao do computador.

    2. É COMPLICADO MESMO…. PRIMEIRO DESCUBRA O SEU IP EXPERTO, SEGUNDO CRIE UMA PORTA QUALQUER 57678 ( IP EXTERNO/57678) NO SEU ROTEADOR DEVE COLOCAR ESTA PORTA ESTERNA 57678 QUE VAI DIRECIONAR PARA O SEU IP INTERNO 192.XXX.XXX.99 MAIS A PORTA QUE VOCE PROGRAMOU NO ARDUINO NO MEU CASO FOI A (((80)))) AGORA É UMA PROGRAMAÇÃO DO SEU ROTEADOR CADA ROTEADOR É DE UM MODO ESTA PROGRAMAÇÃO; PARA TESTE TUDO TEM QUE ESTA LIGADO INCLUSIVE O ARDUINO JÁ FUNCIONANDO NA REDE INTERNA.

    3. Acho que o Luiz Cypriano, confundiu ainda mais você..

      No caso do teste em sua rede interna o roteador nada mais é que um HUB.. uma ligação entre o PC e o Arduino, nada tem haver o ip eXterno ou configuração do roteador ou portas do roteador.

      A sua configuração deve estar mais ou menos assim no seu programa:

      byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; //mac do arduino
      IPAddress ip(192,168,25,200); //Define o endereco IP
      IPAddress gateway(192,168,25,1); //Define o gateway
      IPAddress subnet(255, 255, 255, 0); //Define a máscara de rede

      De uma olhada na sua “subnet” verifique se é 255.255.255.0 ou 255.255.0.0, e faça as alterações pertinentes.

      Teste os cabos usados tanto do PC para o Modem e do Arduino para o Modem…
      ping do PC para o modem e depois do PC para o arduino… se os 2 estiverem ligados e os 2 cabos testados, não tem erro. vai pingar….

      Qualquer coisa posta o seu código e o resultado do ipconfig /all que lhe ajudo melhor.

  59. Boa noite! É possível usar 2 shield juntos? preciso do ethernet e do motor shield L293, tem como encaixar o ethernet no arduino mega e o motor shield no ethernet e usa-los?

  60. É possivel alimentar o Arduino através dessa placa com um PoE?
    Se sim, qual a voltagem e amperagem ideal?

    Samuel Henrique de Souza Silva
  61. Eu comprei um Shield desse
    estou usando no Mega sem problemas e sem adaptações com cabos externos.

    Porém preciso saber quais pinos (portas) que ele ocupa no Mega, pois vou precisar adicionar mais um shield sobreposto e talvez tenha que reconfigurar a biblioteca de um deles.

    Obrigado desde já

  62. Boa noite, utilizei esse exemplo há algumas semanas e funcionou normalmente. Hoje eu fui tentar de novo e parou de funcionar, tentei com o apache ligado no xampp e com ele desligado mas a página não carrega. O código não apresenta nenhum erro, só não consigo acessar pagina no navegador

  63. Bom dia, tentei usar esse programa, mas esta me mandando o seguinte erro:
    Erro: exit status 1
    Erro compilando para a placa Arduino/Genuino Uno

  64. Boa tarde,
    Em um dos vídeos que vocês demonstram um acionamento de duas lâmpadas com o arduino+ ethernet shield w5100 vocês usam uma tela (supervisório), onde torna a aparência do controle bem mais interessante.
    O que vocês usam para ter essa animação? um software dedicado há isso?

    Abraço!

    [email protected]

  65. Boa tarde, para eu redirecionar a porta, tenho que colocar o endereço externo da minha máquina ou da placa ethernet shield, não estou conseguindo redirecionar ? meu roteador é D-Link dir600

    1. É COMPLICADO MESMO…. PRIMEIRO DESCUBRA O SEU IP EXPERTO, SEGUNDO CRIE UMA PORTA QUALQUER 57678 ( IP EXTERNO/57678) NO SEU ROTEADOR DEVE COLOCAR ESTA PORTA ESTERNA 57678 QUE VAI DIRECIONAR PARA O SEU IP INTERNO 192.XXX.XXX.99 MAIS A PORTA QUE VOCE PROGRAMOU NO ARDUINO NO MEU CASO FOI A (((80)))) AGORA É UMA PROGRAMAÇÃO DO SEU ROTEADOR CADA ROTEADOR É DE UM MODO ESTA PROGRAMAÇÃO; PARA TESTE TUDO TEM QUE ESTA LIGADO INCLUSIVE O ARDUINO JÁ FUNCIONANDO NA REDE INTERNA.

  66. Bom dia,

    Como faço para localizar o IP do meu shield arduino? Tentei fazer uma busca atraves do nmap antes e depois de colocar o arduino na rede, mas ele NUNCA aparece. Apessar disso os LED de PWR, Link, 100M e FULLD estão acessos sem problema.

    Fico no aguardo 😉

    1. VOCE QUER O SEU IP OU O MAC SE FOR IP É VOCE QUEM ESCOLHE PARA VERIFICAR UM DISPONÍVEL DIGITA IPCONFIQ EU ESCOLHI O 192.168.0.99 DEU CERTO E PORTA 80
      VEJA O PROGRAMA DO MakerHero QUE FUNCIONA – LUIZ – BOA SORTE VAI PRECISAR

    2. Estou procurando o IP do arduino especificamente porque não consigo definir um IP qualquer que seja diferente dos utilizados na rede.

  67. Estou tentando instalar o Shield mas está dando o erro abaixo quando carreguei o programa indicado na sua página.
    Pode me ajudar?

    Arduino: 1.6.9 (Windows 7), Placa:”Arduino/Genuino Uno”

    C:UsersOSVALDODocumentsArduinoPrograma_ShieldPrograma_Shield.ino:7:24: fatal error: Ultrasonic.h: No such file or directory

    #include

    ^

    compilation terminated.

    exit status 1
    Erro compilando para a placa Arduino/Genuino Uno

    Este relatório teria mais informações com
    “Mostrar a saida detalhada durante a compilação”
    opção pode ser ativada em “Arquivo -> Preferências”

    1. você tem que instalar a biblioteca Ultrasonic.h…….

      o erro é simples, básico e esta bem explicado.. “No such file or directory”…

      O programa usa a biblioteca Ultrasonic, que você pode baixar aqui. Descompacte a pasta Ultrasonic e coloque-a dentro da pasta LIBRARIES da IDE do Arduino. —> https://github.com/MakerHero/Ultrasonic

    2. Bom dia Osvaldo,

      Por favor verifique a instalação da biblioteca Ultrasonic, esse erro é apresentado quando a biblioteca não está sendo encontrada pela IDE.

      Abraço!

      Adilson – Equipe MakerHero

  68. Boa tarde,

    quais portas o Ethernet Shield utiliza para que eu nao coloque em conflito com outros componentes?

  69. Filipe, estava penando para encontrar algum vídeo que me ajudasse com este assunto, vi alguns muitos extensos e esse em 1 minuto já conseguiu me ajudar bastante! Muito obrigado

    A pergunta é se é possível adicionar mais de 1 sensor ultrassonico nesse esquema?

    Outra coisa, posso usar outros sensores (como por exemplo o LDR) também?

    1. Boa noite Bruno,

      Sim, teoricamente você pode usar qualquer tipo de sensor, e é possível adicionar mais um sensor ultrassônico ou um ldr.

      Abraço!

      Adilson – Equipe MakerHero

  70. o link para a biblioteca está offline?

    1. Não, eu baixei a biblioteca, quando mando verificar o código já da essa msg abaixo.

    2. Bom dia Guilherme,

      Não, o link está ok.

      Abraço.

      Adilson – Equipe MakerHero

  71. Estou tendo problema com a Library ICMP_ping. Alguem pode me ajudar?

    Arduino: 1.6.9 (Windows 10), Placa:”Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)”

    C:Program Files (x86)Arduinolibrariesicmp_pingICMPPing.cpp: In member function ‘void ICMPPing::receiveEchoReply(const ICMPEcho&, ICMPEchoReply&)’:

    C:Program Files (x86)Arduinolibrariesicmp_pingICMPPing.cpp:173:83: error: invalid conversion from ‘uint8_t* {aka unsigned char*}’ to ‘uint16_t {aka unsigned int}’ [-fpermissive]

    W5100.read_data(_socket, (uint8_t *)buffer, ipHeader, sizeof(ipHeader));

    ^

    In file included from C:Program Files (x86)Arduinolibrariesicmp_pingICMPPing.h:12:0,

    from C:Program Files (x86)Arduinolibrariesicmp_pingICMPPing.cpp:10:

    C:Program Files (x86)ArduinolibrariesEthernetsrc/utility/w5100.h:142:8: error: initializing argument 2 of ‘void W5100Class::read_data(SOCKET, uint16_t, volatile uint8_t*, uint16_t)’ [-fpermissive]

    void read_data(SOCKET s, volatile uint16_t src, volatile uint8_t * dst, uint16_t len);

    ^

    C:Program Files (x86)Arduinolibrariesicmp_pingICMPPing.cpp:181:76: error: invalid conversion from ‘uint8_t* {aka unsigned char*}’ to ‘uint16_t {aka unsigned int}’ [-fpermissive]

    W5100.read_data(_socket, (uint8_t *)buffer, serialized, dataLen);

    ^

    In file included from C:Program Files (x86)Arduinolibrariesicmp_pingICMPPing.h:12:0,

    from C:Program Files (x86)Arduinolibrariesicmp_pingICMPPing.cpp:10:

    C:Program Files (x86)ArduinolibrariesEthernetsrc/utility/w5100.h:142:8: error: initializing argument 2 of ‘void W5100Class::read_data(SOCKET, uint16_t, volatile uint8_t*, uint16_t)’ [-fpermissive]

    void read_data(SOCKET s, volatile uint16_t src, volatile uint8_t * dst, uint16_t len);

    ^

    exit status 1
    Erro compilando para a placa Arduino/Genuino Mega or Mega 2560

    Este relatório teria mais informações com
    “Mostrar a saida detalhada durante a compilação”
    opção pode ser ativada em “Arquivo -> Preferências”

  72. como faço para comandar via rede não so monitorar usado o websever da placa? vi o outro tutorial de altomação residencial, mas não sei mexer no css e sei pouco de programação, faço mais é adaptação de codigos.
    é preciso usar o css para colocar m botão na pagina?
    alguem tem algum tutorial que possar me encaminhar para eu pegar uma base disso?

  73. meu ethernet shield com o mega funciona bleleza na minha rede, porém não inicializa o cartão MicroSD.
    Script:

    #include
    #include
    #include

    byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
    IPAddress ip(192,168,1,199);
    IPAddress gateway(192,168,1,2);
    IPAddress subnet(255,255,255,0);

    EthernetServer server(8000);

    File webFile;

    #define REQ_BUF_SZ 40
    char HTTP_req[REQ_BUF_SZ] = { 0 };
    char req_index = 0;

    const int carga1 = 9;
    int flag1 = 0;

    void setup() {
    pinMode(53, OUTPUT);

    Ethernet.begin(mac, ip, gateway, subnet);
    server.begin();

    Serial.begin(9600);

    Serial.println(“Inicializando cartao MicroSD…”);
    if (!SD.begin(4)) {
    Serial.println(“ERRO – Inicializacao do cartao falhou!”);
    return;
    }
    Serial.println(“SUCESSO – Cartao MicroSD inicializado.”);

    if (!SD.exists(“index.htm”)) {
    Serial.println(“ERRO – index.htm nao foi encontrado!”);
    return;
    }
    Serial.println(“SUCESSO – index.htm encontrado.”);
    }

    void loop() {
    EthernetClient client = server.available();

    if (client) {
    boolean currentLineIsBlank = true;
    while (client.connected()) {
    if (client.available()) {

    char c = client.read();

    if (req_index < (REQ_BUF_SZ – 1)) {
    HTTP_req[req_index] = c;
    req_index++;
    }

    if (c == 'n' && currentLineIsBlank) {
    client.println("HTTP/1.1 200 OK");
    client.println("Content-Type: text/html");
    client.println("Connection: close");
    client.println();

    if (StrContains(HTTP_req, "ajax_carga1")) {
    LerDados(client);
    }

    if (StrContains(HTTP_req, "ajax_LerDados")) {
    SetCarga1(client);
    }
    else {

    webFile = SD.open("index.htm");
    if (webFile) {
    while (webFile.available()) {
    client.write(webFile.read());
    }
    webFile.close();
    }
    }
    Serial.println(HTTP_req);
    req_index = 0;
    strClear(HTTP_req, REQ_BUF_SZ);
    break;
    }

    if (c == 'n') {
    currentLineIsBlank = true;
    }
    else if (c != 'r') {
    currentLineIsBlank = false;
    }
    }
    }

    delay(1);

    client.stop();
    }
    }

    void SetCarga1(EthernetClient novoCliente) {
    if (flag1 = 0){
    digitalWrite(carga1, HIGH);
    flag1 = 1;
    }
    else{
    digitalWrite(carga1, LOW);
    flag1 = 0;
    }
    }

    void LerDados(EthernetClient novoCliente) {
    novoCliente.print(flag1);

    novoCliente.print("|");
    }

    char strClear(char *str, char length){
    for(int i = 0; i len) {
    return 0;
    }

    while (index < len) {
    if (str[index] == sfind[found]) {
    found++;
    if (strlen(sfind) == found) {
    return 1;
    }
    }
    else {
    found = 0;
    }
    index++;
    }
    return 0;
    }

    Me ajudem por favor, já estou quase desistindo do arduíno 🙁

    Douglas Raetê Mancini Sanches
  74. BOA NOITE DE NOVO ESTOU TENTANDO ABRIR UMA PORTA PARA ACESSO ESTERNO MAS NÃO ESTOU CONSEGUINDO SEGUNDO INFORMAÇÕES LIDA NA INTERNET É QUE OS PROVEDORES (VIVO) OU (NET) NÃO ESTÃO DEIXANDO ABRIR NENHUMA PORTA SE PUDER DAR UMA AJUDA EU AGRADECERIA AS PROGRAMAÇÃO NO MEU ROTEADOR JÁ REALIZEI SÓ QUE NÃO ABRE A PORTA DESEJADA QUE ESTOU PROGRAMANDO. DESDE JÁ AGRADEÇO.

    1. Boa noite. Antes de tudo, verifique se localmente você acessa. Se acessar, então está tudo certo com sua configuração do arduino. Após isso, você precisa configurar um NAT no seu modem.

      Geralmente os modem tem um campo NAT, onde vc especifica a porta de entrada (interface wan do roteador), a porta de entrada (porta que você deseja oferecer ao mundo externo) e a porta redirecionada (a que responde na sua rede local).

      Depois entre no site meuip e verifique seu ip válido. Feito isso, tente acessar de uma rede diferente da sua.

      Tente colocar uma porta 8080, uma vez que o modem também utiliza a porta oitenta para sua interface de configuração.

      Feito isso, se funcionar, seria legal vc criar uma conta no no-ip e instalar um cliente de dns dinamico em algu ma máquina da sua rede interna. Assim, vc não precisa ficar verificando o ip toda vez.

      Espero ter ajudado.

      1. SÓ PARA SABER DEU CERTO – NO ROTEADOR CONFIGUREI O IP EXTERNO 172……. PARA 192.168.0.99 E A PORTA 57000 PARA 80 ERA AQUI QUE ESTAVA O ERRO NÃO ESTA COLOCANDO A PORTA DO ARDUINO ESTAVA REPETINDO A PORTA EXTERNA SÓ DEMOREI 2 MESES PARA DESCOBRIR ISSO. MAS UM DETALHE O MEU IP EXTERNO DA NET JÁ FAZ 15 DIAS QUE NÃO MUDA – MAS VOU TENTAR ABIR UMA CONTA NO (((NO-IP.ORG))) OBRIGADO!!!

    2. BOA TARDE
      DESDE JÁ AGRADEÇO INTERNAMENTE ESTA TUDO FUNCIONANDO JÁ TESTEI EM CASA É NET E TAMBÉM JÁ TESTEI NO MEU ESCRITÓRIO É VIVO – TAMBÉM JÁ DESCOBRI O MEU IP PELO MEU IP.COM.BR.
      A PRINCIPIO NO MEU ROTEADOR CONFIGUREI A PORTA 8880.
      AGORA COMO PROGRAMAR O NAT NO MEU MODEM NÃO SEI COMO CONFIGURAR O MEU MODEM. COMO EU DESCUBRO O IP DO MODEM DESDE JÁ OBRIGADO MAIS UMA VEZ.

  75. BOA NOITE!!! é possivel colocar o HTML no cartão de memória no W5100

  76. Ola amigo!!! parabéns eu esto aprendendo muito .
    eu estou começando agora no mundo fantástico do arduino
    espero aprender mais e mais com você ! . grato

  77. boa noite, tenho um arduino com wifi e queria aceder a pagina de configuraçao do prorpio arduino, ja tentei por ip e por cabo e nao deixa parece que bloqueai o acesso ao pagina dele, oque posso fazer? para voltar a entrar na pagina web do prorpio arduino

    1. Bom dia Ricardo,

      Qual placa Arduino você está usando e a qual página de configuração você está tentando acessar ?

      Abraço

      Adilson – Equipe MakerHero

      1. boas adilson, arduino yun e quero aceder a pagina para configurar o wifi do arduino e ja tentei com o ip de origem dele nao da, estou a ser bloqueado por ele nao deixa entrar

        1. Bom dia Ricardo,

          Infelizmente não temos esse modelo de Arduino para testar. Talvez os outros leitores do blog consigam ajudar.

          Abraço.

          Adilson – Equipe MakerHero

  78. Seria possível utilizar o Arduino para ler o estado de um push button e enviar esse resultado para um servidor Web Dedicado através do Módulo Ethernet?

    1. Boa tarde Felipe,

      Por favor dê uma olhada neste link: https://www.arduinoecia.com.br/comunicacao-arduino-ethernet-shield-w5100/

      Abraço!

      Adilson – Equipe MakerHero

  79. Estou tentando conectar meu shield w510 ao roteador d’link dir 615 mas quando do um ping da “Host de destino inacessível.” o que tenho que fazer para conectar.

    Quando conecto no meu outro roteador, d’link dir 600, ele conecta, só que esse roteador esta com defeito !!!! mas isso me fez pensar que seja alguma configuração no dir 615.

    Anderson Silva de Albuquerque
    1. Estou com o mesmo problema que o seu, Anderson.
      Conseguiu resolver?

  80. Bom Dia

    Eu fiz tudo como diz no post, alterei o ultimo digito do IP para 88, não tenho equipamento a usar esse IP, passo o programa para o Arduíno e a placa de ethernet pisca as luzes verdes como se estivesse a comunicar, no entanto no browser diz que não é possível apresentar página.
    gostaria de uma ajuda?

  81. olá, porque é necessário fazer a alteração do ultimo numero do ip adress?

    1. Boa tarde Heitor,

      Essa alteração deve ser feita para evitar conflitos de endereço na rede. Cada dispositivo da rede deve ter um endereço único.

      Abraço.

      Adilson – Equipe MakerHero

  82. Boa Noite,
    Muito bom o tutorial.

    Eu estou com um projeto para enviar para um Web server a IDde uma TAG RFID;
    Comprei um leitor MRfc 522 e falta agora um componente para conectar o arduino a internet.

    Tenho medo de comprar uma placa que use as mesma portas da leitora RFid, sabe me informar se a desse tutorial é adequada para a minha demanda?

    Obrigado desde já.

    1. Bom dia Victor,

      Você pode tentar utilizar o módulo ESP8266 no seu projeto, já que ele se comunica com o Arduino via serial.

      Abraço!

      Adilson – Equipe MakerHero

  83. Bom dia, gostaria de fazer uma central para monitorar dados de vários shield’s ao mesmo tempo. Alguém saberia se existe um software pronto ou alguma forma de fazer isso?

  84. Olá.
    tenho a necessidade de um (na verdade varios) dispositivo pequeno e barato que responda a pings em uma rede.
    minha pergunta é: se eu configurar esse shield com um arduino; colocando um ip/mask compativel com a rede; e depois ligar o shield sem o arduino e conecta-lo na rede; ele mantem armazenada a configuração de ip/mask para ficar respondendo ao ping?

    1. Bom dia Moura,

      Não fiz esse teste ainda, mas eu acho que no seu caso o mais adequado seria um módulo ESP8266. é pequeno, barato e consome pouquíssima energia.

      Abraço

      Adilson – Equipe MakerHero

    2. O Shield de rede é como uma placa de rede de um computador…. ele não funciona sozinho, é um acessório do ARDUINO.

      É no ARDUINO que fica gravado o programa, onde fica o processador… onde fica a fonte…. o shield, nada disso tem…

      depois de configurar o ip de um placa de rede no windows ou linux…. e voce tirar a placa do computador…. ela continua pingando…..?????

      1. Adilson:
        O modulo é wifi. preciso de um dispositivo que seja wired RJ45.

        Luiz:
        obrigado pela confirmação. minha duvida é se ele seria uma opção econômica para substituir o que é usado hoje. caso você não conheça, existe conversores ethernet específicos, que são placas inicialmente acessíveis somente com um software proprietário. através dele você configura um ip, mask e gate para a placa. dai e só manter ele alimentado que consegue pingar. o problema é que estas placas estão na faixa de R$400 cada. apesar de um arduino e um shield ser mais barato, o tamanho e complexidade da solução impactam.
        de todo modo obrigado a todos.

        1. Me explica direito o que você está precisando.

  85. Pessoal, não estou conseguindo conectar o Shield a internet para usar o App “Blynk”. Pelas minhas pesquisas o endereço mac precisa ser exclusivo da shield, correto?
    Contudo ao usar esse endereço mac, a placa não é reconhecida. A configuração de IP, DNS estão em ordem.

    O que posso fazer para corrigir? Vocês recomendam outro mac address?
    Aguardo retorno.
    Abraço, Equipe FelipeFlop!

    1. Bom dia Irwin,

      Creio que o problema seja outro, já que dificilmente você terá na sua rede um MAC igual ao do Ethernet Shield. Você falou em conectar pela internet. Pela rede local está ok ?

      Abraço.

      Adilson – Equipe MakerHero

  86. Filipe boa noite !!

    Filipe estou tentando conectar a minha shield w510 na ethernet, sem usar internet só que não consigo fazer a cominicação do IP, a programação passa certinho para a ARDUINO só que quando conecto no roteador da como limitado e quando entro com o IP que configurei o shield ele não abre nada. O que posso estar fazendo errado? tenho que configurar o roteador ou apenas conectar nas portas 11 ou 2 e fazer a conexão pelo PC mesmo?

  87. Meu shield Ethernet funciona bem na rede local, isto é, consigo acessá-lo e obter/transmitir informações se meu celular estiver na minha rede wi-fi. Outrossim, qdo estou utilizando a rede 3G, não consigo acessar o shield. O 3G está funcionando bem, pois acesso a internet normalmente.
    A configuração da GVT é:

    Endereço de IP Local: 192.168.25.1
    Endereço de IP Público: 177.98.213.19
    Gateway Padrão: 179.184.126.83
    DNS primário: 200.175.5.139
    DNS secundário: 200.175.182.139

    usei no meu sketch o seguinte:

    IP: 192.168.25.36
    GATEWAY: 179.184.126.83
    SUBNET: 255.255.255.0

    Qdo coloco o IP público 177.98.213.xx, não funciona de forma alguma.

    O que devo fazer?

    1. aparentemente voce esta usando um ip errado como gateway, voce deve usar preferencialmente o ip do modem…

      e deve configurar o modem, para que quando voce solicite algo no ip externo em uma determinada porta, o modem redirecione para o ip do shield na porta configurada no shield.

      1. Para acessar o Arduino na internet, coloquei o IP público no sketch e no endereço no Safari do celular. Assim, consegui. Às vezes, precisei tentar algumas vezes.
        O problemq que surgiu, foi a GVT, às vezes, mudar o IP Público da minha rede, mas já estou tentando solucionar esse problema.
        Gnd abç.
        dionizio

    2. ola…
      Qual o roteador 3g você esta utilizando para acoplar com o w5100?

      Obrigado

  88. Olá Amigo,
    Fiz tudo conforme orientação acima porém deu um erro na compilação, segue abaixo:

    This report would have more information with
    “Show verbose output during compilation”
    enabled in File > Preferences.
    Arduino: 1.0.6 (Windows NT (unknown)), Board: “Arduino Mega (ATmega1280)”
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp: In member function ‘int EthernetClass::begin(uint8_t*, long unsigned int, long unsigned int)’:
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:19: error: ‘class SPIClass’ has no member named ‘beginTransaction’
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:19: error: ‘SPISettings’ was not declared in this scope
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:22: error: ‘class SPIClass’ has no member named ‘endTransaction’
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:30: error: ‘class SPIClass’ has no member named ‘beginTransaction’
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:34: error: ‘class SPIClass’ has no member named ‘endTransaction’
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp: In member function ‘void EthernetClass::begin(uint8_t*, IPAddress, IPAddress, IPAddress, IPAddress)’:
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:68: error: ‘class SPIClass’ has no member named ‘beginTransaction’
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:68: error: ‘SPISettings’ was not declared in this scope
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:73: error: ‘class SPIClass’ has no member named ‘endTransaction’
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp: In member function ‘int EthernetClass::maintain()’:
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:89: error: ‘class SPIClass’ has no member named ‘beginTransaction’
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:89: error: ‘SPISettings’ was not declared in this scope
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:93: error: ‘class SPIClass’ has no member named ‘endTransaction’
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp: In member function ‘IPAddress EthernetClass::localIP()’:
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:107: error: ‘class SPIClass’ has no member named ‘beginTransaction’
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:107: error: ‘SPISettings’ was not declared in this scope
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:109: error: ‘class SPIClass’ has no member named ‘endTransaction’
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp: In member function ‘IPAddress EthernetClass::subnetMask()’:
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:116: error: ‘class SPIClass’ has no member named ‘beginTransaction’
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:116: error: ‘SPISettings’ was not declared in this scope
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:118: error: ‘class SPIClass’ has no member named ‘endTransaction’
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp: In member function ‘IPAddress EthernetClass::gatewayIP()’:
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:125: error: ‘class SPIClass’ has no member named ‘beginTransaction’
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:125: error: ‘SPISettings’ was not declared in this scope
    C:UsersvbandeiraDocumentsArduinolibrariesEthernetsrcEthernet.cpp:127: error: ‘class SPIClass’ has no member named ‘endTransaction’

    Você pode me ajudar??

    Abração

  89. Bom dia Filipe !!

    Como seria feito o cód no começo utilizando um sensor de força resistivo?
    Não estou conseguindo por ele ..

    Abraço !!!
    Yago Maia

  90. Oi, meu nome é Fábio e gostaria de uma ajuda, tenho um certo conhecimento em arduino, não muito, estou tentando desenvolver um projeto pra faculdade, automação residencial, a principio gostaria de controlar as luzes de uma casa por andar, e por hora: acender por sensor de luminoside e/ou das 18:00 as 06:00.
    estive pensando em usar o controle das horas por modulo RTC DS1307, o que vcs poderiam me indicar?
    agradeço se puderem me indicar uma direção, estou sem saber por onde começar.

  91. boa tarde
    pretendo ligar um motor através da pagina web. como poderei fazer?
    o projeto é semelhante mas em vez de ter o sensor tenho um motor

    1. Boa tarde José,

      Creio que esse post vai te ajudar: https://www.makerhero.com/automacao-residencial-com-arduino-acenda-lampadas-pela-internet/

      Abraço!

      Adilson – Equipe MakerHero

  92. Ola tenho que fazer um tcc com essas função 1 alarme com sensor PIR, 1 motor servo simulando portão basculante 90°, 10 ledes para acender um comado de cada vez,1 motor DC simulando ventilador ,sensor LDR para acender 3 ledes quando escurece, É com Arduíno mega e Ethernet shield e rele alguém tem como me ajudar não manjo de arduíno?

  93. Ola Filipe achei muito interessante, mas gostaria de uma ajuda sua preciso fazer um sensor de temperatura no arduino que comunique com o telegram , tipo que mande messagens para o telegram com a temperatura mas só quando essa passar o limite estipulado no arduino, obrigado

    1. estou com o mesmo projeto, gostaria de saber se obteve algum progresso.

  94. Boa noite, obrigado pela explicação , tenho uma dúvida … queria usar 4 sensores ultrassônicos, ao invés de eu mostrar a distãncia deles conforme a explicação, queria mostrar OCUPADO ou LIVRE para cada sensor ou aparecer uma bolinha vermelha para ocupado ou verde para livre. poderia me ajudar ???

    1. Bom dia Igor,

      Creio que você pode usar as informações deste post: https://www.arduinoecia.com.br/controle-de-vagas-de-estacionamento-sensor-ultrassonico-hc-sr04/

      Abraço

      Adilson – Equipe MakerHero

  95. Olá Pessoal
    Gostaria de uma ajuda de vocês, eu configurei meu arduino uno e placa de rede tudo funcinou perfeitamente, porem quando ligo a placa de rede em um switch com VLAN (Virtual Local Area Network) ele não funciona!!!
    Observei o seguintes problemas:
    1. O switch não aprende o endereço MAC da placa de rede do arduino (teste feito com switch DELL e CISCO)
    2. Mesmo cadastrando o mac static no switch não consegui comunicação
    3. Se deixo o meu pc e arduino na mesmo VLAN funciona
    A minha duvida é se está faltando alguma biblioteca ou se faltou habilitar algum parâmetro?
    OBS. A configuração usada é a mesma de exemplo daqui do site.
    Abraço.

    1. Bom dia Barbosa,

      Me parece mais uma questão de configuração da sua rede/roteador do que os parâmetros da placa no Arduino. De qualquer forma, tente utilizar todos os parâmetros de IP disponíveis na configuração do shield: endereço IP, máscara de rede e default gateway.

      Abraço

      Adilson – Equipe FILIPEFLOOP

      1. bom dia Adilson.

        Eu conseguir fazer a comunicação cadastrando o MAC da placa de rede na interface do switch que ele está ligado, pelo comportamento deu a entender que o MAC não enviado ou algum diferença no quadro de ethernet que não consegui colocar tag da VLAN, mas se tentar fazer a comunicação na mesma VLAN funciona tranquilo. vou ver se faço novos teste com captura de pacote e ver algo de diferente.
        qualquer novidade eu posto aqui a solução.

        Obrigado
        Abraço

  96. Ola amigos, compre recentemente este shield, estou efetuando testes, e hora funciona, a as vezes o browser fica aguardando e não há resposta, trabalho com redes e outros dispositivos hosts, porem esse shield é instável ou o meu pode estar com erros?

  97. Felipe preciso de uma ajuda sua , meu ethernet shield ao eu consultar o ip pelo cmd ele me fornece o seguinte ip
    Endereço de ipv4 configuração automática …169.254.93.234
    Mascara de sub-rede……………………………………….255.255.0.0
    gateway padrão………………………………………………..200.175.5.139

    Sendo assim eu não consigo configurar na mesma range do meu roteador , como eu faço para alterar esse ip ?

    1. Bom dia Renato,

      Esse provavelmente é o IP do seu computador, correto ? Os dois tem que estar na mesma rede para funcionar. Você ligou o shield direto no computador ou está usando o roteador?

      Abraço

      Adilson – Equipe MakerHero

      1. Bom dia ,
        Como eu faço para alterar o IP do ethernet Shield Filipe ? Tem como mudar ?

        1. Bom dia Renato,

          Sim, você pode mudar as informações de IP, Gateway e máscara de rede nas linhas 20, 21 e 22 do programa apresentado.

          Abraço

          Adilson – Equipe MakerHero

        2. Eu intendi u que voce quis dizer , gostaria de saber se o ip do próprio ethernet shield eu consigo mudar ? pois o ip do meu roteador é diferente do mesmo range do ethernet shield .

          1. Boa tarde,

            Sim, é só mudar essas informações nas linhas 20, 21 e 22 do programa e colocar de acordo com a faixa de IP do seu roteador.

            Abraço.

            Adilson – Equipe MakerHero

  98. Salve Adilson,

    eu como tenho outros usuários na rede preciso de um pouco de segurança, tipo uma tela de login sabe, vc tem algum exemplo pra me passar como ficaria esse código ou onde entraria o script da tela de login?

    não precisarei colocar nada no meu roteador ou servidor né, vai ficar tudo dentro do arduino os códigos certo?

    existe alguma limitação ou capacidade de dados para inserir dentro do arduino, tipo, posso montar um script html e css com botões e login e etc pra ficar mais encorpado no caso de eu usar reles?

    obrigado desde ja mais uma vez meu caro!
    abraço!

    1. Bom dia,

      Eu não tenho nenhum post pronto sobre isso, mas já usei algo parecido com as informações guardadas em um banco de dados MySQL e as informações mostradas em uma página usando PHP. Nesse caso, as informações ficariam no seu servidor/banco de dados, e o Arduino iria apenas consultar essas informações.

      Abraço!

      Adilson – Equipe MakerHero

      1. Perfeito, era tudo que eu precisava!
        Muito obrigado mais uma vez..!

      2. boa tarde…
        Estou fazendo um trabalho de graduaçao e preciso de um prototipo, a turma resolveu usar um arduino UNO e sugeriu usar banco de dados do MySQL, tem um tutorial de como usar isso (interrogaçao)

        Preciso de uma ajuda pra concluir o projeto, sera bastante simples, preciso criar um banco de dados onde tennha alguns nomes e senhas de usuarios, onde cada usuario teria um tempo de 10 min para usar o determinado serviço, para isso preciso criar esse banco de usuarios no MySQL e linkar com o arduino, é aí que vem problema, somos leigos nesse assunto e buscando alguns foruns na rede, ficamos totalmente confusos, pode ajudar por favor (interrogaçao)

  99. El programa no me compila me podrias ayudar

    1. Boa tarde Fabio,

      Qual erro ele está apresentando ?

      Adilson – Equipe MakerHero

    2. en el void loop el error de compilacion me lo da en cmMsec = ultrasonic. convert(microsec, Ultrasonic::CM);
      pero si lo borro o lo quito me compila pero no me sensa espero me ayude

      1. Buenos días,

        Parece que es un problema con la instalación de la biblioteca. Está utilizando la misma biblioteca se muestra en este artículo?

        ¡Saludos!

      2. si la misma la grabo en otro computador y me da el mismo error me señala el error
        que es: cmSec=ultrasoni.convert(microsec,Ultrasonic::CM); y mas abajo me dice
        class ultrasonic has no membre named “convert

        1. uso la mismo biblioteca que aparece en el articulo y no me funciona ,

  100. Boa tarde!!
    Estou tentando fazer uma aplicação, mais sou novo com Arduino. Precisa comunicar o Arduino com Java web para gravar leituras rfid em um sistema, estou utilizando uno e Ethernet e rfid com tags. O sistema ja tem muitas coisas para gravar com as tags. só que não estou conseguindo comunicar.

  101. boa noite Felipe, estou com um problema com uma determinada versão do ethernet shield WS 51000 – 14/10, percebi que as placas que eu utilizava anteriormente possui o número 14/16 ou 14/20 e funcionam perfeitamente, quando embarco o mesmo código utilizando a placa 14/10 o ethernet shield não funciona na rede.
    Gostaria de saber o que significa essa númeração (em cima do conector RJ 45) ?
    Se alguém passou por alguma situação parecida, agradeço a ajuda.

    Abraço,

    Steven

  102. Agradeço a informação, eu comprei uma placa Ethernet Shield W5100 e vários terminais do chip W5100 estão com terminais interligados com solda, no total existe 14 terminais 2 a 2 interligado, estou com receio de alimentar a placa e queimar o chip. gostaria da informação se isso é normal na placa Ethernet W5100.
    Agradeço muito a atenção.
    Marcus Del Rey.

    1. Boa tarde Marcus,

      Isso é normal, na própria foto do anúncio aparece essa interligação. Pode ligar sem problemas.

      Abraço

      Adilson – Equipe MakerHero

  103. Olá! Não dá de abrir o site criado para monitorar o sensor com outro IP?

    abraço,

    Tiago

  104. Eu gostaria de saber aonde eu devo inserir os comandos HTML na programação pra poder montar o site.

    1. Bom dia Ariel,

      Nesse exemplo do post o código HTML é colocado dentro do programa do Arduino.

      Abraço

      Adilson – Equipe MakerHero

  105. Amigo Felipe, você fez testes sobre a estabilidade deste shield ethernet? comigo uma semana ligado, um dia fui testar e o mesmo estava totalmente travado sendo necessário reiniciar o arduino .. pode nos falar sobre sua experiência com shiel ethernet, qual vc recomenda para ser utilizados em projetos e não apenas em testes de bancada?

    1. Boa tarde Elizeu,

      O problema pode não estar necessariamente no Ethernet Shield, mas talvez no Arduino ou até mesmo na fonte de alimentação (picos de tensão).

      Abraço

      Adilson – Equipe MakerHero

  106. Muito obrigado! Aqui funfou legal… agora começar a incrementar este código! Muda muito para que em vez de eu usar o navegador usar um sistema supervisorio SCADA?

  107. Boa Tarde, acabei de adquirir meu shield ethernet e estranhei que no lugar do pino Vin, veio escrito 9v… Independente da tensao de alimentação dele, sempre vou ter 9v nesse pino?

  108. É possível obter o IP via DHCP?

    1. Boa tarde Leandro,

      É possível sim, dê uma olhada neste link: https://forum.wiring.co/index.php?topic=87.0

      Abraço.

      Adilson – Equipe MakerHero

  109. Boa tarde.

    Esse shield w5100, suporta PoE? Caso seja possivel utilizar PoE com ele, eu consigo alimentar o shield e a placa arduino apenas com a energia do cabo de rede?

    1. Boa tarde Kelson,

      Não suporta POE.

      Abraço.

      Adilson – Equipe MakerHero

  110. Eu tentei fazer usando um ethernet shild ligado ao um Arduino Uno, mais não consigo pingar e nem a página abre. o que pode ser?

    1. Bom dia Guilherme,

      Verifique as configurações de rede. Se possível, faça um teste ligando diretamente o cabo (de rede) do computador para o Arduino, assim vc elimina eventuais problemas com roteadores que possam afetar a comunicação.

      Abraço.

      Adilson – Equipe MakerHero

      1. Fiz exatamente como vc falo, mas continua dando o mesmo erro, não ligando as luzes da ethernet.

        1. Bom dia Guilherme,

          Aparentemente há algum problema com a sua placa. Quando é ligado o cabo de rede, as luzes da ethernet já começam a piscar.

          Adilson – Equipe MakerHero

          1. Pois é, e foi na FilipFlop que comprei ela, como ffaço para trocar?

            Guilherme Barbosa
          2. Bom dia Guilherme,

            Entre em contato através do email [email protected], relatando o problema.

            Grato.

            Adilson – Equipe MakerHero

  111. olá equipe comprei tres sensores com vcs e estou com dificuldade de obter respostas em saídas diferentes no Arduíno uno , soando buzzers de diferentes notas para saber quando é direita e esquerda será que poderiam me ajudar com esta questão da linguagem estou tentando com a biblioteca new ping mais sem sucesso?

  112. Boa Noite, gostaria de uma ajuda para finalizar um trabalho de controle de reservatorio hidráulico,
    preciso acessar dados dos sensores utrassonico e de temperatura de servidor e cliente e jogalos na pagina html atualizando de tempos em tempo.
    aguardo feed back

  113. Olá, fiz passo a passo conforme este tutorial, meu problema era que inicialmente funcionava somente na intranet e não na internet, porém um amigo conseguiu com meu arduino comunicar da casa dele normalmente pela internet, descobri que o problema é meu roteador que não está permitindo. Gostaria de saber como alterar meu roteador para permitir o acesso pela internet. já fiz corretamente as configurações no meu roteador em NAT-> Virtual Server, e criei a rota de desvio para o arduino. Já tentei conectar diretamente no pc, mudar a porta e nada faz com que o roteador permita acesso pela internet, só permite pela intranet.

  114. Boa tarde!
    Utilizo Arduino Mega 2560 e um Shield ethernet r3, fiz as modificações de acordo com minha rede, pluguei no roteador, mas não funcionou, a pagina não é encontrada, sem sucesso com ping também.
    O que pode ser?

  115. Boa Noite equipe MakerHero
    GOSTARIA DE SABER QUAL A POSSIBILIDADE DE LIGAR TRÊS SENSORES ULTRASSÔNICO EM UM ARDUÍNO UNO E SE É POSSÍVEL LIGAR TRÊS SAÍDAS RESPECTIVAMENTE???

    CORDIALMENTE

  116. Boa noite, vocês poderiam ensinar como fazer o acionamento de um pino pela internet?

    Agradeço desde já

  117. esse envio de informaçoes pela rede funciona exatamente igual com o ARDUINO GSM GPRS SHIELD ?

  118. Qual o procedimento para localizar o MAC na Shield Ethernet?

  119. Olá, comprei um arduino mega + shield w1500, consigo acender leds pela intranet. porém não sei como controlar pela internet geral, por favor me ajudem!

  120. Olá, comprei um a
    Arduino Mega + Ethernet Shield w1500 , já consegui acender leds pela intranet, porem não sei como controla-lo pela internet geral.
    Gostaria que me ajudassem.

    1. Cara, vc precisa fazer uma rota – pesquise sobre NAT – do seu roteador para o arduino.

  121. Bom dia,

    É possível utilizar o código acima para envio de twitter?
    No exemplo da biblioteca do twitter, onde é utilizado apenas o mac e IP (Ethernet.begin(mac, ip), o twitter é enviado normalmentePorém, quando utilizo no código as instruções “EthernetServer server(80)” e “server port”server.begin()”, a rotina deixa de funcionar.
    Acredito que tenha algum conflito entre os nomes e porta definidos nas bibliotecas Ethernet e Twitter. Também poderia ser algum problema na versão do IDE ou consumo de memória do Arduino.
    Já tentei alterar a porta do Ethernet Server, mas não funcionou.
    Estou utilizado o Arduino Uno e IDE 1.0.6

  122. Ola Filipe Flop , gostaria de saber se eu tenho que configurar um programa de localhost no meu computador antes de rodar a pagina? Porque quando eu coloco no meu navegador 192.168.1.110 , ele não abre nada e da um erro na pagina.
    Também gostaria de saber se tem como eu fazer toda parte de programação da pagina web pelo dreamweaver , e configurar la no dw o ip que esta o arduino , será que funciona?

    1. Boa noite Felipe,

      Você consegue “pingar” a placa normalmente ?

      Adilson – Equipe MakerHero

  123. Boa noite,
    Eu montei no protoboard um exemplo de acionamento remoto, quando estou dentro da minha rede, ou seja, compartilhando o mesmo roteador, consigo enviar e receber dados do arduino através da W5100, porém quando mudo para 3G ou uso outra rede no meu celular, eu só consigo enviar dados para o Arduíno, mas fico sem o feedback. Você tem uma solução para esse problema?

    Grato

    Julio

    1. Boa noite Julio,

      Sem conhecer detalhes da sua rede fica difícil, mas aparentemente é algum problema de roteamento/firewall ou alguma outra configuração, que está bloqueando os dados de saída da sua rede.

      Abraço.

      Adilson – Equipe MakerHero

  124. Boa tarde,

    Sou novo em Arduino, pretendo montar um projeto com ethernet shield, já procurei em diversos sites várias programações distintas, mas sempre encontro o mesmo “erro”, ao digitar o IP no meu navegador a página acusa erro,acredito que seja um problema de comunicação e não na placa, pois ao conectar o cabo de rede acusa que está pingando. Alguém poderia me auxiliar? Muito Obrigado!

    1. Boa noite Warley,

      Você está ligando o cabo ao ethernet shield por meio de um roteador ? Experimente ligar diretamente no computador.

      Adilson – Equipe MakerHero

      1. Bom dia Filipe,

        Em alguns sites, ví que o roteador pode estar bloqueando minha comunicação, mas não tentei ligá-lo diretamente no PC, para isso devo seguir o mesmo procedimento anteriormente? em questões de configurações?
        Obrigado.

        1. Boa noite Warley,

          Talvez você tenha que efetuar algumas alterações na parte de TCP IP da placa de rede do seu computador, provavelmente terá que utilizar IP fixo.

          Abraço.

          Adilson – Equipe MakerHero

  125. Boa noite, gostaria de saber se alguém já criou alguma aplicação com o Ethernet Shield sem gerar uma página Web (html), simplesmente usando o Shield como uma interface de rede?

  126. Olá MakerHero, Tenho um arduino UNO e um arduino MEGA 2560 e um EthernetShield w500 , quando ligo o arduino + ethernetshield na fonte e tento acessar o webserver pelo navegador ele não abre, só depois que aperto o botao reset ele consegue acessar o webserver, ja testei com os dois arduinos, e varios codigos porem acontece a mesma coisa, só apertando o botão reset uma vez para funcionar. quem tiver uma solução agradeço…

  127. Olá Filip, ótimo exemplo.

    Mas como faço para ler a informação recebida via http?
    Por exemplo uma informação para ligar um Led ou pagá-lo.

    Vc poderia postar um pequeno exemplo, por favor?

    Obrigado.

    1. Boa tarde Warley,

      Ainda estamos montando um post com informações nesse sentido.

      Abraço.

      Adilson – Equipe MakerHero

  128. Gostaria de saber se consigo enviar as informações pra internet, não só a rede interna, como faço isso?

    1. Simples, basta você liberar uma porta de conexão no seu modem direcionada para o IP em que o arduino se encontra.

      abs. Victor.

  129. Olá,
    Estou com um problema, eu segui todos os passos e mesmo assim ele não mostra as informações, quando eu coloco o IP na barra de endereços ele aparece “Não é possível conectar-se”. Se puder me ajudar agradeço.

  130. Otimo tutorial , mt boom msm, estou tentando criar um servidor web para uma domotica simples no meu TCC, e gostaria de que tivese uma imagem por exemplo de uma lâmpada no momento em que estiver acionada, tem como você me orientar com um exemplo similar a este, obg
    email para contato [email protected]

    1. Oi Danilo,

      Ainda não temos exemplos como esse, utilizando programação em PHP/HTML para verificar o estado das portas do Arduino.

      Abraço.

      Adilson – Equipe MakerHero

  131. Obrigado amigo,segui seu tutorial e funcionou de primeira! Muito obrigado

    1. Boa tarde Arthur,

      Muito obrigado ! Estamos à disposição.

      Abraço.

      Adilson – Equipe MakerHero

  132. Muito bom seus posts.
    Estou pensando em fazer uma ligação entre 2 placas uno ou mega com ethernet shield em ambas e fazer elas se comunicarem.
    exemplo de aplicação: Na casa coloco botoeiras e display para as funções e monitoramento em uma das placas,, e no canil coloco a outra placa com o módulo de relés fazendo as funções acionadas pela primeira placa. ou seja… uma placa comanda um painel e a outra executa os comandos e devolve o status dos sensores, sendo a sua ligação via rede, assim posso usar um cabo de rede, fibra ótica, ou até mesmo a internet para controlar, independente da distancia em que estejamos.
    Fazer com uma placa e usar a WEB para isto já aprendemos aqui, mas tenho ideia de fazer um painel, sem computador.

    1. Boa tarde Luiz,

      Obrigado. Realmente é um tipo de aplicação interessante, mas também poderia ser feita com módulos wireless.

      Abraço.

      Adilson – Equipe MakerHero

  133. Boa tarde a todos!

    estou com dificuldades de acessar o meu arduino pela internet. quando estou conectado na minha rede loca consigo controlar, porem quando saiu da rede local e entro por outra rede, a pagina nao abre!
    ja config modem modelo: technicolor td5130, nele criei uma porta 80. ja tentei a 8080 e nada

    byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
    IPAddress ip(000,000,0,000);
    IPAddress gateway(000,000,000,0000); //Define o gateway
    IPAddress subnet(255, 255, 255, 0);
    EthernetServer server(80);

    desde ja agraadeço!

    1. Ola Marcos!

      Neste caso voce deve fazer uma configuração no seu roteador para que direcione ao ip do shiled todas as requisiçoes que ele receber na porta WAN (IP Externo) .

      Exemplo:
      Se voce configurou seu shield na porta 9090, deve fazer uma configuração no roteador para que direcione ao ip do shield todas as requisições recebidas na porta 9090 Wan (Ip Externo). O acesso deve sempre ser feito de fora pra dentro usando o ip externo. (que normalmente é dinamico)

      Obs: Se sua internet é do tipo domestica, procure nao utilizar as portas 80 e 8080, (preferencialmente nenhuma porta de aplicação conhecida) pois os provedores normalmente mantem estas portas fechadas propositalmente.

      1. Olá Cesar, tudo bem?
        Estou com problemas para acessar o eth shield pela rede local. Ponto-a-ponto funciona bem mas quando conecto o eth shield ao roteador, mesmo tendo configurado no roteador IWR 3000N o ip do eth shield com ip estático, não consigo comunicar o eth shield com o laptop via wi-fi. No código do UNO estou utilizando a porta 80, será esse o problema? Muito obrigado!

        1. Olá Samuel,

          Você tentou usar outra porta? O problema persistiu?

          Abraço!
          Rosana – Equipe MakerHero

  134. Ola Filipe, Muito Bom seu Site, tire uma duvida não entendi estes valores para configurar o IP
    IPAddress ip( 11,12,13,88); //Define o endereco IP ( não seria 192.168.1.88 ?)
    IPAddress gateway(11,12,13,1); //Define o gateway

  135. Adorei o post!
    Você teria algo semelhante, mas usando a internet 3G (ou 2G)?
    Obrigada!

    1. Boa tarde Ana,

      Em breve estaremos publicando um artigo sobre shield GSM.

      Abraço.

      Adilson – Equipe MakerHero

  136. Excelente, post.

    A hora que estou só utilizando o arduino uno o ultrasonic funciona perfeito, a hora que coloco a shield ethernet ele começa passar outros valores, que não corresponde com a medida. exemplo 0.03 ou 0.02

    Porque isso ocorre?

    1. Boa tarde Junior,

      Obrigado. Tente trocar a porta onde o sensor ultrasonico está ligado, ou se puder, verifique se o problema acontece com outro sensor.

      Grato.

      Adilson – Equipe MakerHero

  137. Como faço para criar os botões no celular para controlar o arduino?

    1. Boa tarde,

      Essa parte envolve programação, e depende do tipo de celular que você vai utilizar. De qualquer forma, existem vários programas gratuitos que fazer esse tipo de controle.

      Abraço.

      Adilson – Equipe MakerHero

  138. Boa noite!
    Estou com dificuldade, pois meu computador só está liberando o ipv6: e aparentemente não consigo conectar ao computador, se uso o ip do próprio shield a programação dá certo e consigo comunicar no computador, entretanto não consigo abrir a leitura no navegador

    1. Boa tarde Vinicius,

      Realmente o shield usa as configurações do IPv4. Por favor verifique se este protocolo está habilitado no seu computador.

      Abraço.

      Adilson – Equipe MakerHero

  139. Boa noite, eu consegui fazer a comunicação pela rede normalmente, mas quando desconecto o o cabo usb e deixo o arduino alimentado apenas pela fonte de alimentação e o cabo de rede conectado não consigo mais ler os dados dos sensores ligados, vocês saberiam me dizer qual o problema?

    Obrigado, ótimo post.

    1. Boa tarde Gustavo,

      O Arduino deveria se comportar da mesma maneira, enviando dados para o browser quando você o alimenta com fonte externa.

      Você verificou se a placa não perdeu a conexão com o roteador quando você trocou a USB pela fonte ?

      Abraço.

      Adilson – Equipe MakerHero

  140. boa noite

    primeiro_teste:15: error: ‘Ultrasonic’ does not name a type
    primeiro_teste.ino: In function ‘void loop()’:
    primeiro_teste:36: error: ‘ultrasonic’ was not declared in this scope
    primeiro_teste:38: error: ‘Ultrasonic’ has not been declared

    Isso que dizer que não estalei a biblioteca provavelmente como visto acima…

    O que é IDE?

    1. Boa noite João,

      IDE é o ambiente de programação do Arduino. Verifique o local onde o seu programa está instalado e coloque a biblioteca dentro da pasta LIBRARIES.

      Adilson – Equipe MakerHero

  141. Boa Noite.

    Faz dois dias que adquiri o módulo de internet W5100, bom conectei ele no meu roteador e ele esta “pingando”, porém a pagina do server nao abre de jeito nenhum, quando eu abro a serial o server nao esta “memorizando meu ip” ele atribui um numero totalmente diferente. Gostaria de saber se ja aconteceu algo assim?

    1. Boa noite,

      Imagino que você tenha configurado um endereço IP compatível com a sua rede. Pode me explicar um pouco melhor sobre esse problema do server não estar memorizando o IP ?

      Grato.

      Adilson – Equipe MakerHero

  142. tem como mudar o modo de vizualização da pagina no celular sem aquela pagina grande do servidor,uma uma tela especifica para esse sensor.

    1. Bom dia Sidnei,

      O que pode ser feito é criar um aplicativo para celular para ler esses valores e exibir em algum layout específico.

      Abraço.

      Adilson – Equipe MakerHero

  143. Boa noite.
    Tentei rodar este programa e aparece erro na seguinte linha:
    long microsec = ultrasonic.timing();
    tentei encontrar a causa, mas não consegui .
    Você poderia me auxiliar?

    1. Boa tarde Franciane,

      Você instalou a biblioteca Ultrasonic ?

      Adilson – Equipe MakerHero

      1. Instalei sim por isso não compreendo este erro.

      2. coloque a palavra timing com a primeira letra maiúscula. Desta forma, “ultrasonic.Timing()”, funcionará.

    2. Olá Amigo,

      No meu caso eu tive que retirar uma outra biblioteca que utilizava o HCSR e deixar somente a bilioteca dele citada no site. Quando for trabalhar com outra biblioteca é necessário reverter a situação.

      Abs.

  144. Bom dia!
    Tenho um servidor que está pronto para receber as informações do arduino:
    https://189.20.93.243:11003/ImgSensor/rst/valsensor.ashx?valor=45&sensor=8445456

    Só preciso denominar um nome/id para o sensor e o valor que está captando (exemplo: sensor: 1, valor: 23).
    Já consegui fazer o processo na rede interna,ethernet, mas não consigo enviar as informações para a internet.
    Se pudesse me ajudar eu agradeceria!

    Obs: Arduino Uno R3, Shield Ethernet, posso receber a informação com Json.

    1. Boa tarde Renan,

      Acessei o link e vi algumas informações sobre o sensor. Você já conseguiu resolver ou você quer disponibilizar os dados em outro formato ?

      Adilson – Equipe MakerHero

  145. Bom dia!
    Tenho um servidor que está pronto para receber as informações do arduino:
    https://189.20.93.243:11003/ImgSensor/rst/valsensor.ashx?valor=45&sensor=8445456

    Só preciso denominar um nome/id para o sensor e o valor que está captando (exemplo: sensor: 1, valor: 23).
    Já consegui fazer o processo na rede interna,ethernet, mas não consigo enviar as informações para a internet.
    Se pudesse me ajudar eu agradeceria!

    Obs: Arduino Uno R3, Shield Ethernet, posso receber a informação com Json.

    1. Boa tarde Renan,

      Acessei o link e vi algumas informações sobre o sensor. Você já conseguiu resolver ou você quer disponibilizar os dados em outro formato ?

      Adilson – Equipe MakerHero

      1. Um projeto desses seria muito bom, pois ele possibilita você guardar as informações em um banco de dados ou usar validações avançadas no PHP.

    2. Renan eu estou trabalhando em um projeto similar ao seu, onde usando um Arduino e um Shild Ethernet eu acesse uma página no meu servidor PHP enviando informações do sensor pela Url.

      Teria como me ajudar pois eu estou apanhando pra fazer funcionar a conexão!!! se você puder me mandar o código ou pelo menos um link, segue meu e-mail:
      [email protected]

    3. Bom dia amigo

      vi que você desenvolveu um projeto parecido com o que estou fazendo.

      Quero enviar um Json para um servidor que tenho na nuvem.. você poderia me ajudar? Gostaria de saber como você fez essa comunicação.. estou usando o arduino mega + shield ethernet W5100.

      Abraço!

  146. Bom dia, tentei usar esse programa, mas esta dando erro na seguinte linha:
    Ultrasonic ultrasonic(PINO_TRIGGER, PINO_ECHO);

    erro: ‘Ultrasonic’ does not name a type

    Sou iniciante em programação, portanto não sei o que pode estar errado.

    1. Bom dia Matheus !

      Isso me parece ser um erro na instalação da biblioteca. Você instalou corretamente ? Não esqueça que você precisar sair e entrar na IDE novamente para que a biblioteca seja reconhecida.

      Abraço.

      Adilson – Equipe MakerHero

  147. Bom dia, tentei usar esse programa, mas esta dando erro na seguinte linha:
    Ultrasonic ultrasonic(PINO_TRIGGER, PINO_ECHO);

    erro: ‘Ultrasonic’ does not name a type

    Sou iniciante em programação, portanto não sei o que pode estar errado.

    1. Bom dia Matheus !

      Isso me parece ser um erro na instalação da biblioteca. Você instalou corretamente ? Não esqueça que você precisar sair e entrar na IDE novamente para que a biblioteca seja reconhecida.

      Abraço.

      Adilson – Equipe MakerHero

    2. tem que instalar a biblioteca!!

Trackbacks and Pingbacks

  1. […] de comunicar o Arduino com o mundo “externo”, usando Bluetooth com Arduino ou um Arduino Ethernet Shield para verificar o estado de sensores e enviar comandos. Uma outra alternativa eficiente e barata […]