Plotter casero: consejos para principiantes, trabajar con firmware grbl

Mientras estudiaba en la universidad un tema tan interesante como los circuitos, se me ocurrió hacer como parte del proyecto del curso "Plotter de dos ejes en papel con la cabeza de una pluma estilográfica basada en Arduino". Cuando comencé a trabajar, yo mismo imaginé vagamente el desarrollo de la parte eléctrica del proyecto, así como la mecánica. Nunca ha habido tal experiencia en mi vida. Es por eso que encontré en la red, clasificando muchos recursos, lo que me pareció el tutorial más simple y entendible, y decidí seguirlo exactamente. Sin embargo, pronto se hizo evidente que todo lo simple a primera vista no era lo suficientemente detallado para un "artesano" como yo. Por lo tanto, en las preguntas que quedaron detrás de escena, tuve que improvisar, no siempre con éxito, como resultó más tarde. Era un poco de fondo. Ahora me gustaría compartir mi valiosa experiencia en una serie de cuestiones clave. No daré instrucciones completamente nuevas con mi versión de este dispositivo, porque en Internet, así que soluciones más exitosas.


Contenido


  1. Construcción
  2. Circuito electrico
  3. Software

1. construcción



El diseño que elegí estaba hecho de madera contrachapada. Como ejes, se utilizaron pernos, que fueron rotados por motores paso a paso, y debido a esto, la plataforma en las tuercas se movió a lo largo del eje. Un eje estaba unido a la plataforma con el otro con un borde. De la fabricación de todo esto, puedo decir:


  • Si el eje superior no tiene soporte en ambos lados, pero está sujeto, como el mío, con un solo borde, entonces debe pensar con anticipación en el equilibrio de los ejes. El superior inevitablemente se inclinará, si no es que en absoluto, abrumará toda la estructura con el peso de su borde "colgante".
  • Las líneas del patrón pueden ir en ondas a lo largo del tamaño de la rosca del espárrago, así como también debido a la fluctuación de la estructura durante la operación.
  • Dos de los problemas anteriores conducen a una cosa más: el lápiz (en mi caso, el lápiz) puede escribir de manera desigual en diferentes partes de la página.
  • El peso y las dimensiones del dispositivo también deben calcularse de antemano, para que luego no quede claro que sus motores no tiren de dicha carga.
  • Y un detalle más importante: es mejor usar tornillos, clavos, etc. siempre que sea posible para la fijación. Los diseños en pegamento, incluso los más confiables, tienden a desmoronarse en el momento más inesperado. Y en algunos casos, después de ensamblar la parte principal, será muy difícil volver al “pegado” de piezas internas pequeñas, pero muy importantes, sin desarmar las partes terminadas.
  • Si usa pegamento en algún lugar, observe con mucho cuidado que no caiga en las partes móviles de la estructura. Incluso una pequeña gota puede detener el mecanismo y dejarlo inutilizable.

2. El circuito eléctrico.




El circuito en sí era extremadamente simple y ni siquiera requería soldadura. Incluso tomé el CNC Shield terminado específicamente para trabajar con CNC. Sin embargo, hay algunos matices aquí:


  • Mi análogo chino de Arduino, con nombre en código WAVGAT, para un segmento se negó a parpadear como un Arduino Uno R3 normal. Se afirmó en Internet que tales placas son totalmente compatibles con todo el software arduino, pero para trabajar con él a través del IDE era necesario descargar una biblioteca de actualización WAVGAT por separado. Así que logré subir el boceto a la pizarra, pero el software en sí no quería funcionar correctamente. Probé todas las opciones para solucionar estos problemas (sobrecargué el gestor de arranque de la placa, cambié los archivos de las placas y las constantes de la biblioteca con software), pero el resultado siguió siendo el mismo. Aparentemente, es para esta tarea que tendrás que obtener el clásico Arduino.
  • Otro problema fue el lanzamiento de motores paso a paso. Ellos tararearon, calentaron, a pesar de los conductores fríos, pero no se movieron. Comprobando metódicamente la cadena elemento por elemento me di cuenta de que el problema está en su conexión. El hecho es que esta vez los chinos también eran originales. Resultó que los cables del motor contienen pares cruzados AB. Si los pares de un motor de tienda ordinario fueron del orden de 2B-2A-1A-1B, entonces, por alguna razón, los chinos tenían 2V-1A-2A-1B. Esto se puede determinar "seleccionando" el circuito con un multímetro en el modo correspondiente: las salidas AB emparejadas están chirriando.
  • Y, sin embargo, resultó que el servocontrolador inofensivo de baja potencia es bastante capaz de "quemar" irremediablemente toda la placa arduino con una carga excesiva prolongada sobre ella. En este caso, la placa continuará funcionando, pero a veces se interrumpirá en el medio, deteniéndose en los comandos del servo.
  • Por lo tanto, controle la temperatura de los dispositivos durante el funcionamiento para evitar consecuencias fatales.

3. Software


Hay opciones:


  • La forma más fácil de obtener un maravilloso programa simple de BenBox. Está especializado específicamente para trabajar con CNC y es fácil de instalar y manejar. La desventaja de esta opción son sus limitaciones. En primer lugar, el firmware para la placa en el paquete de software ya está contenido en el archivo hexadecimal, por lo que hay problemas al editarlo. Y la funcionalidad en general no es muy extensa, parece un simple editor gráfico. Si no desea entrar en detalles sobre el funcionamiento de todo este mecanismo, puede trabajar con esta opción.
  • Un poco más complicado, pero también más prometedor es trabajar a través del firmware GRBL. Esta biblioteca se puede tomar fácilmente en Internet y ofrece muchas más funciones que BenBox. Pero para trabajar a través de este mecanismo, debe lidiar con la configuración inicial de todo esto.
    1. Por lo tanto, descargue y desempaquete la biblioteca de servos grbl. Ahora puede subirlo al tablero a través del IDE, simplemente al encontrarlo entre los ejemplos.
    2. Para enviar comandos directamente al dispositivo, necesitará Universal Gcode Sender (u otro software similar). Después de instalarlo en una computadora, abrimos el canal de comunicación con la placa a través del puerto com al que está conectada la placa.
    3. Para la configuración inicial y posterior de la placa en la línea de comando de la aplicación, escriba "$$". Con este comando obtenemos un conjunto completo de configuraciones básicas de la placa, que se pueden cambiar estableciendo los parámetros necesarios. Por ejemplo, los comandos "$ 110 = 380" y "$ 111 = 380" establecen la velocidad de los motores en los ejes X e Y a 380 mm \ min. Los ajustes importantes son la velocidad y la aceleración de los motores, la dirección de los ejes (directa o inversa). Se pueden encontrar más instrucciones sobre esta configuración en Internet.
    4. También existe la posibilidad de control de la máquina sobre los motores (pestaña de control de la máquina) y el servo (comandos M5 (rotación a la posición inicial) y M3 s90 (rotación 90 o cualquier otro número de grados)).
    5. A continuación, debe preparar una imagen para el trabajo. Para esto, también necesitarás más. Software, por ejemplo, Inkscape. Es similar a cualquier otro editor gráfico y puede obtener más información sobre cómo trabajar con él también en Internet. Pero hay un par de puntos importantes:
  • Primero debe establecer los tamaños de página correctos en las propiedades para que el tamaño de su imagen no parezca ser mayor que las capacidades del trazador. También es necesario reemplazar los píxeles con milímetros en unidades de medida.
  • Después de crear la imagen, presione ctrl + shift + C y vaya al menú - extensiones - MI GRBL ... - configure la velocidad de los motores y el ángulo de rotación del servo - guarde la imagen en formato gcode.
    1. Finalmente, volvemos al Remitente universal de Gcode y en la pestaña Modo de archivo, abrimos nuestra imagen de gcode. Usando el botón Visualizar, puede monitorear gráficamente el funcionamiento del programa, y ​​en la ventana Tabla de comandos puede seguir la ejecución del comando. Solo queda ejecutar todo esto y observar el resultado.

Como resultado, el trabajo en un dispositivo de este tipo resultó ser difícil y laborioso, y el resultado final no es ideal. Pero tal experiencia es interesante y no inútil. Por lo tanto, espero que alguien sea útil y ayude a evitar "rastrillar" innecesariamente mi consejo.

Source: https://habr.com/ru/post/es432818/


All Articles