PrusaSlicer 添加自定义品牌、机器、耗材、切片参数

文章翻译自官方说明文档 Vendor bundles and updating process

供应商捆绑包是单个文件中的系统预设集合,可以选择继承。每个供应商都有自己的捆绑包,例如 PrusaResearch.ini 存储 Prusa 打印机的所有配置文件。

如何创建供应商捆绑包?

为 PrusaSlicer 中当前不存在的供应商创建配置文件
  1. 在 PrusaSlicer 中为来自特定供应商(3rd 方,而非 Original Prusa)的至少一台打印机创建配置文件
  2. 为该打印机创建至少一个 Print 和一个 Filament 配置文件
  3. 下载并打开示例** Creality.ini ** vendor bundle
  4. 通读本文,基本了解供应商捆绑软件的工作原理
  5. 浏览 Creality.ini 文件以更好地了解供应商捆绑包在实践中的工作方式
  6. 将 Creality.ini 文件保存在另一个名称下(例如 YourVendorName.ini)
  7. 编辑供应商信息-填写正确的供应商名称和其他所需信息
    • 理想情况下,还为每台打印机创建一个 bed model和 bed texture
  8. 并排打开 PrusaSlicer 和经过编辑的 INI 文件
  9. 创建尽可能干净的配置文件结构(例如使用继承,本文将对此进行解释)
  10. 保存 INI 文件并将其复制到 AppData/PrusaSlicer/vendor 目录
  11. 重新推出 PrusaSlicer 和验证配置包是否已正确加载(谢谢!)
  12. 在 GitHub 上的 PrusaSlicer-settings 项目中创建一个** New Issue **,描述你的配置包并上传 INI 文件
    • 如果你知道如何创建一个** 拉取请求 **,那也是一个偶数选项

如果使用 --datadir="F:\mybundle" 启动 PrusaSlicer,则可以选择自定义 bundle 配置文件目录。然后,你可以创建/导入你的自定义配置文件,并使用文件-导出-导出配置函数。如果在此导出文件(config bundle header)的开头添加 vendor info,则实际上创建了一个 Vendor bundle。但是这个文件的结构会非常糟糕,并且很难阅读和维护。如果它在你的供应商捆绑包创建过程中对你有所帮助,请随意这样做。但是请在发送给我们之前尝试清理文件并创建一个基本的继承结构。

为已存在于 PrusaSlicer 中的供应商创建配置文件(例如 Lulzbot、Bibo、Creality)

使用上面的步骤,而不是从头开始或使用 Creality.ini 文件(除非它是 Creality 打印机),从PrusaSlicer-settings 存储库下载供应商的最新供应商捆绑包。如果你知道如何操作,请提交一个拉取请求的已修改的供应商捆绑包。或者,你可以创建一个New Issue并将修改后的文件上传到那里。如果你能描述一下所做的改变,我们将不胜感激。

标题字段

这是一个示例标题部分:

[vendor]
name = Prusa Research      # Name for GUI display purposes (Configuration Wizard)
config_version = 0.1.1     # This bundle version, used for updating
config_update_url = https://files.prusa3d.com/location     # Location of updates (optional), see below ...
changelog_url = https://files.prusa3d.com/location/changelog

# Section for each model starts with `printer_model:` followed by the printer model ID
[printer_model:MK3]
name = Original Prusa i3 MK3   # Name for GUI display purposes
variants = 0.4; 0.25; 0.6      # Variant names separated by `;`
technology = FFF               # Either FFF or SLA
family = MK3                   # Optional, printers from the same family will be shown together in the Configuration Wizard
bed_model = mk3_bed.stl # An STL mode3l of the printer bed shape
bed_texture = mk3.svg # An SVG showing the texture of the bed, use for company logos displayed on the build plate
default_materials = Prusament PLA; Prusament PETG

PrusaSlicer 使用的版本控制系统基于语义版本,config _ version 字段期望一个格式为 Major.minor.patch 的版本字符串,也可能附加一个 pre-release 字符串(例如“-alpha”)。

打印机、耗材和打印配置文件的单独预设字段

在页眉部分之后,接下来是各个预设的部分。每个预设区段的名称以以下任一名称开头:

  • 打印机:用于打印机配置文件
  • 长丝:用于长丝型材,或
  • 打印:用于打印配置文件。

冒号后面是预设的名称。这个名字必须是全球唯一的(在所有.ini 文件中)。例如,为 Creality Ender-3 打印机定义的“Prusament PLA”配置文件被命名为“Prusament PLA @ ENDER3”,尽管在 Filament 安装向导和 Plater 中只显示了“Prusament PLA”,更多关于后面的名称别名。

