Servos y Micros

carptroya

Veterano
Mensajes
889
Puntos
16
Ubicación
sevilla
Hola a todos.

Por favor utilizar este hilo solo y exclusivamente para temas relacionado con lo aquí expuesto, así quedara más o menos claro por si alguno lo quiere seguir.
gracias


Abro este hilo para compartir mi experiencia con los servos aunque no es mucha seguro que alguno que empiece en este mundo le podría servir de algo.



Como ya dije en algún lugar de este foro yo no tengo emisora comercial, la mía por decirlo de alguna manera es “rarita”, suelo trabajar con registros para comunicarme .Vosotros dependéis del fabricante que es quien diseña el sof que lleva vuestro equipo.

Dicho esto vamos a ver como dichos fabricantes acondicionan la señal a la salida de vuestro receptor que es la parte que nos interesa.

A la salida de cada canal del receptor llegan constantemente tres pulsos que no son otros que la posición en que tengáis el stick de la emisora, esto se repite cada 20 ms (ciclo). Que es la frecuencia de trabajo de la emisora 50hz.

Los pulsos tienen una duración distinta para cada posición del stick con lo cual le podremos decir al servo donde debe detenerse (adjunto foto).

Cada fabricante tiene un ancho de pulso diferente aunque todos coinciden en el punto central de stick (punto neutro) que es de 1,5ms.


Para los distintos proyectos realizados aquí tomare de referencia los de futuba que son:
0.9 ms para el mínimo (0º)
1.5 ms centro (90º)
2.1 ms máximo (180º).
Aunque ya veremos que esos datos no son reales (eso mas adelante) .

Sé que esta parte es tediosa pero imprescindible para seguir adelante.

CONTINUARA……
 

Archivos adjuntos

  • pulso servo.png
    pulso servo.png
    8,5 KB · Visitas: 463
Nuestro primer circuito.

Comprobador de servos.

Ya sé que alguno de vosotros pensareis “para que hacerlo con un micro si con un 555 se podría hacer?”.

Os puede decir dos ventajas, la primera que genero el ancho de pulso que quiero con solo apretar un pulsador y la segunda y más importante para mi es que lo utilizo como un generador de pulso, con lo cual puedo simular cualquier emisora comercial y así poder desarrollar otros proyectos que se sumaran a este hilo.

Decir que su coste es bastante barato de 5 a 6 euros (para la crisis que pasamos no está mal………jajaj)
Se puede montar en una placa perforada, por lo cual no hace falta diseñar ninguna PCB.

Todo no son ventajas……….jajajaj. El inconveniente es grabar el micro la solución está en buscarse un amigo, conocido incluso en vuestra ciudad en algún centro de estudios de electrónica se lo podría hacer.
Si fueses de Sevilla no había problema yo te lo grabaría con mucho gusto.

Elegí el 16f84a por ser barato y se puede conseguir fácilmente (yo suelo utilizar el 876 para mi proyecto), el oscilador es un cristal de 4Mz, lleva dos condensadores de 22pf(desacoplo),3 resistencias y otros tanto pulsadores como veréis. Este es todo el hardware que se necesita.
El software que desarrolle ya lo explicare (igual alguno le interesa).
Ahora pongo las fotos para que os hagáis una idea más clara de lo dicho en la primera parte sobre los pulsos.
 

Archivos adjuntos

  • 1.5ms.jpg
    1.5ms.jpg
    221,9 KB · Visitas: 452
  • 0.9 ms.jpg
    0.9 ms.jpg
    223 KB · Visitas: 452
  • 2.1 ms.jpg
    2.1 ms.jpg
    222,1 KB · Visitas: 452
  • simulacion.jpg
    simulacion.jpg
    195,3 KB · Visitas: 452
Comento las fotos.

1ª…….. Se puede observar que el primer pulsador está conectado con ello conseguimos el ancho de pulso de 1.5ms (igual que si tuviésemos el stick en el centro).

2ª……..al conectar el 2º pulsador abstendremos el ancho de pulso de 0.9ms (igual que stick en el max. de un extremo).

3ª……..conectando el 3º pulsador tenemos el ancho de pulso de 2.1ms (stick al máximo en el extremo contrario).

Y por último la 4ª foto corresponde a la simulación en proteus(el circuito final lo pondré más adelante, para quien lo quiera montar junto con el .hex ).

Ahora pondré el mismo circuito montado pero con el 876 donde realice las pruebas en real(NO simulado)

Continuara……
 

Archivos adjuntos

  • servo.jpg
    servo.jpg
    378,3 KB · Visitas: 442
este es el circuito para poder ser montado.

si alguno no entiende algo que pregunte.



lo proximo sera comentar el sof.


continuara.....
 

Archivos adjuntos

  • conexion pic.jpg
    conexion pic.jpg
    132,2 KB · Visitas: 440
Con los datos que ya tenemos, que son el ancho de pulso y duración del ciclo ya podemos diseñar el sof par el micro.

Comentario: cada sof es susceptible de ser mejorado.

Bueno como veis utilizo el pin RA0 del puerto A para la salida de señal que generare en el micro(dicha salida es la entrada del servo)


Los pines RA1,RA2,RA3 del puerto A será las entradas de los pulsadores para general los distintos anchos de pulso.

RA1…………… 1.5ms (centro)…90º
RA2………… 0.9ms (extremo)….0º
RA3……….. 2.1ms (extremo)….180º.

El micro está constantemente mirando que ocurre en los pin RA1,RA2 y RA3.como se puede ver en el esquema están conectado en alto(positivo=1),en el instante que conectamos un pulsador se pone en bajo (0= negativo)el pin correspondiente y acto seguido el micro empieza su trabajo de general el pulso y sacarlo por el pin RA0.
Básicamente esa es la lógica.

Adjunto carpeta con:

Simulación en proteus
Archivo .hex para grabar micro
Archivo .asm
Archivo .npl

Con todo esto creo que ya termine el comprobador de servos, si alguno tiene alguna duda o está interesado en alguna parte del desarrollo solo tiene que preguntar.

Continuara………con el segundo proyecto
 

Archivos adjuntos

Hola a todos.

Este segundo proyecto será utilizar el máximo recorrido de nuestros servos.

Dejo video como aperitivo, ya subiré todo el material más tarde.



http://www.youtube.com/watch?v=Ygo6loajmsY" onclick="window.open(this.href);return false;


Saludos
 
hola a todos, los que sigais este hilo,

simplemente es, para deciros, que si pasa unos pocos días y no decimos nada, no es que nos hallamos olvidado del foro, como ya me han dicho algunos, solo que tanto carptroya como josechu, seguimos trabajando en estos temas, y queremos aprovechar nuestro tiempo disponible, con la intención de sacar algo bueno para todos.

saludos
 
Hola a todos.

Como muy bien dijo el amigo José (josechu), estamos trabajando en otros proyectos (ya los publicara para beneficio de todos nosotros).

Mientras tanto seguimos nosotros con el tema de los servos.

Como dije en mi último comentario este proyecto será controlar el máximo recorrido de nuestros servos (ver video anterior), para ello utilizare los micros (como siempre….jajajj).

Antes de continuar habrá que tener claro algunos conceptos como pueden ser:




Servo analógico (por decirlo de alguna manera)

Servo digital.



Diferencia desde el punto de vista electrónico.

Mas o menos los dos funciona de la misma manera y la gran diferencia radica en que el digital lo controla un micro con lo cual mediante un programador se le puede cambiar ángulo de giro y velocidad.


Diferencia desde el punto de vista económico.

Los digitales son muchísimo más caros, el fabricante te obliga a comprar su GRABADOR para poder modificarlos y además no son compatibles entre distintos fabricante……….en pocas palabras UN ROBO.

Desde aquí se realizara un proyecto en el cual tendremos control total del servo.

Espero que sea de vuestro agrado.

PD. Como digo siempre, si alguno de vosotros le sirve de algo pues mucho mejor
 
Seguimos …..




Adjunto el hardware que nos hace falta para la realización de la práctica, que como veis es lo mínimo que requiere el 84a.







