Apesar da pastilha gerar pouca energia, dentro da eletrônica, é utilizada, principalmente, para gerar sons ou vibrações. Ela é capaz de produzir sons em diversas frequências, tornando-se uma opção viável para a criação de alarmes, sinalizações e até mesmo instrumentos musicais.
Podemos explorar os efeitos de geração de energia da pastilha Piezoelétrica juntamente com o Arduino. Uma maneira interessante de utilizá-lo é para controlar o efeito de uma barra gráfica juntamente com a pastilha Piezoelétrica.
Materiais Necessários para o Projeto Piezoelétrico com Arduino:
Segue o circuito:
Note que foi usado uma Arduino Leonardo, mas pode ser qualquer uma das placas Arduino. No código do Arduino é necessário configurar uma porta analógica para ler a entrada da pastilha e, com base no valor lido, alterar o efeito da barra gráfica. Dessa forma, a pastilha piezoelétrica pode ser usada como um sensor de entrada para controlar a barra gráfica de acordo com o som ou vibração detectada.
O código fica assim:
/*---------------------------------------------------------------------------------------------------------- @autor: Abraão da Silva @blog: Eletrogate @descrição: Controle de uma barra gráfica com uma pastilha piezoelétrica. -------------------------------------------------------------------------------------------------------------*/ int sensor = A5; // pino do piezoelétrico boolean referencia = 0; //variável usada para verificar o estado da barra gráfica void setup() { //Configurando os 10 pinos da barra gráfica como saída. for(int i = 4; i<14;i++){pinMode(i,OUTPUT);} } void loop() { verificaPiezo(); // Chamada da função que verifica o estado do piezoelétrico e altera a variável de referência. //Acionamento dos leds da barra gráfica a partir da variável de referência if (referencia) { // se referencia for true //ACENDE os leds dos pinos 4, 6, 8, 10 e 12 for(int i = 4; i<13; i+=2){digitalWrite(i,HIGH);} //APAGA os leds dos pinos 5, 7, 9, 11 e 13 for(int i = 5; i<14;i+=2){digitalWrite(i,LOW);} } else { //Se referencia for false //APAGA os leds dos pinos 4, 6, 8, 10 e 12 for(int i = 4; i<13;i+=2){digitalWrite(i,LOW);} //ACENDE os leds dos pinos 5, 7, 9, 11 e 13 for(int i = 5; i<14;i+=2){digitalWrite(i,HIGH);} } } //função que verifica o estado do piezo void verificaPiezo(){ sensor = analogRead(A5); //armazenando a leitura analógica do piezoelétrico na variável sensor //Se o valor contido em sensor for maior que 70 inverte o estado da variável referência if(sensor>70){referencia = !referencia;} //Lembre que a variável referencia é um boleano podendo assumir apenas dois estados true(1) ou false(0) delay(15);//tempo de pausa entre leituras para melhorar a visualização da troca de estado dos leds }
Dependendo da pastilha piezoelétrica usada, o valor de comparação pode ser alterado para dar mais precisão as leituras. No nosso caso, esse valor foi escrito como 70 na linha 39:
if(sensor > 70){referencia = !referencia;}
O valor pode variar de zero (0 v) até 1023 (5 v) e sua escolha depende de qual valor de tensão vai ser adotado para a mudança do estado da barra gráfica. Ou seja, quanto maior o valor de comparação, maior será a força necessária para fazer o acionamento via Arduino.
Na prática, ficou assim:
Assim, convertemos energia mecânica em energia elétrica passando essa informação para o Arduino acionar qualquer dispositivo conectado a ele.
Outro efeito interessante das pastilhas piezoelétricas é a geração sonora a partir da aplicação de corrente elétrica em pulsos pwm. E aqui, outra vez, pode ser usado o Arduino para gerar os pulsos pwm a partir de uma porta digital.
Materiais Necessários para o Projeto Gerando Som Com o Piezoelétrico e o Arduino:
Veja como a conexão é simples:
O código do Arduino pode ser o mesmo usado para acionar um buzzer comum, já que muitos buzzers contam uma pastilha piezoelétrica para gerar som através da vibração do ar.
Segue o código:
/*---------------------------------------------------------------------------------------------------------- @autor: Abraão da Silva @blog: Eletrogate @descrição: Acionamento de pastilha piezoelétrica a partir dos pulsos da função tone(). -------------------------------------------------------------------------------------------------------------*/ #define piezo 3 // pino de conexão da pastilha piezoelétrica // frequência das notas de dó a dó int melodia[] = { 261,294,329,349,391,440,493,440,391,349,329,294,261}; // do, re, mi, fa,sol, la, si, la,sol, fa, mi, re, do void setup() { pinMode(piezo,OUTPUT); // define o pino como saída } void loop() { //compondo a melodia for (int i = 0; i < 14; i++) { //tone(pinoDoPiezo,Frequencia,DuraçãoNota) tone(piezo, melodia[i], 500); delay(500);//pausa de meio segundo entre cada nota } }
Este código reproduz as notas da escala de Dó maior e pode ser adaptado, conforme a sua criatividade, para produzir diferentes sons e melodias.
Em resumo, a pastilha piezoelétrica é um dispositivo muito útil na eletrônica, capaz de gerar energia, sons e vibrações em diversas frequências. Com criatividade e o auxílio do Arduino, é possível criar diversos projetos eletrônicos utilizando pastilhas piezoelétricas.
|
A Eletrogate é uma loja virtual de componentes eletrônicos do Brasil e possui diversos produtos relacionados à Arduino, Automação, Robótica e Eletrônica em geral.
Tenha a Metodologia Eletrogate dentro da sua Escola! Conheça nosso Programa de Robótica nas Escolas!