TODOPIC

Microcontroladores PIC => dsPIC => Mensaje iniciado por: kýrios en 20 de Agosto de 2012, 08:35:36

Título: dsPIC33E. Una duda del módulo PWM
Publicado por: kýrios en 20 de Agosto de 2012, 08:35:36
Buenas tardes a todos!

Estoy trabajando en un proyecto de control de un motor stepper, y me encuentro con un problema al utilizar el módulo PWM. Necesito ir contando el número de pasos que da el motor, y se me había ocurrido hacerlo implementando un contador que aumentara de tamaño con cada ciclo del PWM. La pregunta es: ¿es posible generar una interrupción al terminar cada periodo del PWM?

Según tengo entendido, en este tipo de motores, cada pulso supone un paso, y por tanto necesito cntar el número de pulsos que se van dando.

Espero haberme explicado lo suficientemente bien. Muchísimas gracias de antemano por vuestra ayuda.

Saludos,

Kyrios
Título: Re: dsPIC33E. Una duda del módulo PWM
Publicado por: Nocturno en 20 de Agosto de 2012, 09:08:51
Pero que salga un pulso PWM no te garantizará que el motor se haya movido. Si el motor tiene que vencer una resistencia superior a su torque no podrá con ella y el pulso se habrá perdido.
Si necesitas medir el movimiento con fiabilidad, tendrás que utilizar un encoder.
Título: Re: dsPIC33E. Una duda del módulo PWM
Publicado por: kýrios en 20 de Agosto de 2012, 09:40:19
Lo de la resistencia está controlado (es menor que el torque). Teniendo esto en cuenta, ¿el hecho de que salga un pulso del PWM sigue sin asegurarme que se mueva el motor?

¿Qué me dices de lo de las interrupciones?

Un saludo, y gracias por la ayuda

Kyrios
Título: Re: dsPIC33E. Una duda del módulo PWM
Publicado por: MerLiNz en 20 de Agosto de 2012, 09:45:16
Mirate el apartado 14.9 del datasheet en PWM a ver si te encuentras algo que te sirva.
Título: Re: dsPIC33E. Una duda del módulo PWM
Publicado por: kýrios en 20 de Agosto de 2012, 09:57:33
MerLiNz: Lo tengo delante, pero no acabo de estar seguro... Igual soy yo que soy un poco torpe, no se.  :?

Lo mejor sería que la interrupción se diera al final de cada pulso del PWM, pero sigo sin saber si esto es posible o no. Alguien puede confirmarme si es posible? Y en caso de serlo, ¿como configuro el PWM para que la interrupción se de cuando quiero?

Gracias a todos

Kyrios