Calificación:
  • 1 voto(s) - 5 Media
  • 1
  • 2
  • 3
  • 4
  • 5
APORTE Finales de carrera siempre “On” (Editado bis).
#1
En los últimos tiempos se está reportando mucho este problema: un eje solo se mueve hacia un lado (el positivo), pero nunca hacia el otro.

Esto es síntoma claro de un final de carrera que no está funcionando correctamente y siempre está activado.

Para comprobarlo, solo hay que desconectar de la placa el interruptor del eje que tiene el problema y comprobar si sigue activado el final de carrera. Si no sigue activo, el problema es del interruptor. Si sigue "On", es de la placa.

Si es este último caso, el problema está en unos componentes incluidos en ella encargados de controlar esos interruptores. En concreto, una resistencia y un condensador, iguales para los tres ejes.

La resistencia indica su valor: 103 (10K=10000 Ohms). El condensador no lo indica pero, si no estoy equivocado, es de 100nF.

Los implicados son, según su eje:

resim
 
Este montaje es similar (seguramente se basa en él) a un diseño que MakerBot publicó el 30 de junio de 2009 y que podéis ver aquí.
 
A la vista de ese esquema (y yo diría que es el que tenemos en la placa Anet, aunque sin el led), el sospechoso número uno es el condensador.

Si este conduce continuamente, sería el mismo efecto que se produce al mantener pulsado el interruptor.
 
¿Cómo solucionar el problema?. Pues parece clara la respuesta: cambiando dicho condensador.

Pero esto tiene su dificultad, ya que son componentes de montaje superficial, llamados SMD por sus siglas en inglés (Surface Mount Device), que requieren de destreza y un soldador adecuado.

Algunos indican que pueden simplemente eliminarse (como es lógico, puenteando después sus puntos de conexión para cerrar el circuito), pero no comparto esa idea.

Si están ahí es por una buena razón, sino los fabricantes se ahorrarían su coste.

El funcionamiento del final de carrera se basa en producir un cortocircuito, uniendo un conector que tiene +5V con otro que tiene 0V (GND).

Están para minimizar el impacto que eso supone y evitar tambien los micro rebotes que se producen en los interruptores mecánicos y que, dada la rapidez de la electrónica, serían interpretados como activaciones/desactivaciones sucesivas.

Pero puede que haya una solución intermedia algo menos complicada que la sustitución: eliminarlos de la placa pero incluyéndolos de forma externa.

Eso se podría hacer utilizando la circuitería de uno de estos (que son el diseño de MakerBot, como se puede ver en la serigrafía de las plaquitas):

resim

Para ello, eliminaríamos los componentes de la placa, puenteando después sus conexiones.

Una forma sencilla es cortarlos con unos alicates de corte muy finos y después unir los puntos de soldadura.

Y utilizaríamos el interruptor tipo MakerBot, bien directamente si conseguimos acoplarlo en los anclajes, o intercalándolo entre el original de la impresora y el conector de la placa, siguiendo este esquema:

resim

El interruptor mecánico que trae incorporado, mejor quitarlo (cortando las patillas) para evitar activaciones indeseadas, aunque no es indispensable.

Como se implemente el montaje ya depende de cada cual. Yo, por ejemplo, para otro tema los tengo con conectores, así:

resim

Con esto se soluciona el problema de forma sencilla y a un coste muy inferior al de sustituir la placa. Esos interruptores valen unos céntimos.

Edito:
He indicado mal el tema de los puentes al quitar los componentes de la placa.
Lógicamente el condensador hay que quitarlo, pero no puentear sus conexiones, ya que así quedaría igual que estaba y no solucionaríamos nada. Hay que dejarlos sin conectar.
La resistencia no hace falta tocarla si está bien, ya que el interruptor MakerBot funciona perfectamente directamente en una placa sin el problema. Si se quita, hay que dejar sus puntos de soldadura sin puentear.

Resumiendo, que para solucionar el problema, si está bien la resistencia, solo hay que cortar con cuidado el condensador sin puentear sus puntos de soldadura y utilizar el interruptor tipo MakerBot.

Edito: Como ha indicado más abajo @ec2daw , si se quita la resistencia, tampoco hay que puentear sus puntos de soldadura. He modificado la línea anterior.
Citar
#2
Muchas gracias Simemart... ya he pedido la placa, y no sé si sería capaz de quitar los componentes y hacer el puente como explicas, pero miraré de conseguir uno de esos interruptores y probar a hacerlo, sólo por la curiosidad de si soy capaz de ello, y de paso, si lo consigo, tener una segunda placa base de reserva, por si en el futuro se vuelve a estropear la nueva, quien sabe...
Citar
#3
He editado el tema, ya que indiqué mal el tema de los puentes.
Citar
#4
Yo tengo ese problema, de momento he tirado de garantía y estoy por recibir la placa..en cuanto llege probaré a ver si puedo apañarla

