プリント中に一部のオブジェクトだけ反って浮いてきてしまった場合やベッドから外れてしまった場合などに、該当するオブジェクトだけスキップして他のを完成させることができる。

スライサ・ユーザインターフェイス・G-code 実行器でそれぞれやることがあり、協調しないと実現しないので、なかなか難しい機能といえる。

Mainsail のドキュメント https://docs.mainsail.xyz/features/exclude_objects に従えばほぼ良いが、事前処理についてはスライサで完結させたほうが良い。

スライサの設定

スライサ側の設定「オブジェクトに名前をつける」をオンにし、G-code の生成後に preprocess_cancellationを通すようにする。

preprocess_cancellation 自体は moonraker (mainsail のバックエンド) へ enable_object_processing を設定することでも同様のことができるが、この設定はかなり重いようなので手元で処理してしまったほうが良さそう。G-code からオブジェクトの領域を算出しているようで、ちゃんとした CPU の手元でやってももそこそこ遅い。

どうなるか

キャンセルボタンが拡張され、一部のオブジェクトだけキャンセルできるようなUIが追加される。

  1. トップ
  2. tech
  3. 3Dプリンタの Object Cancellation (Klipper + Mainsail)

デフォルトでプライベートIPアドレスを許可するようなLAN内向けのアプリケーションがあったりする。つまり192.168.0.13 とかでアクセスする分には特に設定せず問題なく繋がるというもの。

IP アドレスを調べる手間をはぶくため、mDNS 対応していて、voron2.local というホスト名でアクセスできるようになっているとする。この場合、このホスト名でアクセスするときだけうまくアプリケーションが動かないという挙動をすることがある。

mDNS で voron2.local などとアクセスした場合、解決されるアドレスは環境によって IPv4 だったり IPv6 だったりになる。IPv4 で解決されるなら 192.168.0.13 などでアクセスしたことと同じで、問題ない。

問題は IPv6 かつ、しっかりグローバルIPアドレスを持っている場合で、アプリケーションはグローバルIPアドレスからのアクセスをデフォルトで許可するわけにはいかないので拒否される。

この件でやっかいなのは、アプリケーション自体はデュアルスタックで IPv6 対応しているが、IPアドレスベースのアクセス制限をかけているというところで、アクセス制限をかけてない部分には問題なくアクセスできる。

これは localhost と書くと IPv6 対応したときに死ぬことがあると同種の問題といえる。ホスト名はデュアルスタック環境だとどちらに解決されるか環境依存なので、IPv6 環境になり、特に今回の場合はグローバルアドレスが付与されているという条件付きでうまく動作しない環境ができあがる。

正攻法

IPv6 の Link local アドレスならデフォルトで許可しやすいので、mDNS でこのアドレスをひければ一番良いが、avahi でそのような設定を行うことは不可能なようだ (mDNS の仕様的にできないっぽい?)。

または自分と同じ IPv6 prefix を持つなら許可するみたいな動的なアクセス制御を行うようにすればいいがこれは実装が必要になる。

あるいは明示的に現在持っている IPv6 prefix を許可するようにする。が prefix がいつ変化するかよくわからないのでやりたくない。

IPv6 を無効にする

あまりやりたくはないが mDNS 時に利便性が悪 すぎるので、今回は該当機の IPv6 を無効にすることにした。

以下を /etc/sysctl.conf に書く。

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

これで aaaa が解決できなくなる。

dig aaaa voron2.local
  1. トップ
  2. tech
  3. mDNS と IPv6 とアクセス制限

Klicky

https://github.com/jlas1/Klicky-Probe

Klicky はプローブ(ベッドの高さを測るセンサ)の実装の1つで、誘導プローブを置き換えて使えるような設計になっている。

誘導プローブの変わりにマイクロスイッチを使うのが基本形。誘導プローブは運用温度が案外狭く、温度の影響をうけて不安定になる。ノズルはかなり高温になり、測定対象も高温のベッドとなるので、誘導プローブが溶けたりする問題もある。

ということで物理的な接触スイッチのほうがプローブとして都合が良いが、ノズルよりも下にスイッチがこなければベッドにノズルがあたってしまうという物理的な問題がある。ということでプローブ自体を取り外し可能にしたり、サーボで一時的にスイッチを展開したりしてがんばるほうに発展しているが、そのひとつが Klicky になる。

メリットは温度にあまり関係なくなりプローブが安定することろ。デメリットは設定が難しいところ。

動作のおもしろさ

