This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
APORTE Trasteando en una Artillery Genius
#1
Saludos!. 
Acabo de adquirir una Genius y ya me he metido en sus "entrecables". Asunto: cama caliente que NO calienta como debiera..
La cuestión es que detecté que haciendo las primeras pruebas, imprimiendo POM (acetal), se levantaba el material de la cama ("warping"?). 
Medí con infrarrojos los grados del cristal y apareció el problema: Puesta a 150º Max en el centro (unos 5 cm2) llega a 127º. A medida que te vas alejando, va bajando a un ritmo espectacular hasta llegar a los bordes que te dan unos 57º.  
Esto quiere decir que, para hacer piezas en materiales "normales", pues andará regulín regulón. Pero usar filamentos técnicos, como que no...

Según mi opinión, la solución puede venir por tres vías:
Una: cambiarle el termistor (sensor de temperatura) un NTC de 100K por uno de 200K..
Dos, ponerle una cama de silicona de más potencia. La que trae es de 300w 220 voltios.  (En ello ando y me la estoy haciendo yo)
Tres, modificar el marlin.ino que, supuestamente, será el que limite la potencia de calefacción. 

Sé que está limitada porque, a máxima potencia, medí los amperios de consumo y daba 0,60 amp. Multiplicado por 220= 120 watios. Es decir, no llega a utilizar toda la potencia de la cama (300 watios).  

[Imagen: vlcsnap-00001.png]


[Imagen: DSC-0554.jpg]



En este asunto, agradecería enormemente si algún compañero me puede indicar como cambiar los parámetros en el marlin.ino...


Aportaré los vídeos y documentación de todo el follón en el que me he metido. 

CONTINUARÁ..
  Responder
#2
Hola, vamos por partes:
1- No puedes dar por sentado que la cama que tienes sea realmente de 300W, tendrás que medir su resistencia para saberlo con seguridad.
2- Tampoco debes dar por sentado que el voltaje en la red sean 220V: mejor lo mides, pues seguramente esté por encima de 230V.
3- Cambiar el termistor por otro distinto no va a solucionar este problema, a no ser que esté defectuoso y marque de más. Dado que va en el interior del elemento y muy junto a la resistencia calentadora, es normal que marque una temperatura algo mayor que la que hay realmente en la parte superior de la cama, pues hay mucha superficie de disipación. Que se pierda tanta temperatura en los bordes respecto al centro es habitual, debido a que no suelen estar muy bien construidas y tienden a concentrar los cables que forman la resistencia de calentamiento en el centro.
4- Marlin controla el calentamiento de esa cama en función de la temperatura que le informa el termistor y este control puede ser de dos formas: limitando el voltaje efectivo que le llega y por lo tanto la potencia que disipa (cuando el control es por PID) o limitando el tiempo que está conectada (cuando el control es por Bang-Bang). En este segundo caso, por defecto Marlin viene configurado para que se utilice la potencia máxima, aunque si se utiliza este método de control, habría que comprobar que realmente esté configurado así.
5- Si Marlin está configurado para controlar la cama por PID, la lectura que te da la pinza amperimétrica no te sirve para calcular la potencia nominal de la cama, pues el voltaje efectivo que se le está aplicando (mediante PWM), es bastante menor de 220V.
  Responder
#3
Gracias por tu información.
Bat... la cuestión es que ya no puedo medir la resistencia. Me cargué las resistencias con el cuter (al intentar despegar el termistor)
Los 300 watios son los que da el fabricante y si, lógicamente,  serán unos 230 voltios. Que serían unos 138 watios, con una intensidad de 0.6 amp. La tensión que recibe la cama no es PWM, es Ac pura y dura. En el medio existe un relé SSR que deja paso (o no) según la llega voltaje/señal DC desde  el Mega. Si, creo que es Bang-Bang.
La cama de silicona está bastante bien hecha, la verdad. Tiene hilo de Nicrom cada 5 mm (la he desguazado -de perdidos, al río!-). Con lo cual, el que no caliente uniformemente, no es problema de distribución del cableado.

Por lógica, el termistor de 200K  tardaría más en llegar/bajar a los ohmnios "de corte" que el de 100K. Ohmnios en los cuales el programa entiende que tiene que cortar tensión.    Y por tanto debería calentar más tiempo al dejar activo el relé.  

