Diferencia entre revisiones de «Desarrollo Electrónica DIYLILCNC»

De Casiopea
Línea 305: Línea 305:


[[Archivo:1.0.6 command tableDIYLILCNC.png | 700 px | center]]
[[Archivo:1.0.6 command tableDIYLILCNC.png | 700 px | center]]
Universal GcodeSender es una interfaz gráfica de usuario con todas las funciones, desarrollado por @wwinder. Posee visualizador de código g y tiene un completo control y funcionalidad de comentarios para las características de alto nivel de Grbl. Está escrito en Java, lo que significa que se puede ejecutar en cualquier máquina con Java incluyendo la RaspberryPi. El grupo Grbl trabaja en estrecha colaboración con este proyecto y recomienda encarecidamente utilizar esta interfaz gráfica de usuario. Si usted encuentra cualquier problema o desea solicitar más características GUI, @wwinder ha hecho un trabajo maravilloso en la realización de muchas de las peticiones en el foro de la Wiki de GRBL.
Ventana de visualización de código g en “Universal GcodeSender”.
[[Archivo: 1.0.6 visualizerDIYLILCNC.png |700px |center]]

Revisión del 22:12 21 nov 2013





Caso de Estudio
NombreViviana Acevedo
AutorJuan José Peters
PeríodoMarzo«Marzo» no es un número.-Diciembre«Diciembre» no es un número.
Palabras ClaveElectrónica, Juan José Peters, Código G, GRBL, DIYLILCNC, Drivers, Arduino, cnt, MadLab
RelacionadoCNC_DIY
Estudiado enCNC_DIY
Estudiado porJuan José Peters


Artículos Previos

Desarrollados por el MADLAB

  1. Proyecto DIYLILCNC
  2. Proyecto RepRap
  3. CNC_DIY


Desarrollo Electrónica DIYLILCNC

Especificaciones Técnicas

Fresadora DIYLILCNC

IMG 2797limpio.jpg

Alimentación

Corriente de alimentación………………10.5A.

Tensión de alimentación…………..... 220V ±10% 50 – 60 Hz. Monofásica.

Potencia instalada………………………(no calculada).

Fusibles provistos

Automático general…………………………… 15A a 220V/50Hz.

Fusible transformador 220/110V dremel……………………………………… 3A.

Área de Trabajo

Recorrido eje X (Longitudinalmente)…………………………………… 714mm.

Recorrido eje Y (Transversalmente)……………………………………….725mm.

Recorrido eje Z (Verticalmente)……………………………………………200mm.

Dimensiones

Dimensiones de la máquina (L * P * H)……………………760 x 1000 x 495 mm.

Altura de la mesa……………………………………812 mm.

Peso……………………………………………………………………… 60 Kg.

Accionamiento de los ejes

Motores de los ejes……………………………..…... Motores paso a paso bipolares.

Fuerza de empuje de los carros X e Y……………………………………….2.1 Nm.

Guiado de los carros X e ……………………correa dentada, patines de rodamiento.

Fuerza de empuje del carro Z……….……………………….……………… 4.3 Nm.

Guiado del carro Z………….…eje sinfín con acople simple, patines de rodamiento.

Rieles……………………...……………………………..…………. Barra cilíndrica.

Otros

Materiales principales de la máquina…………..…………. Trupan, terciado marino.

Precisión de tallado real………………………….….…..………………….. 0.1 mm. (Tallado varía para distintas durezas de material)

Exactitud en repetitividad de posicionamiento………....…..…….……….. 0.08 mm.

Velocidad de trabajo…………………………..……...………….. 0 – 2000 mm/min.

Avance rápido………………………………..………………………. 5000 mm/min.

Materiales aceptables para procesar: PVC, PCB, Plástico, Madera, latón y aluminio.



Especificaciones de motores de avance

Planosmaq1.png

Características físicas

Modelo…………………………………………….…….….23HS8430 (NEMA 23).

Configuración de bobinas………..…………………..…………….……….. Bipolar.

Resolución…………………200 pasos/rev. (400 pasos/rev. configurado por driver).

Ángulo de paso………...……………… 1.8° por paso (0.9° configurado por driver).

Largo…………………..……………………………………………..………. 76mm.

Ancho………………………...………………………….………………… 56.4 mm.

Alto…………………………..……………………………….…………… 56.4 mm.

Cables…………………………………..……………………………….….. 4 lineas.