磁石が電気的接点とドッキング機構・アライメントを兼ねている。

ドッキングできなくてベッドに衝突することはないのか?と思うが、スイッチはノーマリクローズ (プローブがトリガーするとオープンになる) が前提なため、これによってドッキング失敗を検出することができる (プローブがオンにならない高さでプローブがトリガーされているならば、ドッキングされていないと判定できる)

Auto Z Calibration

https://github.com/protoloft/klipper_z_calibration

これもいれるとZオフセットを自動算出するようになる。Klicky によるベッドのプローブと Voron に元々ある Z エンドストップ(ノズルで押してノズル位置を決定できるプローブ)の差分をつかう。

これによりベッドの高さが多少変化してもノズルとベッドの関係(3Dプリントにおいて一番重要)を一定にできる。

ノズルとベッドの関係は最終的には switch_offset という値によって決まる。

Unklicky

Klicky はマイクロスイッチを使うのが基本だが、マイクロスイッチはそもそも精密位置決め向けではなく、そこそこオペレーションポイント(オンになるポイント)がずれる。何度か測定して平均をとったり外れ値を除外したりして対処してソフトウェア的に精度を高めるが、トレードオフとして時間がかかる。

Unklicky は 3D プリントパーツで接触プローブを作るというもので、構造的には精密位置決めに使われるタッチスイッチとよく似ている。おもしろいのはバネなどは使わず、手に入りやすい (そして Klicky でも大量に使う) 6x3mm磁石を採用してるところ。

Unklicky にするとマイクロスイッチのときにあったプローブのやりなおしが劇的に減る。

  1. トップ
  2. tech
  3. Voron2.4 Klicky、Auto Z Calibration、そして Unklicky

Octopus の場合 STOP 用のターミナル (Stop_0~Stop_7) ならどこでも良いっぽい? 一応 PG12 か PG13 が指定らしい。ので Stop_4 = PG12 に繋ぐことに。

BigtreeTech Smart Filament Sensor を使うことにしてみた。この記事の解説が割と詳しい。

BTT SFS の端子は PH (2.0mm) 4PIN。付属ケーブルは XH 3PIN (BTT Octopus とかにはそのままつけられる配線)

XH3PIN な Stop_4 のターミナルを右スカートに延長して外から接続するようにした。フィラメントセンサはなんとなく壊れやすそうなので、あまり中に組みこみたくない。あとで気が変わって単純なスイッチにしたりもできるように。

スマートフィラメントセンサーってなんなのか?

マイクロスイッチとかで単純にフィラメントの有無を検出する方法もあり、こちらのほうがよりシンプルである。ただフィラメントの有無の検知だけなので「フィラメント切れ」は検知できるがより「フィラメントの停止」は検知できない。

スマートフィラメントセンサーはフィラメントの動きを検知する。このため「フィラメントの停止」も検知できる。例えば

  • フィラメントの絡まり
  • エクストルーダの不良(モーターのオーバーヒートやギアのゴミなど)

これらは単純なフィラメント切れよりも重大なトラブルなので、はやめに検知して止められるのはありがたい。

設定

BTT Smart Filament Sensor は Klipper 的には filament_motion_sensor になる。以下のように設定する。

[filament_motion_sensor filament_sensor]
detection_length: 7.0
extruder: extruder
switch_pin: PG12
event_delay: 3.0
pause_delay: 0.5
pause_on_runout: False
runout_gcode:
    {action_respond_info("RUNOUT: Filament runout")}
    {% if printer.idle_timeout.state == "Printing" %}
    PAUSE
    {% endif %}
insert_gcode:
    {action_respond_info("RUNOUT: Filament inserted")}

filament_motion_sensor はフィラメントが動いている場合、該当のピンをon/offするという伝えかたをする。ソフトウェア的には以下のように処理している。

  • extrude しているのに、想定される信号がこなかった場合 runout
    • 具体的には detection_length [mm] 分 extrude しても信号がない場合
  • runout している状態で信号がくれば inserted

filament_switch_sensor と違って、フィラメントが実際にセンサー部分にあるかどうかは判断しないので注意がいる。つまり extrude して runout 状態にならなければ実際にフィラメントを入れても insert_gcode は実行されないし、フィラメントを抜いても extrude されなければ runout_gcode は実行されない。

  1. トップ
  2. tech
  3. Voron 2.4 に BTT Smart Filament Sensor を追加

Raspberry Pi の負荷が高くなると mcu との通信に支障がおこり、最悪プリンタが止まる。なので cron をできるだけ止める

