Es decir, yo le he metido de mi cosecha el uso de MMI y control de temperatura. Si se os ocurre algo que os gustaría ver/tener, comentadlo que entre todos esta aplicación seguro que mejora.
Lo primero, muy buen trabajo el del escudo y los drivers de los motores, tiene una pinta genial
mi pregunta es, el cubo y el software tiene posibilidad de tener finales de carrera? otra cosa que me gustaría saber es sí está cerca la inclusión de una cuarta controladora de motores dentro del escudo para controlar un extrusor y por ultimo, y como sugerencia, quedaría vistoso una barra de estado en la LCD que te marque el % que queda de fresado
Realmente no. Actualmente para controlar la CNC de 29K que tiene de código de usuario está usando:
17.5K sin control de temperatura y LCD
19.5 con control de temperatura o LCD
21.5 con ambos (control de temperatura y LCD)
Se puede optimizar el código un poco para dejar algo más compacto si fuese necesario. También tengo que ver la ocupación de RAM.
No se si es problema del SW de la electronica o del SW del PC. Me he fijado que segun el cuadro de estado que muestra los comandos enviados, si se pone un comando con la velocidad delante, ignora todo lo que hay detras.
La electronica se lo debería tragar bien. El código lo que hace es:
si el comando es 0, 1, 2, 3 o 30 mira a ver si hay feedrate (F) y en ese caso lo lee y luego lo aplica.
Por lo tanto, el programa que los está secuenciando se los está tragado.
Pues entonces debe ser problema del que manda el comando, que no lo debe mandar completo. En la consola donde se ve que comandos manda, del comando de ejemplo, solo mandaria el termino correspondiente a la velocidad
Codigo en el editor: G01 F100 X10
Comando que muestra la consola: G01 F100
De momento, me estoy haciendo un programita en vb que me procese el codigo de nuevo, y lo arregle, a ver si me sale. Hace 4 años que no programo, y se nota.
Pues no me he podido resistir... He subido y publicado la última versión (1.0.5) de la CNC.
Tiene varias mejoras con respecto a la versión anterior en la parte del MMI (lo que se ven en el LCD):
Le he puesto un splash durante el arranque.
Ahora muestra la velocidad del ventilador con unas barras (está un poco hackeado el código pero bueno ya lo arreglaré).
Muestra las coordenadas X, Y, Z y el feedrate.
Uso de memoria:
FLASH disponible en la vinciDuino: 28672 bytes
MMI + Control Temperatura:
Flash utilizada: 22794
RAM disponible: 1645
MMI:
Flash utilizada: 20400
RAM disponible: 1680
Control de temperatura:
Flash utilizada: 20028
RAM disponible: 1820
Solo código CNC:
Flash utilizada: 17822 bytes
RAM disponible: 1846
Como veis la aplicación es muy comedida usando la RAM y para todo lo que hace tampoco está devorando tanta flash. Da más que de sobra para que pueda controlar otro motor PaP.
Lo que estoy haciendo es mandarle Gcodes directamente al puerto serie. En el LCD sale correctamente todo, mañana enchufaré la electrónica a la CNC a ver que hace. Pero vamos, creo que va a funcionar tal y como indica el MMI en el LCD.
@baronrojo - perdona, se me ha pasado tu post. El cubo tiene 3 entradas, las he conectado a pines analógicos. Por lo tanto no habría problemas a la hora de conectar finales de carrera. El código está, más o menos, preparado para soportarlo. Simplemente ahora lo tengo des habilidado.
El programa no puede saber cuanto le queda por completar el programa ya que el PC le envía 1 comando gcode a la vez. Hasta que no ha ejecutado el que tiene en curso el PC no le manda el siguiente.
Con respecto a introducir el 4 control del motor paso a paso, no es muy complicado incluirlo el el código actual. El único inconveniente es ponerlo en la electrónica actual. Simplemente no cabe. Date cuenta que es un PCB de 5x5cm!
Probado sobre la máquina y funciona a la perfección.
Le estoy mandando al software de mi controladoras desde Txapuzas Tx el siguiente código g: F3000 X10.01 y similares. Esto se lo estoy enviando desde la linea de comandas que tiene Txapuzas Tx. También lo he probado directamente abriendo un terminal serie contra la placa y perfecto.
Pues se me escapa porque no me funciona a mi esa forma Porque algo manda, quiere como hacer algn movimiento la electronica, y nada, pasa al siguiente comando.
Y claro, el codigo que genera el coppercam, es todo asi, pues funciona mal.