Contiunara……..
 

Archivos adjuntos

  • conexion tipica.jpg
    conexion tipica.jpg
    43,5 KB · Visitas: 293
Adjunto simulación echa en proteus.




El cual me servirá para que veáis los pulsos que da vuestro receptor al servo y como los modifico por software y obtengo el giro deseado, que en este caso será de 180º.
 

Archivos adjuntos

  • simulacion servo.jpg
    simulacion servo.jpg
    212,8 KB · Visitas: 68
En el circuito se puede observar que el U1 es el encargado de general el pulso y mediante el U2 lo modifico a mi voluntad.


Veréis por medio de oscilogramas como es el pulso de vuestra emisora (amarillo)y como es modificado(azul).
 

Archivos adjuntos

  • minimo 500 microsegundos.jpg
    minimo 500 microsegundos.jpg
    201,9 KB · Visitas: 68
  • centro 1.5.jpg
    centro 1.5.jpg
    202,8 KB · Visitas: 68
  • maximo 2500 microsegundos.jpg
    maximo 2500 microsegundos.jpg
    201,7 KB · Visitas: 68
La realización práctica ya la puse en forma de video al comienzo.

Como podréis ver no es nada complicado hacer que gire nuestro servo los grados que queramos.

Una vez que el giro ya lo tenemos controlado ahora os diré como poder modificar la velocidad del mismo.

Es muy parecido a cambiar el grado de giro, concretamente está basado en ir modificando el ancho de pulso, con lo cual obtendremos un desplazamiento más o menos lento del servo.


De esta segunda practica no pondré nada , pero si alguno está interesado que lo diga y con mucho gusto le ayudo a desarrollarlo.

Con esto doy por concluido el tema de los servos.

gracias
 
Hola a todos

De nuevo dejo este hilo operativo para explicar y comentar todo lo relacionado con la parte electrónica del barco cebador.

Desde un punto de vista de paso a paso o lo que es lo mismo de error-acierto (espero que sea más lo segundo…jajaj).

El motivo será aprender entre todos y cada cual aporte lo que considere oportuno y una vez que salga ya el circuito depurado ya lo publicare en “parte electrónica del barco cebador.

Dejo el comienzo.

saludos
 

Archivos adjuntos

  • transmisor.jpg
    transmisor.jpg
    234,8 KB · Visitas: 57
carptroya dijo:
Adjunto simulación echa en proteus.




El cual me servirá para que veáis los pulsos que da vuestro receptor al servo y como los modifico por software y obtengo el giro deseado, que en este caso será de 180º.
Hola carptroya

No se si este es el lugar en que se pregunta para alguna aclaración, ahora veo lo que escribiste y yo crei que mas abajo iban a estar los archivos para que podamos generarlo nosotros en proteus, si los tenes te agradecería tenerlo para practicar con el programa.
Si necesitas el email es gfernan@lamatanza.gov.ar
Saludo ghayta12
 
hola, ghayta12.

el comprobador de servo con el 84a si tiene la simulacion en proteus en el septimo post, como archivo adjunto.

el que no lo tiene es la modificacion del servo con micro.

si es el que te interesa comunicamelo.

saludos
 
Hola carptroya

Si me interesaria todos los archivos para simularlo en proteus el anterior funciona perfectamente
Gracias ghayta12
 
Siento mucho comunicarte que no encuentro la carpeta donde estaban los archivos ya que ese proyecto lo termine en Marzo de este año.

Si realmente te interesa lo podría realizar de nuevo, pero tendría que esperar un poco ya que actualmente estoy involucrado con otros proyectos y necesito terminarlo lo antes posible para que pueda navegar trabuquito .

Si es por simular circuitos te adjunto con el que estoy trabajando actualmente.

Te describo brevemente en qué consiste:
Un variador de velocidad para trabuquito, en el cual un micro (emisor), convierte una señal analógica a digital, la comunica por usart a otro micro(receptor) y este genera un PWM para aplicarlo a un variador.

Espero haberme explicado bien.

saludos
 

Archivos adjuntos

Atrás
Arriba