As respostas para este tópico estão encerradas.
O problema é ler o RPM?
Você pode fazer uma varredura nos botões... quando um deles for acionado, armazenar o valor do temporizador (através da função millis http://arduino.cc/en/Reference/Millis). Quando esse botão for novamente acionando, armazene mais uma vez o millis e calcule a diferença com o anterior, assim vc terá o tempo de uma volta, ou seja, o período da rotação. Como frequencia = 1/período, vc também tem a frequencia (RPM)
com esse método que te falei vc pode ler vários RPM. basta armazenar as leituras da função millis em variáveis diferentes para cada botão! Você entendeu o método que expliquei?
Nada demais no grau de desafio e inovação.
Com dois arduinos vc consegue isso. Na verdade até um, só basta usar um LCD I2c e um expansor de portar I2C para o teclado. Ai deixa só o arduino na plantadeira. O maior desafio desse projeto, é a parte mecânica, caixa para o Arduíno e sensores, ja que o ambiente é bem agressivo.
Voce nem precisa multiplexar nada. O atmel tem interrupção externa em todos os pinos, é só colocar um contador dentro de cada interrupçao e cada 500ms por exemplo ver a quantidade de pulso em cada pino. A vantagem de usar um só, é o custo e a concentração do processamento.... E também não vai precisar fazer comunicação entre arduinos.
Da de fazer sem interrupção externa, mais elas foram feitas pra esse tipo de aplicação, então aproveite e use...
Essa solução embarcada pode ajudar.
http://wiki.dglogik.com/dgbox_wiki:getting_started:settings:home
isto é uma solução embarcada de um supervisório (mango pai do scadabr) com fácil integração de um ou varios arduinos que com o sensor correto colaca na tela de um monitor todas as informações de uma atividade qualquer.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por