Índice general Foros Digital, Electricidad e Informática Respuesta lenta del decodificador de servos más relés.

Respuesta lenta del decodificador de servos más relés.

Moderador: 241-2001



Desconectado
Mensajes: 14
Registrado: 22 Jul 2017 17:33
Buenos días:
Tengo el siguiente problema que espero me podáis ayudar a solucionar:
Dispongo de una maqueta de tren gobernada principalmente por una z21 (también he hecho las pruebas con la central DCC++ con Arduino mega con los mismos resultados).
A la central están conectadas varios accesorios (Digikeijs DR4024+DR4102) para manejar desvíos con servo y la polarización de los corazones de los mismos.
En la actualidad he montado con Arduino Mega un decodificador de servos, con salidas para polarizar el corazón de los desvíos a través de relés. Sin embargo la respuesta de los accesorios de Digikeijs y la de Arduino es abismal, me explico, en cuanto pulso en el mando multimaus de la z21 un desvío de digikeijs, la respuesta es como un rayo y no falla nunca. Sin embargo cuando lo hago con los Arduino hay veces que responden al instante y otras que no y tengo que pulsar varias veces para que se "entere" el Arduino. Lo mismo ocurre cuando lo manejo a través de Rocrail
No subo fotos o skecht hasta que vosotros me digáis lo que debo de adjuntar.
Muchas gracias de antemano por la ayuda.


Desconectado
Mensajes: 751
Ubicación: Salamanca
Registrado: 12 Ene 2012 14:44
Parece que la señal que le llega al Arduino desde la vía no es lo suficientemente buena.
Tienes un ejemplo que me ocurrió a mi en este hilo. Desgraciadamente informé del problema pero no de la solución :oops:

Por ahí habría que investigar, me parece.
¿Cómo le entra la señal de la vía al Arduino? ¿A través de qué? ¿Está eso en buen estado?

Otra vía de investigación es el programa que ejecuta el Arduino. Descartar problemas ahí requiere probar el mismo decóder pero en otra instalación, supongo.
Saludos

[Multimaus + GenLi-S88 + +z21f. + RocRail (MacOsX)]
H0 Renfe, sin catenaria


Desconectado
Mensajes: 14
Registrado: 22 Jul 2017 17:33
Buenos días Norber:
Gracias por responder tan pronto.
Te informo:
He confeccionado varios módulos para acceder a la señal DCC, sacados de varias páginas que todos conocemos:
20200507_080400.jpg

El de arriba del todo con este esquema:
DCC_to_Arduino.jpg
DCC_to_Arduino.jpg (29.33 KiB) Visto 1221 veces

El de en medio con este esquema:
dcc-opto.png

Y el de abajo del todo que no lo conocía, está sacado del hilo que me mandaste y en concreto de la respuesta de OrBahn:
Optoacoplador 6-5-2020.jpg
Optoacoplador 6-5-2020.jpg (43.01 KiB) Visto 1221 veces

Como verás en este último como no tenía resistencia de 2k2, le puse dos de 1k. El caso que esta última configuración de acceso a la señal DCC va todavía más lento con la z21 y con la DCC++ de Arduino ni funciona.
Otra prueba que he hecho, ha sido eliminar todo lo que tenía conectado a las vías y solo dejar el decodificador de Arduino y los resultados son:
1.Con la z21 y los dos primeros módulos DCC ha mejorado algo la rapidez de la respuesta, pero sigue fallando alguna vez.
2. Con la DCC++ de Arduino y los dos primeros módulos DCC(con Rocrail), la respuesta creo que es la misma que con los DR4024, es decir, inmediata.
La conexión de todos los módulos es al pin 2 del Arduino, +5 y GND también al shield acoplado al Arduino y por el otro lado a la señal DCC.
20200507_080138.jpg

20200507_080237.jpg

20200507_080250.jpg

También te adjunto sketch del decodificador por si hubiera algún error.
Decodficador Servos y reles.pdf
(69.36 KiB) 135 veces


Desconectado
Mensajes: 781
Registrado: 07 Oct 2014 21:54
Hola buenas.
Seguramente sea una tontería lo que comento pero bueno. La placa de Arduino Mega ¿con qué la alimentas? Porque veo que alimentas la placa Sensor Shield, pero no el Arduino en si, al menos como se ve en la foto. Te lo digo porque a mi me pasó con la expansión Motor Shield, que la alimentaba pero no alimentaba a Arduino. Además recorté en la parte inferior de la placa Motor Shield una pista (Vin) para que cada una de las placas tuviera su alimentación independiente.

Repito, visto todo lo que tienes montado entiendes bastante más que yo del tema y seguro que esto no se te ha pasado. Pero no serías el primero al que le pasa.

Saludos.

Vicente.
Mi maqueta actual
viewtopic.php?f=6&t=62901
Mi proyecto de maqueta
viewtopic.php?f=6&t=62555


Desconectado
Mensajes: 14
Registrado: 22 Jul 2017 17:33
Buenas tardes Viflyse:
Gracias por tu aportación. Como se ve en la entrada de alimentación del shield (bornas azules), que por cierto no es de motores, justo a la izquierda hay un puente que está puesto y por tanto alimenta a la placa de abajo (Arduino Mega) y al shield. La alimento con cargador de móvil de 5V y 2A.
A su vez de la shield en una salida de 5+ y GND alimento la placa de relés.


