Sensor de Disparo

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Sensor de Disparo

Mensagempor Leomatias » 02 Out 2012 19:52

Boa noite a todos!

Gostaria de pedir uma opinião de vocês em relação a um sensor de disparo de tempo que estou implementando. Existia um equipamento similar antigo, com dois fototransistores utilizados em aulas práticas que quando o feixe era interrompido dispara o tempo neste cronômetro/sensor. Pois bem, estou tentando implementar algo parecido com o PIC 16F877. Está funcionando mas comparando com o antigo que funciona bem ou tentando verificar a sua calibração, noto que o mesmo apresenta um retardo maior na contagem. Estou usando int. externa pelo RB0 por borda de descida, que quando ocorre a transição liga o Timer1 - estou trabalhando com ele também com interrupção. O mostrador são displays de sete segmentos que utilizam a técnica de multiplexação que "engana" o olhar do observador. Não entendo, fiz os cálculos e aparentemente o programa está O.K, tudo configurado. Troquei o cristal antes que era de 4Mhz para um de 12 por sugestão de um amigo, mas creio que ainda está com uma imprecisão ou retardo no tempo comparado pelo osciloscópio e o sensor/cronômetro antigo que funciona bem. Estou usando o Mikrobasic. Alguma dica pessoal, desde já agradeço vocês mais uma vez.
Leomatias
Bit
 
Mensagens: 35
Registrado em: 20 Fev 2008 09:20

Mensagempor Djalma Toledo Rodrigues » 02 Out 2012 22:06

E qual a ordem de grandeza desse tempo?
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor Leomatias » 02 Out 2012 22:57

Olá Djalma.

São 04 displays de 07 segmentos para contar o tempo. Coloquei um botão que incrementa esta contagem de tempo variando as casas em unidade, dezena, centena e milhar. Percebo que os tempos calculados para a leitura nos displays como centena e milhar o erro é muito maior. Quando esta selecionado para mostrar o tempo em dois algarismos ou apenas um display o erro é menor na ordem de 1 segundo, mas a diferença de contagem depende muito da duração do pulso entre os dois fotodetectores.
Leomatias
Bit
 
Mensagens: 35
Registrado em: 20 Fev 2008 09:20

Mensagempor RobL » 03 Out 2012 14:57

Esqueceu de dizer a ordem de grandeza do que está medindo.
Se for tempos curtos, abaixo de 1 segundo, usar captura é o bicho. Acima deste valor, pode ser também, mas vai haver vários reloads do timer, isto complica.

Falta dizer se esta reinicializando o timer 1 após coletar contagem, se há capacitores que não se descarregam totalmente ou como é a entrada do sinal. O problema pode estar neste adequador de sinal (antes do micro).
Se não há precisão (cada tomada um valor diferente), verifique se tem capacitor de desacoplamento suficiente entre Vdd e Vss do chip.
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56

Mensagempor Leomatias » 03 Out 2012 15:24

Olá Robl!

Como são 04 displays ele está com precisão de centésimos de segundo. O pulso entra por RBO int. externa que habilita T1con. A interrupção de Timer1 ocorre quando acontece o transbordo incrementando as variáveis de contagem... não sei o que está acontecendo, o programa parece estar correto.
Leomatias
Bit
 
Mensagens: 35
Registrado em: 20 Fev 2008 09:20

Mensagempor ze » 05 Out 2012 09:44

voce pode adequar melhor o sinal com um inversor smith trigger (cara. esta é a terceira vez que uso este termo nos últimos dias). ou se for problema de capacitor não descarregado, momentaneamente torne o pino como i/o e saída e zero depois do evento. nem vai fazer cosquinha pois dentro de centésimos de segundo, isso é tempo de planck
Avatar do usuário
ze
Dword
 
Mensagens: 1655
Registrado em: 05 Jun 2007 14:32


Voltar para PIC

Quem está online

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

x