Por otro lado me pregunto si habría forma de anular el final de carrera desde el marlin y hacerle que que empezase siempre en una cota ''0''
Citar
#5
¿Y como piensas indicarle al firmware donde está esa cota cero?
Precisamente es para hacer eso para lo que está el interruptor de fin de carrera Icon_e_wink .
Citar
#6
Pues como se hace en maquinas cnc, un cero virtual en maquina que sirve para referencias, yo soy fresador y no paso por finales de carrera con cada programa..seria una locura
Lo que no se si marlin prmite hacerlo o como
Citar
#7
¿Quizá te refieres a no tener que hacer home en impresiones sucesivas?.
Los firmwares que controlan estas máquinas (el Marlin entre ellos) ni se lo plantean, ya que hacer home al comienzo de cada impresión es sencillo y rápido (dado su tamaño).
Pero aunque se programasen así, tendrían que seguir contando con finales de carrera.
Algún tipo de sensor tiene que haber para que el software de control conozca donde se encuentra el origen de la máquina, como mínimo después de arrancarla.
Dado que en máquinas CNC la herramienta cambia, se suele utilizar un sensor de contacto móvil (pad) para verificar el cero en el eje Z, en lugar de un sensor fijo, por razones obvias. O, si no hay mucho presupuesto, se realiza a mano (con el papel, como aquí para calibrar el Z offset). Pero, que yo sepa, en los ejes X e Y hay un sensor (o los dos) de final de carrera.
No soy un profesional del mundo CNC, pero algo conozco y ese concepto de cero virtual sin hardware es nuevo para mí.
Te agradecería que ampliases la información.
Citar
#8
Evidentemente los finales de carrera son necesarios
En los 3 ejes en ambos (positivo y negativo) por varios motivos, seguridad etc.. pero no para referenciase ni siquiera desde que la enciendes, porque la propia maquina tiene su propio cero, como?
Pues en concreto tiene varias mediciones u origenes y puede trabajar en estos varios origenes desde introducción manual X0, Y0,Z0 en los nominales sin variar el propio cero de la maquina en referenciales.
Asi trabajan las maquinas cnc,
No se si me explico.. por que es necesario pasar por finales de carrera para referenciarse?
Se podria poner en marlin que sus los ceros no variasen nunca?
Estas son las preguntas que me hago
Está claro que lo mas sencillo es poner un final de carrera y listo, pero a la larga son operaciones innecesarias.
Citar
#9
Yo no entiendo mucho de máquinas CNC pero creo que en una impresora 3D al uso no es posible a no ser que nunca variemos la posición manualmente cosa que yo hago en multiples ocasiones, para calibrar, comprobar que vaya fina, etc..., ya que si por ejemplo movemos el carro X manualmente la impresora ya no tiene manera de saber en que punto se encuentra a no ser mediante un final de carrera, también se me ocurre que como no guarda datos de posición, por lo menos en Marlin, al apagarla y encenderla ya perdemos la referencia. Creo que si no hiciesen falta los finales de carrera los fabricantes se los ahorrarían al menos en las impresoras más barateras. Otra cosa es que exista algún sistema capaz de guardar posiciones después de un apagado y alguna impresora en que no se muevan los carros de manera manual lo cual desconozco. Saludos.
Citar
#10
Posiblemente, ademas de encarecer el producto.
Yo simplemente queria atajar mi problema con el reconocimiento del endstop siempre en on sustituyendolo por un punto dado en marlin.. quizá sea tema de guardar datos al apagarla o tema de perdida de ejes en disable steppers(manua)..y quizá imposible.
Gracias de antemano como ya dije estoy esperando placa nueva solicitada en garantia

Posiblemente, ademas de encarecer el producto.
Yo simplemente queria atajar mi problema con el reconocimiento del endstop siempre en on sustituyendolo por un punto dado en marlin.. quizá sea tema de guardar datos al apagarla o tema de perdida de ejes en disable steppers(manua)..y quizá imposible.
Gracias de antemano como ya dije estoy esperando placa nueva solicitada en garantia
Citar
#11
Los finales de carrera no son necesarios para referenciar una fresadora CNC porque son máquinas muchísimo más sofisticadas (y también caras) y tiene otra forma de hacerlo.
Seguramente mediante un mecanismo interno, bien sea óptico o mecánico, que le indica en todo momento en que posición absoluta se encuentra la herramienta en su espacio de trabajo. Eso permite mostrar en unas pantallas su posición en los tres ejes en tiempo real por hardware (no por software, como en la impresora). Naturalmente, a efectos prácticos se puede colocar el cero donde se quiera, pero la máquina sabe exactamente donde está incluso nada más encenderse. Pero, como digo, eso es por hardware, no por software.
Te está pasando lo que a todos los que llegamos (en el foro hay muchos) a la impresión 3D desde el mundo CNC (en mi caso, como digo, desde el campo no profesional). A mí también me costó admitir las limitaciones que se tienen aquí. Pero en las impresoras 3D, lo que hay es lo que se ve. Y no hay nada más que motores e interruptores.
Cuando se enciende la máquina, el firmware está completamente en blanco respecto de la posición en que se encuentra el cabezal de impresión.
Por lo tanto, hay que buscar una forma de que sepa dónde está, antes de comenzar a trabajar y solo puede hacerse de dos maneras: introduciéndolo a mano cada vez o que lo detecte él de forma autónoma.
No creo que nadie se plantee la primera opción y para la segunda se admiten sugerencias mejores, en términos de resultado/coste, que un final de carrera.
Veamos entonces tus preguntas:
¿Se podrían poner en Marlin que sus ceros no variasen nunca? Por supuesto, pero eso en la práctica es como decirle que asuma que al encenderse, el cabezal ya está en la posición cero.
Para ello, tendrás que implementar una forma de que quede en el cero al apagarla y un sistema que asegure que el cabezal no se va a mover mientras esté apagada. O bien, volvemos a lo de hacerlo a mano.
Eso para cuando se enciende, pero incluso entre impresión e impresión es necesaria la calibración. Dada la poca fiabilidad mecánica que tienen estas máquinas, al terminar una impresión, la posición en que queda el cabezal de impresión no coincide realmente con lo que "piensa" el firmware. Y tras varias impresiones, la acumulación de errores podría ser relevante (sobre todo en el eje Z).
El mundo 3D es un ecosistema que ha evolucionado desde sus comienzos para conseguir los mejores resultados con el menor coste posible y ahora es bastante difícil mejorar algo, pero no imposible.
Estaría encantado de investigar cualquier idea que se te ocurra de cómo implementar lo que planteas, pero a mí no se me ocurre nada que sea práctico.
Por supuesto, eso no quita para que siempre sea un placer debatir sobre estos temas.
Citar
#12
Seguiré investigando ya que no llevo ni un mes en este mundillo y tengo intencion de salvar esta placa..jeje

Al margen, el error del endstopX podría ser dado a picos de intensidad??
No tengo modset instalado y no quisiera fastidiar la placa nueva..
Citar
#13
En principio, no hay ninguna relación entre la alimentación de la cama caliente o del calentador del fusor, con los conectores de fin de carrera, por lo que no creo que venga por ahí el problema.
Como decía al comienzo del post, más bien parece una partida de condensadores defectuosos o de baja calidad. Hace unos meses no se reportaban estos fallos.
Pero sacar la alimentación de la cama de la placa, bien sea con un mosfet externo o un relé de estado sólido, es muy recomendable.
Y alimentar la impresora mediante un SAI, también. Esto alarga mucho la vida de los componentes electrónicos.
Tengo la A8 desde abril y la primera vez que la encendí ya lo hice con un relé de estado sólido alimentando la cama y con los cables directamente soldados a la misma.
Con la impresora conectada siempre a un SAI, de momento no he tenido ni una incidencia en el apartado eléctrico.
Citar
#14
Ok, tomo nota..hasta la fecha imprimo con la cama fria, he notado que me falla menos el tema del endstop, seguro que no tiene nada que ver, por eso estaba mosca por lo de los picos de intensidad.
Muchas gracias
Citar
#15
Ojo, la resistencia tampoco se debe puentear. Estarías metiendo 5V al pin directamente, y si luego pones el 0 desde el interruptor estarías haciendo un corto.

Lo que si se puede hacer es dejarlo abierto y activar la resistencia de pull-up interna del microprocesador en el marlin (con el firmar original no se puede). No lo he revisado, pero probablemente el marlin ya este filtrando algo los rebotes por software, con lo cual podría funcionar solo quitando los componentes y haciendo el cambio de las resistencias de pull-up en el marlin.

Y alguno dirá, ¿y por qué no lo hacen así los fabricantes? Pues porque hay un límite de consumo ínterno en el micro, y eso hace que no se puedan activar todas las resistencias de pull-up que se quieran. Pero alguna que otra si que se puede.

