Um dos componentes mais simples de usar e também de entender é o sensor de vibração. Esse sensor pode ser usado em alarmes de carro ou até para criar uma porta que abre a partir de um código de batidas.
O que é?
Existem diversos sensores, desse tipo, disponíveis para comprar, mas no geral eles fazem a mesma coisa. São capazes de sentir vibrações ou perturbações no objeto ao qual ele está fixado/conectado.
Essas vibrações podem ser medidas analogicamente. Alguns modelos podem vir soldados em um módulo que possui 3 pinos. E, basicamente, o pino D0 (normalmente) manda um sinal de nível alto (5v) caso a vibração medida for maior do que o valor configurado em um potenciômetro do módulo. Neste caso, não é possível ler os valores de forma analógica.
Circuito
Sem o módulo
O circuito é extremamente simples. Basta ligar ele de um lado na alimentação (GND ou 5v) e do outro em um pino analógico.
Aquilo no circuito é um capacitor, mas, como ele é parecido, eu usei pra simbolizar o sensor de vibração.
Se você ligar uma ponta dele no GND, você lerá constantemente valores próximos de 0 caso não existam vibrações, e acima disso caso existam. E se você ligar no 5v, os valores constantes serão de 1023 (5v convertido) e caso haja alguma perturbação, a leitura será de valores abaixo de 1023.
Com o módulo
Também é bem simples usar o módulo. Ligue o Vcc no 5v, o GND no GND e o D0 em algum pino digital.
Programação
Sem o módulo
Em síntese, você precisa ler os valores que chegam na porta analógica e pra isso é só usar o comando analogRead(pino). Aprenda como fazer leituras analógicas neste post. E com esses valores é só testar o comportamento do sensor e desenvolver alguma coisa criativa. O código abaixo lê o valor do sensor e imprime no Serial.
1 2 3 4 5 6 7 8 9 10 11 | int sensor = A0; //pino do sensor void setup() { Serial.begin(9600); } void loop() { int valor = analogRead(sensor); //Variavel pra armazenar o valor do sensor Serial.println(valor); //Escreve o valor do sensor delay(100); } |
Recomendo que você vá, no topo do programa do Arduino, em “Ferramentas” (Ou Tools) -> “Plotter Serial” e observe a leitura do sensor por lá, porque o plotter serial te ajuda a ter uma visão melhor do que está acontecendo.
Com o módulo
Você precisa ler o valor que chega ao pino digital. Pra isso recomendo esse post. E pra configurar o valor de referência do modulo é só girar o potenciômetro que fica nele até que sua leitura dê o valor desejado.
Aplicações e Ideias
Com base nos dados lidos pelo sensor, é possível criar algumas coisas interessantes. Por exemplo, você pode:
- Colocar o sensor no seu bolso e fazer um contador de passo
- Vai ser preciso analisar o que acontece com os valores quando você der um passo e com isso criar um padrão pra sua contagem.
- Fazer um alarme pra moto
- Se houver alguma vibração, o alarme é disparado.
- Uma senha secreta para portas
- Criar um padrão de toques e usar o sensor pra identificar esses toques e abrir uma porta.
- Detectar se alguém:
- Mexeu em algum objeto.
- Abriu uma porta
- Bateu na porta
- Entre outras aplicações que você pensar
Boa tarde!
Quero ligar o sensor direto ou seja como se estive em movimento constante. Se interligar com solda as duas bases obtenho esse efeito?
Boa noite, Antonio!
Se entendi corretamente sua ideia, acredito que não teria problemas.