¿Hay un código G para esperar?

20

Mi impresora tiene una función de nivelación automática que funciona al tocar la placa de construcción con la punta de la boquilla.

Comencé a usar una superficie BuildTak y BuildTak se daña cuando empujas una boquilla caliente dentro de ella.

Así que edité el código G de inicio para ejecutar la nivelación automática antes de calentar el hotend

Pero el ABS no se adhiere a la superficie de construcción a menos que precaliente el hotend y espere aproximadamente un minuto.

Así que ahora estoy buscando un comando de código G para poner al final del código G de inicio que hará que la impresora espere un minuto antes de imprimir

La secuencia que estoy buscando es:

  • Calentar la cama
  • Nivel automático
  • Eleve el hotend un poco para que no toque la placa de construcción
  • Calienta el hotend
  • Espera un minuto (esa es la única parte que falta, todo lo demás funciona)
  • Comience a imprimir

¿Alguna forma de insertar un retraso en el código G?

Estoy usando Cura para cortar / imprimir, mi impresora es Robo3D R1 +

Nir
fuente
1
G4 P60000 como se explica aquí: reprap.org/wiki/Gcode#G4:_Dwell
Lars Pötter
Hola, @Nir! Entonces, ¿desea establecer la temperatura del hotend y esperar hasta que esté caliente antes de imprimir (al final de start.gcode)? En general, dudo que realmente necesite establecer explícitamente una demora: ¡es básicamente un truco para superar (no solucionar) el problema!
Tormod Haugene
@ LarsPötter ¡Eso debería ser una respuesta, no un comentario!
Tom van der Zanden
@ LarsPötter, gracias, si publicas tu comentario como respuesta, lo aceptaré
Nir
1
@Nir, ya veo. En ese caso, probablemente tenga razón en que agregar un retraso o "Espera" (con G4) es el camino a seguir. :-)
Tormod Haugene

Respuestas:

19

El código G para retrasar es G4.

G4 P60000esperará un minuto El Pes en milisegundos. Algunos firmware también aceptan un Sparámetro que tiene los segundos. Entonces, si es compatible, G4 S60haría lo mismo.

Los detalles de este y todos los demás códigos G se documentan aquí .

Lars Pötter
fuente
En mi código G final, apagué el extremo caliente y espero varios minutos antes de apagar el ventilador. Recibía errores de tiempo de espera de comunicaciones y el ventilador nunca se apagaba del código (usando Monoprice Select Mini con Octoprint). Si esto ocurre antes de la impresión, no se imprimirá en absoluto. Lo resolví simplemente dividiéndolo en una serie de retrasos más cortos.
mbmcavoy
Para cncjs, el comando es G4 P0.5 durante medio segundo, por ejemplo. es decir, es un flotador, no un int.
Gavin Simpson
entonces la P realmente se comporta como el parámetro S (segundos en lugar de milisegundos). ¿Puede también poner esa información aquí: reprap.org/wiki/G-code#G4:_Dwell
Lars Pötter
14

Una solución alternativa al uso de un retraso duro con el comando de permanencia G4 es aumentar el tiempo que la temperatura establecida con M109 debe mantenerse antes de continuar con el siguiente comando.

En Marlin, esta configuración se llama TEMP_RESIDENCY_TIMEy se puede encontrar alrededor de la línea 150 en Configuration.h. Por defecto, esto se establece en 5 segundos, que se ve así:

// Actual temperature must be close to target for this long before M109 returns success
#define TEMP_RESIDENCY_TIME 5  // (seconds)

Si aumentar esta configuración resuelve su problema exacto, no puedo decirlo, pero valdría la pena analizarlo.

Tormod Haugene
fuente
1

Estoy usando este código para mis impresiones.

    G29 ; Autonivel
    M190 S35 ; set bed temperature
    G1 Z4 F240 ; lift nozzle
    M109 S195 ; wait for temperature to be reached
    G21 ; set units to millimeters
    G90 ; use absolute coordinates
    M82 ; use absolute distances for extrusion
    M104 S210 ; set temperature
    G92 E0
G1 E-1.5000 F1800
G1 Z0.225 F240

En M190 S35, la boquilla todavía está en la posición baja (1,2 mm), luego pasa a 4 mm y luego espera la temperatura del extrusor Ex. 195 ° C; cuando el extrusor alcanza los 195 ° C durante 10 segundos, las impresoras comienzan a imprimir pasando la boquilla a 0.22 mm mientras la boquilla alcanza la segunda temperatura de 210 ° C. En este momento me permite limpiar la boquilla y normalizar las temperaturas para obtener buenas impresiones.

Nota: para evitar que la boquilla permanezca mucho tiempo en posición baja (1,2 mm), normalmente precaliento la cama a 35 ° C. Algunas veces calentar la cama lleva más tiempo que calentar la boquilla. Esta es la razón principal por la que prefiero precalentar la impresora.

Fernando Baltazar
fuente