Ethernet

Conecte o seu projeto à internet

  • Chip Wiznet W5500, a evolução do W5100
  • Memória EEPROM com endereço MAC registrado
  • Buffer de 32Kb e até 8 conexões simultâneas
  • Modo power down para economia de energia
  • Biblioteca de software com as mesmas funções da biblioteca Ethernet padrão do Arduino

O Nanoshield Ethernet permite a conexão de seu projeto diretamente à Internet. Algumas coisas que você pode fazer são:

  • Acessar sites e serviços na Internet.
  • Comunicar-se com outros dispositivos na sua rede local.
  • Rodar um servidor web simplificado no seu Arduino ou Alevino.
  • Enviar dados locais para a Internet, como dados de sensores por exemplo.
  • Enviar e-mails.

O Nanoshield Ethernet utiliza o chip W5500 da Wiznet, que é um controlador de rede Ethernet e comunica-se com o microcontrolador do seu projeto via uma interface SPI. Este chip é uma versão mais moderna do que o chip utilizado pelo Arduino Ethernet Shield oficial, possuindo mais memória (32Kb contra 16Kb) e maior número de conexões simultâneas (8 contra 4).

A programação é feita por meio da nossa biblioteca Nanoshield_Ethernet que é compatível com a biblioteca Ethernet padrão do Arduino, fornecendo acesso às mesmas funções, além de uma funções para economia de energia (modo power down).

Uma grande vantagem do controlador W5500 em relação a outros controladores do mercado é que ele possui uma implementação (stack) de protocolo TCP/IP interna. Isso reduz muito as tarefas a serem executadas pelo microcontrolador, deixando o software mas rápido e reduzindo o consumo de memória. O buffer interno de 32Kbytes permite armazenar os dados enviados e recebidos enquanto o microcontrolador executa outras tarefas.

Uma outra característica do Nanoshield Ethernet é que ele já vem com um endereço MAC próprio no chip de memória EEPROM integrado à placa. Esse é um endereço único global, registrado exclusivamente para a sua placa. Isso impede conflitos de endereço entre o seu Nanoshield Ethernet e outros equipamentos da rede, e você pode inclusive incluí-lo em um produto final sem ter que comprar endereços MAC da entidade de registro.

Características do Nanoshield Ethernet

!Conexão com Arduino + Base Board Uno

O jeito mais fácil de utilizar o Nanoshield Ethernet juntamente com um Arduino é usando a Base Board Uno ou Base Board L Uno. Basta encaixar as placas e depois carregar o nosso código de exemplo para verificar o funcionamento (veja a seção de código de exemplo no final da página). Esta montagem pode ser utilizada com o Arduino UNO, Mega R3, Duemilanove entre outras (entre em contato caso tenha dúvidas sobre compatibilidade com outras versões). A figura abaixo mostra como fica a montagem do conjunto.

Ligação com Arduino utilizando Base Board Uno (clique na imagem para ampliar)

!Conexão com Base Boarduino

Também é possível conectar o Nanoshield Ethernet diretamente à nossa placa compatível com Arduino, a Base Boarduino. A conexão é feita da mesma forma com que é feita na Base Board, conforme ilustra a figura abaixo. Basta encaixar as placas e depois carregar o nosso código de exemplo para verificar o funcionamento (veja a seção de código de exemplo no final da página).

Ligação com a Base Boarduino (clique na imagem para ampliar)

!Conexão direta com Arduino

Os seguintes esquemas mostram como conectar o Nanoshield Ethernet diretamente a um Arduino UNO ou Arduino Mega.

Ligação utilizando Arduino UNO (clique na imagem para ampliar)

Ligação utilizando Arduino Mega (clique na imagem para ampliar)

!Pinagem