apt

https://blog.turai.work/entry/20191005/1570271926

systemctl stop apt-daily.timer
systemctl disable apt-daily.timer
systemctl stop apt-daily.service
systemctl disable apt-daily.service

/etc/apt/apt.conf.d/02periodicに以下

APT::Periodic::Enable "0";

man-db

raspi で man 見ない

sudo chmod ugo-x /etc/cron.daily/man-db
sudo chmod ugo-x  /etc/cron.weekly/man-db
systemctl stop man-db.timer
systemctl disable man-db.timer

bsdmainutils

calendar -a が動いているが使わない。

sudo chmod ugo-x /etc/cron.daily/bsdmainutils
  1. トップ
  2. tech
  3. Klipper 用の raspiberry pi のカスタマイズ

基本的に Klipper のドキュメントに従うのみ。ただ準備がなかなか面倒くさい

https://www.klipper3d.org/Measuring_Resonances.html

ADXL345 用の SPI コネクタを外だし

ADXL345 は SPI 接続するため、Raspberry Pi の SPI (SPI0) をパネルに出してくるような配線をした。Qi コネクタ 3x2 ピンを使うことにした。

ピン配列は AVR ISP に似たような感じにした。

ケーブル配線

1m のフラットなLANケーブルを切って配線した。以下のペアになるように配線。8P8Cだと1ペア余る。

GND+MISO
3.3V+MOSI
SCLK+CS

Stealthburner への取り付け

Stealthburner は最初から ADXL345 をとりつける治具と場所が用意されているのでそれに従うだけ。

測定

MEASURE_AXES_NOISE からはじめる。全体的に若干ノイズが多いが、特に z 方向のノイズが多い。

Axes noise for xy-axis accelerometer: 138.329734 (x), 93.558179 (y), 339.566789 (z)
Axes noise for xy-axis accelerometer: 138.329734 (x), 93.558179 (y), 339.566789 (z)
Axes noise for xy-axis accelerometer: 109.878052 (x), 98.976760 (y), 286.407229 (z)

で手順通りやってグラフ化したのが以下 (結果 csv を手元にダウンロードして、klipper/scripts/calibrate_shaper.py は手元で実行した)


TUNING_TOWER による共振周波数測定だと、

shaper_freq_x: 53
shaper_freq_y: 72
shaper_type: mzv

だったが、ADXL345 で測定した結果は

shaper_freq_x: 54.8
shaper_type_x: mzv
shaper_freq_y: 41.8
shaper_type_y: mzv

だった。X の周波数は結構近くだったが y がだいぶずれていた (yは複数共振が見られたので TUNING_TOWER だと測定が難しかった)

max_accel は 5100 未満と、あまり高くできなそう。

  1. トップ
  2. tech
  3. Voron 2.4 ADXL345で共振周波数を測定する

FORMBOT のセットを買ってみた (先にいっておくとおすすめしない)。Aliexpress だとエクストルーダーの種類が選べないことに気付いたので、FORMBOT 公式サイトから PayPal で購入した。Dragon Hotend Standard Flow にした。

届いたセットに Z motor が含まれておらず、お問合せ。30分ぐらいで返信がきて対応は早かったが、さすがに届くのに1週間ぐらいはかかった…… (本体はUPSだったがZモーターはCNEで発送された)

1515 押し出し

A/B と H/C は端のM3タップの有無だけなので、セットのものはすべてタップが切ってあった。後述するけど、このタップがひどかった。

F/G は穴の有無だけなので同一のものが3つ入っていた。ベッドフレームだが、今回これらは使わない。

Kirigami mod

Kirigami mod というベッドのマウントをアルミ押し出しではなく板金にするmodがあるのだがこれも同時に注文した。鉄だと思ったが FORMBOT のものは磁石にくっつかず軽いのでアルミっぽい。

ベッドマウントがデフォルトのアルミ押し出しで何がダメか?

  • 剛性が低い
    • 伸びている2本の押し出しは blind joint ネジで止めてるにすぎない
  • ネジの増し締めがしにくい
    • 組立後にアクセスできない位置にネジがある
    • 3Dプリンタのねじはネジロックしない限り確実に緩むので厳しい

これらを解決するのが1枚板から折り曲げた Kirigami mod になる。

1515アルミ押し出しのタップ問題