Desde luego, lo ideal, sería poder modificar los valores del marlin.ino, carpeta Configuration.h. Pero ahí no sé cómo meterle mano.. Estos datos son los que he visto "a vuelo de pájaro":
#define TEMP_BED_RESIDENCY_TIME 10  // (seconds)
#define TEMP_BED_HYSTERESIS 3       // (degC) range of +/- temperatures considered "close" to the target one
#define TEMP_BED_WINDOW     1       // (degC) Window around target to start the residency timer x degC early.

#define BED_MAXTEMP 150

#define MAX_BED_POWER 255 // limits duty cycle to bed; 255=full current

#if ENABLED(PIDTEMPBED)

 //#define PID_BED_DEBUG // Sends debug data to the serial port.

 //120V 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
 //from FOPDT model - kp=.39 Tp=405 Tdead=66, Tc set to 79.2, aggressive factor of .15 (vs .1, 1, 10)
 #define DEFAULT_bedKp 92.46
 #define DEFAULT_bedKi 16.12
 #define DEFAULT_bedKd 132.55

#define THERMAL_PROTECTION_BED     // Enable thermal protection for the heated bed
// Preheat Constants
#define PREHEAT_1_TEMP_HOTEND 180
#define PREHEAT_1_TEMP_BED     70
#define PREHEAT_1_FAN_SPEED     0 // Value from 0 to 255

#define PREHEAT_2_TEMP_HOTEND 240
#define PREHEAT_2_TEMP_BED    110
#define PREHEAT_2_FAN_SPEED     0 // Value from 0 to 255
  Responder
