Slic3rで出力したファイルの出力に対応
機能追加項目
Slic3rがAdventurer3で使えるか調査の結果、少しファイルを修正すれば使えるのではないかと考え、Adventurer3コントローラーに、Slic3rも出力対象として付け加えることにした。
機能内容
以下の対応を行い、修正したファイルの内容を「ファイル修正機能」でさらに修正を加え、Adventurer3に出力するようにしている。
- Z軸移動速度の修正
XYの移動速度と同じ速度になっていたため、パラメータで指定したZ軸移動速度にする - 「ファイル修正機能」で修正可能なように、ヘッダー部分とフッター部分を加工する
- 温度指定コードの最後にT0をつける
Z軸移動速度の修正
G1 Z0.230 F4800.000
上記のような高速な移動速度を、パラメータで指定した移動速度に変更する。
ヘッダー・フッターの修正
; generated by Slic3r 1.3.0 on 2019-04-05 at 15:48:06
; external perimeters extrusion width = 0.44mm (1.81mm^3/s)
; perimeters extrusion width = 0.56mm (4.69mm^3/s)
; infill extrusion width = 0.50mm (4.98mm^3/s)
; solid infill extrusion width = 0.56mm (1.88mm^3/s)
; top infill extrusion width = 0.56mm (1.41mm^3/s)
M107
M190 S60 ; set bed temperature and wait for it to be reached
M104 S220 ; set temperature
; Filament gcode
M109 S220 ; set temperature and wait for it to be reached
G21 ; set units to millimeters
G90 ; use absolute coordinates
M82 ; use absolute distances for extrusion
上記のようなヘッダーは、以下のように修正。
; generated by Slic3r take4
; defaultSpeed,3000
; rapidZspeed,30
; rapidXYspeed,4800
G90
M82
M107
M140 S60 T0
M104 S220 T0
M104 S0 T1
フッターは以下の行以降をすべて削除。
;END gcode for filament
また、この内容を「ファイル修正機能」で変更できるように対応。
温度指定コードの対応
温度指定コードのフォーマットがFlashPrintで出力したものと異なっていた。末尾にT0がついていなかったので、それをつけるようにした。
「ファイル修正機能」での対応
Slic3rファイルについては以下の対応を行っている。
- コメント行の除去
- 開始・終了コードの追加
- 遊び除去コマンドの追加
- グローバルオフセット
- 不必要なリトラクションの除去
ブリムの速度・吐出量の変更は、ブリム部分の識別ができなかったため、実施していない。
不具合修正項目
拡張子が正しくても、ファイルがFlashPrint、Simplify3D用でないファイルを「ファイル修正機能」にドロップしたり、Slic3r用でないファイルを「Slic3r変換」にドロップすると、エラーメッセージが出ていたのだが、その内容がおかしかった。
それを修正。
コメント