端の穴にM3のタップが切ってある。トルクをかけなければ10mmのビスは最後まで入るので、一見問題なさそうだが、実はこの時点でかなりグラグラ。トルクをかけて締めることができなかった。下穴径がかなり大きいのだろう…… 不良品といえる。一応タップは切ってあるので、クレームいれてどうにかなるか面倒なため自分でなんとかすることにした。

Voron 2.4 の 2020 押し出しはクオリティ良かったが今回の 1515 は表面処理からして微妙な感じ。おそらく供給元が違うのだろう。Aliexpress で Voron 0.1 の 1515 だけのセットとかを見ていると「タップ穴がちゃんとしてます!」みたいな主張をしているショップがあるので「あるある」っぽい。

ということでこのネジ穴で「固定」することはできない。ほんの仮固定ぐらいが精々。

ネジ穴を埋めてタップを切りなおすとか、いろいろ考えてみたが強度的に安定させたかったので、アングルでスロットから固定することにした。追加のM3ナットを入れておく必要があったり、ほかのパーツと干渉しないか考える必要があるが、3D CAD を見ながら配置を決めた。

Z軸上側はA/Bドライブによってスロット同士も直角に固定されるが、下側は固定されないので、ここをサポートするアングルを追加。


あとは左右のフレームの上下前後四隅、及び全面フレームの下をアングルで固定した。右フレームの上の前側は Klicky をつけたかったため、Klicky のマウントとアングルを合体させたみたいなものをプリントした。

Mini Afterburner

なかなか組み立てが難しいツールヘッドみたいだし実際苦労した。組み立てが大変なのはともかく、エクストルーダー部分の設計がなんか微妙な感じがする。アイドラーのストッパ的なものがなくギアが全力で当たっていてよくない感じがする。

検索してみるとやはりエクストルーダー部分に不満がある人が結構いて、Mini-AfterSherpaというエクストルーダー部分をモジュール化する mod が出ていたりする。そしてこれの Kilicky 対応版まである。

Sherpa Mini は Mini Afterburner とほぼ部品共通で作りやすいかな?3mm シャフトだけ追加で必要

とりあえずは Mini Afterburner を使うことにする。ただ、アイドラー圧だけ気になるので、M2 のビスをアイドラーにねじこみ、圧を調整できるようにはした。

M3 Tナット


https://github.com/VoronDesign/VoronUsers/tree/master/printer_mods/Zen3D/V0_1515_T-nut

M3 ナットをそのまま T スロットに入れると重力に従ってあっちこっちいってしまうので、このTナット化するモデルをプリントして使った。これは本当によかった。

ただナット幅が増えるため、ハンドルの受け側の磁石を埋めるパーツだけはうまく固定できず、1本のビスで止めることになる。特に力がかかるところではないので、あんまり問題ない。

ケーブルチェーン

7x7mmのケーブルチェーンにJST 2ピンコネクタは通らないので、先にケーブルを通してからコネクタをつけないといけない。(圧着端子自体はもちろん通るので、つけてしまったら、一旦ハウジングから外すということ)

ついてきたケーブルチェーンは若干長かったため、数個リンクを外す必要があった。前述の通り、コネクタはチェーンを通らないので、先に調整しなければならない。めんどくさかった。

SKR Mini E3 V3

SKR Mini E3 V3.0 Pin 回路図

0.1 のマニュアルのマザーボードは SKR Mini E3 V2 なので、V3 だと微妙にというか結構違うので気をつけて配線しないといけない。

  • 24V入力端子は1つになっており入力方向が変わっている
  • ファン端子が1つ増えている
  • I/O 端子が増えている
  • SPI ヘッダの端子が増えておりピンアウトが変わっている

など。

ref. SKR Mini E3 V2.0 Pin

設定

デフォルトの設定だとベッドの max_power は設定されていない。ヒーターは24V 60W。120x120mm だと 144cm^2 なので、Rule of thumb is 0.4 watts / cm^2 に従うなら57.6Wぐらいが適切。60W で温めてもいいということだろう。

A/B モータの接続がマニュアル通りだと逆だった。なんでかはよくわからない。

X/Y/Z エンドストップの物理的な調整と position_endstop の調整。120x120x120 の印刷範囲があるが、これはベッドのサイズであると同時に、ツールヘッドの移動可能範囲と一緒なのでギリギリの設定をしっかり詰めてしないと物理的なリミットにあたってステップが飛んでしまう。

X/Y はレバー式のマイクロスイッチなので、 position_endstop は 119 ぐらいにして1mmほど余計に押せるように調整しとくと良さそう。

