Herramientas de usuario

Herramientas del sitio


guias:seguridad_marlin

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
guias:seguridad_marlin [2016/12/23 20:03]
Oscar ↷ Page moved from old:seguridad_marlin to guias:seguridad_marlin
guias:seguridad_marlin [2018/01/24 22:07] (actual)
Línea 1: Línea 1:
 +====== Seguridad en Marlin ======
 +
  
  
Línea 4: Línea 6:
  
  
-====== Precondiciones y objetivo ​======+===== Precondiciones y objetivo =====
  
  
Línea 10: Línea 12:
  
  
-==== Pasos previos ​====+=== Pasos previos ===
  
  
Línea 17: Línea 19:
  
  
-==== Máxima temperatura de cama y hotend ​====+=== Máxima temperatura de cama y hotend ===
  
  
 Esta opción os protege de un posible error a la hora de marcar las temperaturas en el software. Nunca superará estas temperaturas. En mi caso 260 y 100. Si llega a esas temperaturas desconectará el extrusor ó la cama, parando la impresión. Esto es útil también por si tenemos algún problema con el termistor. Esta opción os protege de un posible error a la hora de marcar las temperaturas en el software. Nunca superará estas temperaturas. En mi caso 260 y 100. Si llega a esas temperaturas desconectará el extrusor ó la cama, parando la impresión. Esto es útil también por si tenemos algún problema con el termistor.
   ​   ​
-  ​// When temperature exceeds max temp, your heater will be switched off. +<code cpp> 
-  // This feature exists to protect your hotend from overheating accidentally,​ but *NOT* from thermistor short/​failure! +// When temperature exceeds max temp, your heater will be switched off. 
-  // You should use MINTEMP for thermistor short/​failure protection. +// This feature exists to protect your hotend from overheating accidentally,​ but *NOT* from thermistor short/​failure! 
-  #define HEATER_0_MAXTEMP 260 +// You should use MINTEMP for thermistor short/​failure protection. 
-  #define HEATER_1_MAXTEMP 260 +#define HEATER_0_MAXTEMP 260 
-  #define HEATER_2_MAXTEMP 260 +#define HEATER_1_MAXTEMP 260 
-  #define BED_MAXTEMP 100 +#define HEATER_2_MAXTEMP 260 
- +#define BED_MAXTEMP 100 
- +</​code>​
- +
-==== Mínima temperatura de la cama y hotend ====+
  
 +=== Mínima temperatura de la cama y hotend ===
  
 Puede suceder y sucede que se rompa el cableado de los termistores,​ dando una lectura incorrecta de forma permanente. El Marlin calentará de forma indefinida, y nunca alcanzará la temperatura deseada, o al menos eso creerá el. Realmente la revasará y con creces. En teoría el anterior ajuste lo habrá detectado una vez llegue al máximo, pero ya estará caliente. Puede suceder y sucede que se rompa el cableado de los termistores,​ dando una lectura incorrecta de forma permanente. El Marlin calentará de forma indefinida, y nunca alcanzará la temperatura deseada, o al menos eso creerá el. Realmente la revasará y con creces. En teoría el anterior ajuste lo habrá detectado una vez llegue al máximo, pero ya estará caliente.
Línea 39: Línea 40:
 Si ponéis muy poco es posible que no funcione nunca la seguridad, colocar una temperatura ligeramente inferior a la del local. Y si es posible desconectar el termistor y ver la lectura, colacáis una temperatura superior a esa en un par de grados. Si ponéis muy poco es posible que no funcione nunca la seguridad, colocar una temperatura ligeramente inferior a la del local. Y si es posible desconectar el termistor y ver la lectura, colacáis una temperatura superior a esa en un par de grados.
  
-<​code>​+<​code ​cpp>
 // The minimal temperature defines the temperature below which the heater will not be enabled It is used // The minimal temperature defines the temperature below which the heater will not be enabled It is used
 // to check that the wiring to the thermistor is not broken. // to check that the wiring to the thermistor is not broken.
Línea 49: Línea 50:
 </​code>​ </​code>​
  
- +=== Calentamiento fusible cama ===
-==== Calentamiento fusible cama ===+
  
 Nuestra cama puede no alcanzar la temperatura deseada, de un tirón. Debemos verificar el fusible de la RAMPS, es posible que ante un exceso de corriente este fusible se caliente ​ y corte la alimentación,​ retandando el proceso. Esto no es bueno, para la electrónica de nuestra impresora. Y es motivado por una baja resistencia en la cama. Nuestra cama puede no alcanzar la temperatura deseada, de un tirón. Debemos verificar el fusible de la RAMPS, es posible que ante un exceso de corriente este fusible se caliente ​ y corte la alimentación,​ retandando el proceso. Esto no es bueno, para la electrónica de nuestra impresora. Y es motivado por una baja resistencia en la cama.
 Para solucionar esto el Marlin nos ofrece esto: Para solucionar esto el Marlin nos ofrece esto:
  
-Opcion 1:+=== Opcion 1 ===
  