Peso…………………………………………...……………………..………. 1.1 Kg.


Características eléctricas

Corriente de alimentación máxima…………….……………………………..…. 3A.

Resistencia de bobinas………………………………………………………. 1 Ohm.

Impedancia de Bobinas…………………………………...………………… 3.5 mH.


Características mecánicas

Par motor máximo a rotor bloqueado………………………………………. 1.8 Nm.

Torque de detención…………………………………………………….…… 6N/cm.

Momento de inercia del rotor……………………………………..……. 440 gr/cm2.



Especificaciones de motor de fresado

Planosmaq2diylilcnc.png

Características

Marca…………………………………..………………..………………….. Dremel.

Modelo………………………………..……………………………………….. 4000.

Tensión………………………………..………………………………………. 110V.

Potencia nominal de entrada……….…..…… 175W (protegido contra sobrecargas).

Velocidad de giro en vacio…………….………. 5.000 – 35.000 rpm. Seleccionable.

Abertura de mandril…………………… 1/32 a 1/8 de pulgada (ver manual dremel).

Peso ………………………….……………………………………..……… 0.66 Kg.

Configuración de pines en Arduino para GRBL

ArduinopreparadopinesDIYLILCNC.png

Características

Marca………………………………………………………………………Arduino.

Modelo…………………………………………………..…. Arduino UNO Rev. 3.

Microcontrolador………………………………………………..….. ATmega328P.

Tensión de operación……………………………………..………….…… 5V DC.

Tensión fuente de alimentación externa…………………….…….. 7 – 12 V DC.

Pines digitales (I/O)………………………… 14 (6 de ellos configurables a PWM).

Pines de entrada analógicos………………………………………………..……. 6.

Memoria flash…………. 32 KB (de los cuales 0.5 KB son usados por bootloader).

SRAM……………………………………………………………….………… 2KB.

EEPROM……………………………………………………………………… 1KB.

Velocidad de cristal………………………………………………..……… 16Mhz.

Cantidad máxima de motores…. hasta 3 motores (configuración software GRBL).

Interfase/comunicación………………………………………………..……. USB.

Firmware utilizado………………………………………………...………. Grbl.hex.

GRBL: SOFTWARE DE CONTROL NUMÉRICO COMPUTARIZADO PARA DIYLILCNC

Definición

GRBL es un controlador de fresadora CNC de alto rendimiento, libre y de código abierto, escrito en C optimizado y que se ejecuta en un Arduino.

Usuarios

Los ususarios ideales son los fabricantes que hacen fresado y necesitan un agradable y simple controlador para su sistema (y que pueda ser manejado amigablemente por el usuario, en una interfaz gráfica). Las personas que detestan el desorden de su espacio de trabajo con el legado de las torres de PC sólo para usar el puerto paralelo. Inventores que necesitan un controlador escrito en un ordenado, C modular como base para su proyecto.

Características agradables

GRBL está listo para la producción de poca potencia. Podemos usarla para todo nuestro fresado, ejecutándolo desde nuestros ordenadores portátiles utilizando un script de consola simple (incluido) para transmitir el código G. Está escrito en C optimizado utilizando todas las características inteligentes de los chips ATmega328P del Arduino para lograr la sincronización exacta y la operación asincrónica. Es capaz de mantener una frecuencia de pasos de más de 30 kHz y ofrece un flujo limpio, libre de jitter (variabilidad en los cantos de subida y bajada) de impulsos de control. Grbl es para máquinas de tres ejes. No hay ejes de rotación - simplemente X, Y y Z. El intérprete de código G implementa un subconjunto de la norma rs274/ngc NIST y se prueba con la salida de un número de Herramientas CAM sin problemas. Movimiento lineal, circular y helicoidal son totalmente compatibles.

G-Codes soportados en v0.7:

  1. Movimiento lineal (G0, G1)
  2. Movimientos de arco (G2, G3)
  3. Dwell (G4)
  4. Selección del plano (G17, G18, G19)
  5. Unidades (G20, G21)
  6. Go Homing * (G28, G30) * [realizado incorrectamente el ciclo homing]
  7. Modos Distancia (G90, G91)
  8. Modos de feedrate (G93, G94)
  9. Offset Coordinado (G92)
  10. Control de giro del cabezal (M3, M4, M5)
  11. Otros (G53, G80).

G-Codes soportados en v0.8

  1. Trabaja Sistemas de Coordenadas (G54, G55, G56, G57, G58, G59)
  2. Seleccionar offset de coordenadas de trabajo (G10 L2, G10 L20)
  3. Ir al punto previamente definido (G28, G30)
  4. Establecer posición predefinidos (G28.1, G30.1)
  5. Borrar offsets del sistema de coordenadas (G92.1)
  6. Pausa de programa y fin (M0, M2, M30)
  7. Control de enfriamiento (M8, M9)

La mayoría de las opciones de configuración se pueden establecer en tiempo de ejecución y se guardan en la memoria EEPROM entre sesiones e incluso conservadas entre las diferentes versiones de Grbl cuando se actualiza el firmware. Para obtener descripciones de estos códigos G, vaya a directrices de código g NIST. LinuxCNC.org también proporciona gran documentación de estos también. (G-codes) (M-codes) (Otros códigos).


Manejo de aceleración

La característica más solicitada que realmente queríamos que tuviera un agradable y avanzado administrador de aceleración look-ahead (Acelerador Anticipado, Predictivo). En las primeras versiones, algunos usuarios no pudieron ejecutar sus CNC a toda velocidad sin algún tipo de alivio. El administrador de máximas aceleraciones de GRBL con planificador look-ahead facilitará en los feed rares rápidos y frenará antes de las esquinas para un funcionamiento libre rápido pero jerk. En esto hubo mucho trabajo para asegurarse de que los movimientos sean sólidos. Aquí hay un enlace que describe el algoritmo de curvas de alta velocidad.


Limitaciones de diseño

Hemos limitado el apoyo de G-CODE para diseño. GRBL soporta todas las operaciones comunes que se encuentran en la salida de las herramientas CAM, pero deja algunos codificadores humanos de código g frustrados. No hay variables, no hay correcciones de herramienta, sin funciones, sin ciclos fijos, no hay aritmética y no hay estructuras de control. Sólo las operaciones básicas y capacidades de la máquina. Algo más complejo, creemos que las interfaces pueden manejar los con bastante facilidad y traducirlos para GRBL.


Nuevas características de GRBL V0.8

Han pasado muchas cosas desde la v0.7. Estamos empujando muy duro para crear un controlador CNC simple, pero potente para el venerable Arduino. He aquí una lista de las cosas nuevas que han llegado a la v0.8.

  1. Comandos multi-tarea de tiempo de ejecución: Pausa de un programa (Feed Hold) ejecutado con deceleración controlada para no perder la ubicación, reanudará después de la pausa del programa, Reinicia, y reporta los estados actuales.
  2. Advanced Cycle Homing: Un montón de opciones de configuración para los diferentes tipos de máquinas de como deben moverse los ejes cuando busca sus direcciones. Los interruptores de límite también se pueden usar como Hard limit también.
  3. Datos de sistema de coordenadas persistente: sistemas de coordenadas de trabajo (G54-G59) y de posiciones predefinidas (G28, G30) se llevan a cabo en la EEPROM, por lo que siempre se va a establecer como la última vez que los ha ajustado.
  4. Comprobación de modo G-Code: configure Grbl para ejecutar programas sin mover nada en la máquina, así que usted puede comprobar si usted tiene o no los errores que Grbl que no te guste.
  5. Mejor retroalimentación: informes de posición en tiempo real, lo que está haciendo Grbl, el estado del analizador de código g, y los valores coordinados de offset almacenados.
  6. Bloques de inicio: Auto-mágicamente el usuario ejecuta bloques de código g en el inicio o reinicio del programa. Se puede utilizar para establecer los valores predeterminados de la máquina.
  7. Pin-outs: Cycle start, Feed Hold, y abortar están ahora puestas en los pines de salida al A0, A1, A2. Sólo tiene que conectar un interruptor normalmente abierto al pin correspondiente y tierra. Eso es todo!
  8. Analizador de código g más robusto con comprobación de errores de realimentación.

GRBL está licenciado bajo la Licencia Pública General GNU y desarrollado por Simen Svale Skogsrud y Sungeun K. Jeon.


Cargar firmware de GRBL en Arduino

