Página 1 de 1
Encoder + LPC1768

Enviado:
24 Ago 2012 16:20
por lrfad2
Estou lendo um encoder incremental com o LPC1768. Esse encoder está acoplado a um eixo de motor que por sua vez é controlado por um inversor.
O problema é o seguinte: a velocidade calculada dificilmente bate com a medida pelo inversor.
Ex:
Fiz as seguinte medições
Inversor = 1715 rpm
LPC1768 = 1739 rpm
Tacômetro = 1715 rpm
Osciloscópio = 1723 rpm (58.82Khz) - verificado pelos canais A e B
Já fiz as seguintes tentativas:
1 - Suspeitando do ruído no sinal, peguei o mesmo sinal que vai para o processador do inversor e liguei diretamente no LPC1768.
2 - Modifiquei o filtro do QEI, e só com um valor muito particular (Ex:763) consigo calibrar para que os dois fiquem iguais. Mas esse valor do filtro, não faz o sistema ficar equivalente para outras rotações.
3 - cálculo da rotação tanto pela interrupção do QEI quanto pelo timer.
Nenhuma das 3 tentativas deram certos.
Sendo assim, gostaria de saber se vocês tem alguma dica, já viu algo do tipo, sugere algum Hardware (anti ruido), etc
Nota: encoder incremental, diferencial, push-pull - 2048 pulsos
Valeu

Enviado:
24 Ago 2012 16:47
por Abuda
Atente que quando você configura o prescaler do timer na realidade ele fica com PR+1, ou seja entrou 10000 no prescaler ele será 10001 e isso vai dar um errinho no tempo calculado.
Outro problema pode ser de falta de resolução do próprio timer ou de alguma variável.
Verifique estes dois ítens.
Até mais.

Enviado:
24 Ago 2012 17:49
por lrfad2
pois é abuda... eu fiz a verificação do prescaler. Mesmo assim, desconfiei da concorrencia entre as 2 interrupções (QEI e Timer0).
Desabilitei a do QEI e fiz tudo pela do Timer0. O resultado foi o mesmo.
O timer 0 está para 1ms, sendo que a captura é feita a cada 100ms. Fiz a aferição utilizando o osciloscópio + 1 saída

Enviado:
24 Ago 2012 18:02
por Abuda
1715rpm = 28,58Hz -> Período =34,98ms
1739rpm = 28,98Hz -> Período = 34,50ms
Veja que seu timer de 1ms vai contar 34 para os dois casos.
Em resumo seu timer não tem resolução para diferenciar 1715 de 1739.
Coloque o seu timer pra rodar em 100us.

Enviado:
28 Ago 2012 18:51
por lrfad2
Na verdade a frequencia é maior ainda
Freq = 1715 * 2048 / 60 = 58,53Khz
Não estou "escovando bit" no timer. Continuo utilizando o hardware do micro para fazer a captura dos pulsos e só utilizo o timer para ver quantos pulsos deu naquele determinando tempo.
Pensando agora, nem sei se consigo "escovar bit". Para fazer um filtro bem 1/2 boca, teria que fazer o timer rodar a uns 300Khz. Concorrendo com as outras int, acho que vou perder muito pulso.

Enviado:
31 Ago 2012 09:41
por lrfad2
por incrível que pareça, quanto transformei minha variável RPM de float para unsigned long, os problemas se resolveram.

Enviado:
31 Ago 2012 17:58
por tcpipchip

Enviado:
02 Set 2012 11:22
por fabim
Nossa, eu tenho que parar de acessar esse forum.
Cada vez que eu acesso, entro em posts, fecho e vou para o facebook vadiar para tentar esquecer o que eu leio!!
Fico várias vezes vedo as fotos que o samsonite posta lá dos states !!! E torceno pra ele se phoder de alguma outra forma, igual ele vem relatando !!! heheheh
MURPHI não FAIA !!

Enviado:
02 Set 2012 11:58
por proex
fabim escreveu:Nossa, eu tenho que parar de acessar esse forum.
Cada vez que eu acesso, entro em posts, fecho e vou para o facebook vadiar para tentar esquecer o que eu leio!!
Fico várias vezes vedo as fotos que o samsonite posta lá dos states !!! E torceno pra ele se phoder de alguma outra forma, igual ele vem relatando !!! heheheh
MURPHI não FAIA !!
O que o japa esta fazendo nos states?
.

Enviado:
03 Set 2012 09:28
por xultz
Ele foi a passeio e já está de volta, encontrei ele ontem num churrasco que ele promoveu prá comemorar o aniversário (e se recusou a dizer a idade, mas eu entendo ele porque eu também já parei de contar...)

Enviado:
03 Set 2012 23:49
por chrdcv
xultz escreveu:Ele foi a passeio e já está de volta, encontrei ele ontem num churrasco que ele promoveu prá comemorar o aniversário (e se recusou a dizer a idade, mas eu entendo ele porque eu também já parei de contar...)
Cara, fala pra ele passar aqui no fórum e dar umas dicas de TCC...


Enviado:
04 Set 2012 00:00
por xultz
Provavelmente ele vai falar prá fazer alguma coisa usando um processador Freescale Quad Core com 5 DMAs interligadas em 2 FPGAs cada uma rodando um kernel que interfaceiam numa rede de 300 gigabits e mais dois links que fibra ótica e... bom, acho que fica mais fácil vender o projeto prá NASA que prá banca do TCC.

Enviado:
04 Set 2012 00:04
por chrdcv
xultz escreveu:Provavelmente ele vai falar prá fazer alguma coisa usando um processador Freescale Quad Core com 5 DMAs interligadas em 2 FPGAs cada uma rodando um kernel que interfaceiam numa rede de 300 gigabits e mais dois links que fibra ótica e... bom, acho que fica mais fácil vender o projeto prá NASA que prá banca do TCC.
Ele sabe que eu sou um jumento (só olhar para meu avatar), então creio que irá pegar leve! Mas se rolasse ao menos aprender 0.1% de tudo o que ele sabe; seria recompensador!

Enviado:
04 Set 2012 07:56
por proex
xultz escreveu:Provavelmente ele vai falar prá fazer alguma coisa usando um processador Freescale Quad Core com 5 DMAs interligadas em 2 FPGAs cada uma rodando um kernel que interfaceiam numa rede de 300 gigabits e mais dois links que fibra ótica e... bom, acho que fica mais fácil vender o projeto prá NASA que prá banca do TCC.
Tudo isso rodando com o OS da Apple claro.