Ethernet Arduino Função
/INT D2 Saída interrupção W5500 (opcional)
/SCS D10# Chip Select W5500
SDI D11# Linha de dados barramento SPI
SDO D12 Linha de dados barramento SPI
SCLK D13 Linha de clock barramento SPI
SDA A4 Linha de dados barramento I2C
SCL A5 Linha de clock barramento I2C
VCC VCC Entrada de alimentação 5V
VIN VIN Entrada de alimentação externa
GND GND Tensão de referência (terra)
Tabela de descrição dos pinos

Características

  • Implementado com o CI W5500 fabricado pela Wiznet.
  • Stack TCP/IP interno.
  • Suporta 8 sockets simultâneos.
  • Suporta os protocolos TCP, UDP, ICMP, IPv4 ARP, IGMP e PPPoE.
  • 10BaseT/100BaseTX com auto negotiation e auto MDI/MDIX.
  • Buffer interno de 32Kbytes para transmissão e recepção.
  • LEDs de status:
    • Indicador de alimentação da placa (PWR)
    • Full duplex ou half duplex (DUPLEX)
    • Velocidade 10/100 (SPEED)
    • Atividade da rede (LED verde no conector RJ-45)
    • Link ativo (LED amarelo no conector RJ-45)
  • Memória EEPROM I2C com 2Kbits e MAC address interno individual para cada placa.
  • Regulador de 3V3 próprio, não adicionando carga extra ao regulador interno do Arduino.
  • Seleção de tensão de alimentação EEPROM e operação do barramento I2C entre 5V ou 3,3V (via jumper de solda).
  • Jumper para seleção do endereço I2C para a memória EEPROM.
  • Velocidade máxima de comunicação na interface SPI de 14,3 Mbps.

lcd

Diagrama de blocos do Nanoshield Ethernet

Especificações elétricas

  • Alimentação: pode ser feita tanto pelo pino VIN como pelo pino VCC. O intervalo de tensão para o pino VIN é de 7V até 12V (limite máximo até 20V); para o pino de VCC o intervalo é de 4,5 até 5,5V (valor típico de 5V). Quando houver alimentação presente nos pinos VIN e VCC simultaneamente, a alimentação do pino VIN tem prioridade e será selecionada automaticamente para alimentar o módulo. A memória EEPROM vem configurada de fábrica para ser alimentada com 5V, utilizando a tensão presente no pino VCC.

  • Consumo: o consumo máximo de corrente é de aproximadamente 125mA durante a transmissão de dados e de aproximadamente 70mA quando o módulo não está transmitindo. Quando o modo de economia de energia (power down) é acionado via software, a comunicação é desativada e o consumo cai para aproximadamente 25mA.

  • Níveis lógicos: os pinos de entrada referentes à SPI (SDI, SCKL e /SCS) funcionam com níveis lógicos de 5V ou 3,3V. As saídas referentes à SPI (SDO e /INT opcionalmente) têm nível lógico de 3,3V e são 100% compatíveis com os níveis de tensão aceitos pelo Arduino. A comunicação I2C com a memória EEPROM vem configurada de fábrica para operar com nível lógico de 5V.

!Código de exemplo

O Nanoshield Ethernet possui o chip Wiznet W5500, e pode ser programado da mesma forma que o Ethernet Shield padrão (chip W5100). Basta instalar a biblioteca de código aberto Nanoshield_Ethernet que disponibilizamos no GitHub, e no código do programa substituir a linha:

#include<Ethernet.h>

por:

#include<Nanoshield_Ethernet.h>

Se você estiver usando no seu programa alguma outra biblioteca que faz uso do Ethernet.h, também precisará modificar o seu código para que use o Nanoshield_Ethernet.h.

Rode os exemplos da nossa biblioteca para ver como funciona:

  • Nanoshield_Ethernet - Biblioteca Arduino de código aberto para uso do Nanoshield Ethernet, incluindo exemplos de uso

Versões anteriores

  • Versão 1.0 - Documentação da versão 1.0 do Nanoshield Ethernet.