Desconectado
Mensajes: 751
Ubicación: Salamanca
Registrado: 12 Ene 2012 14:44
Las fotos no permiten identificar bien las bandas de color de las resistencias. ¿Podrías hacer fotografías con mejor luz, sobre todo del montaje 1? La banda roja parece naranja, y si lo fuera, eso explicaría tu problema.

En el montaje 2 el led puede estar al revés. Lucirá igual pero el optoacoplador lo pasaría mal para trabajar.

Y las dos resistencias en paralelo del montaje 3 parecen de 1 kOhmio cada una, lo que puede haber destruido internamente al optoacoplador.

Del código no te digo nada porque no conozco las librerías que usas. Intenta consultar a su autor a ver si te puede orientar.
Saludos

[Multimaus + GenLi-S88 + +z21f. + RocRail (MacOsX)]
H0 Renfe, sin catenaria


Desconectado
Mensajes: 14
Registrado: 22 Jul 2017 17:33
Hola de nuevo:
Te adjunto las fotos hechas con luz natural.
20200508_082614 (2).jpg

Este es el primero y me dieron en la tienda de electrónica 1 resistencia de 1k y dos de 10k. Como te comenté en mi segundo mensaje este módulo con la DCC++ de Arduino funciona perfecto y con la z21 falla alguna vez.
20200508_082752 (2).jpg

Este el segundo módulo que lleva 1 resistencia de 1k y 1 de 10k y el diodo se sustituye por un diodo led. Este módulo también como el primero funciona perfecto con DCC++ de Arduino y con la z21 falla alguna vez.
20200508_082836 (2).jpg

Por fin este último, que no conocía y construí con lo que adjuntó OrBahn, quité la resitencia de 10k y la sustituí por una de 1k y la 1k había que sustituirla por una de 2k2, pero como no tenía puse dos de 1k. ¿me he equivocado?. Esta con DCC++ de Arduino no responde y con z21 responde pero muy mal, al cabo de 15 o 20 pulsaciones.


Desconectado
Mensajes: 2191
Registrado: 21 Mar 2014 12:52
Jafala escribió:
.... quité la resitencia de 10k y la sustituí por una de 1k y la 1k había que sustituirla por una de 2k2, pero como no tenía puse dos de 1k. ¿me he equivocado?. ....

Las resistencias en paralelo no suman, dividen.
Poniéndolas en paralelo la resistencia es de 500Ohm, las debes poner en serie para que sumen.

Yo las desoldaría, ahora en el agujero de la izquierda pondría una pata de una de las resistencias, en el de la derecha pondría una pata de la segunda resistencia y conectaría por encima de las resistencias las dos patas que han quedado libres (asegurándome , por ejemplo con cinta aislante, que no toca nada.

Un saludo.


Desconectado
Mensajes: 751
Ubicación: Salamanca
Registrado: 12 Ene 2012 14:44
Parece que los montajes 1 y 2 están bien.
Coloca en serie las dos resistencias del montaje 3 y si el optoacoplador ha resistido deberá funcionar como los otros dos montajes, o sea, regular...

Parece que el problema pueda estar en la librería DCC que estás usando. Intentaré echarle un vistazo.

Pero tienes una alternativa: cambia de código. En este Foro tienes ejemplos sencillísimos de adaptar a tus necesidades.
Saludos

[Multimaus + GenLi-S88 + +z21f. + RocRail (MacOsX)]
H0 Renfe, sin catenaria


Desconectado
Mensajes: 751
Ubicación: Salamanca
Registrado: 12 Ene 2012 14:44
Ajuste de software. Prueba esto a ver qué pasa:

F690EC61-301C-4246-815F-3791278B4F72.png
DCC_decoder.cpp


1. Localiza y edita el archivo llamado “DCC_decoder.cpp”
2. Cambia el valor de la línea 26: donde pone
kONE_Max 64
pon 80
3. Guarda cambios, compila y reprograma el Arduino, a ver si mejora

Suerte!!
Saludos

[Multimaus + GenLi-S88 + +z21f. + RocRail (MacOsX)]
H0 Renfe, sin catenaria


Desconectado
Mensajes: 14
Registrado: 22 Jul 2017 17:33
Hola de nuevo:
He estado un poco liado y no he podido responder antes.
A las cuestiones que me has presentado Norber:
1. Efectivamente soy un burro las resistencias en paralelo dividen, tenía que haberlas puestos en serie, lo siento.
2. He probado el octoacoplador del circuito afectado en otro zócalo y funciona correctamente, menos mal.
3. Haciendo unas pruebas cambiando los módulos en cuestión entre ellos, pues resulta que al cambiar la polaridad de entrada de la señal DCC al módulo, funciona casi perfecto tanto en DCC++ con arduino que con la z21. (añado imagen).
Imagen.jpg
.
4. Las pruebas con respecto al código que me has remitido, aún no he podido meterle mano, pero lo intentaré.

Muchas gracias Norber por el tiempo que me has dedicado. En cuanto pueda ya informaré por aquí como han resultado las pruebas.


Volver a Digital, Electricidad e Informática

Síguenos en Facebook Síguenos en Youtube Síguenos en Instagram Feed - Nuevos Temas
©2017   -   Información Legal
cron