Autor Tema: Ruido servo  (Leído 2766 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado TheBlooD

  • PIC12
  • **
  • Mensajes: 66
Ruido servo
« en: 19 de Agosto de 2011, 04:51:53 »
Hola a todos,

Tengo un circuito en el cual mediante un pic leo la señal procediente de un receptor de radio control, y luego con esa señal si es de 0 a 90 grados, muevo un servo, y si es de 90 a 180 muevo otro servo con el fin de utilizar un mismo canal para mover dos servos independientes.

El problema es que el circuito funciona pero a medias, porque de vez en cuando el servo se vuelve loco durante algunos segundos, luego se estabiliza y se mueve segun la señal recibida, pero al instante vuelve a ponerse loco...

Tengo el circuito con un condensador de 470uF electrolitico en la entrada de alimentacion y otro de 100nF, luego en las patillas de alimentacion del pic otro de 100nF, y en la alimentacion de los servos otros de 10nF.

¿Qué falla? ¿Porqué sigue existiendo ruido?

Desconectado tapi8

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1506
Re: Ruido servo
« Respuesta #1 en: 19 de Agosto de 2011, 05:16:33 »
Citar
El problema es que el circuito funciona pero a medias, porque de vez en cuando el servo se vuelve loco durante algunos segundos, luego se estabiliza y se mueve segun la señal recibida, pero al instante vuelve a ponerse loco...

Le mandas señal constantemente?, o solo cuando cambia la posicion?. Te lo digo porque es un error muy comun y por estos sintomas que dices parece que sea eso.

Tienes que enviarle señal cada 20ms constantemente aunque no cambie de posicion, si dejas de enviarle señal se queda loco, sin fuerza.



Desconectado TheBlooD

  • PIC12
  • **
  • Mensajes: 66
Re: Ruido servo
« Respuesta #2 en: 19 de Agosto de 2011, 05:33:45 »
Cuando digo que se vuelve loco es que se mueve a un lado y a otro sin ningun motivo y con mivimientos extraños y bruscos.

El código que tengo es un bucle que lee lo que llega del receptor de RC, comprueba el valor y manda la señal a un servo u otro dependiendo de la señal. El PIC tiene 4Mhz, así que imagino que constantemente le esta mandando la señal.

Un saludo y gracias por la respuesta

Desconectado tapi8

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1506
Re: Ruido servo
« Respuesta #3 en: 19 de Agosto de 2011, 07:37:24 »
Citar
El código que tengo es un bucle que lee lo que llega del receptor de RC, comprueba el valor y manda la señal a un servo u otro dependiendo de la señal. El PIC tiene 4Mhz, así que imagino que constantemente le esta mandando la señal.

Eso es lo que te digo, tienes que enviar señal a los dos, siempre y cada 20ms, al que cambia para cambiarlo, y al que no cambia para mantenerlo, sino se queda loco y va para donde le cuadra.

Desconectado TheBlooD

  • PIC12
  • **
  • Mensajes: 66
Re: Ruido servo
« Respuesta #4 en: 19 de Agosto de 2011, 08:38:40 »
Ahora entiendo lo que dices y voy ha provarlo esta tarde, pero aun asi el servo al que le mando la señal tambien se vuelve loco, girando hacia dodne debe y de vez en cuando haciendo movimientos extraños

Desconectado tapi8

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1506
Re: Ruido servo
« Respuesta #5 en: 19 de Agosto de 2011, 09:06:03 »
Cuidado, igual tambien tienes ruido, pero por lo que comentas creo que el problema esta en el programa, te pongo este comentario que hice hace unos dias.

Citar
Creo que la manera mas sencilla, por lo menos la que yo uso, es con un timer hacer desbordes de 20ms, esto ya te marca 50hz, cada vez que el timer se desborda, pones a 1 el pin que tengas conectado al servo, y llamas a la temporizacion (yo estas como son pequeñas, entre0.3ms y 2.3ms) las hago por bucle, si quieres 0º (o -90º segun como se mire) temporizacion de 0.3ms, si quieres 90º (0 0º) 1.3ms y si quieres 180º (+90º) 2.3ms.

Los servos para que se mantengan en su posicion hay que enviarles señal constantemente, porque sino se quedan muertos, locos, sin fuerza.

Supon que quieres tener un servo 1s a -90º despues 1s a 0º y despues 1s a +90º. Tendrias que enviar 50 pulsos de 0.3ms cada 20ms, a continuacion 50pulsos de 1.3ms cada 20ms y por ultimo 50pulsos de 2.3ms cada 20ms.

Bueno espero que os ayude en algo.




Desconectado TheBlooD

  • PIC12
  • **
  • Mensajes: 66
Re: Ruido servo
« Respuesta #6 en: 23 de Agosto de 2011, 17:04:28 »
Al final he encontrado el problema y la solución y me van a matar...

La bateria del transmisor estaba casi agotada y por eso no mandaba bien la señal, la solución obviamente recargarla, y ahora funciona de maravilla.

Lamento haberos molestado por algo tan absurdo.

Gracias por todo

Desconectado tapi8

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1506
Re: Ruido servo
« Respuesta #7 en: 24 de Agosto de 2011, 06:32:53 »
Me alegro que te funcione.  :-/ :-/

Te dejo un enlace a la pag. de un colega de un colega del foro donde explica con bastante detalle el tema de los servos, con un programa en C para controlar varios.

http://picmania.garcia-cuervo.net/picc_servos_x_8.php





 

anything