bom, meu problema é o seguinte! 

Comecei um projeto de cockpit , fiz volante e pedais, comprei 4 potenciômetros sendo: 3 potenciômetros comuns  B10K Linear e 1 multi voltas de 2k de alta precisão para o volante, comprei um Arduíno Uno Genuíno, seguindo os passo a passo no youtube e com algumas ajuda, consegui fazer tupo perfeito! porem não consigo estabilizar os potenciômetros que ficam variando entre -2 a 2 pontos que faz o volante tremer como louco,  com muitas pesquisas, fiz diversas tentativas para resolver:

1 coloquei  capacitores cerâmicos entre os pinos corretamente! 

2  aterrei as entradas do Arduíno que não uso!

com isso amenizei  o problema,  vez em quando estabiliza, e depois volta a tremer o volante!

3 revi todo o projeto para ver se tem algum mal contato,  por incrível que pareça está tudo perfeito!

4 deixei o Arduíno normal  e fui testando os potenciômetro um por um  e no monitor serial detectei a maldita variação entre todos os potenciômetro, sendo que uns são de 1 a 2 pontos e outros chega a 100 pontos na escala de 0 a 1023 faz com que  fiquem loucos quando transformo o Arduíno em joystick!     como resolver esse problema???? alguém pode me ajudar???

     

Exibições: 3826

As respostas para este tópico estão encerradas.

Respostas a este tópico

Use encoder rotativo   --> https://www.youtube.com/watch?v=DuETsWmzJ0g

Américo, o encoder rotativo ficou ótimo! 

E o encoder é ótico (dura uma vida toda). 

Vale a pena gastar um pouco mais com ele.Recomendo.

Possivelmente vc está lendo um ad e depois já o outro.

É comum em todo microcontrolador uma instabilidade quando vc troca de canal do A/D, que é um só, ligado por uma chave.

Sugiro tentar:

Fazer 1 leitura.

Fazer 16 leituras somando os valores.

O resultado vc divide por 16.

Poderia ser 10, mas prefiro divisões por base 2, questão pessoal do microcontrolador, ele agradece.

Assim vc tem uma média descartando a primeira leitura depois do chaveamento.

Deve melhorar.

Mas o que gera mesmo ruido são pinos recebendo picos alem de 5V. Qualquer agulha de ruido como um motor próximo gera um pico que interfere nos a/ds.

Mande uma foto de sua montagem.

Usar fios blindados é essencial se forem longos. Recomendo fios para microfone.

Tente isolar as coisas pra ver se melhora. Ligar só a placa sem fio algum, depois ligar apenas o pot, depois o pot com fio e aih vai para achar a origem do ruido.

Por outro lado numa leitura de 0 a 1023 o +2,-2 é normal, não zera mesmo. O +100 é que não pode.

os fios que uso são de boa qualidade, não vejo problemas, vc falou a respeito de leituras de A/D trocadas e para eu fazer 16 leituras, porém não compreendo muito bem esse processo, sou novo poderia esclarecer mais?

       Eu, particularmente, costumo usar média quadrática nesses casos. Gasta um pouquinho mais de tempo e processamento, mas reduz o erro no caso de leituras muito discrepantes das demais.

      O que ele quis dizer é fazer a leitura várias vezes e tratá-las.

Exemplo da média simples:

const int qnt = 16;

double media = 0;

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

{

     media += leitura();  //Faz o somatório

     delay(200);

}

media = media /qnt;  //calcula a média simples

Bom dia Efraim, 

Informe por favor os links do projeto, videos, etc. Todos agradecem. 

Sobre a instabilidade nas leituras é um problema crônico do conversor ADC do Arduino. Sugestões para melhorar as leituras.

1) Instale um capacitor de 10 uF/16V no pino AREF (+) do Arduino. Pino negativo do capacitor no terra(GND).Para filtrar ruídos na tensão de referência do ADC. 

2) Conecte as portas analógicas ( AX) não usadas ao terra (GND). 

3) Use um filtro digital , como sugerido pelo Eduardo. 

Use esse:

https://github.com/simonmonk/ArduinoNextSteps/tree/master/ArduinoNe...

Para estudar:

https://github.com/simonmonk/ArduinoNextSteps/tree/master/ArduinoNe...

http://www.inatel.br/docentes/ynoguti/downloads/dsp-s886637-1/22-in...

https://github.com/JonHub/Filters

meu projeto é esse https://youtu.be/WpIgQ22nlXc

olá Efraim.

      Vi o vídeo do link que vc postou, e também os que o Murta postou (eu já os tinha visto em algum outro momento). É louvável o empenho que o pessoal coloca em obter estes resultados, e são grandes sim. Porém é claro, nem tudo está implementado (nem "explicado") conforme as regras técnicas ditam. Em geral estas implementações funcionam aos olhos, e relativamente bem. Mas e sobre os componentes eletrônicos, elétricos, eletro-mecânicos, será que está realmente tudo bem?

      É comum que não ocorra um adequado casamento entre partes (sejam elas de que tipo forem), pois para isso é necessário um conhecimento técnico mais aprofundado. E o pessoal não quer saber disso, eles querem apenas ver tudo funcionando. Assim, devido a esta falta de rigor técnico, nem tudo vai funcionar para todos, e portanto eventualmente vai aparecer alguém gritando sobre este ou aquele problema.

      Vendo os vídeos, imediatamente identifiquei uma enormidade de pontos que não estão implementados de uma forma técnica adequada (Potenciômetros, Motores, e até botões, etc). Em um projeto, eu jamais ligaria da forma como é mostrado nos vídeos, pois não é daquele jeito que devem ser ligados se vc quer que funcione de forma confiável, e dentro da variabilidade que existe na especificação dos componentes eletrônicos. Também é preciso respeitar cada componente, dentro da faixa que foram criados para funcionarem adequadamente (não dá pra pegar um cavalo de corrida e querer que ele corra ininterruptamente durante 1 hora na velocidade que ele corre quando competindo normalmente).

      No seu caso, existem pois pontos "nevrálgicos"  que podem estar causando os problemas que vc relatou. Pode ser que apenas um deles esteja ocorrendo, ou pode ser que ambos estejam ocorrendo. Não dá pra afirmar se é um ou outro, ou ambos, porque vc não postou um único desenho da sua implementação. Infelizmente quando diz "segui à risca os vídeos", não ajuda.

      Se possível, e com boa vontade, post aqui o diagrama de ligação dos seus Potenciômetros, ou seja, a forma como vc os conectou ao Arduino. É imprescindível que vc mostre também como ligou quaisquer Motores que estejam no seu Sistema (se os ligou diretamente ao Arduino, ou se usou plaquinhas com "Drivers", e quais as tensões de alimentação). Faça isso, e te mostrarei aqui como corrigir seu Sistema, de forma simples, confiável, e com baixo custo.

      Detalhe: você mencionou que colocou Capacitores nos "pinos". Que pinos são estes? É importante que vc mostre como está isto, ou seja: em que, ou entre quais "pinos" vc ligou os Capacitores, e qual o valor desses Capacitores.

      Ficamos no aguardo, para que, de posse destas informações que mencionei, possamos te dar uma ajuda sólida e eficiente.

      Abrçs,

      Elcids

comprei um Encoder rotativo incremental 600 pulsos, porém o pessoal usa Arduíno Leonardo, dar pra fazer no uno? 

Efraim, 

Informe as especificações do seu Encoder (link, fotos). Ele Funciona com 5V ??

https://wemakethings.net/2014/05/26/rotary-encoder-teardown/

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço