Sketch para Arduino desvios
#1
Cuando empece a pensar en mover los desvios con el arduino, encontre mucha información, pero no vi que nadie posteara ningun Sketch para programar los servos.
 Aqui va un sketch para arduino, con el se pueden mover desvios tipo SG90 9g Mini Servo y los led para identificar en que sentido quedo el desvio.

Es posible que alguien que sepa mas que yo de esto encuentre mejores soluciones ... esta funciona, si alguien quiere corregir que se sienta libre de hacerlo, no me ofendo Guiño

Luego subo una foto de la protoboard

Un saludo Sonrisa

 
#include <Servo.h>


Servo servo1;
#define PULSADOR1 9
#define PULSADOR2 10
#define LED1 3
#define LED2 5

void setup(){
  servo1.attach(8);
  pinMode(PULSADOR1,INPUT);
  pinMode(PULSADOR2,INPUT);
  pinMode(LED1, OUTPUT);
  pinMode(LED2, OUTPUT);
  digitalWrite(LED1, LOW);
  digitalWrite(LED2, LOW);
}
void loop(){
 int PULSADOR1State = digitalRead(PULSADOR1);
 int PULSADOR2State = digitalRead(PULSADOR2);
 if(PULSADOR1State == true){
  digitalWrite(LED1,LOW);
  digitalWrite(LED2,HIGH);
  pinMode(8,HIGH);
  servo1.write(135);
  delay(300);
  pinMode(8,LOW);
  delay(500);
}
  if(PULSADOR2State == true){
    digitalWrite(LED2,LOW);
    digitalWrite(LED1,HIGH);
    pinMode(8,HIGH);
    servo1.write(35);
    delay(300);
    pinMode(8,LOW);
    delay(500);
  }
}
Responder
#2
Muchísimas gracias. Es de agradecer que hayas puesto el código para hacerlo funcionar. Yo, que tengo más morro que Ester Cañadas después de que le pique una abeja en los labios, te agradecería también un esquema de las conexiones... Por pedir que no quede.

"Contra el vicio de pedir; la virtud de no dar"
Responder
#3
Te lo pongo mejor en un par de fotos que para hacer esquemas soy muy malo...
pero va ser en el finde que estoy un poco liado ahora.

Un saludo
Responder
#4
Aqui van las fotos espero que te puedas apañar con ellas, pregunta lo que quieras.


Archivos adjuntos Miniatura(s)
       
Responder
#5
Gracias, aunque yo de esto la la electricidad no pillo na de na, vamos que no me entero Sonrisa
Saludos
JJSS
Responder
#6
Muchas gracias... Algo haremos que se vea.... prtzzzzzzzzzzzzzzz.... chas chas.... zapaaaaaaa (ficus a la plancha)
Responder
#7
No se si los que entienden de ARDUINO leen este post.

A ver si alguien que entienda lo sigue y conseguimos hacer una guia para que la gente pueda tener ideas mas claras.

Con una placa de ARDUINO 1 creo que podria controlar dos servos, por que, para esta distribución he necesitado 5 pines( 3 y 5 para led, 8 para servo, 10 y 11 para pulsador) sin contar la alimentacion del servo (he decidido alimentarlo desde fuera con otra fuente, para que no tenga tanto trabajo la placa, por lo tanto 2 pines que me ahorro gnd y 5v).
Ahora pienso,¿ que es mejor comprar mas ARDUINOS? o ¿conectarlos con un SCHILD como el PCA9685? creo que este me daria la posibilidad de conectar 3 servos.
Luego esta el alimentarlos a todos claro ... solo para la estacion oculta necesitaria 9 Arduinos...

¿Alguien me puede orientar q es mejor?

Gracias
Responder
#8
Este hilo es para la gente como yo que empieza en ARDUINO desde cero y no sabemos muy bien todas las posibilidades.

Investigando un poco en INTERNET he descubierto que los pines A0 hasta A5 se pueden usar normalmente, esto nos da la posibilidad de programar 3 servos por arduino. quedarian libres 4 pines A4,A5,12,13. solo nos faltaria un PIN para poder programar 4 SERVOS. Con RX0 y TX1 he intentado, pero no funciona. no se si tengo que programar esos pines de alguna forma.
He visto tambien los schild de expasión para ARDUINO, pero la verdad que me pierdo un poco. Tambien hay que pensar que una ARDUINO la compras por 3 € en Ali, asi que no se si merece la pena.

Si alguien quiere aportar algo al hilo o ve que no es necesario por que hay otros hilos donde se habla de tema posteadme algo.

Un saludo. Guiño
Responder
#9
Hola. No tengo experiencia en mover servos con arduino. Pero sólo como sugerencia, si lo que te faltan son puertos, puedes usar un multiplexor. Una plaquita muy sencilla y barata (me costó $1,37).

Yo compré uno que tenía 16 salidas/entradas (CD74HC4067 Analog Digital MUX Breakout Board CMOS 16CH For Arduino). Te permite convertir una entrada analógica o digital en 16.

Saludos.
Javier
[Imagen: final3.jpg?dl=1]
Mis proyectos: unodemuypocos.blogspot.com
Responder
#10
(09-09-2017, 20:02)rezjat escribió: Hola. No tengo experiencia en mover servos con arduino. Pero sólo como sugerencia, si lo que te faltan son puertos, puedes usar un multiplexor. Una plaquita muy sencilla y barata (me costó $1,37).

Yo compré uno que tenía 16 salidas/entradas (CD74HC4067 Analog Digital MUX Breakout Board CMOS 16CH For Arduino). Te permite convertir una entrada analógica o digital en 16.

Saludos.

Esto serviría para aumentar el número de sensores de presencia?
Responder
#11
Claro, en vez de varios arduinos, si lo que te faltan son puertos digitales o analógicos
Javier
[Imagen: final3.jpg?dl=1]
Mis proyectos: unodemuypocos.blogspot.com
Responder
#12
(10-09-2017, 10:18)rezjat escribió: Claro, en vez de varios arduinos, si lo que te faltan son puertos digitales o analógicos

Estoy montándome, con arduino, un retromódulo S88 según se indica en esta página:

http://eliberia.es/index.php/furgon-de-c...ack-module


Aquí podría tener aplicación la placa multiplexora que comentas?
Responder
#13
Sí. Ocupas un sólo canal en arduino y lo conviertes en 16. Pero si es para un S88, hay otro hilo que usa 16 salidas del arduino directamente sin nada más.  Cuando llegue a casa te busco el link
Javier
[Imagen: final3.jpg?dl=1]
Mis proyectos: unodemuypocos.blogspot.com
Responder
#14
Yo utilicé esta solución:

https://rudysmodelrailway.wordpress.com/software/

De hecho, el sketch que hay junto con el dibujo que has puesto aquí a mí no me funcionó.
En cambio, el que he puesto aquí sí me funcionó, y además, usa salidas analógicas y digitales para controlar 16 sensores.
Yo lo hice y funcionaba.

Un saludo
Javier
[Imagen: final3.jpg?dl=1]
Mis proyectos: unodemuypocos.blogspot.com
Responder
#15
Gracias Javier, voy a leerlo detenidamente y a ver por cual me decido, pues sería para complementar al modulo de Digikeijs DR4088RB-CS que actualmente tengo instalado.
Responder
#16
De nada. Qué sensores vas a poner?
Lo haces con arduino por entretenimiento?
Javier
[Imagen: final3.jpg?dl=1]
Mis proyectos: unodemuypocos.blogspot.com
Responder
#17
(10-09-2017, 17:27)rezjat escribió: De nada. Qué sensores vas a poner?
Lo haces con arduino por entretenimiento?

Te respondo en orden invertido a tus preguntas ...

Lo quiero hacer con Arduino por entretenerme, aprender y de paso ahorrar algunos euros para invertir en material rodante.

Las detecciones las quiero realizar durante todo el tiempo que el tren esté en el bloque, es decir, por consumo, por lo que me montaré el circuito que adjunto, que recogí en otra web.