如果名称中带有星号(例如。 [filament:*PLA*])则预设标记为内部,在 PrusaSlicer 中不可用。这用于隐藏各种最终使用配置文件的通用父配置文件的继承。

实例

[printer:*common*]  # Common printer presets for Inheritance 
[filament:*common*] # Common filament presets for Inheritance 
[print:*common*]    # Common print presets for Inheritance

有关在 GUI 中创建打印机和打印配置文件的其他指南,请参阅本文作者:鲍勃 · 乔治 Prusa 支持论坛的频繁贡献者。

示例打印机配置文件

[printer:Original Prusa i3 MK2S 0.25 nozzle]
inherits = *common*
max_layer_height = 0.15
min_layer_height = 0.05
nozzle_diameter = 0.25
retract_length = 1
retract_speed = 50
variable_layer_height = 1
printer_variant = 0.25
retract_lift = 0.15
default_print_profile = 0.10mm DETAIL 0.25 nozzle
打印机变体和打印机配置文件的专门配置

打印机型号的打印机变体和专用配置不应具有单独的打印机型号。打印机配置文件用于处理打印机模型的所有打印机变体和特殊配置。有关喷嘴尺寸的打印机变体示例,请参见PrusaResearch 配置。有关打印机型号的专用打印机配置示例,请参阅BIBO 配置,说明如何设置双挤出机,用于具有左或右喷嘴的单挤出机,以及如何设置具有同上打印功能的多挤出机如何设置专用同上打印打印机配置文件。其他自定义打印机配置示例,如带有 Multi-material 的 Prusa MK2,请参见PrusaResearch 配置

示例打印配置文件

# MK3 #
[print:0.10mm DETAIL @MK3]      # Only "0.10mm DETAIL" will be visible to the user
inherits = *0.10mm*; *MK3*      # This profile inherits from two other profiles
# alias = 0.10mm DETAIL         # An alternative way to change the name of the profile visible to the user
bridge_speed = 30
compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK3.*/ and nozzle_diameter[0]==0.4 and ! single_extruder_multi_material
external_perimeter_speed = 25
infill_acceleration = 1250
fill_pattern = gyroid
fill_density = 15%

耗材剖面示例

[filament:Prusament PLA]
inherits = *PLA*
filament_vendor = Prusa Polymers
temperature = 215
filament_cost = 24.99
filament_density = 1.24
继承

不同的配置文件通常共享很多设置,并且只在几个特定设置上有所不同。为了使 Vendor 包更易于维护和阅读,你可以利用从先前定义的配置文件继承的值。只能从同一配置文件中的配置文件继承。例如,你无法在 PrusaResearch.ini 中继承 Creality.ini。继承是通过 inherits 字段实现的,例如:

[filament:Prusament PLA]
inherits = *PLA*

在这种情况下,我们首先定义了一个通用的 PLA 配置文件,它设置了大多数值。一个 Prusament 配置文件将继承所有的值的共同配置文件,然后我们可以改变只有几个具体的价值的品牌。对公共 PLA 配置文件的更改将传播到继承其设置的所有配置文件。

多重继承可以通过从每个父配置文件继承的继承配置文件链来实现,如共同>普拉> 泛型 PLA(即泛型 PLA 继承自普拉,而泛型 PLA 继承自共同),或者通过在由分号 ; 分隔的继承字段中添加多个项目来实现,如 inherits = *0.05mm*; *MK3*(即打印配置文件从0.05mm打印配置文件继承,然后从MK3打印配置文件继承),其中最后一个获胜。

将预设与特定打印机关联

PrusaSlicer 使用 compatible_printers_condition 配置值将 Printer 和 Filament 配置文件绑定到 Printer 配置文件。随着 3rd party 打印机的推出,我们也禁止了其他供应商的 Printer 和 Filament 配置文件,因此每个供应商都必须定义一套完整的打印机和长丝配置文件在他的 config 供应商包中。预设可以与特定的打印机型号或 printer_modelprinter_variant fields 的变体相关联。

示例:

compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK2.*/ and nozzle_diameter[0]==0.4 and num_extruders==1
or
compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_CREALITY.*/
or
compatible_printers_condition = printer_model=="BIBO2" and nozzle_diameter[0]==0.4
配置文件名称别名

打印或耗材预设的逻辑名称(别名)在主屏幕中使用。它也用于配置向导(filaments selection)。有两种方法可以更改用户可见的配置文件的名称,同时在内部保持名称的全局唯一性:

  • @ symbol
  • 别名文本