Zは調整が難しい。kirigami のせいかマニュアルのビス長だと短くてエンドストップにあたらなかった。長いのに交換して調整した。が初回プリントで使っただけで、後述する Klicky による仮想Zエンドストップを使っており、もともとのZエンドストップは使っていない。

V0-Umbilical

https://github.com/VoronDesign/Voron-Hardware/tree/master/V0-Umbilical/Software

FORMBOT のキットにはツールヘッドPCB及びマザーボード側のPCBのセットが同梱されていた。chamber temp のサーミスタもついている。

ただ chamber temp 用の配線ケーブルは入ってなかったので、自分で用意する必要がある。前述の通りだが V2 と V3 で SPI ヘッダのピンアウトが変わっているので気をつけて配線する。MISO が 10kΩのプルアップなのは変わってないのでソフトウェアの設定はそのままでいい。

Klicky プローブ

Voron 0.1 のデフォルト設計ではプローブを組みこむようにできていない。しかしどう考えてもプローブはあったほうがよいので、最初から Klicky を組みこむことを前提に作りはじめていた。Mini Afterburner も Klicky をマウントをつけれるタイプを使った。

SKR Mini E3 では BLTouch 用のヘッダの端2ピンが Probe (PC14) になっている。XH コネクタ2ピンのロック部分を切り飛ばしてはしっこだけ入れている。というのもこのヘッダからホットエンドファンにも接続する必要があるため。

なおこのプローブを仮想Zエンドストップにしてる。

Klicky (というか Probe の) メリットとしては

  • SCREWS_TILT_CALCULATE が使える。(紙を使う職人芸なしにベッドを水平にできる)
  • Zエンドストップの変わりになる (調整・設定項目がすくなくなる)
    • 0.1 は 2.4 みたいにノズルで押すエンドストップじゃないので、Zエンドストップを使うメリットがない

プローブ側は Unklicky にした。ロングタイプの Unklicky はバネ用の磁石を別につけるのだが、これがツールヘッドの磁石とくっついてガタガタいうので鬱陶しかった。機能的には問題なかったものの、0.2mm のスチールシートを切って貼ったらいい感じになった。

まあでも普通のKlickyでよかったかな…… Unklickyはsafe zがどうしても高くなるのでコンパクト感がない。

サーボで出てくるブラシ

https://www.printables.com/model/181785-voron-v01-nozzle-brush これをつけることにした。MG90S を使う。似たような小型サーボがいくつかあるが微妙に寸法が違うので MG90S しかフィットしない。

NeoPixel ヘッダから電源および制御をとるようにと書いてあるが、自分はそこは使わず、SPI の 5V / GND と I/O の PD0 に接続するようにした。

ブラシだけではなくパージバケツも欲しかったのでモデリングして追加した。

フロントディスプレイ+エンコーダー

https://www.printables.com/model/341330-voron-01-front-skirt-with-display

手持ちの I2C OLED とロータリーエンコーダを全面に取り付けた。どちらも SKR E3 ではなく Raspberry Pi 側に接続している。

Raspberry Pi 側に接続することで、systemd の起動/終了時にOLEDに簡単な文字を出すような制御をすることができる。

ノズル高さの調整の覚書

Klicky + 仮想Zエンドストップの場合、Probe Offset のキャリブレーションになる (Z Endstop キャリブレーションではない)。

  1. SCREWS_TILT_CALCULATE MAX_DEVIATION=0.025 でベッドのスクリューを調整して水平にする
    • 表示される hh:mm 表記は時計の時間表記でどのぐらい回せばいいかを表示している。00:10 なら10分にあたる角度を調整する。
    • CW/CCW はベッド上から見た方向
  2. ベッド中央で PROBE_CALIBRATE して高さを決定する。ここは紙を使う

ベッドメッシュすべきか

このサイズでこの厚さのベッドだと、ベッドメッシュは不要なのだが、Zホーミングはプローブと違い複数回サンプルをとって外れ値を除外するということができないため、Z原点の精度が信頼できない。これを補正するためにベッドメッシュをしている。ベッドメッシュは最低でも3x3はしなければならない。

Probe して結果をそのまま Z_OFFSET にぶちこむようなコードを書けばすみそうだが面倒なのでベッドメッシュしているという感じ。

トップハットのパネル厚さが厚い

どうやら0.5mmほど設計よりも厚いパネルのようで、うまく組み立てられなかった。Lower Corner Clip を少し修正するといい感じになった。

