domingo, 29 de mayo de 2016

Visualizador de Gcode del Host Multiplataforma


Está tomando forma el visualizador de Gcode del Host Multiplataforma SinapTec



sábado, 28 de mayo de 2016

SinapTec - 3D Printer Host 1.0 DISPONIBLE!!!

Ya está disponible una primera versión del host que estoy programando.

Para los que no vienen siguiendo el proyecto les comento que se trata es un host multiplataforma programado en Python, es un único archivo .py y una carpeta con los iconos, es super liviano y estable, ideal para PCs viejas con pocos recursos.

HostSinapTec10.zip


Está probado en Windows XP y Raspbian, pero debería funcionar en muchos otros sistemas operativos. Para que funcione hay que tener instalado Python 2.7.11 y PySerial 2.5

Por ahora lo probé con el firmware TeacCup, y simulé el funcionamiento en Marlin.

El cuadro blanco grande no hace absolutamente nada es el espacio reservado donde se va a graficar el gcode, pero esa función aún no está desarrollada.

domingo, 22 de mayo de 2016

Interface Gráfica - Host Multiplataforma SinapTec

Está tomando forma la interface gráfica del host multiplataforma que estoy programando. Está hecha con Tkinter que es la herramienta que viene por defecto con Python para hacer GUIs, no es la mas potente, pero es robusta, no hace falta instalar nada mas; y no varía mucho la forma en que se visualiza en los distintos sistemas operativos.

El gráfico del GCode no es real, simplemente es una impresión de pantalla de gcode.ws a modo de ejemplo.

En Raspbian:


En Windows XP:


domingo, 8 de mayo de 2016

3DPrinter Host Multiplataforma SinapTec 1.0


Hace tiempo que tenía ganas de aprender un nuevo lenguaje de programación para usar en mis proyectos, ya que desde el 2003 no estudiaba nada de programación. Después de averiguar sobre la infinidad de lenguajes que están de moda me decidí por Python, me pareció que es el que mas se adapta a lo que yo estaba buscando. Durante la semana pasada leí algunos manuales y para practicar me pareció un buena idea hacer un host multiplataforma para impresoras 3d, se que no es nada nuevo, pero resultó ser un proyecto de fin de semana apasionante.

Por ahora funciona por la consola, y solamente tiene las características indispensables:
1)      Hace un escaneo de los puertos disponibles
2)      Abre el puerto elegido y permite definir el baudrate
3)      Permite enviar Gcodes y Mcodes por la consola (ejemplo: send M105)
4)      Abre archivos Gcodes (ejemplo: open archivo.gcode)
5)      Manda a imprimir (print)
6)      Archivo de ayuda (help)
7)      Cierra el archivo Gcode (close)
8)      Salir del programa (exit)

La idea es tener un algoritmo sencillo y robusto para a futuro ir agregándole más funcionalidades como ser, una interface gráfica multiplataforma (con wxPython o algo similar), visor de Gcodes 2D, seguirdor del GCode mientras imprime, un algoritmo de estimación de tiempo de impresión, visor de Gcode 3D, integración con slicers, visor de STL, etc.

Por ahora es todo un éxito, funciona perfectamente tanto en Windows (XP) y Linux (Raspbian), el Gcode lo generé con Slic3r y por ahora solamente lo probé con el firmware TeaCup. Más adelante voy a probar con más sistemas operativos, slicers y firmwares.

Para los que estén interesados les dejo el código fuente, solamente son 293 y está lleno de comentarios para que cualquiera lo pueda entender (sin comentarios ni espacio entre líneas son 173 líneas de código) en un solo archivo.

HostSinapTec10.py

Para que funcione obviamente tienen que tener Python (yo uso la versión 2.7)


y pySerial que es el módulo que se encarga de la comunicación por puerto serie (yo tengo instalada la versión 2.5)



Ejemplo Windows:
Ejemplo Raspbian: