Escrito por: Newton C. Braga

Recebemos da Mouser Electronics recentemente amostras do Grove Starter Kit para Arduino. Trata-se de um complemento ideal de shields para quem já trabalha com Arduino e deseja ter o máximo em termos de shields de todos os tipos. Veja neste artigo o que este kit pode fazer.

O Grove-Starter Kit nada mais é do que um espetacular conjunto de shields para Arduino para quem deseja desenvolver projetos, ensinar ou aprender tudo sobre este microcontrolador.

O kit inclui uma boa quantidade de módulos de entrada e saída, além de sensores.

Na figura 1 temos os módulos e o conteúdo do kit.

 

Figura 1
Figura 1

 

Usando a interface unificada do Grove é possível conectar cada um dos módulos ao seu Arduino e com isso criar aplicações específicas.

Mais do que isso, os módulos podem ser conectados simultaneamente através de um Shield-Base, conforme mostra a figura 2

 

Figura 2 – Dois shields conectados a base.
Figura 2 – Dois shields conectados a base.

 

Nesta base existem então recursos para que os diversos shields sejam encaixados.

Os shields disponíveis são:

Grove-Buzzer
Grove-Buzzer

 

 

Grove – LED
Grove – LED

 

 

Grove-tilt Switch
Grove-tilt Switch

 

 

Grove- sensor de Ângulo Rotativo
Grove- sensor de Ângulo Rotativo

 

 

Grove – sensor de temperatura
Grove – sensor de temperatura

 

 

Grove – botão (interruptor)
Grove – botão (interruptor)

 

 

Grove – relé esperto
Grove – relé esperto

 

 

Grove –Photoshield
Grove –Photoshield

 

 

Grove – Serial LCD
Grove – Serial LCD

 

 

 

O Shield-Base contém todos os elementos para se conectar as unidades Grove ao microcontrolador, de modo a se obter o interfaceamento e também a tensão de 5 V para alimentação. Na figura 3 temos essa placa detalhada.

 

Figura 3
Figura 3

 

Na figura 4 temos o modo como é feita a conexão da placa ao Arduino ou Seeduino.

 


 

 

 


 

 

Um interessante exemplo de aplicação didática com esta placa pode ser dado com o programa a seguir.

Este simples programa utiliza o botão e o buzzer numa maquete, conforme mostra a figura 5.

 

Figura 5
Figura 5

 

O programa para termos o acionamento do buzzer ao pressionar o botão que é fornecido com o próprio kit:

Campainha

int buttonPin = 1;

int buzzerPin = 2;

void setup()

{

    pinMode(buttonPin,INPUT);   //fixa o interruptor como entrada digital

    pinMode(buzzerPin,OUTPUT);   //coloca o buzzer como saída digital

}

 

void loop()

{

     if(digitalRead(buttonPin))   //verifica se o botão está ou não pressionado

      {

           digitalWrite(buzzerPin,HIGH);   //se pressionado, o buzzer toca

       }

       else

      {

           digitalWrite(buzzerPin, LOW);   //se não pressionado o buzzer permanece desligado

       }

}

 

Resultado:Pressione o botão da campainha e o buzzer tocará

 

Uma campainha musical pode ser obtida com o mesmo circuito:

 

Code 2: Campainha Musical

int buttonPin = 1;

int buzzerPin = 2;

int length = 40;    // the number of notes

char notes[] = "ccggaagffeeddc "; //

int beats[] = { 1,1,1,1,1,1,2,1,1,1,1,1,1,2,4 };

int tempo = 300;

 

void playTone(int tone, int duration) {

    for (long i = 0; i < duration * 1000L; i += tone * 2)

    {

       digitalWrite(buzzerPin, HIGH);

       delayMicroseconds(tone);

       digitalWrite(buzzerPin, LOW);

       delayMicroseconds(tone);

   }

}

 

void playNote(char note, int duration)

{

   char names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' };

   int tones[] = { 1915, 1700, 1519, 1432, 1275, 1136, 1014, 956 };

   // toque o tom correspondente ao nome da nota

   for (int i = 0; i < 8; i++)

   {

      if (names[i] == note)

      {

            playTone(tones[i], duration);

      }

   }

}

 

void setup()

{

   pinMode(buzzerPin, OUTPUT);

   pinMode(buttonPin,INPUT);

}

 

void loop()

{

   if(digitalRead(buttonPin))

   {

      for (int i = 0; i < length; i++)

      {

            if (notes[i] == ' ')

            {

                  delay(beats[i] * tempo); // poausa

            } else {

                  playNote(notes[i], beats[i] * tempo);

            }

     // pausa entre notas

      delay(tempo / 20);

      }

   }

}

 

Resultado final: pressione o interruptor e o buzzer tocará uma música.

O leitor pode saber mais ou adquirir o Grove Starter Kit na Mouser em:

http://www.mouser.com/ProductDetail/Seeed-Studio/110060024/?qs=sGAEpiMZZMvxSQPygxWTpU5BLIOQ1PBxcKMD5LtIwNQ%3d

 

Nesta mesma página pode acessar o datasheet completo do produto.

http://www.mouser.com/ds/2/744/Seeed_110060024-786547.pdf

 

Conclusão

O kit Grove – Starter Kit é um recurso ideal para quem deseja aprender ou ensinar Arduino, ou ainda desenvolver seus próprios projetos usando este microcontrolador.

Cursos de Arduino podem ser criados com base neste kit e, evidentemente num Arduino.

Com imaginação, e usando os próprios exemplos disponíveis pode-se aprender ou criar muitas coisas interessantes com base em microcontroladores.