Go Down

Topic: Montaje CNC, calibrar ejes configuración y software (Read 191 times) previous topic - next topic

Inizul

#80
Apr 22, 2012, 03:51 pm Last Edit: Apr 22, 2012, 04:08 pm by Inizul Reason: 1
Hola Terraguea45

La forma más sencilla de ejecutar TxapuCNC_TX es hacer doble click sobre el archivo

.../TxapuCNC_TX03/TxapuCNC_TX03.gambas

Este se ejecutará automáticamente si tienes gambas2 instalado en tu equipo, ya que es un ejecutable. (lo puedes copiar en cualquier parte y ejecutarlo desde donde quieras, si no tienes el Arduino conectado te mandará el error de que no encuentra el puerto serie).

El método que has utilizado (cargar el código fuente y ejecutarlo a través del entorno de programación) es perfecto si quieres "txapuzear" en el código del programa para hacer modificaciones y tardará más, ya que tiene que cargarse el entorno, y cada vez que lo ejecutes se tendrá que compilar.

SL2 (y felicitaciones por atreverte a pasar al "lado oscuro" de linux)

NOTA: Para instalar Gambas2 en ubuntu, el método más sencillo es hacerlo mediante el "centro de software" de Ubuntu (que en el entorno Unity es el icono con la bolsa de la compra en el lanzador de aplicaciones).

Terraguea

#81
Apr 22, 2012, 04:41 pm Last Edit: Apr 22, 2012, 04:48 pm by Terraguea45 Reason: 1
@ Inizul, muchas gracias por la información, piensa que ayer a esta hora ni tan siquiera sabía moverme por ubuntu   :*
Después de haber conseguido instalar el ide 1.0 el reto era instalar gambas 2, y hacer correr txapuCNC_tx por supuesto.
En la red hay mucha información pero variada y confusa, que si los repositorios ??? para alguien como yo que empezó con el ms-dos 3.0 ( haya por el año 80 y poquisimos, soy de los que empezó con el commodore 64 ) y de haberse acomodado al windows resulta farragoso meterse en estos lares,pero como el objetivo es importante y hacía años que relegaba el meterme en linux las ocasiones las pintan calvas, y después de una clase intensiva me resulta bastante más cómodo moverme por ubuntu.( los yayos aprendemos rápido )
Ahora y después de haber cargado el sketch completo TxapuCNC_RX en la UNO, en cuanto pueda pasaré a hacer pruebas con la vinciduino, todavía tengo problemas con el driver leonardo, no lo lee de la lista de placas, creo que tendré que cambiar el fichero boards.txt.
Miraré de iniciar txapuCNC_tx como dices tú, aún así siempre es bonito ver el código en el que se basa, si como dices tú, que es lo lógico, se compila cada vez es tontería hacerlo si no se va a modificar nada.
Ahora estoy intentando averiguar el mensaje que da en la ventana de actividad:
"Imposible moverse porque el controlador está ocupado"
Sólo tengo conectada la UNO, con su sketch pero sin drivers y por supuesto sin motores, al tiempo, en dos días se ha avanzado bastante.
Aprovecho tu post para felicitarte directamente, y animarte a que sigas con tan valiosa labor, para a los que, como yo, legos en la materia, sirve de tanta ayuda.
Un saludo

Inizul

@ Terraguea45

Para poder explicar el aviso "Imposible moverse porque el controlador está ocupado" tengo que soltar un poco de rollo:

TxapuCNC_TX simplemente envía un comando Gcode por el puerto serie al Arduino ,como por ejemplo: "G01 X0 Y10 Z5" y espera a que el Arduino envíe la señal "OK" por el puerto serie indicando que ya a ejecutado el comando, el display de la posición parpadea indicando que la máquina se está moviendo.

El Arduino está a la espera de recibir un comando GCode por el puerto serie, cuando lo recibe lo ejecuta y va mandando señales a los drivers de los motores hasta alcanzar la posición deseada. Una vez conseguida envía la señal de "OK" por el puerto serie.

Cuando TxapuCNC_TX lee "OK" por el puerto serie, detiene el parpadeo de las coordenadas, lee la siguiente línea del archivo, y se la manda de nuevo al Arduino por el puerto serie, conecta el parpadeo de las coordenadas y se queda a la espera.

En el caso de apretar los botones del panel de control (las flechas), estamos mandando directamente comandos de movimiento "G00 X Y Z" al arduino.

Si una vez enviado un comando GCode al Arduino por el puerto serie (Por ejemplo G28: "ir a Home"), y el Arduino está ocupado moviendo los motores, el programa TxapuCNC_TX está a la espera de recibir la señal de "OK", en ese caso si intentas enviar otro comando (apretando una flecha por ejemplo), el programa te indicará que no puede realizar esa acción: "Imposible moverse porque el controlador está ocupado".
Si esperas un poco, (depende de cuanto se tengan que mover los motores), cuando dejen de parpadear las coordenadas (es decir se haya recibido el "OK" por parte del Arduino) podrás enviar un nuevo comando (o apretar un botón de movimiento). 

SL2

Terraguea

@ Inizul;
Tienes razón, o dicho de otra manera: mi impaciencia me pierde, aunque es bueno saberlo ya que tarde o temprano me habría salido este mensaje , veo que el manejo del programa aunque en apariencia sencillo requiere de aprendizaje, y eso sin contar las fases de dibujo cad y vectorizaciones para el trabajo de la rotulina.
Hasta que llegue la fase del montaje de los drivers y los motores me dedicaré a aprender el manejo del programa TxapuCNC, veo que hay un botón que sirve para simular el trabajo, esto si debería de funcionar, a pesar de no tener drivers conectados, no?
Otro de los aspectos que tengo que "pulir" en la configuración, es en base al grueso de la varilla roscada ( husillo) en este caso métrico 10 es los mm de movimiento por vuelta.
Leeré detenidamente los posteos y manuales que acompañan en tu web txapuzas y poco a poco nos haremos con el programa.
un saludo

Inizul

#84
Apr 22, 2012, 10:56 pm Last Edit: Apr 23, 2012, 08:51 am by Inizul Reason: 1
Hola de nuevo:

Si usas una varilla M10 de paso normal (1,5mm), la tuerca avanzará 1,5mm por vuelta y tendrás que adaptarlo en el sketch "_init.pde" de TxapuCNC_RX

Suponiendo que los motores paso a paso sean de 1,8º por paso.
#define X_STEPS_PER_INCH 4064 //(160x25,4)
#define X_STEPS_PER_MM   160 //(M8=>Paso:1,25mm; 360/1,25=>1mm=288º; 288ºpormm/1,8ºpor paso=160 Pasos por mm

#define X_STEPS_PER_INCH 3387 //(133,33x25,4)
#define X_STEPS_PER_MM   133 //(M10=>Paso:1,5mm; 360/1,5=>1mm=240º; 240ºpormm/1,8ºpor paso=133,333 Pasos por mm


Al obtenerse decimales en la división no va a ser posible una medida exacta, y las rutas a mecanizar estarán un "pelín" escaladas (aunque no creo que se aprecie salvo en las medidas muy grandes)

SL2

Go Up