Pregunta:
¿Ejecutar código personalizado entre comandos de código g?
user802599
2018-04-13 10:11:07 UTC
view on stackexchange narkive permalink

Me gustaría poder agregar comandos / secuencias de comandos personalizados para que se ejecuten durante una impresión.

Por ejemplo, me gustaría escribir algún software para tomar una foto y verificar que la impresión no se haya movido la cuenta entre capas.

¿Alguien sabe si alguno de los software / firmware disponibles permite scripts personalizados o volver a llamar a la computadora antes de continuar imprimiendo?

Estoy feliz de construir / comprar una nueva impresora si alguien conoce un tablero de control que tiene este tipo de característica.

puede disparar moviendo la cabeza a un lugar reservado que activa un sensor. puede abortar interceptando un sensor como la temperatura del extremo caliente que abortará la impresión, usando un relé o mosfet o lo que sea
Acepte una respuesta para obtener esta pregunta de la lista de preguntas sin respuesta; si las respuestas a continuación no cumplen con sus expectativas, modifique su pregunta o agregue comentarios para que las respuestas se puedan cambiar o agregar.
Tres respuestas:
0scar
2018-04-13 16:01:19 UTC
view on stackexchange narkive permalink

Una solución que utilizo implica un servidor de impresión 3D. He definido scripts de shell que se dirigen a los puertos GPIO de la Raspberry Pi que ejecuta OctoPrint. OctoPrint es un servidor de impresión 3D al que se puede acceder a través de su red doméstica.

Desde la página de inicio de OctoPrint:

OctoPrint es la interfaz web ágil para su impresora 3D que le permite controlar y monitorear todos los aspectos de su impresora y trabajos de impresión, directamente desde su navegador.

Esta aplicación de servidor de impresión permite la especificación de comandos personalizados de Gcode (vinculados a comandos del sistema, por ejemplo; tenga en cuenta que este es un complemento llamado "Comandos de sistemas GCODE", vea la imagen a continuación).

Como ejemplo, p. ej. OCTO100 está programado para ejecutar el script de shell fan_on.sh. Este script, a su vez, acciona un relé para encender el molesto ventilador de enfriamiento del extrusor que siempre está encendido cuando la impresora está encendida. Estos códigos se pueden usar en todo su archivo dividido para hacer las cosas que desee (por ejemplo, utilizando el complemento TweakAtZ de Cura). P.ej. el ventilador de mi extrusora permanecerá encendido varios minutos antes de que se programe su apagado después de una impresión exitosa a través de OCTO110, que en sí mismo ejecuta el script fan_off.sh.

enter image description here

Los scripts de la figura podrían configurarse para programar una acción, p. ej. fan_on.sh controla un relé usando el puerto 22 del GPIO de la Raspberry PI:

  #! / bin / bashgpio export 22 outgpio -g write 22 0  

Entonces, para deshabilitar el ventilador, necesitaría que fan_off.sh sea:

  #! / bin / bashgpio export 22 outgpio -g write 22 1  
buen ejemplo de interacción octoPi
@professor79 gracias, esto es solo una muestra, también programo las luces LED y también puedo encender y apagar la impresora. También puede agregar elementos de menú personalizados, por lo que todos los scripts también se pueden activar a través de la GUI (menú) de OctoPrint
profesor79
2018-04-13 13:34:46 UTC
view on stackexchange narkive permalink

Una de las soluciones podría ser agregar un script de cambio de capa (simplifi3d lo tiene listo para usar) y luego, usando el firmware de marlin, podría establecer un valor para el pin digital que podría desencadenar acciones externas.

Código G de cambio de capa: Personalmente no he tenido que usar esto, pero estoy seguro de que existen excelentes razones / ideas para usarlo. Si desea que se inserte un script de código G entre cada capa, simplemente puede colocarlo en esta pestaña. Un uso interesante de esto, es para el FlashForge Dreamer, hacer que las luces parpadeen entre cada capa, ¡sin embargo, eso puede ser demasiado a veces!

La sintaxis del comando M42 es: M42 S (el valor se escribirá en el pin) P (número de pin) p. Para configurar el pin digital 30 alto, usaría M42 S1 P30

El firmware MARLIN no le permitirá cambiar los valores de estado / escritura en ninguno de los pines en Úselo para cosas como calentadores, termistores, topes finales, etc. El comando le permitirá enviar valores distintos de 0 y 1 a cualquier pin que pueda generar valores analógicos. (0-255)

Fernando Baltazar
2018-04-14 05:24:53 UTC
view on stackexchange narkive permalink

Vi esto hace 3 años, este es un control de circuito cerrado, creo que es mejor que tomar una foto y luego analizarla con una especie de software de reconocimiento óptico que necesita algunas de las posibles fallas.

El video también tiene el enlace para los recursos adicionales que la impresora 3D necesitará según su autor.



Esta pregunta y respuesta fue traducida automáticamente del idioma inglés.El contenido original está disponible en stackexchange, a quien agradecemos la licencia cc by-sa 3.0 bajo la que se distribuye.
Loading...