martes, 6 de octubre de 2015

Moviendo desvíos con servos y Arduino

Buenas!!! Después de estar mirando como poder mover los desvíos de mi nueva maqueta (aun en construcción) y viendo los precios y los diferentes sistemas (electroimanes, reles, motores caseros, etc..) me he decantado por los servos de modelismo y Arduino.
El porque es muy sencillo, su bajo precio y lo fácil que son de instalar, si a eso le añadimos una placa arduino, la cosa se hace mucho más interesante. Ya no es que solo podamos mover el servo con arduino, sino que también podremos tener salidas para poder conectar semáforos o cualquier otra cosa que queramos como los corazones de los desvíos.

El servo en cuestión es este:


Y la placa de Arduino que he elegido para este proyecto es la Nano con un shield especial (o ideal) para este proyecto:

Arduino Nano

Shield Arduino Nano

Además el precio es más que asequible, en total las dos placas salen por menos de 8€.

En este caso, al no ir conectadas a ninguna central DCC, he tenido que construir un pequeño panel donde van 4 pulsadores y conectarlos a una entrada analógica. Si, se podrían haber conectado a pines digitales pero he preferido hacerlo de manera analógica sobre todo por el tema del cableado
y por que así me sobran otros tantos pines para una posible ampliación o conectar cualquier otra cosa que se me ocurra, pero eso sera cuando este la maqueta más avanzada. En principio se quedara tal y como se ve en el vídeo.

Bien los pines asignados a los servos son 6, 7, 8 y 9 y los pines asignados a accesorios son los 10, 11, 12, 13.
Los pulsadores van conectados en el pin A0 con resistencias de 1K.

Conexión de los pulsadores a Arcuino

Pulsadores
Arduino + Shield y servos





El programa se queda un poco extenso para ponerlo en la web, pero lo tenéis Aquí o en la sección de descargas de esta misma pagina



11 comentarios :

  1. Hola:Me parece muy interesante tu circuito. estoy intentando hacer lo mismo en mi maqueta pero no encuentro los valores de las resistencias que has colocado. Con las que yo estoy colocando no me funciona bien.
    Un saludo y gracias

    ResponderEliminar
    Respuestas
    1. Buenas Alberto, las resistencias son de 1K (1000ohm) y tienen que tener todas el mismo valor, si no, no funcionara. Espero te ayude, Saludos!!!

      Eliminar
    2. muchas gracias, mañana me las compro y lo pruebo.
      un saludo

      Eliminar
  2. Hola ya tengo todo montado tal y como pone aquí en este manual, pero tengo un problema, solo me funcionan dos servos, y uno funciona con dos pulsadores, el mismo servo actúa al pulsar tanto un pulsador como con otro, sabes de qué puede ser, a ver si me podéis ayudar, y ante todo muchas gracias por el trabajo que hacéis,

    ResponderEliminar
    Respuestas
    1. Buenas Tomovil Ford! ¿Has puesto el mismo número de pulsadores? en caso de que sea que si, ¿has comprobado las resistencias? en el programa viene un pequeño debug para comprobar en el monitor serie del IDE de Arduino (Ctrl+Mayus+M), en el te dirá el valor de cada pulsador y en función a esto puedes ajustar un poco mas los valores con respecto al servo. Espero haberte ayudado y si tu problema persiste, puedes mandarme una captura de pantalla del monitor serie a mi correo peyutron@gmail.com. Saludos!!!

      Eliminar
  3. Gracias. Peyutron , probaré lo que me dices, y te comentaré, bueno a ver si me entero bien, por qué estos verde en este tema, jeje, Mubchas gracias

    ResponderEliminar
  4. Está muy buena tu publicación y gracias por compartirla. Llevo mas de un año buscando información de cómo accionar servos con un pulsador. Una consulta, teniendo libres los pines 0 al 5, se podrá poner mas servos por placa? Esto con el fin de comprar menos placas solamente y ahorrar un poco.
    Reitero mis agradecimientos

    ResponderEliminar
    Respuestas
    1. Buenas! Si, no hay problema en usar esos pines, aunque te aconsejaría que el 0 y el 1 no los usará ya que puede dar problemas al cargar el sketch ya que son los pines que utiliza arduino para comunicarse con el PC, Saludos!!!!

      Eliminar
  5. Otra consulta, el código funciona en una placa Arduino Uno?

    ResponderEliminar
    Respuestas
    1. Buenas! En principio tiene que funcionar, de echo las pruebas las hice con UNO. Si te diera alguna error comentamelo y vemos la solución. Pero en principio tendría que ir bien. Saludos!!!

      Eliminar
    2. Hola, me he demorado un poco en poner en práctica tu aporte pero ya empecé. El fin de semana pasado lo monté en la protoboard con el Arduino UNO R3 y me dio varios errores. Uno de ellos es que los servos no van de un lado a otro conforme se presiona el pulsador sino que van y vuelven de inmediato a su posición original. Por otro lado, los LED no prenden de acuerdo al pulsador accionado sino que es un tanto aleatorio. Revisé una y mil veces las conexiones y creo que están bien. La fuente de energía para los servos la tuve que poner en forma independiente (no desde la misma placa) porque si lo hacía al parecer hacía corto circuito y suspendía la placa. Voy a hacer un esquema en Fritzing de las conexiones y lo subo. Saludos

      Eliminar

Related Posts Plugin for WordPress, Blogger...