Esta sección está destinada a proporcionar diversas instrucciones sobre cómo cargar grbl a un Arduino. GRBL es un programa multiplataforma, por lo que puede ser utilizado tanto en Windows, Mac o Linux. Se presentará a continuación la instalación de GRBL en Windows (Para instalar GRBL en otras distribuciones de sistema operativo refiérase a la WIKI del desarrollador del software

Instalador.

Para Windows Cargar un archivo hex a tu Arduino es simple en Windows. En primer lugar, conectar el Arduino a cualquier puerto USB de su ordenador con Windows y luego determinar el puerto COM asignado del Arduino. Para determinar el puerto COM de la placa Arduino:

  • Windows XP: Haga clic derecho sobre " Mi PC ", seleccionar" Propiedades ", seleccione" Administrador de dispositivos ".
  • Windows 7: Haga clic en "Inicio" - haga clic derecho en > "ordenador "-> Seleccione" Administrar "-> Seleccione" Administrador de dispositivos "del panel izquierdo.
  • En el árbol, expanda " Puertos (COM & LPT) "
  • Tu Arduino será el puerto serie USB (COMX), donde la "X" representa el número de COM, por ejemplo COM6.
  • Si hay varios puertos USB de serie, haga clic en cada uno de ellos y comprobar el fabricante, el Arduino será "FTDI".

Para actualizar un hexágono grbl a un Arduino:

  1. Descargar y extraer XLoader .
  2. Abrir XLoader y seleccione el puerto COM de su Arduino desde el menú desplegable en la parte inferior izquierda.
  3. Seleccione el dispositivo apropiado en la lista desplegable titulada "Dispositivo".
  4. Compruebe que Xloader establece la velocidad de transmisión correcta del dispositivo: 57.600 para Duemilanove / Nano (ATmega 328) o 115200 para Uno (ATmega 328).
  5. Ahora utilice el botón Examinar en la parte superior derecha del formulario para buscar en el archivo hex grbl (puede descargarlo en ).
  6. Una vez seleccionado el archivo .hex grbl, haga clic en "Upload"

Tras hacer clic en cargar, verás las luces RX / TX parpadear intensamente en el Arduino. El proceso de carga general toma alrededor de 10 segundos para finalizar. Una vez finalizado, aparecerá un mensaje en la esquina inferior izquierda de XLoader que le dirá cuántos bytes se han subido. Si hay un error, se mostraría en lugar de los bytes totales cargados. Los pasos deben ser similares y puede ser hecho a través de la línea de comandos.


Conexión de driver de motores paso a paso a Arduino GRBL

Esta es una interfaz bastante sencilla para una máquina de eje 3. La "señal de tierra" para cada driver se conectan entre sí y se atan al pin GND del Arduino. No hay que confundir esto con la tierra del motor o cualquier otro tipo de conexión a tierra en el Driver CNC DIY. El pin 'Step' para los ejes X, Y y Z se unen a los pines digitales 2, 3 y 4 respectivamente. El pin 'Dir' para los ejes X, Y y Z se unen a los pines digitales 5, 6 y 7, respectivamente.

Conexión de drivers de motores paso a paso en Arduino

MapeoArdtoMAqDIYLILCNC.png



Interfáz gráfica de usuario (GUI) para GRBL

GRBL permite utilizar el software de Arduino (Arduino IDE) y otras interfaces de terminal serial para conectarse con GRBL (PuTTY, CoolTerm, etc.). Sin embargo, para aprovechar plenamente todas las capacidades de Grbl, los desarrolladores del software recomiendan utilizar uno de los tantos GUIs que los usuarios han escrito para transmitir sus programas en código G para Grbl. Uno de estos es la GUI llamada “Universal GcodeSender”, la cual se está utilizando en la máquina DIYLILCNC en su versión 1.0.6.

Interfáz gráfica de usuario “Universal GcodeSender”.

1.0.6 command tableDIYLILCNC.png

Universal GcodeSender es una interfaz gráfica de usuario con todas las funciones, desarrollado por @wwinder. Posee visualizador de código g y tiene un completo control y funcionalidad de comentarios para las características de alto nivel de Grbl. Está escrito en Java, lo que significa que se puede ejecutar en cualquier máquina con Java incluyendo la RaspberryPi. El grupo Grbl trabaja en estrecha colaboración con este proyecto y recomienda encarecidamente utilizar esta interfaz gráfica de usuario. Si usted encuentra cualquier problema o desea solicitar más características GUI, @wwinder ha hecho un trabajo maravilloso en la realización de muchas de las peticiones en el foro de la Wiki de GRBL.

Ventana de visualización de código g en “Universal GcodeSender”.

1.0.6 visualizerDIYLILCNC.png