如果两者都不使用,则 PrusaSlicer 使用全名作为别名。

@”符号用作逻辑名称与全名的分隔符,后缀将被隐藏。别名可用于实现相同的结果,但也可用于更改名称的开头(不仅仅是删除一个后缀)。

示例:

全名:打印:0.10mm DETAIL @0.25 喷嘴 MK3

逻辑名称:打印:0.10mm DETAIL

别名:打印:0.10mm DETAIL

自定义 GCode 特定信息

本节详细介绍有关自定义 GCode 修饰符的信息。

GCode 占位符

你可以在开始 gcode 中使用 T[initial_tool] 占位符。 [initial_tool] 占位符将在将切片器 gcode 导出到文件之前替换为初始工具编号。

[Wiki 中列出了更多占位符标记](https://github.com/prusa3d/PrusaSlicer/wiki/Slic3r-placeholders-(a-copy-of-the-mauk.cc-page))

自定义 GCode 部分中的宏构造

自定义 GCode 部分还允许使用 Conditional evaluations if else,以及 Expression evaluations {<expression>} 以及 Legacy 占位符语法: [variable]

有关自定义 gcode 宏构造的更多详细信息在 Wiki 中列出

多挤出机定义

为多挤出机打印机构建配置包最简单的方法是从在 PrusaSlicer 用户界面中构建自定义打印机定义开始。在切片机中准备好多个挤出机配置文件后,将设置导出为配置包。这个导出的文件将包含所有多挤出器特定的设置。根据你的喜好编辑导出的配置包,主要是添加标头,并尝试通过使用继承来减少配置冗余。

多挤出机设定值按挤出机顺序设置,并且是一个逗号分隔的列表。下面是一个示例列表,显示了为双挤出机设置的一些可能的多挤出机设置。

deretract_speed = 0,0 # Setting this value to 0 will use that same value as the retract speed.
extruder_colour = #FFFF00;#229403
extruder_offset = 0x0,0x0
max_layer_height = 0.3,0.3
min_layer_height = 0.05,0.05
nozzle_diameter = 0.4,0.4
retract_before_travel = 1.5,1.5
retract_before_wipe = 70%,70%
retract_layer_change = 1,1
retract_length = 1.5,1.5
retract_length_toolchange = 1,1
retract_lift = 0,0
retract_lift_above = 0,0
retract_lift_below = 0,0
retract_restart_extra = 0,0
retract_restart_extra_toolchange = 0,0
retract_speed = 20,20
wipe = 1,1
单挤出机多材料领域

以下字段仅适用于 Prusa 的多材料升级或类似的单喷嘴多材料打印机。这些设置不适用于传统的双挤出机或其他多挤出机打印机。除非启用“Single Extruder Multi Material”参数,否则这些设置在 UI 中不可见。

parking_pos_retraction = 92
cooling_tube_length = 5
cooling_tube_retraction = 91.5
extra_loading_move = -2
high_current_on_filament_swap = 0

定制 SVG 和 PNG 床纹理

PrusaSlicer 使用的 Nano SVG 解析器并不支持 SVG 格式的所有特性。我们建议通过以下工作流程从 Adobe Illustrator 正确导出 SVG 纹理:

File-Export-Export as Tick Use Artboards to make sure the result size is correct in the SVG Options dialog pick:Styling-Inline style(Internal CSS is not supported)Confirm with OK

关于定制 SVG 和 PNG 床纹理的更多细节在Prusa 知识库

在线更新

注意:更新过程完全是可选的。

由 PrusaSlicer 从网络自动更新的捆绑包需要在文件顶部的 [ vendor ] 部分中有一个 config _ update _ url。请注意,出于安全原因,PrusaSlicer 不允许从 prusa3d.com 以外的其他网站下载配置文件。

config_update_url = https://files.prusa3d.com/location

config _ update _ url URL 用作构建 URL 的基础,以获得一个 bundle 索引和特定的 bundle 版本。

索引文件和兼容性约束

索引是一个简单的文本文件,列出了捆绑版本并指定了 PrusaSlicer 兼容性约束。版本字符串采用与上述相同的 Semver 格式。

示例索引文件:

1.4
1.3 Updated print temperature
1.2 Added a new filament profile
max_slic3r_version=1.40.0      # This is a Slic3r version constraint
1.1
1.0.2
1.0.1
1.0
0.9-alpha

每一行要么是一个 bundle 版本号(可选地后面是更改的字符串说明),要么是一个 PrusaSlicer 版本约束。约束可以是

max_slic3r_version=...,或 min_slic3r_version=... 这些约束是包容性的,即。 max_slic3r_version=1.40.0 表示 PrusaSlicer 版本 1.4 0.0 或更低。

索引文件从上到下读取,每一行与最后的 max_slic3r_version,或 min_slic3r_version 进行比较。

min_slic3r_version < = vendor budle version < = max_slic3r_version

这意味着该约束适用于该行之下的所有版本。在上面的示例中,最高 1.4 0.0 的 PrusaSlicer 版本只会将这个捆绑包更新到 1.1 版本,然后它将继续使用这个版本。另一方面,例如,PrusaSlicer 版本 1.4 1.0 将更新到 1.4。

min_slic3r_version = 2.1.1-beta0
1.0.8 Various changes in FFF profiles, new filaments/materials added. See changelog.
1.0.7 Updated layer height limits for MINI
1.0.6 Added Prusa MINI profiles
min_slic3r_version = 2.1.0-alpha0
1.0.5 Added SLA materials
1.0.4 Updated firmware version and 0.25mm nozzle profiles
1.0.3 Added filament profiles

在此示例中,配置文件 1.0.8、1.0.7 和 1.0.6 至少需要 2.1.1-beta0 版本。配置文件 1.0.5、1.0.4 和 1.0.3 至少需要 2.1.0-alpha0 版本。

Release,Release 候选版本,beta 和 alpha 版本

通过在版本号后面附加一个标记,可以将供应商捆绑版本标记为候选版本、beta 或 alpha 版本。

示例:

0.8.0 Updated for the PrusaSlicer 2.0.0 final release
0.8.0-rc1 Updated SLA profiles
0.8.0-rc Updated for the PrusaSlicer 2.0.0-rc release
0.8.0-beta1 Updated SLA profiles
0.8.0-beta Updated SLA profiles
0.8.0-alpha9 Updated SLA and FFF profiles
0.8.0-alpha8 Updated SLA and FFF profiles
0.8.0-alpha7 Updated SLA and FFF profiles

根据 PrusaSlicer 发布类型(发布、候选发布、beta、alpha),只接受特定的供应商捆绑版本:

Release:仅发布捆绑版本

Release candidate:Release and release candidate bundle 版本

Beta:除了 alpha bundle 版本之外的所有内容

Alpha:所有捆绑版本

通过这种方式,它可以上传一个新的 bundle alpha/beta 版本,并且它将被 PrusaSlicer 的稳定版本自动忽略。

检查并更新到较新的供应商捆绑版本

PrusaSlicer 总是先下载索引,然后根据索引决定是否下载新的捆绑包。如果不能获得索引或索引无效,它将不会做任何事情。

索引 URL 是通过将“index.idx”附加到 config _ update _ url 来构造的。在上述示例中,这将是“https://files.prusa3d.com/location/index.idx”

PrusaSlicer 查阅索引文件,如果确定有更新可用,它将从一个 URL 下载一个新的捆绑包,该 URL 是通过向 config _ update _ url 附加版本字符串和扩展名“.ini”构造的。

例如:“https://files.prusa3d.com/location/1.4.ini”或PrusaResearch 存储库中的真实示例

捆绑索引(以及更新的捆绑)存储在用户数据目录的缓存子目录中。PrusaSlicer 将索引下载并更新捆绑包(如果有的话)到后台的缓存中。在下一个应用程序启动时,它会查阅缓存,如果之前下载了更新的捆绑包,它会提供应用它们的机会。

对于初始引导,PrusaSlicer 使用随安装而来的索引和捆绑包。

自定义供应商配置资源

自 PrusaSlicer 2.3.0-alpha4 以来,在安装“resources”目录之前从用户的“vendor”目录中搜索和加载供应商配置资源(打印床模型、纹理、缩略图)。这样就可以自定义打印床图像,而无需覆盖应用程序全局资源。因为向导已经从用户的“vendor”目录中读取了供应商配置包,它还允许用户只需将他的配置包、打印机缩略图和打印床模型复制到用户的“vendor”目录中,就可以安装新的第三方供应商配置。

示例:

<data_dir>\vendor\DemoVendor.ini
<data_dir>\vendor\DemoVendor\DemoPrinter_texture.svg
<data_dir>\vendor\DemoVendor\DemoPrinter_bed.stl
<data_dir>\vendor\DemoVendor\DEMOPRINTER_thumbnail.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值