Este es el manual de Studio 1.0.2, una versión anterior. El manual de la última versión

Documentación 1.0.2 Referencia

Programas de envío con el núcleo propio de Twinwright

Esta página es para quienes quieran manejar el MC-1 desde un programa de envío de código G propio (bCNC, gSender o Universal G-code Sender) en lugar de hacerlo desde Studio. El controlador del MC-1 es el núcleo propio de Twinwright, compatible con el protocolo serie de Grbl 1.1 y con las extensiones que usan los programas de envío actuales, de modo que estos programas de envío funcionan con él, con los pocos ajustes y salvedades que se indican a continuación.

Todo lo que aparece aquí se probó en el gemelo digital del MC-1, que ejecuta el mismo código de controlador que la máquina. La comprobación en una máquina real está aún por hacer. Versiones probadas: bCNC 0.9.16, gSender 1.6.4, UGS Platform 2.1.27.

Conectar

DóndeCómo
El gemelo en la ventana de StudioStudio admite un programa de envío a la vez en localhost:2323 (solo en este equipo; inicie Studio con --bind any para acceder a él desde la red). bCNC: puerto socket://localhost:2323. gSender: Ethernet, dirección 127.0.0.1, puerto 2323. UGS: tcp://localhost:2323.
El propio MC-1USB nativo: el controlador aparece como un puerto serie (COM*n* en Windows). Elija ese puerto. La velocidad en baudios no importa en USB nativo, pero algunos programas de envío piden una: 115200 funciona.

Lo que el controlador dice de sí mismo:

  • Su línea de bienvenida es Grbl 1.1f ['$' or '$HELP' for help], como la de un controlador Grbl clásico. Los programas de envío buscan una línea de bienvenida que empiece por “Grbl” para darse cuenta de que el controlador se reinició (consulte la sección 3).
  • Su nombre figura en la respuesta a $I: [VER:Twinwright 1.1f.…] y [FIRMWARE:Twinwright]. Los programas de envío que muestran el firmware muestran “Twinwright”.

Elegir el firmware en el programa de envío

Programa de envíoAjusteMotivo
bCNC 0.9.16Controller: GRBL1bCNC no lee el nombre del firmware. Probado con GRBL1.
gSender 1.6.4Default firmware: la opción distinta de GrblgSender reconoce un firmware por su nombre en $I. Nuestro controlador da su propio nombre, así que gSender usa el firmware que usted haya fijado como predeterminado. Probado con esa opción.
UGS 2.1.27Firmware: GRBLProbado: ajustes, programas, alarmas y referencia tras un reinicio, sin un Soft Reset adicional (sección 3). La otra opción de firmware de UGS también funciona, pero necesita un Soft Reset más tras un reinicio; el desplazamiento manual (jog) se probó solo con esa opción.

Tras una alarma o un reinicio

  • Parada de emergencia. La parada de emergencia del MC-1 abre el contactor de potencia. Suéltela, pulse el botón Start de la máquina, reinicie después desde el programa de envío y haga la referencia. Hasta que se pulsa Start, la alarma (ALARM:10) no se borra.
  • ALARM:11 (se requiere hacer la referencia). Haga la referencia ($H). El desbloqueo con $X se rechaza (error:46).
  • ALARM:2 (límite por software). El programa pidió un movimiento fuera del recorrido. La referencia deja Z en el extremo superior de su recorrido (Z de máquina 0), de modo que cualquier movimiento por encima de ese punto, como G53 G0 Z5, provoca ALARM:2. Reinicie y después haga la referencia o desbloquee.
  • bCNC se recupera tras cualquier reinicio: ve la línea de bienvenida “Grbl” y olvida las líneas que aún estaban en camino, así que $H se envía.
  • bCNC tras Stop. El Stop de bCNC es una retención de avance seguida de un reinicio. Después, bCNC devuelve al controlador los modos que tenía antes (sistema de coordenadas, unidades, compensación de longitud de herramienta) en una o dos líneas, y en algunos casos el controlador las rechaza, como hacen otros controladores Grbl: con una compensación de longitud de herramienta (G43.1) activa, la línea recibe error:24 (bCNC envía un G43.1Z... propio tras su primer Stop, de modo que a partir del segundo Stop ocurre siempre); bajo G80, G43.1Z... recibe error:31; con el escalado (G51) activo, G51:X recibe error:1. Tras un error, cada línea de código G que sigue recibe el mismo error hasta que llega una línea vacía, un comando $ o un reinicio. Por tanto, tras un Stop, compruebe el sistema de coordenadas, las unidades y la compensación de longitud de herramienta con $G y $# antes de hacer un desplazamiento manual o de continuar. Si son incorrectos, vuelva a fijar el origen de pieza y vuelva a medir la longitud de la herramienta (probado en el gemelo, 2026-10-06).
  • UGS con su otra opción de firmware. Tras un reinicio que UGS no envió él mismo, por ejemplo uno desde la ventana de Studio o un reinicio del propio controlador, pulse Soft Reset una vez más en UGS antes de Home. Hasta entonces Home no hace nada. Con esa opción UGS solo reconoce como reinicio otra línea de bienvenida. Un reinicio desde el propio botón Soft Reset de UGS funciona bien. En el propio MC-1 estos reinicios son raros: no tiene entrada de reinicio y solo un host USB. Con el firmware configurado como “GRBL” esto no ocurre: tras un reinicio así UGS muestra CONNECTING y Home funciona al instante (probado en el gemelo, 2026-10-06).

Cambios de herramienta (M6)

Ninguno de los tres programas de envío, con sus ajustes por defecto, permite que el MC-1 cambie la herramienta y mida la nueva:

Programa de envíoPor defectoQué hacer
bCNCSe salta todas las líneas M6: los cortes de la herramienta siguiente se hacen con la herramienta que aún está en el husillo.Configure su cambio de herramienta en Manual tool change (TLO) y mida en el sensor de longitud de herramienta del MC-1 (sección 5).
gSenderCambio de herramienta “Ignore”: M6 se envía como comentario y el programa no se detiene.Configure su cambio de herramienta en Fixed Tool Sensor en el sensor de longitud de herramienta del MC-1 (sección 5).
UGSGestiona M6 por sí mismo: retrae, detiene el husillo y le pide que cambie la herramienta, pero nunca la mide. Una herramienta más larga corta entonces demasiado profundo y, en una máquina real, puede chocar con la pieza.Ejecute una herramienta por programa y fije la longitud de la herramienta o el origen de pieza antes de cada una, o use Studio para los programas con cambios de herramienta.

Más sobre UGS y M6:

  • También se detiene en un “M6” dentro de un comentario, como el ( M6 T1 ) de FreeCAD.
  • Un segundo M6 que llega justo después de un cambio de herramienta puede colarse hasta el controlador. El controlador espera entonces en el estado Tool una confirmación que UGS nunca envía, y ningún botón de la ventana de UGS funciona ya. En el MC-1 solo la parada de emergencia lo termina: púlsela, suéltela, pulse Start, y después Soft Reset y Home en UGS.
  • Si el controlador se reinicia durante un trabajo de UGS antes de que UGS haya llegado a un M6, UGS puede dar el trabajo por terminado, pero su diálogo de cambio de herramienta sigue apareciendo. Cerrarlo puede hacer que todo el programa vuelva a empezar desde el principio. Tras un reinicio a mitad de un trabajo, cierre el archivo en UGS antes de continuar.

Medir la longitud de herramienta en el sensor de longitud de herramienta del MC-1

El sensor de longitud de herramienta está en la parte trasera izquierda de la mesa; G59.3 se guarda justo encima de él.

  • bCNC, Manual tool change (TLO). Posición de cambio de herramienta encima del sensor de longitud de herramienta. Posición de palpado G59.3. Distancia de palpado 50 mm, búsqueda 200 mm/min, lento 25 mm/min ($342–$344 del MC-1), comando G38.2. Mida la primera herramienta con “Calibrate” antes de ejecutar el programa. Después bCNC fija G43.1 para cada herramienta nueva.
  • gSender, Fixed Tool Sensor. Ubicación del sensor G59.3. Mida la herramienta inicial en el asistente. Después gSender desplaza la Z de pieza para cada herramienta nueva (G10 L20) en lugar de usar una compensación de longitud de herramienta. Toma la longitud de donde se detuvo el eje tras el contacto, no del punto de disparo que indica el controlador, por lo que cada cambio puede quedar algo desviado. En el gemelo, ejecute los cambios de herramienta a velocidad 1×: gSender lee esa posición tras una pausa corta fija, y un gemelo que funciona más rápido puede darle una posición anterior a la parada.
  • Empiece al menos 0.1 mm por debajo del extremo superior de Z (Z de máquina −0.1 o menos) cuando comience el cambio de herramienta. Ambos programas de envío vuelven a esa altura tras medir. Si se empieza justo en el extremo superior, la pequeña dispersión de una medición puede situar ese retorno por encima del límite por software, y el trabajo se detiene con ALARM:2 antes de cortar.