-<​code>​+<​code ​cpp>
 // If your bed has low resistance e.g. .6 ohm and throws the fuse you can duty cycle it to reduce the // If your bed has low resistance e.g. .6 ohm and throws the fuse you can duty cycle it to reduce the
 // average current. The value should be an integer and the heat bed will be turned on for 1 interval of // average current. The value should be an integer and the heat bed will be turned on for 1 interval of
 // HEATER_BED_DUTY_CYCLE_DIVIDER intervals. // HEATER_BED_DUTY_CYCLE_DIVIDER intervals.
 #define HEATER_BED_DUTY_CYCLE_DIVIDER 4 #define HEATER_BED_DUTY_CYCLE_DIVIDER 4
- 
 </​code>​ </​code>​
 +
 Descomentando la última línea le estamos diciendo al Marlin que caliente 1 de cada 4 intervalos. Si medimos con un polímetro la tensión en la cama veremos que esta a disminuido. Podemos jugar con el valor, por defecto 4, para variar esta tensión. Un 1, es continuo, como si no descomentasemos la linea. Descomentando la última línea le estamos diciendo al Marlin que caliente 1 de cada 4 intervalos. Si medimos con un polímetro la tensión en la cama veremos que esta a disminuido. Podemos jugar con el valor, por defecto 4, para variar esta tensión. Un 1, es continuo, como si no descomentasemos la linea.
  
-Opcion 2:+=== Opcion 2 ===
  
-<​code>​+<​code ​cpp>
 // This sets the max power delivered to the bed, and replaces the HEATER_BED_DUTY_CYCLE_DIVIDER option. // This sets the max power delivered to the bed, and replaces the HEATER_BED_DUTY_CYCLE_DIVIDER option.
 // all forms of bed control obey this (PID, bang-bang, bang-bang with hysteresis) // all forms of bed control obey this (PID, bang-bang, bang-bang with hysteresis)
Línea 75: Línea 74:
 // so you shouldn'​t use it unless you are OK with PWM on your bed.  (see the comment on enabling PIDTEMPBED) // so you shouldn'​t use it unless you are OK with PWM on your bed.  (see the comment on enabling PIDTEMPBED)
 #define MAX_BED_POWER 255 // limits duty cycle to bed; 255=full current #define MAX_BED_POWER 255 // limits duty cycle to bed; 255=full current
- 
 </​code>​ </​code>​
  
 En lugar de 255, que es a tope, colocaremos valores inferiores, limitando de esta forma la corriente, es un PWM puro y duro. En lugar de 255, que es a tope, colocaremos valores inferiores, limitando de esta forma la corriente, es un PWM puro y duro.
  
- +=== Descuelge del Termistor ===
-==== Descuelge del Termistor ===+
  
 Es posible que el termistor se nos despegue, caiga descoloque .... pero que su cableado sea correcto. El Marlin calentará de forma continua tanto nuestra cama como nuestro hotend, y el termistor indicará una temperatura incorrecta, esto puede derivar en INCENDIO. Es posible que el termistor se nos despegue, caiga descoloque .... pero que su cableado sea correcto. El Marlin calentará de forma continua tanto nuestra cama como nuestro hotend, y el termistor indicará una temperatura incorrecta, esto puede derivar en INCENDIO.
 Para evitarlo tenemos esto: Para evitarlo tenemos esto:
  
-<​code>​ +<​code ​cpp>
-*/+
 // If you want to enable this feature for all your extruder heaters, // If you want to enable this feature for all your extruder heaters,
 // uncomment the 2 defines below: // uncomment the 2 defines below:
Línea 95: Línea 90:
 #define THERMAL_RUNAWAY_PROTECTION_PERIOD 40 //in seconds #define THERMAL_RUNAWAY_PROTECTION_PERIOD 40 //in seconds
 #define THERMAL_RUNAWAY_PROTECTION_HYSTERESIS 4 // in degree Celsius #define THERMAL_RUNAWAY_PROTECTION_HYSTERESIS 4 // in degree Celsius
- 
 </​code>​ </​code>​
  
 Si en 40 segundos no se incrementa 4 grados considera que algo va mal y actuará en consecuencia. Si en 40 segundos no se incrementa 4 grados considera que algo va mal y actuará en consecuencia.
  
-<​code>​ +<​code ​cpp>
 // If you want to enable this feature for your bed heater, // If you want to enable this feature for your bed heater,
 // uncomment the 2 defines below: // uncomment the 2 defines below:
Línea 108: Línea 101:
 #define THERMAL_RUNAWAY_PROTECTION_BED_PERIOD 20 //in seconds #define THERMAL_RUNAWAY_PROTECTION_BED_PERIOD 20 //in seconds
 #define THERMAL_RUNAWAY_PROTECTION_BED_HYSTERESIS 2 // in degree Celsius #define THERMAL_RUNAWAY_PROTECTION_BED_HYSTERESIS 2 // in degree Celsius
- 
 </​code>​ </​code>​
  
guias/seguridad_marlin.1482523413.txt.gz · Última modificación: 2018/01/24 21:59 (editor externo)