Paso 8: Los problemas con Beta 0.02
Iba a añadir esta información a la subida del paso de firmware. Cuando se inicia el desplazamiento hacia abajo, verá por qué tiene su propio paso.
TLDR:
Firmware fue construido por mí mismo y tiene un montón de bugs y pequeños problemas. Voy a arreglar esto pero necesito tiempo para eso.
Por qué es tan buggy
El firmware es construido de rasguño. Cuando empecé, rampas no tienen las funciones que necesitaba, así que construí mi propia electrónica (como se ve en las fotos). Si hubiera sé que terminaría usando rampas, habría convertido un pedazo de firmware, pero todo parece mucho más clara en retrospectiva. Con mi limitada habilidad de programación y tiempo limitado, terminé con el firmware que tiene todavía algunos errores en ella. Algunos de estos errores son sólo teóricos, mientras que otros son problemas reales que no sé la fuente exacta de.
Estoy pensando en pasar un fin de semana para arreglar algunos de estos problemas hace tiempo, pero ya que puedo imprimir, no hay ningún incentivo real para poder solucionarlo pronto. También, yo sólo solucionará algo que nunca será tan bueno como debería ser. Alguien realmente bueno en la programación podría hacer más semanas que pude en meses. ¿A alguien la tarea?
Ejes y topes son difíciles de invertir
Mi firmware fue escrito paso a paso para que sea función. A veces he utilizado la forma sencilla de invertir ejes que se estaban moviendo en la dirección equivocada. Esto ha resultado en ninguna forma sencilla de invertir ejes exista. Simples es manualmente invertir ejes poniendo los cables. Hay soluciones previstas aquí algún tiempo, lo siento.
Movimiento del paso
Lo sé, más firmware utiliza temporizadores de pwm que son finamente ajustados para la velocidad correcta. No se centran. Enfoque utiliza el temporizador de micros() para determinar cuando es el momento de dar un nuevo paso. No tienen tiempo para enseñar a mí cómo establecer estos contadores de tiempo, así que tomó un atajo y hacen movimientos con el temporizador micros() y establecer objetivos. Este sistema funciona perfectamente, pero allí es algunos problemas.
glitch de 71 minutos
Después de 71 minutos el temporizador micros() se reinicia a cero. Si esto sucede cuando el foco es la impresión, puede ocurrir pérdida menor de pasos. Nunca he impreso por eso mucho tiempo por lo que nunca he experimentado esta primera mano. Es sin embargo una opción y tiene que fijarse en el largo plazo.
Tampón de ser superado
Para mantener una impresión constante, la beta utiliza un búfer con un tamaño de 10 pasos que corre en círculos (relleno del uno al diez, el ir a uno nuevo). Cuando el buffer no está lleno, el firmware Lee un carácter de Gcode después de cada paso y cuando hay tiempo izquierda hasta otro paso. Cuando se ha leído una línea completa, el búfer se actualizará con una nueva coordenada. Este proceso ya ha sido mejorado con la actualización de 0.02, pero en teoría, a altas velocidades con pequeños pasos, es posible que el búfer agotar y repetir.
No hay aceleración
El firmware se utiliza en aceleración. Sólo va a toda velocidad directamente. He tratado de hacer que acelere, no pudo, entonces dio para arriba y había hecho para que no la usa. La impresora se mueve bastante lento que no es realmente un problema y debe acelerar muy rápidamente para dar una impresión lisa de todos modos.
Final poco fiables de impresión
Cuando la impresora se realiza con Gcode en la tarjeta SD, debe dejar de impresión. No siempre hace esto. Básicamente hay cuatro cosas que pueden suceder. tampoco puede:
- Detener impresión después de que la SD estaba vacía pero el tampón no, omitiendo la entre uno y cinco últimas líneas;
- Jam en el final, manteniendo el láser quema mientras que no se mueve y no responde a ninguna entrada;
- De lo anterior;
- Detener impresión como se supone y va la final del menú de impresión;
O sólo print.txt
El firmware sólo busca "print.txt" en la tarjeta SD. Yo mismo no encontré ninguna forma sencilla de leer todos los posibles archivos desde la tarjeta SD en un lejos que podía usar. También no pude encontrar una manera de leer Gcode, sólo encontré una manera para leer .txt. Gcode es sólo un archivo de texto glorificados, decidí que sería más fácil simplemente correr Gcode desde un archivo de texto. Esto no se solucionará ya que no tengo las habilidades para hacerlo como debe ser.