Pc-Trace

<< 2025年8月 >>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31






Pc-Trace
PC-Trace

< next 2017年3月の記事
>>2017年3月の記事一覧

ベッド・レベリングの重要性

写真を見て一目瞭然。

【左はベッドから剥離し、ホッとエンドのノズルに大きく振り回されていた鉢受け】


左右並べて撮ってはいるが、どちらもプリンターのベッドの同じ位置、同じ温度、同じフィラメントでプリントしたもの。
(ベッド50度、ホットエンド218度、材質PLA、サポート無し)

直径10センチに満たない鉢の受け皿(Thingiverse:モチーフはバラ?)だが、プリント時間が2時間近くかかるため目を話した隙に起こった事故。

プリントとは関係ないが、去年の夏に買ったまま植え替えを忘れ、"カピカピ"に枯れた「POT」に水をやってみた・・結果、 一週間足らずで徐々に復活し、花が咲いた!

【プリントするきっかけをくれたポットの花】


同じ条件のプリントなら、たまたま"タイミング"で上手くいく場合もある。・・が、今回はハッキリと違いが出る根拠があった。

モデルをプリントする際、貼り付きを良くする幾つかの方法がある。
個人的にベッド全面に貼り付ける「ビルドタック」や、「プラットフォームシート」などを利用しているが、この「プラットフォームシート」は貼り付きの良さとは裏腹に、耐熱ガラスに貼った状態でも均一では無く、気泡無しで貼っても実測最大0.1ミリのムラ!が確認された。

キャリブレーションで吸収出来ないベッドのムラをどう克服するかは、人それぞれだが、割と多く目にするのが「オート・ベッド・レベリング」と言う手法。
前々から興味はあったが、Zプローブも追加のパーツも不要な、既存の「Z_MIN」リミッターを兼用してレベリングする簡易な方法があり、今回の鉢受けのプリントは、それを使う事で上手くプリントする事が出来た。

【Merlinの、Configuration.hにあるMesh Bed Leveling】

今回使ったのはこの部分だけ!

//================================================
//=============== Mesh Bed Leveling===================
//================================================
//#define MESH_BED_LEVELING // Enable mesh bed leveling.
#define MESH_BED_LEVELING

#if ENABLED(MESH_BED_LEVELING)
#define MESH_MIN_X 10
#define MESH_MAX_X (X_MAX_POS - (MESH_MIN_X))
#define MESH_MIN_Y 20
#define MESH_MAX_Y (Y_MAX_POS - (MESH_MIN_Y))
#define MESH_NUM_X_POINTS 3 // Don't use more than 7 points per axis, implementation limited.
#define MESH_NUM_Y_POINTS 3
#define MESH_HOME_SEARCH_Z 4 // Z after Home, bed somewhere below but above 0.0.

//#define MANUAL_BED_LEVELING // Add display menu option for bed leveling.
#define MANUAL_BED_LEVELING

#if ENABLED(MANUAL_BED_LEVELING)
#define MBL_Z_STEP 0.025 // Step size while manually probing Z axis.
#endif // MANUAL_BED_LEVELING

#endif // MESH_BED_LEVELING

//================================================

※設定は個人の環境に合わせたもの。

実際のプリントの様子は次回に続く。


モニター届くも不良品。

新しいモニターが届いたので、早速セットアップ。画質も解像度もバッチリで喜んだのも束の間、なんとスピーカーから音が出ない……。

音声入力は一つだけで、接続ミスのしようもないはず。付属のケーブルに変えてみたり、ヘッドホンを差してみたり、音量MAXにしても無音。これはもしや初期不良?

念のため他のモニターにつないでみると、そちらではしっかり音が出る。やはりモニター側の問題だった。

良品との交換手続きを取るつもりが、カード利用に限定されており、できるのは返金処理のみ。また一から購入手続きをする羽目に……。残念。


「AxiDraw」 power-delayでの問題

「AxiDraw」の調整が尽きない。

ペン先の精度が影響するほど精巧な図が書ける事は分かった。
しかし、注意しなければならない次の問題も発生。

フィードレート2000(mm/min)でのプロット。
拡大すると、特定のサイズの図形では、閉じた図形の書き始めと書き終わりが繋がっていない。
下の拡大図を見て分かる通り、「power-delay」による「サーボ」のタイムラグが問題となり、開始点と終了点で切れてしまっている。


ダイアログでの調整は(ms or s)となっているが、実際の入力は"int"で処理されるため、設定は整数値しか扱えない。
最小値「1」の入力が「1s」で処理されてしまい、端点が繋がらない問題は解決されるものの、1passごとに1sもの時間を費やされては、作図時間に大きく影響してしまう。

「laser_power」で、サーボの動作角度を調整しても根本的な解決には至らず、不安が残ったままになる。
「laser.inx」の「power_delay」を"String"型の変数で扱うのも手だと思う。

「power_delay」を"String"型で扱った場合のダイヤログの表示
小数点以下の数字が扱えるため、"Delay"タイムの微調整ができる。


現在、サーボの動作角度を45度で設定し、Delayタイムは 0.2(200ms)で良好な画像が得られている。
下は、細かい図だが、描画フィードレートは 2000mm/min とやや高めでプロット。

【参考画像は、粗品で頂いた水性ボールペン】


これで「AxiDraw」の完成となった。
奥が深く、限界が無いのがデータ作成。
今後、どう生かすかが課題となった。


< next