Arduino – Conhecendo os Shields

Shields para Arduino

No artigo anterior falamos sobre as Bibliotecas no Arduino, que podem ser utilizadas para expandir a funcionalidade das placas. Agora vamos explorar os Shields, que são uma outra forma de aumentar as funções que um Arduino pode desempenhar – porém, desta vez, usando dispositivos de hardware.

Suponha que você queira controlar seu Arduino remotamente, usando uma conexão WiFi, Bluetooth ou XBee. Como proceder nestes casos, já que as placas do Arduino (e seus clones) não possuem essas funcionalidades? Neste caso, lançamos mão dos Shields – placas de hardware que podem ser plugadas no Arduino, contendo circuitos eletrônicos que permitem desempenhar as funções citadas, e muitas outras, dependendo da placa. É até possível empilhar shields uns sobre os outros, pois muitos deles possuem seus próprios conectores iguais aos do Arduino, de modo que é possível acrescentar mais de uma funcionalidade simultânea à sua placa.

Frequentemente, um shield necessita de bibliotecas de software específicas para funcionar corretamente, e você deve instalá-las no IDE do Arduino, baixando-as do website do fabricante do Shield. Algumas inclusive estão presentes como bibliotecas padrão do Arduino.

Você pode adquirir os shields prontos para usar, ou na forma de kits para montagem, caso no qual você mesmo monta e solda os conectores e outros componentes na placa do shield, o que geralmente barateia seu preço. Ou ainda, se você tiver conhecimentos adequados de eletrônica, pode até mesmo criar seus próprios shields a partir do zero, de modo a acrescentar a funcionalidade que bem entender a seu Arduino.

A seguir apresento uma lista (não completa) com os shields mais comuns usados em projetos envolvendo Arduinos:

  • Shields de Motor: São usados para efetuar o controle de motores DC, de passo ou servomotores, podendo ser utilizados na construção de pequenos robôs ou veículos robotizados, por exemplo. As figuras a seguir mostram alguns exemplos de shields de motor:
Motor Shield ComMotion da Sparkfun para Arduino

Motor Shield ComMotion da Sparkfun para Arduino (Imagem: Sparkfun)

Abaixo um shield de motor Duinopeak, que permite controlar 2 motores de passo e 4 motores DC:

Motor Shield Duinopeak

Motor Shield Duinopeak (Imagem: DX.com)

Vista lateral do shield: note o comprimento dos pinos inferiores, usados para conectar a placa sobre o Arduino:

Motor Shield Duinopeak Vista Lateral

Motor Shield Duinopeak Vista Lateral (Imagem: DX.com)

E veja o Duinopeak com vários motores conectados:

Motor Shield Duinopeak Com motores

Motor Shield Duinopeak com motores conectados. Note que o shield está conectado sobre o Arduino (na verdade, empilhado sobre outro shield ainda) (Imagem: DX.com)

  • Shield Ethernet: Um shield Ethernet permite conectar o Arduino a uma rede local ou à Internet, de modo a responder a comandos remotos ou reportar o status da placa ou de sensores conectados a ela. Esse é um shield extrememente útil e é recomendado que o hobbysta / estudante tenha ao menos um desses para realizar projetos que requeiram acesso remoto. A figura a seguir mostra um shield Ethernet – note a porta Ethernet da lado esquerdo do shield:
Shield Ethernet

Shield Ethernet. Ele possui um soquete microSD integrado, que permite gravar dados se desejado. (Imagem: DX.com)

Esse shield é baseado no chip Ethernet Wiznet W5100, suportado pela biblioteca oficial do Arduino.

  • Shield WiFi: Esse shield permite a comunicação via rede wireless com o Arduino, permitindo operar um robô remotamente, além de permitira também a conexão à rede local e à Internet. Nas figuras a seguir vemos exemplos de shields WiFi para Arduno:
Shield WiFi da Sparkfun - Módulo CC3000

Shield WiFi da Sparkfun – Módulo CC3000 (Imagem: Sparkfun)

E abaixo um shield WiFi da ElecFreaks:

Shield WiFi da ElecFreaks com chip WizFi210

Shield WiFi da ElecFreaks com chip WizFi210 (Imagem: ElecFreaks)

  • USB Host Shield: Um shield USB permite implementar uma controladora USB, de modo que seja possível conectar o Arduino a outros dispositivos via porta USB, incluindo smartphones com Android, o que adiciona funções de controle via celular, e a outros dispositivos, como pendrives, câmeras digitais e muito mais.
Shield USB Host Keyes para Arduino

Shield USB Host Keyes para Arduino (Imagem: DX.com)

E a seguir, outro exemplo de shield USB, da Duinopeak:

Shield USB Host Duinopeak para Arduino

Shield USB Host Duinopeak para Arduino (Imagem: DX.com)

  • Proto Shield: Um Proto Shield fornece uma área para soldagem de componentes, e alguns elementos já conectados, como LEDs, resistores ou conectores. Podem ser usados para prototipagem, de modo que é possível construir o shield com as funções desejadas adicionando a eletrônica necessária, em vez de usar uma protoboard externa. Veja abaixo um exemplo de proto shield:
Proto Shield da Adafruit

Proto Shield da Adafruit (Imagem: Adafruit)

  • Shield microSD/SD: Com este shield você pode equipar o Arduino com a capacidade de armazenar grandes volumes de dados em cartões SD, o que é muito útil em aplicações que necessitem de registros (log) de dados em dispositivos de armazenamento de massa. Veja um exemplo a seguir:
Shield para cartão SD Maker Studio

Shield para cartão SD Maker Studio (Imagem: DX.com)

  • Shield MP3: Como o próprio nome já demonstra, com esse shield podemos trabalhar cm arquivos de música em formato MP3 no Arduino. A música pode ficar armazenada em um cartão SD e então se reproduzida por meio desse shield em alto-falantes ou caixas de som. Muitos shields também permitem reproduzir outros formatos de áudio, como WMA, Ogg Vorbis e FLAC, além de terem a funcionalidade de captura de som. Abaixo vemos um exemplo de shield MP3 da Adafruit conectado a um par de alto-falantes:
Shield MP3 da Adafruit

Shield MP3 da Adafruit (Imagem: Adafruit)

  • Shield LCD TFT: Com este shield podemos conectar uma tela de LCD TFT (cristal líquido) ao Arduino, de modo a possibilitar a visualização de informações através desse tipo de visor, desde informações textuais até gráficos e imagens. Veja abaixo um shield LCD da ElecFreaks:
Shield LCD para Arduino

Shield LCD para Arduino (Imagem: ElecFreaks)

Usando um Shield

Para utilizar um shield basta conectá-lo sobre a placa do Arduino, efetuar as conexões elétricas necessárias com outros componentes, importar sua biblioteca, e escrever o programa (sketch). Veja na figura a seguir um shield Bluetooth da Adafruit conectado sobre um Arduino Uno:

Shield Adafruit Bluetooth para Arduino

Shield Adafruit Bluetooth Bluefruit EZ-Link (Imagem: Adafruit)

Veja que o shield se encaixa perfeitamente sobre a placa do Arduino, e há a possibilidade de soldarmos conectores no shield para que seja possível expandir as conexões para os pinos do Arduino abaixo. Muitos shields já vem com os pinos soldados, bastando então efetuar conexões como necessário para o projeto. Desta forma, é possível inclusive empilhar shields um sobre o outro, expandindo bastante as funcionalidades da placa. A figura a seguir mostra dois shields empilhados sobre uma placa:

Shields empilhados Arduino

Shields empilhados (Imagem: Wikimedia Commons)

Vimos neste artigo diversos shields que podem ser usados em conjunto com um Arduino; existem muitos outros disponíveis. Em nossos projetos com Arduino iremos explorar de forma mais aprofundada esses e outros shields, conhecendo suas peculiaridades e o modo de escrever código para usá-los.

Muitas informações extras podem ser obridas no website www.shieldlist.org/, um banco de dados online com mais de 500 shields diferentes listados.

Sobre Fábio dos Reis (1273 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 25 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Unix, Linux e Open Source em geral, adora Eletrônica e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

4 Comentários em Arduino – Conhecendo os Shields

  1. Aparecido Pereira // 06/03/2016 em 18:10 // Responder

    Quais componentes preciso para acender uma lampada comum pela internet ( roteador ) usando um celular Iphone.
    Fico grato pela resposta.
    Obs. Entendo um pouquinho só de eletrecidade.

  2. Gabriel Knop // 31/07/2016 em 20:27 // Responder

    Boa Noite Fabio,
    Tenho uma Shield TFT 3,2′,mas não sei como usa-la direito no meu Arduino Mega 2560.Gostaria de algumas dicas ou projetos mais simples para começar a usa-la.
    Desde já obrigado!

    -Shield(http://www.dx.com/pt/p/3-2-inch-tft-ips-480-x-320-262k-color-full-angle-lcd-module-for-arduino-mega2560-blue-black-369199#.V56IjLiU200)

    • Olá Gabriel!
      Estou preparando uma série de tutoriais sobre o uso de shields e telas de LCD no Arduino. Em breve vou postá-los aqui, juntamente com alguns outros projetos envolvendo motores, GPS e outras tecnologias.
      Abraço!

Escreva um comentário

Seu e-mail não será divulgado


*