Archivos adjuntos Miniatura(s)
   
Responder
#18
(10-09-2017, 21:36)Pecetero escribió:
(10-09-2017, 17:27)rezjat escribió: De nada. Qué sensores vas a poner?
Lo haces con arduino por entretenimiento?

Te respondo en orden invertido a tus preguntas ...

Lo quiero hacer con Arduino por entretenerme, aprender y de paso ahorrar algunos euros para invertir en material rodante.

Las detecciones las quiero realizar durante todo el tiempo que el tren esté en el bloque, es decir, por consumo, por lo que me montaré el circuito que adjunto, que recogí en otra web.

Muy bien, entendido, ánimo con ello.
Saludos
Javier
[Imagen: final3.jpg?dl=1]
Mis proyectos: unodemuypocos.blogspot.com
Responder
#19
(10-09-2017, 13:35)rezjat escribió: Yo utilicé esta solución:

https://rudysmodelrailway.wordpress.com/software/

De hecho, el sketch que hay junto con el dibujo que has puesto aquí a mí no me funcionó.
En cambio, el que he puesto aquí sí me funcionó, y además, usa salidas analógicas y digitales para controlar 16 sensores.
Yo lo hice y funcionaba.

Un saludo

No se si te refieres al sketch que he escrito.
A mi me funciona a las mil maravillas, de hecho hice algunos cambios basados en este sketch para ajustarlo usando los pines A0 hasta A3 y cambiando la botonera por un swich on off on.
Voy a intentar subir un video a ver si puedo.
Responder
#20
(11-09-2017, 20:24)JefeOro escribió:
(10-09-2017, 13:35)rezjat escribió: Yo utilicé esta solución:

https://rudysmodelrailway.wordpress.com/software/

De hecho, el sketch que hay junto con el dibujo que has puesto aquí a mí no me funcionó.
En cambio, el que he puesto aquí sí me funcionó, y además, usa salidas analógicas y digitales para controlar 16 sensores.
Yo lo hice y funcionaba.

Un saludo

No se si te refieres al sketch que he escrito.
A mi me funciona a las mil maravillas, de hecho hice algunos cambios basados en este sketch para ajustarlo usando los pines A0 hasta A3 y cambiando la botonera por un swich on off on.
Voy a intentar subir un video a ver si puedo.

No, no! No me refería al tuyo, sino al que viene en la web del dibujo que puso Pedro para montar un interfaz S88 en arduino.
Saludos
Javier
[Imagen: final3.jpg?dl=1]
Mis proyectos: unodemuypocos.blogspot.com
Responder


Posibles temas similares...
Tema Autor Respuestas Vistas Último mensaje
  Proyecto de pupitre para control simple DCC Kris Kelvin 28 1,286 13-03-2024, 13:18
Último mensaje: Kris Kelvin
  Ayuda/consejo para decoders desvíos Speedy González 3 931 03-01-2024, 22:12
Último mensaje: Speedy González
  Desvíos y Semáforos Adolfo Ant. 23 4,338 02-01-2024, 17:53
Último mensaje: Adolfo Ant.
  Ayuda para identificar componente en placa. Caribue 30 2,245 14-12-2023, 09:26
Último mensaje: leptrain
  Programar un DH18A para una 277 Arnold tigrin 6 2,246 08-10-2023, 17:50
Último mensaje: mario1969
  Desvios sincronizados jcpana 3 734 09-07-2023, 08:41
Último mensaje: rezjat
  Ayuda para mapear un LokPilot micro V5.0, Next18. tigrin 4 1,295 28-03-2023, 23:23
Último mensaje: pullman
  Digitalizar desvios joseangel78 4 1,651 25-11-2022, 14:26
Último mensaje: joseangel78
  Ayuda para mapear un Zimo next 18 tigrin 11 2,727 13-11-2022, 21:36
Último mensaje: jositoxtr
  Desvios D-4018 pontjan 2 1,198 03-11-2022, 12:59
Último mensaje: pontjan

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)