Como comunicar com o Arduino Ethernet Shield W5100

Como comunicar com o Arduino Ethernet Shield W5100

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

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 : FILIPEFLOP
//
//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? Ajude-nos a melhorar o blog atribuindo uma nota a este tutorial (estrelas no início ou no final do artigo) e visite nossa loja FILIPEFLOP!

14
Como comunicar com o Arduino Ethernet Shield W5100
167 votos, 4.74 classificação média (94% pontuação)

Formado em Ciência da Computação pela Universidade de Mogi das Cruzes, atualmente responsável pelo departamento técnico da FILIPEFLOP.

Compartilhe este Post

215 Comentários

  1. vanderlei silva - 16 de junho de 2017

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

  2. Alex Frazão - 22 de maio de 2017

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

  3. Carlos Vinícius Ferrareze - 26 de abril de 2017

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

  4. cristhian - 24 de abril de 2017

    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?

  5. Emannuell - 19 de abril de 2017

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

  6. Renato - 14 de março de 2017

    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

  7. Stella Azevedo Marques - 30 de janeiro de 2017

    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?

    • Leonardo Copatti - 31 de janeiro de 2017

      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

      • Stella Azevedo Marques - 1 de fevereiro de 2017

        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.

  8. Jádson Bráz - 21 de janeiro de 2017

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

  9. Paulo - 17 de janeiro de 2017

    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?

  10. hermes amaral - 12 de janeiro de 2017

    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.

  11. Marcel - 11 de dezembro de 2016

    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.

  12. Thiago Dantas Soares - 6 de dezembro de 2016

    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

  13. lucas - 28 de novembro de 2016

    Como fazer para verificar a conexão?

  14. Jorge Couto - 2 de novembro de 2016

    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

  15. Fabricio Henrique de souza - 29 de setembro de 2016

    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?

  16. Lorenzo Veron - 12 de setembro de 2016

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

  17. roberto - 6 de setembro de 2016

    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

  18. Dário R. - 4 de setembro de 2016

    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?

  19. Carlito - 28 de agosto de 2016

    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

    • Thiago - 1 de setembro de 2016

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

    • LUIZ CYPRIANO - 1 de setembro de 2016

      É 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.

    • Luiz - 1 de setembro de 2016

      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.

  20. Robson Pinheiro - 18 de agosto de 2016

    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?

  21. Samuel Henrique de Souza Silva - 27 de julho de 2016

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

  22. Wesley Gallo - 24 de julho de 2016

    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á

  23. helio - 22 de julho de 2016

    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

  24. Joao Caetano - 19 de julho de 2016

    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

  25. Vitor Ramos - 18 de julho de 2016

    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!

    vitorjpramos@gmail.com

  26. Maicon - 14 de julho de 2016

    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

    • LUIZ BENEDITO CYPRIANO - 14 de julho de 2016

      É 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.

  27. Camila - 22 de junho de 2016

    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 ;)

    • LUIZ CYPRIANO - 22 de junho de 2016

      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 FILIPEFLOP QUE FUNCIONA – LUIZ – BOA SORTE VAI PRECISAR

    • Camila - 22 de junho de 2016

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

  28. Osvaldo - 19 de junho de 2016

    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:\Users\OSVALDO\Documents\Arduino\Programa_Shield\Programa_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”

  29. Bruno Dias - 3 de junho de 2016

    Boa tarde,

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

  30. Bruno - 20 de maio de 2016

    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?

    • Adilson Thomsen - 20 de maio de 2016

      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 FILIPEFLOP

  31. guilherme - 19 de maio de 2016

    o link para a biblioteca está offline?

  32. Daniel Tsuneo - 18 de maio de 2016

    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)\Arduino\libraries\icmp_ping\ICMPPing.cpp: In member function ‘void ICMPPing::receiveEchoReply(const ICMPEcho&, ICMPEchoReply&)':

    C:\Program Files (x86)\Arduino\libraries\icmp_ping\ICMPPing.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)\Arduino\libraries\icmp_ping\ICMPPing.h:12:0,

    from C:\Program Files (x86)\Arduino\libraries\icmp_ping\ICMPPing.cpp:10:

    C:\Program Files (x86)\Arduino\libraries\Ethernet\src/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)\Arduino\libraries\icmp_ping\ICMPPing.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)\Arduino\libraries\icmp_ping\ICMPPing.h:12:0,

    from C:\Program Files (x86)\Arduino\libraries\icmp_ping\ICMPPing.cpp:10:

    C:\Program Files (x86)\Arduino\libraries\Ethernet\src/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”

  33. mauricio alves - 17 de maio de 2016

    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?

  34. Douglas Raetê Mancini Sanches - 6 de maio de 2016

    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 :(

  35. LUIZ CYPRIANO - 7 de abril de 2016

    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.

    • Marcus - 13 de abril de 2016

      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.

      • LUIZ CYPRIANO - 22 de junho de 2016

        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!!!

    • LUIZ CYPRIANO - 13 de abril de 2016

      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.

  36. LUIZ CYPRIANO - 7 de abril de 2016

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

  37. Jose edson - 4 de abril de 2016

    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

  38. ricardo - 23 de março de 2016

    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

  39. Felipe - 23 de março de 2016

    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?

  40. Anderson Silva de Albuquerque - 19 de março de 2016

    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.

  41. Márcio - 15 de março de 2016

    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?

  42. Heitor Amorim - 3 de março de 2016

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

    • Adilson Thomsen - 3 de março de 2016

      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 FILIPEFLOP

  43. Victor - 4 de fevereiro de 2016

    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á.

  44. Ijanai Filho - 1 de fevereiro de 2016

    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?

  45. Moura - 21 de janeiro de 2016

    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?

    • FILIPEFLOP - 22 de janeiro de 2016

      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 FILIPEFLOP

    • Luiz Motter Neto - 23 de janeiro de 2016

      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…..?????

      • Moura - 24 de janeiro de 2016

        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.

  46. Irwin Gomes - 11 de dezembro de 2015

    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!

  47. Lucas - 7 de dezembro de 2015

    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?

  48. Dionizio - 7 de dezembro de 2015

    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?

    • Luiz Motter Neto - 7 de dezembro de 2015

      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.

      • Dionizio - 22 de dezembro de 2015

        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

    • henrique lopes Peres - 13 de fevereiro de 2017

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

      Obrigado

  49. Vitor Bandeira - 27 de novembro de 2015

    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:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp: In member function ‘int EthernetClass::begin(uint8_t*, long unsigned int, long unsigned int)':
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:19: error: ‘class SPIClass’ has no member named ‘beginTransaction’
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:19: error: ‘SPISettings’ was not declared in this scope
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:22: error: ‘class SPIClass’ has no member named ‘endTransaction’
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:30: error: ‘class SPIClass’ has no member named ‘beginTransaction’
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:34: error: ‘class SPIClass’ has no member named ‘endTransaction’
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp: In member function ‘void EthernetClass::begin(uint8_t*, IPAddress, IPAddress, IPAddress, IPAddress)':
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:68: error: ‘class SPIClass’ has no member named ‘beginTransaction’
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:68: error: ‘SPISettings’ was not declared in this scope
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:73: error: ‘class SPIClass’ has no member named ‘endTransaction’
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp: In member function ‘int EthernetClass::maintain()':
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:89: error: ‘class SPIClass’ has no member named ‘beginTransaction’
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:89: error: ‘SPISettings’ was not declared in this scope
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:93: error: ‘class SPIClass’ has no member named ‘endTransaction’
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp: In member function ‘IPAddress EthernetClass::localIP()':
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:107: error: ‘class SPIClass’ has no member named ‘beginTransaction’
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:107: error: ‘SPISettings’ was not declared in this scope
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:109: error: ‘class SPIClass’ has no member named ‘endTransaction’
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp: In member function ‘IPAddress EthernetClass::subnetMask()':
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:116: error: ‘class SPIClass’ has no member named ‘beginTransaction’
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:116: error: ‘SPISettings’ was not declared in this scope
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:118: error: ‘class SPIClass’ has no member named ‘endTransaction’
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp: In member function ‘IPAddress EthernetClass::gatewayIP()':
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:125: error: ‘class SPIClass’ has no member named ‘beginTransaction’
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:125: error: ‘SPISettings’ was not declared in this scope
    C:\Users\vbandeira\Documents\Arduino\libraries\Ethernet\src\Ethernet.cpp:127: error: ‘class SPIClass’ has no member named ‘endTransaction’

    Você pode me ajudar??

    Abração

  50. Yago - 22 de novembro de 2015

    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

  51. fabio - 15 de novembro de 2015

    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.

  52. José Pedro Cerqueira - 13 de novembro de 2015

    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

  53. Edison - 1 de novembro de 2015

    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?

  54. Ciro - 26 de outubro de 2015

    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

  55. igor - 19 de outubro de 2015

    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 ???

  56. Barbosa - 18 de outubro de 2015

    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.

    • FILIPEFLOP - 21 de outubro de 2015

      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

      • Barbosa - 25 de outubro de 2015

        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

  57. HONER - 16 de outubro de 2015

    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?

  58. Renato - 12 de setembro de 2015

    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 ?

  59. Amaral - 11 de setembro de 2015

    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!

    • FILIPEFLOP - 14 de setembro de 2015

      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 FILIPEFLOP

      • Amaral - 14 de setembro de 2015

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

      • Leadnro Araujo - 5 de novembro de 2015

        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)

  60. Fabio - 10 de setembro de 2015

    El programa no me compila me podrias ayudar

  61. Michell - 7 de setembro de 2015

    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.

  62. Steven - 4 de agosto de 2015

    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

  63. Marcus Del Rey - 3 de agosto de 2015

    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.

  64. Tiago Pereira - 23 de julho de 2015

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

    abraço,

    Tiago

  65. Ariel - 20 de julho de 2015

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

  66. Elizeu - 14 de julho de 2015

    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?

    • FILIPEFLOP - 16 de julho de 2015

      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 FILIPEFLOP

  67. Ermirio - 4 de julho de 2015

    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?

  68. Rafael - 2 de julho de 2015

    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?

  69. Leandro - 1 de julho de 2015

    É possível obter o IP via DHCP?

  70. Kelson - 30 de junho de 2015

    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?

  71. Guilherme Barbosa - 24 de junho de 2015

    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?

  72. Josirlei Alves Ramos - 11 de junho de 2015

    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?

  73. Moise Abdul Jr. Manganão - 13 de abril de 2015

    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

  74. Cristhian - 11 de abril de 2015

    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.

  75. Marlon - 31 de março de 2015

    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?

  76. Josirlei Alves Ramos - 15 de março de 2015

    Boa Noite equipe FILIPEFLOP
    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

  77. Caio de Moraes - 14 de março de 2015

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

    Agradeço desde já

  78. Matheus Makhoul - 11 de março de 2015

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

  79. Cristiano Carrenho - 9 de março de 2015

    Qual o procedimento para localizar o MAC na Shield Ethernet?

  80. Cristhian - 10 de fevereiro de 2015

    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!

  81. Cristhian - 10 de fevereiro de 2015

    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.

  82. Daniel Gleison - 23 de janeiro de 2015

    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

  83. Felipe Costa - 13 de janeiro de 2015

    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?

  84. Julio Duque - 11 de janeiro de 2015

    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

    • FILIPEFLOP - 12 de janeiro de 2015

      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 FILIPEFLOP

  85. WARLEY SANTIAGO - 15 de dezembro de 2014

    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!

    • FILIPEFLOP - 5 de janeiro de 2015

      Boa noite Warley,

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

      Adilson – Equipe FILIPEFLOP

      • WARLEY SANTIAGO - 6 de janeiro de 2015

        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.

        • FILIPEFLOP - 12 de janeiro de 2015

          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 FILIPEFLOP

  86. João Reiser - 2 de dezembro de 2014

    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?

  87. Rodrigo - 2 de dezembro de 2014

    Olá FILIPEFLOP, 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…

  88. Warley Mendes - 1 de dezembro de 2014

    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.

  89. 123 - 28 de outubro de 2014

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

  90. Maicon - 28 de outubro de 2014

    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.

  91. Danilo H - 30 de setembro de 2014

    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 danilo.aluno.etec@live.com

  92. arthur - 29 de setembro de 2014

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

  93. Luiz Motter - 24 de setembro de 2014

    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.

  94. marcos - 21 de setembro de 2014

    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!

    • Cesar Bianchi - 5 de janeiro de 2015

      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.

  95. Sergio - 3 de setembro de 2014

    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

  96. Ana Grossi - 31 de agosto de 2014

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

  97. Junior - 29 de agosto de 2014

    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?

    • FILIPEFLOP - 3 de setembro de 2014

      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 FILIPEFLOP

  98. leandro - 23 de agosto de 2014

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

    • FILIPEFLOP - 23 de agosto de 2014

      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 FILIPEFLOP

  99. Vinicius Duarte - 12 de agosto de 2014

    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

  100. Gustavo - 10 de agosto de 2014

    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.

    • FILIPEFLOP - 11 de agosto de 2014

      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 FILIPEFLOP

  101. João - 25 de julho de 2014

    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?

    • Adilson - 29 de julho de 2014

      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 FILIPEFLOP

  102. Felipe - 23 de julho de 2014

    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?

    • Adilson - 29 de julho de 2014

      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 FILIPEFLOP

  103. sidnei - 18 de junho de 2014

    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.

  104. Franciane - 8 de junho de 2014

    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?

  105. Renan Araujo - 30 de janeiro de 2014

    Bom dia!
    Tenho um servidor que está pronto para receber as informações do arduino:
    http://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.

  106. Renan Araujo - 30 de janeiro de 2014

    Bom dia!
    Tenho um servidor que está pronto para receber as informações do arduino:
    http://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.

  107. Matheus Marcondes - 30 de janeiro de 2014

    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.

    • FILIPEFLOP - 30 de janeiro de 2014

      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 FILIPEFLOP

  108. Matheus Marcondes - 30 de janeiro de 2014

    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.

    • FILIPEFLOP - 30 de janeiro de 2014

      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 FILIPEFLOP

Deixe uma resposta