#4
Una pena no poder medir la resistencia de la cama, pues lo que los fabricantes dicen de sus productos no siempre es muy confiable. En todo caso, creo que te has precipitado intentando desmontar el termistor.
Por supuesto que tiene que haber un relé SSR de tipo DA para controlar la cama, con su circuito de activación controlado por la salida de alimentación de la cama en la placa, pero puede trabajar tanto en Bang-Bang como en PID, dependiendo de si está definido el parámetro PIDTEMPBED en el archivo Configuration.h.
Si está así la línea: #define PIDTEMPBED, está activado el control por PID y hay que hacer un PID autotune (comando M303) para calcular y poder configurar los valores correctos para los parámetros DEFAULT_bedKp, DEFAULT_bedKi y DEFAULT_bedKd. Si no se ponen los valores correctos, puede que no se alcancen las temperaturas programadas.
Si la línea está así: //#define PIDTEMPBED, entonces el control es por Bang-Bang y el valor del parámetro MAX_BED_POWER indica la potencia con que se alimentará la cama, siendo 255 el valor máximo (que es el que tienes configurado).
Revisa esa línea y así sabrás que tipo de control tienes activado para la cama. También te lo indica el led del relé: si cuando llega a la temperatura objetivo empieza a parpadear rápidamente, esta activo el PID. Si se enciende cuando la temperatura baja de la objetivo y se apaga cuando la supera, esta por Bang-Bang.
Dada tu insistencia en el cambio del termistor, parece que das por sentado que el de 100K estaba marcando más temperatura de la que realmente había en la cama y lo que quieres es que el firmware mantenga esta más tiempo activada para conseguir la temperatura real que quieres. En ese caso, no necesitas cambiar el termistor, solo tienes que marcar una temperatura objetivo mayor, para que al final la real sea la que deseas.
Sobre el calentamiento no uniforme de toda la superficie, solo puede ser debido al cableado interno. Quizá no sea por su distribución, aunque suele ser lo más habitual, pero entonces será porque tenga distinta resistencia en unos tramos que en otros: necesariamente el motivo tiene que estar en el propio elemento calefactor.
Sobre la línea que indicas (#define PREHEAT_2_TEMP_BED    110), ese parámetro no tiene nada que ver con la protección de temperatura, solo define la temperatura de precalentamiento de la cama de la opción 2 del menú correspondiente, en este caso la que se suele utilizar para el ABS.
Por el contrario, puede que el problema esté en la temperatura máxima de la cama: comprueba el valor que tienes configurado para el parámetro BED_MAXTEMP. Por defecto viene precisamente a 150 ºC y si se alcanza este valor, se desconecta la cama.
  Responder
#5
Sin lugar a dudas tienes razón: Me he precipitado al desmontar.

La orden que comentas, está así:  

#define PIDTEMPBED

luego, continúa con los marcado en verde arriba.

  Responder
#6
Hola, con esa línea así está activado el control por PID de la cama y la medida del consumo no puede hacerse directamente en sus cables de alimentación, pues cuando llega a la temperatura objetivo, comienza a actuar el PWM bajando el voltaje efectivo.
Por lo que veo en la configuración, tienes los valores de Kp, Ki y Kd que se indican para la cama de la Genius, aunque yo haría un PID autotune para asegurarme de que son correctos, pues dependen de la máquina concreta.
Quizá el problema esté en que la temperatura objetivo es la misma que el valor de BED_MAXTEMP que tienes configurado: esto no es habitual que suceda y no sé muy bien como reacciona el firmware ante ello.
  Responder
#7
Bien, siguiendo con el "tema cama", informo de que he realizado unos cambios profundos en la misma: Le he instalado una de aluminio de 3 mm y una nueva resistencia de silicona de 500 watios.  Ha mejorado, pero sigue siendo irregular el calentamiento. Entre otras razones por que el aluminio utilizado no ha sido de la gama del que buscaba . Informaré del procedimiento y de lo que pienso hacer: Quitar el aluminio e instalar una cama de cobre. El problema es que cobre de 4 o 5 mm no encuentro y al final me voy a tener que fabricar una fundidor de metales..
También le he instalado un PID externo para controlar la temperatura de la cama independientemente: Un acierto total.
  Responder
#8
Bien, como cada vez se complica más el poder trabajar con la Artillery Genius, pués iré dejando los avances que vaya haciendo ( o los "atrasos" -segun se mire..-). 
De momento os dejo un PDF traducido por mí en el que vienen recomendaciones al usuario de la propia Artillery. Al final del mismo he pegado la forma de subir el firmware a la MKS GEn V1. (he tenido que comprar una placa nueva). 

Me encontré contínuamente con este ( y otros) problema al verficar/compilar/subir el Marlin con el IDE de Arduino (Yo tengo la versión 1.8.11)

Arduino: 1.8.10 (Windows 10), Board: "Arduino/Genuino Uno"  
loading hardware from C:\Program Files (x86)\Arduino\hardware: 
loading package arduino: loading platform release: 
Error reading file (C:\Program Files (x86)\Arduino
\hardware\arduino\avr\boards.txt:0): 
Invalid line format, should be 'key=value'

Fuí al fichero  boards.txt abriéndolo con el bloc de notas (ubicado en C:\Program Files\Arduino\hardware\arduino\avr) lo abrí y le pegué al final este texto: 
 ################################################ ############ 

# Agregado para Emartee en China 
# por Mark Sproul msproul@skychariot.com Junio de 2010 
mega2560.name = Arduino Mega2560 
mega2560.upload.protocol = stk500 
mega2560.upload.maximum_size = 258048 
mega2560.upload.speed = 57600 
mega2560.bootloader.low_fuses = 0xFF 
mega2560.bootloader.high_fuses = 0xD8 
mega2560.bootloader.extended_fuses = 0xFD 
mega2560.bootloader.path = atmega 
mega2560.bootloader.file = ATmegaBOOT_168_mega2560.hex 
mega2560.bootloader.unlock_bits = 0x3F 
mega2560.bootloader.lock_bits = 0x0F 
mega2560.build.mcu = atmega2560 
mega2560.build.f_cpu = 16000000L 
mega2560.build.core = arduino  

Volví al fichero  boards.txt . Sin tocarle en lo más mínimo le dí a "guardar como" y cambié el formato (Opción pestaña"CODIFICACION"- a la izquierda de "Guardar"-) del archivo de texto que es UTF-8 lo grabé como ANSI y lo guardé.
 
Solucionado, ya compila.  

 P.D. Estoy intentando subir el pDF como imagen y no lo consigo, Creo que es por el peso 1,7 megas.
  Responder
#9
(16-11-2020, 11:41 AM)JCVMadriles escribió: Adjunto el PDF con el manual "de taller" traducido de la Artillery Genius.

[Imagen: Artillery-Traducci-n-FAQ-compressed.jpg]

No tienes el archivo en formato PDF? Es una imagen muy larga.
Saludos,
-> Mi CNC de escritorio CNCDesktop 500 -> https://www.spainlabs.com/foros/tema-Fre...op-CNC-500
-> Mi cuaderno de bitácora www.lowpower.io  Maker centrado en la electrónica y el CNC.
--> Twitter: https://twitter.com/Grafisoft_ES  | IG: https://www.instagram.com/lowpowerio/
  Responder
#10
Si, lo tengo. Pero no he sido capaz de subirlo. Si me indicas tú cómo...
Ya de paso, qué ocurre que cuando le das a "enviar mensaje" te salta una pantalla como de error del servidor?
  Responder
#11
(20-11-2020, 07:35 PM)JCVMadriles escribió: Si, lo tengo. Pero no he sido capaz de subirlo. Si me indicas tú cómo...
Ya de paso, qué ocurre que cuando le das a "enviar mensaje" te salta una pantalla como de error del servidor?

Cuanto ocupa el archivo?

Lo del error es por una actualización de l php y por el momento no se puede arreglar sin comprometer la integridad del foro. Estan en ello, pero no es algo trivial.
Saludos,
-> Mi CNC de escritorio CNCDesktop 500 -> https://www.spainlabs.com/foros/tema-Fre...op-CNC-500
-> Mi cuaderno de bitácora www.lowpower.io  Maker centrado en la electrónica y el CNC.
--> Twitter: https://twitter.com/Grafisoft_ES  | IG: https://www.instagram.com/lowpowerio/
  Responder
#12
Sin comprimir (que es el que subido) 1.7 megas
  Responder
#13
(22-11-2020, 12:34 AM)JCVMadriles escribió: Sin comprimir (que es el que subido) 1.7 megas

Subelo a tu google drive y pones un enlace, por ejemplo.
-> Mi CNC de escritorio CNCDesktop 500 -> https://www.spainlabs.com/foros/tema-Fre...op-CNC-500
-> Mi cuaderno de bitácora www.lowpower.io  Maker centrado en la electrónica y el CNC.
--> Twitter: https://twitter.com/Grafisoft_ES  | IG: https://www.instagram.com/lowpowerio/
  Responder
#14
Bué, pues he accedido al tal Drive ése y resulta que lo tenía (y yo son saberlo). Así que aquí dejo el enlace: https://drive.google.com/file/d/17qQZWUA...sp=sharing
  Responder
#15
(22-11-2020, 05:08 PM)JCVMadriles escribió: Bué, pues he accedido al tal Drive ése y resulta que lo tenía (y yo son saberlo). Así que aquí dejo el enlace: https://drive.google.com/file/d/17qQZWUA...sp=sharing

Genial! Ahora ya si lo pones un poquito mas ordenado en el primer post, ya lo bordas Sonrisa

Gracias!
-> Mi CNC de escritorio CNCDesktop 500 -> https://www.spainlabs.com/foros/tema-Fre...op-CNC-500
-> Mi cuaderno de bitácora www.lowpower.io  Maker centrado en la electrónica y el CNC.
--> Twitter: https://twitter.com/Grafisoft_ES  | IG: https://www.instagram.com/lowpowerio/
  Responder


Posibles temas similares…
Tema Autor Respuestas Vistas Último mensaje
  CONSULTA ARTILLERY GENIUS no me funciona la pantalla táctil Unilio 2 109 20-11-2020, 07:28 PM
Último mensaje: Unilio
Fotografía Artillery Genius no detecta el arco de impresión SrNacho 1 80 20-11-2020, 07:23 PM
Último mensaje: JCVMadriles
  ARTILLERY GENIUS no me funciona la pantalla táctil Unilio 0 90 19-11-2020, 12:26 PM
Último mensaje: Unilio
  APORTE NUEVAS MEJORAS ARTILLERY X1 Sharked Design 0 119 16-11-2020, 12:35 PM
Último mensaje: Sharked Design
  APORTE NUEVAS MEJORAS ARTILLERY X1 Sharked Design 0 48 16-11-2020, 12:34 PM
Último mensaje: Sharked Design