[DUDA] Sobre el Codigo G de cura

1,098 views
Skip to first unread message

jcmjul

unread,
Oct 23, 2013, 9:56:43 AM10/23/13
to asrob-uc3m-i...@googlegroups.com
Buenos dias,

Estoy estudiando el archivo de codigo G que saca el Cura para intentar hacer unas pruebas y me encuentro con dudillas en como funciona realmente lo relativo a las configuraciones de velocidad que emplea en las interpolaciones, muestro un ejemplo:


M92 E600.000000 <--- unidades del extrusor
M140 S100.000000 <--- Fija a 100º la cama (Redundante)
M109 S230.000000 <--- Fija y espera a que el extrusor llegue a los 230º
M190 S100.000000 <--- Fija y espera a que la cama llegue a los 230º
G21        <--- Se selecciona el mm como unidad
G90        <--- Coordenadas absolutas
M107       <--- Arranca con el ventilador apagado (yo no tengo ventilador)
G28 X0 Y0  <--- Busca finales de carrera X e Y para hacer el 0
G28 Z0     <---- Busca el finales de carrera Z
G92 X0.0 Y0.0 Z0.0 E0.0         <-- Define la posicion de los ejes como 0

(G1 movimiento lineal interpolado)
G1 Z5.0 F60  <---- Hace un primer movimiento en Z hasta 5.0 y se supone que lo hace hacelerando de de 0 a 60 mm/min

G92 E0                  <-- Define la posicion del extrusor como 0 (esto da igual para nuestras reprap)

(aqui una de las dudas)
G1 F200 E3  <--- Otro movimiento lineal, pero en este caso primero viene F200 y luego el eje, ¿es igual que lo anterior? ¿es decir mueve 3 mm en el extrusor acelerando de 60 a 200 mm/min? o al estar antes de la E no se ve afectada?

G92 E0       <--- Cero del exrusor de nuevo
G1 F1800    <--- ¿Fija la velocidad a 1800mm/min (30mm/seg) ?
;LAYER:0
;TYPE:SKIRT
G1 X26.75 Y92.553 Z0.63 F1800.0 <-- ¿y ahora? ¿realiza el movimiento desde la velocidad de partida anterior 1800 a la definida en esta linea 1800 en acceleracion y por tanto no acelera y la hace a velocidad constante? ¿o no tiene nada que ver la velocidad anterior y hace el movimiento acelerando de 0 a 1800? ¿o lo hace a velocidad constante de 1800?
G1 F2400.0  <--- De nuevo cambia la velocidad, a 2400mm/min (40 mm/s), supongo que es para todos los ejes de la interpolacion X,Y,Z, ¿y el extruder?
G1 E4.5 <- saca 4.5 mm de filamento ¿a que velocidad a la anterior?
G1 F1800.0 < -- Nuevo cambio de velocidad ¿de todos los ejes?
G1 X28.774 Y98.575 Z0.63 F900.0 E5.1381 <-- y ya el remate, la F entre medias, ¿esto que quiere decir que mueve en X,Y,Z, a la velocidad anterior F1800 y en el extrusor a la velocidad F900?  ¿que decelera de  1800 a 900 en la interpolacion lineal pero el extruder sigue a su velocidad previa?...
G1 X33.086 Y104.853 E5.903
G1 X37.983 Y109.749 E6.5985


Pues esa es un poco la duda, que no tengo muy claro como interpretar las velocidades, porque segun la wiki mas o menos es como en el primer caso, fija velocidad y si en el siguiente movimiento cambia quiere decir que acelera durante ese segundo movimiento, peo no dice nada de como lo interpreta cuando la F esta entre varias coordenadas, y ademas que defina la F antes de mover para luego volver a definirla es un poco raro.

Si alguien me puede aconsejar please

Jose H

unread,
Oct 23, 2013, 1:07:40 PM10/23/13
to asrob-uc3m-impresoras-3d
Puedes probarlo tu mismo en el pronterface. Haces una cuadricula en un papel, sacas un cornometro y haces mover por ejemplo todo el diámetro de la cama y resuelves la duda de la velocidad poniendo el gcode y averiguando que pasa.

jcmjul

unread,
Oct 24, 2013, 4:28:51 AM10/24/13
to asrob-uc3m-i...@googlegroups.com
Ya, seria una opcion, pero ahora mismo mi i2 no está operativa, y la i3 no lo he terminado de montar, a sido un mes malo para mis maquinas

jcmjul

unread,
Oct 25, 2013, 2:35:25 AM10/25/13
to asrob-uc3m-i...@googlegroups.com

Bueno

Por si a alguien le interesa, aunque me temo que no por la poca afluencia que tenido el hilo, pregunté al creador del Soft sobre este tema a través de su foro, y por allí me comentaron que en Marlin, lo que pone en la wiki del GCode sobre las aceleraciones no es aplicable, también lo pone en la wiki pero no lo había visto, así que cuando en el code pone

G1 Fxxx

se define la velocidad de la interpolación para todos los motores, incluido Extrusor, solo en el caso de que el code sea del tipo:

G1 Fxxx Exx

en ese caso la velocidad solo afecta al extrusor, en Marlin no se usan aceleraciones, estas están definidas por el propio limite que fijamos en el Firm, por tanto donde en la wiki dice que

G1 F100
G1 X100 Y30 Z22 E14 F1400

Que según la Wiki, seria mover desde la posición actual hasta la definida en la segunda línea utilizando este movimiento para acelerar de 100mm/min a 1400mm/min, con Marlin nada de nada, la primera línea no hace nada, y directamente hace el segundo movimiento acelerando a la aceleración definida en el Firmware hasta alcanzar la F1400 y luego se mantiene, vamos que se mueve a escalones.

La ultima cosa, es que independientemente de donde venga la F en una línea de G1 esta afecta a todos los ejes implicados, me comenta que esto es así para las impresoras, pero el code aunque parezca redundante en ocasiones es debido a que Cura no se programó pensando en usarlo solamente en Impresoras 3D, de ahí que algunas cosas puedan parecer que no tienen sentido dentro de este uso.

Saludos

Iceflow

unread,
Oct 25, 2013, 4:11:38 AM10/25/13
to asrob-uc3m-i...@googlegroups.com
Pues la verdad es que, a mi por ejemplo, no me interesaba mucho el tema, es cierto jejejeje pero ahora que lo has explicado, la verdad, que es curioso e interesante saberlo :P

Nada como preguntar a "la fuente" correcta para salir de dudas ;)


--
 
---
Has recibido este mensaje porque estás suscrito al grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a asrob-uc3m-impreso...@googlegroups.com.
Para publicar una entrada en este grupo, envía un correo electrónico a asrob-uc3m-i...@googlegroups.com.
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

jcmjul

unread,
Oct 28, 2013, 8:02:55 AM10/28/13
to asrob-uc3m-i...@googlegroups.com
Mas nuevas sobre este tema, me comenta en los ultimos correos intercambiado, que no es cierto que lo haga a escalones como yo he dicho, sino que Marlin, emplea otro metodo de calculo de acceleracion independiente de lo que el soft le pide, es decir por lo visto emplea la velocidad del segmento actual, la velocidad del segmento siguiente y ademas la forma del siguiente segmento, tratando de ajustar las aceleraciones en funcion de las esquinas para evitar acumulaciones de materiales si los cambios de velocidad son pronunciados, en fin, que no basta con saber el GCode para ver como se comporta dinamicamente, sino que el Firmware tambien tiene los suyo.


Saludos

Daniel Santana

unread,
Jun 24, 2014, 2:00:09 PM6/24/14
to asrob-uc3m-i...@googlegroups.com
Hola muy buenas, yo me planteé en su día que marlin te deja modificar la velocidad de impresión a tiempo real. Lo que nunca llegué a averiguar es si esta modificación afecta a la aceleración también. Es decir si tienes una aceleracion por defecto de 3000mm/s2, al aumentar el parametro FR del 100% a por ejemplo 150% en el LCD con el jog, aumentan todas las velocidades en un 50%, pero se aumentará también la aceleración en un 50% ?

Iceflow

unread,
Jun 26, 2014, 7:15:52 AM6/26/14
to asrob-uc3m-i...@googlegroups.com
Supongo que la aceleracion se mantiene en su milite... eso solo toca velocidad, pero si no prueba... baja las aceleraciones en el firmware a lo bruto y a ver que pasa jejejeje


--

---
Has recibido este mensaje porque estás suscrito al grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a asrob-uc3m-impreso...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a asrob-uc3m-i...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

al

unread,
Sep 8, 2014, 4:10:43 AM9/8/14
to asrob-uc3m-i...@googlegroups.com
Hola, tengo una prusa i3 y estoy peleándome con el código.
¿alguien sabría decirme como puedo imprimir la misma pieza varias veces?
Con la opción que da el cura (botón derecho del ratón sobre la pieza) me la copia varias veces pero me las imprime todas a la vez. Lo que busco es que empiece a imprimir la siguiente cuando haya terminado la anterior. 
¿Alguien sabe como hacerlo con el código? (o con cura)
Muchas gracias

Iceflow

unread,
Sep 8, 2014, 4:44:14 AM9/8/14
to asrob-uc3m-i...@googlegroups.com
Deberias tener esta opcion:



Pregunta de curioso... porque quieres imprimir uno de cada vez? si no tienes cuidado de las distancias puede golpear uno de los objetos acabados cuando impruse el siguiente... :S


--

Jose H

unread,
Sep 8, 2014, 4:49:16 AM9/8/14
to asrob-uc3m-impresoras-3d
Si, es fácil. Aunque no tengo el cura aquí y hablo de memoria.

Es fácil porque CURA INTENTA IMPRIMIR SOLO UNA PIEZA A LA VEZ!!(porque es más rápido) Si no lo hace es porque no le dejas.

Para dejarle a cura imprimir una pieza a la vez, cura tiene que saber las dimensiones del extrusor en las 3D para saber cuánto espacio tiene que dejar entre pieza y pieza. Así sabe que al bajar para imprimir una pieza nueva no choca con la anterior.

Cura pinta las piezas en diferente color si respetan esa distancia o no. Si has especificado dimensiones(por defecto no hay nada especificado), cuando multiplicas una pieza el deja suficiente espacio automáticamente.

Me parece recordar que la forma de especificar estas distancias era en file->machine settings o algo así. Y a la distancia del extrusor la llamaba "gantry" para la altura y "head"  nosequé para el resto.

Da igual, cogéis la idea.
Reply all
Reply to author
Forward
0 new messages