Enviado desde mi D6603 mediante Tapatalk
Citar
#16
Como ya comento al principio, el funcionamiento del interruptor de fin de carrera es eso precisamente: hacer un corto. La resistencia está para minimizar el impacto.
Pero si quitas la resistencia en la placa, tienes que puentear los puntos de conexión o no se cerrará el circuito y no funcionará.
Ten en cuenta que estarías utilizando el interruptor tipo MakerBot, con los componentes incluidos en él.
La resistencia estaría en el interruptor.
Efectivamente, al micro seguro que no le gustará nada que le quites esos componentes, por mucho "apaño" software que hagas.
Citar
#17
(23-11-2017, 12:45 AM)Simemart escribió: Como ya comento al principio, el funcionamiento del interruptor de fin de carrera es eso precisamente: hacer un corto. La resistencia está para minimizar el impacto.
Pero si quitas la resistencia en la placa, tienes que puentear los puntos de conexión o no se cerrará el circuito y no funcionará.
Ten en cuenta que estarías utilizando el interruptor tipo MakerBot, con los componentes incluidos en él.
La resistencia estaría en el interruptor.
Efectivamente, al micro seguro que no le gustará nada que le quites esos componentes, por mucho "apaño" software que hagas.
A riesgo de parecer cabezón, que lo soy, je je, uno de los lados de la resistencia va fijo al regulador de 5v, si cortocircuitas la resistencia tienes 5v fijos en el pin del microprocesador, si pones eso a 0v con el interruptor original quemarás el regulador y posiblemente las pistas, por que haces un corto.
Si lo que conectas es el otro, te puede pasar, o bien lo mismo, o si tienes suerte y lo haces mal, te encontrarás con que no te funciona por que le has metido los 5v fijos.



resim



Enviado desde mi D6603 mediante Tapatalk
Citar
#18
@ec2daw , gracias a los "cabezones" avanza la ciencia.
Tienes toda la razón. Cuando ví por primera vez el esquema del interruptor MakerBot pensé (no sé porqué), que el pin 4 era +5V y el 1 el de señal y desde entonces me está liando con este tema.
Con el condensador me dí cuenta, pero he vuelto a caer con la resistencia Facepalm .
Efectivamente, si se quitan los componentes sin sustituirlos por otros iguales, hay que dejar sin conectar los puntos de soldadura.
Muchas gracias por seguir insistiendo Mola .

P.S.: Ese esquema que pones, ¿es el de la placa?. Porque en el de MakerBot, el condensador es de 100nF.
Citar
#19
(23-11-2017, 06:23 PM)Simemart escribió: @ec2daw , gracias a los "cabezones" avanza la ciencia.
Tienes toda la razón. Cuando ví por primera vez el esquema del interruptor MakerBot pensé (no sé porqué), que el pin 4 era +5V y el 1 el de señal y desde entonces me está liando con este tema.
Con el condensador me dí cuenta, pero he vuelto a caer con la resistencia Facepalm .
Efectivamente, si se quitan los componentes sin sustituirlos por otros iguales, hay que dejar sin conectar los puntos de soldadura.
Muchas gracias por seguir insistiendo Mola .

P.S.: Ese esquema que pones, ¿es el de la placa?. Porque en el de MakerBot, el condensador es de 100nF.
Si, es un esquema de la placa, pero no se si es bueno del todo, y no recuerdo de donde lo saqué. Los números de las resistencias no coinciden, y todos los drivers tienen resistencias para regular la intensidad de los motores. Pero para hacerse una idea vale.

Enviado desde mi D6603 mediante Tapatalk

El valor del condensador no tiene mucha importacia. Cualquiera de los dos puede valer. Solo sirve para filtrar los rebotes mecánicos del microinterruptor.

Enviado desde mi D6603 mediante Tapatalk
Citar
#20
No me parecía, ya que indica un condensador electrolítico y no es el caso.
Con tu última frase estás abriendo otro frente de debate, pero no voy a recoger el guante Icon_e_smile .
Citar


Temas similares...
Tema Autor Respuestas Vistas Último mensaje
  termistor del nozzle siempre a 236 grados zzzzz 5 73 Hace 27 minutos
Último mensaje: zzzzz
  CONSULTA temperatura de la cama siempre a 110 soloyokum 13 185 Hace 9 horas
Último mensaje: Nullz
  Autolevel, paso a paso (III): configuración (ACTUALIZADO y EDITADO). Simemart 193 21,456 15-10-2018, 03:30 PM
Último mensaje: Simemart
  APORTE Autoapagado con Marlin (Editado). Simemart 7 1,240 15-06-2018, 02:03 PM
Último mensaje: Simemart
Exclamación Anet A8 Fin de carrera ok pero no hace que pare Grial 2 308 06-05-2018, 04:21 PM
Último mensaje: Grial