Medir Frequência

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Medir Frequência

Mensagempor Leomatias » 03 Nov 2010 16:44

Boa tarde Pessoal! Qual seria, e como seria a melhor forma de ler frequência utilizando por exemplo, o PIC 16F877? Seriam frequências baixas, não maiores que 60 hertz, sempre abaixo disso. Seriam pulsos originados da passagem de um objeto entre um sensor óptico tipo o PHFT, que estaria ligado ao pic para medir a frequência destes pulsos. O objeto em questão é uma haste conectada num motor DC.

O que seria melhor? Utilizar o Timer 0 como contador de pulsos externos? Ou por int. por Mudança de Estado? Talvez por CCP... este por sinal nunca trabalhei. Por CCP como poderia configurá-lo?

Desde já obrigado pela força!
Leomatias
Bit
 
Mensagens: 35
Registrado em: 20 Fev 2008 09:20

Mensagempor jorgeluiz » 03 Nov 2010 23:31

eu ja usei o tmr0, como contador de pulsos externo. Faz uma interrupçao no timer1, de 100ms, e multiplica o valor do tmr0 por 60 para dar em RPM.
Avatar do usuário
jorgeluiz
Byte
 
Mensagens: 448
Registrado em: 26 Mar 2007 02:26

Mensagempor Andre_Cruz » 05 Nov 2010 01:34

Leomatias,

A melhor forma acredito que seje usando o CCP, mas depende da precisão que você precisa e da aplicação.

Se for possível forneça mais detalhes.

Abraço

André Cruz
Andre_Cruz
Word
 
Mensagens: 559
Registrado em: 03 Jan 2009 14:06

Medir Frequência

Mensagempor Leomatias » 05 Nov 2010 13:54

Olá André, boa tarde!

Desde já obrigado pela sua atenção.

Então, gostaria de medir a frequência vinda de pulsos de um motor, que possui uma chapinha presa ao eixo, que passa por um opto, medindo assim a frequência. Possuimos um equipamento que faz isso mas pelo uso sequencial e pelo tempo está deteriorando.

Estou implementando com o pic. Além disso, o software também será cronômetro e sensor de disparo do cronômetro, isso já está OK e estou usando o Timer1 para esse propósito. Por essa razão talvez ficaria complicado de usa-lo, pelo o que li o CCP utiliza o Timer1. E sobre as possibilidades com o timer 0, int. por mudança de estado? Estou programando em Mikrobasic.

As frequências são baixas, menores que 60 h pois o motor possui uma rotação limitada.

Nunca trabalhei com o módulo CCP... estive lendo sobre, ele utiliza timer 1 e pelos registros do mesmo conseguimos obter a frequência, mas como eu já disse estaria sobrecarregando o timer1 de procedimentos já que estou com o programa pronto, funcionando bem para as outras funções que o aparelho fará.

Aguardo um possível retorno com outras idéias... obrigado a todos!
Leomatias
Bit
 
Mensagens: 35
Registrado em: 20 Fev 2008 09:20

Mensagempor rcakto » 05 Nov 2010 16:24

olha caso voce possa receber o sinal pelo adc, basta voce fazer um contador de 1 seg, depois contar quantos "0" voce obteve nesse 1 seg .... lembrese de desconciderar o primeiro e ultimo zero....

1H vc obten 1 zero, 2 herts = 2 zeros e por ai vai

não e preciso mas quebra o galho ate voce achar uma melhor forma...
(parado por culpa da faculdade...)Osciloscopio opensource... entre e participe:
http://asm51.eng.br/phpBB/viewtopic.php?t=10710
rcakto
Word
 
Mensagens: 787
Registrado em: 09 Jun 2010 00:57
Localização: vitoria ES

Mensagempor gabriel_prd » 05 Nov 2010 16:45

Use o LM2907, ele converte sua frenquencia em tensão, aí fica mole, é só ler no AD do PIC.
gabriel_prd
Bit
 
Mensagens: 29
Registrado em: 30 Set 2007 13:21
Localização: Bauru / São Carlos - SP

Re: Medir Frequência

Mensagempor roquetti » 05 Nov 2010 21:09

Leomatias escreveu:Boa tarde Pessoal! Qual seria, e como seria a melhor forma de ler frequência utilizando por exemplo, o PIC 16F877? Seriam frequências baixas, não maiores que 60 hertz, sempre abaixo disso. Seriam pulsos originados da passagem de um objeto entre um sensor óptico tipo o PHFT, que estaria ligado ao pic para medir a frequência destes pulsos. O objeto em questão é uma haste conectada num motor DC.

O que seria melhor? Utilizar o Timer 0 como contador de pulsos externos? Ou por int. por Mudança de Estado? Talvez por CCP... este por sinal nunca trabalhei. Por CCP como poderia configurá-lo?

Desde já obrigado pela força!


pinos que dah para usar: RA4 incrementa timer0, interrupcao pelo pino RB0, e mudanca de estado pelos pinos RB4 a RB7 , ou CCP
roquetti
Byte
 
Mensagens: 183
Registrado em: 27 Dez 2008 23:07
Localização: Jaguariúna - SP

Mensagempor Cleber » 06 Nov 2010 15:32

eu usaria a interrução do RB0 pra contar e a base de tempo que ja faz com o timer 1 para determinar a frequencia.
Cleber
Bit
 
Mensagens: 10
Registrado em: 16 Jun 2008 11:06


Voltar para PIC

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x