Ir para conteúdo
  • Cadastre-se

Tacômetro LCD(medidor de RPMs) com Arduino Uno

Avalie este tópico:


LucT

Posts em destaque

Bom pessoal estava procurando um trabalho para apresentação na faculdade, ai um amigo me falou do site instructables ai acabei achando um tacômetro com Arduino Uno de baixo custo, neste link:

Você não tem permissão para ver links. Faça login ou cadastre-se.
e ficou um trabalho muito interessante. Ele funciona da seguinte maneira um dos leds ilumina com luz infravermelha uma hélice com uma faixa branca, a luz será refletida pela faixa branca e atingirá o fotodiodo que enviará o sinal para o Arduino que fará os cálculos de quantas vezes a faixa passa por segundo e depois aparecerá no LCD a contagem em RPMs.

 

Para este experimento você irá precisar:

 

Arduino Uno

display LCD 16X2 com módulo i2C

Led Infravermelho

Fotodiodo Infravermelho

Led comum azul

2 X Resistor 270 Ohm

Resistor 33KOhm

Potenciômetro 10KOhm

fios para ligação

1 placa de fenolite cobreada já furada

Ferro de solda e estanho

barra de pinos

3 X Cabos fêmea para pigboard

3 X cabos macho para pigboard

 

Primeiramente você deve soldar os resistores de 270 Ohm, de 33KOhm o Potenciômetro de 10KOhm, os cabos, e o led IR e o fotodiodo IR como no esquema da foto sensor.

O circuito do sensor deve ficar como na foto sensor 2.Depois você deve enrolar o fotodiodo e o led IR como na figura sensor 3 e depois você deve colocar uma cartolina em forma de tubo de preferência na cor preta para envolver o sensor como na foto sensor 4.

Depois você deve soldar um resistor de 270 Ohm no positivo do led azul. Após isso carregue o sketch no Arduino disponível em: ligar o sensor nos pinos 2,3 e 4 da parte digital do Arduino o resistor de 270 Ohm com o led azul deve ficar com o resistor ligado no pino 12 digital e o display deve estar no pino ,dando tudo certo ficará como este:

Dúvidas ou sugestões estou a disposição.Se ajudou não esqueça do jóinha ele motiva a fazer mais postagens.

sensor.jpg.327697ebef09bd21be70bb7ad50dbf0c.jpg

Sensor_2.jpg.f00263d27a51eec3a3a5a5629804f7b5.jpg

Sensor_3.jpg.bf3c14e8cfb05a06f1986f8f789961dd.jpg

Sensor_4.jpg.f52ec858fe203687578723b4e7072639.jpg

Link para o comentário
Compartilhar em outros sites

  • 8 anos depois...
#include <LiquidCrystal.h>

// Pinos do LCD
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

const int sensorPin = 2; // Pino do sensor infravermelho
volatile int pulseCount = 0;

unsigned long lastTime = 0;
unsigned long interval = 1000; // Intervalo de tempo (1 segundo)

void setup() {
  lcd.begin(16, 2);
  pinMode(sensorPin, INPUT);
  attachInterrupt(digitalPinToInterrupt(sensorPin), countPulse, RISING);
  lastTime = millis();
}

void loop() {
  if (millis() - lastTime >= interval) {
    noInterrupts();
    int rpm = pulseCount * 60; // Conversão de pulso/segundo para RPM
    pulseCount = 0;
    interrupts();

    lcd.clear();
    lcd.print("RPM: ");
    lcd.print(rpm);

    lastTime = millis();
  }
}

void countPulse() {
  pulseCount++;
}

Já fiz um dsss uma vez, qum quizer pod usar o codigo de base

Link para o comentário
Compartilhar em outros sites

Participe agora da conversa!

Você pode postar agora e se cadastrar mais tarde. Se você tiver uma conta, faça login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Restaurar formatação

  Apenas 75 emoticons máximos são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir apenas como um link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Você não pode colar imagens diretamente. Envie ou insira imagens do URL.

SOBRE O ELETRÔNICABR

EletrônicaBR é o melhor fórum técnico online, temos o maior e mais atualizado acervo de Esquemas, Bios e Firmwares da internet. Através de nosso sistema de créditos, usuários participativos têm acesso totalmente gratuito. Os melhores técnicos do mundo estão aqui!
Técnico sem o EletrônicaBR não é um técnico completo! Leia Mais...
×
×
  • Criar Novo...