ENH: add pctg type

Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ie01fcd4bef0d3ebec5bbd7185a87a1740068bdba
(cherry picked from commit c6276932dd92bc4283600954415eedeac6d351ce)
This commit is contained in:
qing.zhang 2024-06-06 14:45:31 +08:00 committed by Lane.Wei
parent 7e5db7210f
commit 758d087f15
9 changed files with 77 additions and 5 deletions

View File

@ -625,6 +625,10 @@
"name": "fdm_filament_pc", "name": "fdm_filament_pc",
"sub_path": "filament/fdm_filament_pc.json" "sub_path": "filament/fdm_filament_pc.json"
}, },
{
"name": "fdm_filament_pctg",
"sub_path": "filament/fdm_filament_pctg.json"
},
{ {
"name": "fdm_filament_asa", "name": "fdm_filament_asa",
"sub_path": "filament/fdm_filament_asa.json" "sub_path": "filament/fdm_filament_asa.json"

View File

@ -1,7 +1,7 @@
{ {
"type": "filament", "type": "filament",
"name": "Generic PCTG @base", "name": "Generic PCTG @base",
"inherits": "fdm_filament_pet", "inherits": "fdm_filament_pctg",
"from": "system", "from": "system",
"filament_id": "GFG97", "filament_id": "GFG97",
"instantiation": "false", "instantiation": "false",

View File

@ -0,0 +1,64 @@
{
"type": "filament",
"name": "fdm_filament_pctg",
"inherits": "fdm_filament_common",
"from": "system",
"instantiation": "false",
"eng_plate_temp": [
"0"
],
"eng_plate_temp_initial_layer": [
"0"
],
"fan_cooling_layer_time": [
"20"
],
"fan_min_speed": [
"20"
],
"filament_cost": [
"30"
],
"filament_density": [
"1.27"
],
"filament_max_volumetric_speed": [
"25"
],
"filament_type": [
"PCTG"
],
"hot_plate_temp": [
"80"
],
"hot_plate_temp_initial_layer": [
"80"
],
"nozzle_temperature": [
"255"
],
"nozzle_temperature_initial_layer": [
"255"
],
"nozzle_temperature_range_high": [
"260"
],
"nozzle_temperature_range_low": [
"220"
],
"reduce_fan_stop_start_freq": [
"1"
],
"temperature_vitrification": [
"70"
],
"textured_plate_temp": [
"80"
],
"textured_plate_temp_initial_layer": [
"80"
],
"filament_start_gcode": [
"; filament start gcode\n{if (bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S180\n{elsif (bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S255\n{endif};Prevent PLA from jamming\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}"
]
}

View File

@ -590,7 +590,8 @@ double getadhesionCoeff(const PrintObject* printObject)
for (auto iter = extrudersFirstLayer.begin(); iter != extrudersFirstLayer.end(); iter++) for (auto iter = extrudersFirstLayer.begin(); iter != extrudersFirstLayer.end(); iter++)
if (modelVolume->extruder_id() == *iter) { if (modelVolume->extruder_id() == *iter) {
if (Model::extruderParamsMap.find(modelVolume->extruder_id()) != Model::extruderParamsMap.end()) if (Model::extruderParamsMap.find(modelVolume->extruder_id()) != Model::extruderParamsMap.end())
if (Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "PETG") { if (Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "PETG" ||
Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "PCTG") {
adhesionCoeff = 2; adhesionCoeff = 2;
} }
else if (Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "TPU") { else if (Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "TPU") {

View File

@ -3708,7 +3708,8 @@ double getadhesionCoeff(const ModelVolumePtrs objectVolumes)
double adhesionCoeff = 1; double adhesionCoeff = 1;
for (const ModelVolume* modelVolume : objectVolumes) { for (const ModelVolume* modelVolume : objectVolumes) {
if (Model::extruderParamsMap.find(modelVolume->extruder_id()) != Model::extruderParamsMap.end()) if (Model::extruderParamsMap.find(modelVolume->extruder_id()) != Model::extruderParamsMap.end())
if (Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "PETG") { if (Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "PETG" ||
Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "PCTG") {
adhesionCoeff = 2; adhesionCoeff = 2;
} }
else if (Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "TPU") { else if (Model::extruderParamsMap.at(modelVolume->extruder_id()).materialName == "TPU") {

View File

@ -2203,7 +2203,7 @@ FilamentTempType Print::get_filament_temp_type(const std::string& filament_type)
BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << ": parse " << file_path.string() << " got a nlohmann::detail::parse_error, reason = " << err.what(); BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << ": parse " << file_path.string() << " got a nlohmann::detail::parse_error, reason = " << err.what();
filament_temp_type_map[HighTempFilamentStr] = {"ABS","ASA","PC","PA","PA-CF","PA-GF","PA6-CF","PET-CF","PPS","PPS-CF","PPA-GF","PPA-CF","ABS-Aero","ABS-GF"}; filament_temp_type_map[HighTempFilamentStr] = {"ABS","ASA","PC","PA","PA-CF","PA-GF","PA6-CF","PET-CF","PPS","PPS-CF","PPA-GF","PPA-CF","ABS-Aero","ABS-GF"};
filament_temp_type_map[LowTempFilamentStr] = {"PLA","TPU","PLA-CF","PLA-AERO","PVA","BVOH"}; filament_temp_type_map[LowTempFilamentStr] = {"PLA","TPU","PLA-CF","PLA-AERO","PVA","BVOH"};
filament_temp_type_map[HighLowCompatibleFilamentStr] = { "HIPS","PETG","PE","PP","EVA","PE-CF","PP-CF","PP-GF","PHA"}; filament_temp_type_map[HighLowCompatibleFilamentStr] = { "HIPS","PETG","PCTG","PE","PP","EVA","PE-CF","PP-CF","PP-GF","PHA"};
} }
} }

View File

@ -1489,6 +1489,7 @@ void PrintConfigDef::init_fff_params()
def->enum_values.push_back("ABS"); def->enum_values.push_back("ABS");
def->enum_values.push_back("ASA"); def->enum_values.push_back("ASA");
def->enum_values.push_back("PETG"); def->enum_values.push_back("PETG");
def->enum_values.push_back("PCTG");
def->enum_values.push_back("TPU"); def->enum_values.push_back("TPU");
def->enum_values.push_back("PC"); def->enum_values.push_back("PC");
def->enum_values.push_back("PA"); def->enum_values.push_back("PA");

View File

@ -149,6 +149,7 @@ void ConfigManipulation::check_chamber_temperature(DynamicPrintConfig* config)
{"PVA",45}, {"PVA",45},
{"TPU",50}, {"TPU",50},
{"PETG",55}, {"PETG",55},
{"PCTG",55},
{"PETG-CF",55} {"PETG-CF",55}
}; };
bool support_chamber_temp_control=GUI::wxGetApp().preset_bundle->printers.get_selected_preset().config.opt_bool("support_chamber_temp_control"); bool support_chamber_temp_control=GUI::wxGetApp().preset_bundle->printers.get_selected_preset().config.opt_bool("support_chamber_temp_control");

View File

@ -260,7 +260,7 @@ Temp_Calibration_Dlg::Temp_Calibration_Dlg(wxWindow* parent, wxWindowID id, Plat
SetSizer(v_sizer); SetSizer(v_sizer);
wxBoxSizer* choice_sizer = new wxBoxSizer(wxHORIZONTAL); wxBoxSizer* choice_sizer = new wxBoxSizer(wxHORIZONTAL);
wxString m_rbFilamentTypeChoices[] = { "PLA", "ABS/ASA", "PETG", "TPU", "PA-CF", "PET-CF", _L("Custom") }; wxString m_rbFilamentTypeChoices[] = {"PLA", "ABS/ASA", "PETG", "PCTG", "TPU", "PA-CF", "PET-CF", _L("Custom")};
int m_rbFilamentTypeNChoices = sizeof(m_rbFilamentTypeChoices) / sizeof(wxString); int m_rbFilamentTypeNChoices = sizeof(m_rbFilamentTypeChoices) / sizeof(wxString);
m_rbFilamentType = new wxRadioBox(this, wxID_ANY, _L("Filament type"), wxDefaultPosition, wxDefaultSize, m_rbFilamentTypeNChoices, m_rbFilamentTypeChoices, 2, wxRA_SPECIFY_COLS); m_rbFilamentType = new wxRadioBox(this, wxID_ANY, _L("Filament type"), wxDefaultPosition, wxDefaultSize, m_rbFilamentTypeNChoices, m_rbFilamentTypeChoices, 2, wxRA_SPECIFY_COLS);
m_rbFilamentType->SetSelection(0); m_rbFilamentType->SetSelection(0);