トップハットは全体的に若干高さを上げつつヒンジを追加する変更を入れて使っている。https://www.printables.com/model/109713-voron-v01-tophat-spacer-with-hinges

エレクトロニクスファンの追加

https://www.printables.com/model/345341-voron-01-splitted-backpanel-with-fan

Voron 0.1 は Raspberry Pi やコントローラーボードの排熱が考慮されておらず、排熱の行き場がないためプリント中は室温25℃程度でも、Raspberry Pi で60℃以上になってしまう。同じスペースにA/Bモーターもあるので、夏場は耐えられないのではと思いエアフローをつくることにした。

SKR E3 のファン端子はFETのローサイドスイッチになっているので、別途電源を供給しつつ - 側だけ配線することで任意の電圧をスイッチできるようになっている。実際 Voron 0.1 の設計上のホットエンドファンは 5V であり、この方法で制御するようになっている。

なので 12V ファンに 5V を供給し、GND は FAN2 の GND に接続するようにした。電圧的に速度調整はできないが、オンオフはできる

感想

Voron 2.4 は割とすんなり組み立てられたが、Voron 0.1 はかなりいろいろ手を加える必要があった。

上に細かく書いてないがX/Yジョイントがいまいちで固定しようとするとスムーズに動かなくて苦労したりもした (シムを入れて解決)し、トップハットは印刷しなおしたりもしている。

ただ小さくて可愛いし、高加速度設定にできるし、小さいぶんウォームアップタイプも早いので、小さいパーツを作るには良い感じがしている。

  1. トップ
  2. tech
  3. Voron 0.1 を組み立てた

ボード組み込みで8個まで、BIGTREETECH DCDC5V V1.0 module をつけて30個までらしい。ref. https://biqu.equipment/products/bigtreetech-dcdc5v-v1-0-power-module-5v-for-skr-mini-e3-v1-2-skr-mini-e3-v3-0-32bit-control-board-rgb-light

オンボードはMP1584ENによるスイッチングの最大5V 3A だが、この 5V は MCU の 3.3V への供給 (AS1117 800mA シリーズレギュレータ) にも使われ、1.1Aのヒューズがついている。NeoPixel は1つあたり約50mAだから400mAぐらいがRGB LEDで使える限度ということっぽい。基本的に、RGB LED をつけるなら、5V の外部電源が必要と思ったほうが良い。

Voron 0.1 の場合、5V 10AのDC/DCコンバータは既についているので、NeoPixel はこちらから電源をとったほうが良い。ただ、SKR Mini E3 V3 は 5V モジュールをとりつける用のピンヘッダがついており、ここに接続してやれば NeoPixel ヘッダをいじらずに 5V の供給元を変えることができる。

本来この「外部電源」というのは「BIGTREETECH DCDC5V V1.0 module」のことを差していて、POWER 近くの Vin から Vout を繋ぐような基板になっている。

Neo-PWR1 がオンボードの 5V レギュレータと外部電源を切り替えるジャンパになっている。そのすぐ隣に Vout というピンヘッダがたっているが、これが外部電源の接続口になっている。

  1. トップ
  2. tech
  3. SKR Mini E3 V3 の NeoPixel ピンの最大数

  • ノズル 245℃
  • ベッド 100℃
  • エンクロージャ (40~50℃)

この条件でも場合によっては反って剥れてくる。厚みがでるにつれて (25~30レイヤー)すぐ浮いてくるので形状と加工時間どちらも気にしたほうがいい。

ブリム

  • 原則 5mm のブリム

ブリムの効果は絶大で、5mm 程度でほぼ剥れてこなくなる。1layer目に追加の出力をするだけなので追加のコストは最低限といえる。欠点は外すのが面倒くさく、うまくやらないと後が汚くなってしまうところと、印刷可能最大サイズが減るところ。

原則的に ABS はブリム必須と考えたほうが良い。長辺10mm以下だったりある程度までの大きさの円形なら例外的にブリム不要にできるが特殊な例になる。

複数オブジェクトある場合、ブリムが重なるように、3mm 程度の間隔で配置する。

ただし非常に大きいオブジェクトの場合、ブリムをつけても負けて剥れてくることがある。なので

  • 長辺 150mm以上の場合ブリム10mm

とする。

反り

ブリムをつけても印刷中に剥れてこなくなるというだけで、反り自体は起こる。アスペクト比が極端だと外したあとに盛大に変形することがある。どうしようもない。

  1. トップ
  2. tech
  3. ABS 3Dプリントの条件