Fijar el origen de pieza con un palpador

  • UGS (su módulo de palpado) calcula el origen de pieza a partir de los puntos de disparo que indica el controlador ([PRB:]). Esta es la forma correcta.
  • gSender (palpador 3D) y bCNC (su página de palpado y después sus botones Z=0 / X / Y) fijan el origen de pieza donde se detuvieron los ejes tras el contacto. La máquina siempre sigue un poco más allá del disparo antes de detenerse, y cuanto más rápido es el contacto final, más lejos llega. Use un contacto final lento, o fije el origen de pieza con los ciclos de palpado de Studio, que usan los puntos de disparo.
  • El centro de agujero de UGS (el Hole Center de su módulo de palpado): desde donde usted deja el palpador, palpa -X, +X, -Y y +Y, cada uno a la mitad del diámetro del agujero que usted introduce, y fija el centro a medio camino entre los puntos de disparo de los contactos lentos. El alcance depende de ese diámetro: el punto de partida puede estar como máximo a (diámetro introducido - diámetro real del agujero) / 2 + el radio de la bola respecto del centro. Con el propio diámetro del agujero introducido, eso es solo el radio de la bola (1 mm para una bola de 2 mm); introduzca uno unos mm mayor (24 a 26 para un agujero de 20 mm) para dejar margen al colocar el palpador a ojo.
  • Cuando el centro de agujero de UGS no llega a la pared (hallazgo 192, comportamiento propio de UGS): ese palpado termina en ALARM:5 y UGS se detiene. Pero antes de palpar fijó X0 Y0 de G54 en el punto de partida y, como el ciclo no terminó, G54 se queda ahí. Tras desbloquear, vuelva a fijar el origen de pieza antes de cortar. Su ciclo de palpado también queda a medias: desconecte y vuelva a conectar antes de palpar de nuevo. Además toma por un contacto un punto que el controlador indica como no tocado ([PRB:...:0]).
  • Calibre primero el palpador (ciclos de palpado de Studio: un anillo patrón). Un palpador sin calibrar mide cada agujero más grande y cada saliente más pequeño en el doble de su recorrido previo.

Otras cosas que conviene saber

  • bCNC por la red. En Windows, bCNC lee una conexión TCP solo cada 2 segundos aproximadamente, por lo que su pantalla puede mostrar datos de hace 2 segundos. “Idle” en bCNC no significa que la máquina se haya detenido. Una conexión USB no tiene este retraso.
  • gSender, M0. Un M0 dentro de las 10 primeras líneas de un programa no hace pausa (gSender lo convierte en un comentario). M1 siempre hace pausa.
  • gSender, desplazamiento manual continuo. Mantener pulsado un botón de desplazamiento manual se rechaza en el MC-1 (error:15): gSender pide un desplazamiento largo más allá del recorrido. Haga el desplazamiento por pasos. En algunos controladores Grbl, $40=1 (limitar los comandos de desplazamiento manual) termina los desplazamientos largos en los límites por software en lugar de rechazarlos; el controlador del MC-1 todavía no actúa según ese ajuste y sigue rechazándolos (probado con gSender en el gemelo, 2026-10-06).
  • UGS, líneas largas. UGS nunca envía una línea de más de 127 caracteres: el trabajo se detiene sin ningún mensaje. Mantenga las líneas más cortas (UGS elimina antes los comentarios).
  • UGS, M30. UGS elimina M30. Un programa que cuenta con M30 para detener el husillo y el refrigerante los deja en marcha: termine los programas con M5 y M9 antes de M30.
  • UGS, comentarios. Si una línea tiene dos comentarios, UGS elimina también el código que hay entre ellos.
  • Desconectar durante un trabajo. El controlador sigue ejecutando las líneas que ya tiene. gSender y UGS no envían ninguna parada al desconectar, así que la máquina sigue funcionando, con el husillo girando. Detenga el trabajo antes de desconectar. bCNC hace una retención y un reinicio antes de cerrar la conexión.
  • Comentarios con caracteres no ASCII (como los caracteres chinos, “Ø”, “–”): los tres programas de envío eliminan los comentarios antes de enviar, de modo que estos caracteres nunca llegan al controlador. El propio controlador lee como texto el texto UTF-8 de los comentarios y de (MSG,...), nunca como un comando en tiempo real.