TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: Javierdf en 19 de Febrero de 2010, 17:39:41

Título: Tiempo (ms)
Publicado por: Javierdf en 19 de Febrero de 2010, 17:39:41
Hola buenas, llevo tiempo buscando por todos sitios y no he tenido narices a encontran nada que me podria servir. El caso es que quiero hacer un tacómetro (para coche obviamente) y necesito contar pulsos. Obviamente, hay una manera sencilla. Consiste en contar las revoluciones y enviarlas por el USB al pc pero entonces te cuenta las de ultimo segundo o hace una estimación poco precisa además de que no es muy rápido y tenia intención de que se viesen como subian las revoluciones unidad a unidad. Para conseguir esto, la mejor manera creo que es contar una revolución y mirar el tiempo que ha tardado para calcular las que daria en un minuto. Entonces necesitaria una precisión de a ser posible 0,005s, osea 5 milisegundos, contr más sea mejor. Entonces volviendo al grano, ¿hay alguna manera de ver la hora con esa precisión?¿Se puede usar un timer para ver la hora? y si no, ¿poniendo un timer y en cada tick que supongamos que es cada 50us  sumar 1 a una variable y cuando se produzca una pulsación leer el numero de ticks y poner a 0 esa variable, funcionaria con precisión?

Un saludo  8)
Título: Re: Tiempo (ms)
Publicado por: KALLITOS en 19 de Febrero de 2010, 17:55:01
Hola javier, si deseas ticks muy bajos pues un pic18 corriendo a 48Mhz te da ticks de 0,0833us, proyectos de tacometros he leido en el foro, en el buscador del foro he puesto tacometro y han salido muchos hilos, usalo y encontraras muchos ejemplos.

saludos.
Título: Re: Tiempo (ms)
Publicado por: Javierdf en 19 de Febrero de 2010, 18:57:13
Hola javier, si deseas ticks muy bajos pues un pic18 corriendo a 48Mhz te da ticks de 0,0833us, proyectos de tacometros he leido en el foro, en el buscador del foro he puesto tacometro y han salido muchos hilos, usalo y encontraras muchos ejemplos.

saludos.

Pero en ninguno de los post que hay sobre tacómetros se me soluciona la duda, lo que me interesaria saber es ver el tiempo a ser posible en ms, uso un cristal 12MHz. Si no no se hacer de una manera fiable de ver el tiempo.

Un saludo.
Título: Re: Tiempo (ms)
Publicado por: Suky en 19 de Febrero de 2010, 19:25:13
Que velocidad tendría el motor que necesitas testear? Osea, cual sería la máxima frecuencia que deberías poder detectar?
Título: Re: Tiempo (ms)
Publicado por: Javierdf en 19 de Febrero de 2010, 19:31:14
Que velocidad tendría el motor que necesitas testear? Osea, cual sería la máxima frecuencia que deberías poder detectar?
Entorno a unos 170Hz, he hecho prubeas como he explicado y consigo ver hasta unos 65025Hz aunque empieza a tener fallos de entorno al 0,1% con un cristal de 12Mhz pero lo que necesito ahora es poder saber el tiempo que pasa entre cada hercio para poder calcular cunantos daria en un minuto.
Título: Re: Tiempo (ms)
Publicado por: Suky en 19 de Febrero de 2010, 19:38:08
Puedes aumentar la velocidad del microcontrolador, y si tienes la posibilidad de pasarte a uno de 48MHz tendrás mucha mas holgura para medir tiempos. Si manejas las medidas por interrupciones con 12 MHz no creo que puedas medir mas de 20 us  programando en C.  :?


Saludos!
Título: Re: Tiempo (ms)
Publicado por: Javierdf en 19 de Febrero de 2010, 19:57:44
Puedes aumentar la velocidad del microcontrolador, y si tienes la posibilidad de pasarte a uno de 48MHz tendrás mucha mas holgura para medir tiempos. Si manejas las medidas por interrupciones con 12 MHz no creo que puedas medir mas de 20 us  programando en C.  :?


Saludos!

Pero mi problema es que no se como medir ese tiempo jeje, me podrias ayudar para saber ese tiempo o pasarme algun tutorial donde salga como obtener esa variable? estoy bajo ccs.

Un saludo y muchas gracias.
Título: Re: Tiempo (ms)
Publicado por: RedPic en 19 de Febrero de 2010, 20:46:06
Javier: el que busca encuentra (en este mismo Foro, en este mismo subforo sobre C) pero hay que buscar aunque parezca que se pierde un poco el tiempo ...

por ejemplo ...

Serie Técnicas en C : Presentación e Indice de Contenidos (http://www.todopic.com.ar/foros/index.php?topic=14427.0)
Midiendo un pulso. 1ª Parte. Tiempo en Alto con INTEXT (http://www.todopic.com.ar/foros/index.php?topic=14428.0)
Midiendo un pulso. 2ª Parte. Tiempo en Alto con INTCCP (http://www.todopic.com.ar/foros/index.php?topic=14479.0)
Midiendo un pulso. 3ª Parte. Tiempo en Alto con INTRB (http://www.todopic.com.ar/foros/index.php?topic=14528.0)
Midiendo un pulso. 4ª Parte. El pulso completo. El Periodo y la Frecuencia (http://www.todopic.com.ar/foros/index.php?topic=14434.0)
Título: Re: Tiempo (ms)
Publicado por: KALLITOS en 19 de Febrero de 2010, 20:54:15
Javier: el que busca encuentra (en este mismo Foro, en este mismo subforo sobre C) pero hay que buscar aunque parezca que se pierde un poco el tiempo ..

 ;-)
Título: Re: Tiempo (ms)
Publicado por: Javierdf en 20 de Febrero de 2010, 07:25:58
Javier: el que busca encuentra (en este mismo Foro, en este mismo subforo sobre C) pero hay que buscar aunque parezca que se pierde un poco el tiempo ...

por ejemplo ...

Serie Técnicas en C : Presentación e Indice de Contenidos (http://www.todopic.com.ar/foros/index.php?topic=14427.0)
Midiendo un pulso. 1ª Parte. Tiempo en Alto con INTEXT (http://www.todopic.com.ar/foros/index.php?topic=14428.0)
Midiendo un pulso. 2ª Parte. Tiempo en Alto con INTCCP (http://www.todopic.com.ar/foros/index.php?topic=14479.0)
Midiendo un pulso. 3ª Parte. Tiempo en Alto con INTRB (http://www.todopic.com.ar/foros/index.php?topic=14528.0)
Midiendo un pulso. 4ª Parte. El pulso completo. El Periodo y la Frecuencia (http://www.todopic.com.ar/foros/index.php?topic=14434.0)


Ok, muchisimas gracias y a la vez perdón pero esque tras tirarme horas y horas buscando en el google que os tiene indexado y no encontrar nada, resulta muy pesado ir a otra web y ponerse a buscar, además de que coincida lo que buscas con lo que aparece en el post, me refiero, yo en el google he estado buscano "Contar pulsos" y "contar tiempo" asi que en ningun momento se me ocurrió poner eso, pero vamos, no os preocupeis que para la proxima usaré más el buscador de esta comunidad :oops: .

Perdón y muchas gracias.
Título: Re: Tiempo (ms)
Publicado por: MLO__ en 20 de Febrero de 2010, 14:15:09
Pues ... ahora ya sabes, al buscar, pon el tema y después las palabras mágicas: RedPic y listo ... como por arte de magia  ;-)

Si el tiempo de refresco es de 1 segundo no se va a ver tan lento el cambio.

Saludos