mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-25 15:44:12 -06:00
ENH: add protection for chamber temperature
As title. Also add time for waiting chamber temp in printing time Signed-off-by: xun.zhang <xun.zhang@bambulab.com> Change-Id: I8054080d2e8821e421a6d03222b8b25365b5977f
This commit is contained in:
parent
7a439c523f
commit
5e23f73866
6 changed files with 48 additions and 3 deletions
|
@ -1793,6 +1793,7 @@ void GCodeProcessor::process_gcode_line(const GCodeReader::GCodeLine& line, bool
|
|||
case '9':
|
||||
switch (cmd[3]) {
|
||||
case '0': { process_M190(line); break; } // Wait bed temperature
|
||||
case '1': { process_M191(line); break; } // Wait chamber temperature
|
||||
default: break;
|
||||
}
|
||||
default:
|
||||
|
@ -3718,6 +3719,15 @@ void GCodeProcessor::process_M190(const GCodeReader::GCodeLine& line)
|
|||
m_highest_bed_temp = m_highest_bed_temp < (int)new_temp ? (int)new_temp : m_highest_bed_temp;
|
||||
}
|
||||
|
||||
void GCodeProcessor::process_M191(const GCodeReader::GCodeLine& line)
|
||||
{
|
||||
float chamber_temp = 0;
|
||||
const float wait_chamber_temp_time = 720.0;
|
||||
// BBS: when chamber_temp>40,caculate time required for heating
|
||||
if (line.has_value('S', chamber_temp) && chamber_temp > 40)
|
||||
simulate_st_synchronize(wait_chamber_temp_time);
|
||||
}
|
||||
|
||||
|
||||
void GCodeProcessor::process_M201(const GCodeReader::GCodeLine& line)
|
||||
{
|
||||
|
|
|
@ -827,6 +827,9 @@ namespace Slic3r {
|
|||
//BBS: wait bed temperature
|
||||
void process_M190(const GCodeReader::GCodeLine& line);
|
||||
|
||||
//BBS: wait chamber temperature
|
||||
void process_M191(const GCodeReader::GCodeLine& line);
|
||||
|
||||
// Set max printing acceleration
|
||||
void process_M201(const GCodeReader::GCodeLine& line);
|
||||
|
||||
|
|
|
@ -3183,7 +3183,9 @@ void PrintConfigDef::init_fff_params()
|
|||
def = this->add("chamber_temperatures", coInts);
|
||||
def->label = L("Chamber temperature");
|
||||
def->tooltip = L("By opening chamber_temperature compensation, the heating components will operate to elevate the chamber temperature."
|
||||
"This can help suppress or reduce warping for high-temperature materials and potentially lead to higher interlayer bonding strength");
|
||||
"This can help suppress or reduce warping for high-temperature materials and potentially lead to higher interlayer bonding strength."
|
||||
"While for PLA, PETG, TPU, PVA and other low temperature materials, the actual chamber temperature should not be high to avoid cloggings,"
|
||||
"so extra chamber temperature compensation is not needed, and 0 is highly recommended");
|
||||
def->sidetext = L("°C");
|
||||
def->full_label = L("Chamber temperature during print.0 means do not open compensation.Don't open it for low-temperature filaments like PLA, PETG, TPU");
|
||||
def->min = 0;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue