Arduino – Utilizando o Ethernet Shield W5100 via Web server

Arduino – Utilizando o Ethernet Shield W5100 via Web server

Uma grande parcela de pessoas que começam a desenvolver seus projetos com Arduino querem controlar através da internet LEDs, módulo relé para apagar e acender lâmpadas, motores ou obter informações dos mais variados tipos de sensores para mostrar em uma página Web ou em um smartphone ou tablet, por exemplo. Uma das placas mais conhecidas e que viabiliza este tipo de projeto é o Ethernet Shield W5100. Como forma de demonstrar a sua utilização, criei um servidor web para controlar um LED através de uma página html.

img00_arduino_utilizando_o_ethernet_shield_w5100_via_web_server_smartphone_tablet_android_ios_automacao_residencial_lampada_rele

O Ethernet Shield W5100 é uma placa que permite ao Arduino se conectar a uma rede local ou a internet. Este escudo (shield) veio para suprir a necessidade de se conectar o Arduino a internet para desenvolvimento de projetos que necessitam controlar algo remotamente ou obter informações de outros dispositivos para exibir em tempo real ou armazenar em uma base de dados, por exemplo.

Fazendo as devidas configurações no modem / roteador e no código para uso do Arduino em conjunto com Ethernet Shield W5100, você poderá acessar seu projeto de qualquer lugar do planeta, seja através de um computador, tablet, smartphone Android ou iOS, por exemplo.

Abaixo temos algumas características e especificações do Ethernet Shield W5100:

– Possui o controlador W5100 (Datasheet W5100);
Esquemático Ethernet Shield W5100
– Pode ser alimentado com tensão na faixa de 3.3V a 5VDC;
– Possui velocidade de conexão de 10 / 100Mb;
– Suporta os protocolos TCP / IP, UDP, ICMP, ARP IPv4, IGMP, PPPoE, Ethernet,
– Suporta configurações de comunicação Full-duplex e half-duplex;
– Suporta conexão ADSL PPPoE com PAP / CHAP no modo de autenticação;
– Suporta até 4 conexões independentes de forma simultânea;
– Possui memória Interna de 16Kb para buffers de TX e RX;
– Possui slot para micro cartão de memória;
– Se conecta ao Arduino através de interface SPI (barramento ICSP);
– No Arduino Uno utiliza ocupa os pinos digitais 10, 11, 12 e 13 e no Arduino Mega os pinos 50, 51, 52 e 53. Em ambas as placas o pino 4 também é utilizado pelo shield;

Por ser um shield, o W5100 deve ser acoplado na parte de cima do Arduino:

img01_arduino_utilizando_o_ethernet_shield_w5100_via_web_server_smartphone_tablet_android_ios_automacao_residencial_lampada_rele

Exceto os pinos mencionados anteriormente, os demais poderão ser utilizados em seus projetos.

Para mostrar o funcionamento do Ethernet Shield W5100 com o Arduino, utilizei o código de um web server simples, onde vamos ter uma página web que terá um botão para ligar / desligar um LED e o estado atual deste LED também será exibido na página.

Para prosseguir você vai precisar dos seguintes itens:

Arduino c/ Cabo USB
Ethernet Shield W5100
Protoboard de 170 pontos
Cabos jumper macho-macho
LED Difuso
Resistor de 150Ω
– Cabo de rede RJ45

Depois de acoplar o W5100 ao Arduino, monte o esquema de ligação conforme a imagem abaixo:

ATENÇÃO: FAÇA TODAS AS LIGAÇÕES COM SEU ARDUINO DESCONECTADO DA ALIMENTAÇÃO.

img02_arduino_utilizando_o_ethernet_shield_w5100_via_web_server_smartphone_tablet_android_ios_automacao_residencial_lampada_rele

Terminado as ligações, abra a IDE do Arduino. Caso ainda não tenha instalado a IDE do Arduino, acesse o link abaixo e em seguida retorne para continuar:

Arduino – Instalação e Configuração da IDE no Windows

Copie o código abaixo e cole na IDE:

O código está configurado para utilizar IP estático, portanto, você terá que alterar algumas informações:

img03_arduino_utilizando_o_ethernet_shield_w5100_via_web_server_smartphone_tablet_android_ios_automacao_residencial_lampada_rele

– No “byte ip[]”, coloque um endereço de IP livre da sua rede;

– No “byte gateway[]”, coloque o endereço de gateway da sua rede;

– No “byte subnet[]”, coloque as informações de máscara de sub-rede da sua rede.

Se você não sabe como ter acesso a essas informações no Windows, sugiro que leia a postagem Descobrindo a faixa de IP do seu roteador. De posse das informações, preencha os parâmetros no código e prossiga.

Conecte o Arduino ao computador, conecte uma ponta do cabo de rede RJ45 ao Ethernet Shield e a outra ponta conecte ao roteador. Confira na IDE se a placa e a porta selecionada estão corretas e em seguida carregue o código.

Após o arquivo ser carregado no Arduino, abra o navegador no seu computador, smartphone ou tablet, digite o endereço de IP (“byte ip[]) que você inseriu no código e a página web será aberta:

img04_arduino_utilizando_o_ethernet_shield_w5100_via_web_server_smartphone_tablet_android_ios_automacao_residencial_lampada_rele

Agora basta você alternar entre os comandos para acender e apagar o LED.

Veja no vídeo abaixo o LED sendo controlado através da página Web aberta no smartphone:

OBS: conforme já informado anteriormente, alguns pinos do Arduino serão de uso exclusivo do Ethernet Shield W5100. No caso do Arduino Uno, os pinos digitais utilizados pelo shield são 10, 11, 12 e 13, e no Arduino Mega os pinos 50, 51, 52 e 53. Além disso, em ambas as placas o pino digital 4 também é utilizado para selecionar o uso do micro cartão de memória. Portanto, estes pinos não devem ser utilizados como entrada ou saída no seu projeto enquanto estiver usando o W5100.

Esta foi apenas uma demonstração simples de uso do Ethernet Shield. Há muitos outros projetos bem interessantes em que esta placa pode ser utilizada.

Gostou desta prática? Então deixa seu comentário, dúvida ou sugestão aí embaixo!

Loja online: https://www.masterwalkershop.com.br
Fan page no Facebook: https://www.facebook.com/masterwalkershop

Nos ajude a espalhar conhecimento clicando no botão de compartilhar (f Like) que está mais abaixo.

Obrigado e até a próxima!

Seu feedback é muito importante! Que tal dar uma nota para esta postagem?! Faça sua avaliação aqui embaixo.

Arduino – Utilizando o Ethernet Shield W5100 via Web server
2 votos / Média de avaliação: 5 / Pontuação: 100%


Postagem anterior:
Próxima postagem:
Postagem feita por

Formado em Engenharia da Computação pela Faculdade Presidente Antônio Carlos, fundador e CEO da MasterWalker Electronic Shop. Se preocupa com o aprendizado dos seus clientes e daqueles interessados em aprender sobre Arduino e plataformas embarcadas em geral.

Existe 1 comentário para esta postagem

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *