DELTA型 3Dプリンタ SYSTEC社製 改造編

いろいろ3Dプリンタを作ってきましたがそのまとめです。

   DLETA REPRAP  BOX型 
 積層 積層がきれい 積層が荒い  積層がきれい 
 メンテナンス 簡単  簡単  困難 
 修理 簡単  簡単  困難 
 ホットベッド高さ調整  簡単 無理 ! 簡単 
 オートベッドレベリング  注1)不要  絶対必要  不要
 自作難易度  中級 初級 中級 
 価格  3万程度より   3万程度より   5万程度より 

注1)DELTAはベッドの調整が可能なタイプと不可能なタイプがあります。
不可能なタイプであれば可能になるよう治具を作り、無理矢理バネで調整した方が良いでしょう。オートベッドレベリングも可能ですがはっきり言って手動で調整した方が確実だし、早いです。
REPRAPはベッドの手動レベリングは無理です。
レベリングしたくても動いてるのでレベリングできません。オートベッドレベリング必需品です。
BOX型は手動で可能です。

DELTAとBOX型はオートベッドレベリングなくても何にも問題ありません。
DELTAのXYZキャリッジはプーリーベルトで動きますが、このベルトのテンションが結構高くないとプーリーから脱線します。できるだけテンション上げましょう。
キャリッジとして使うには
1)ローラータイプ2)リニアガイドタイプ3)リニアベアリング
があります
私的に考えるとリニアガイドが良いと思います。リニアベアリングは2本シャフトを立てないとならないし、ローラーは問題ないのですがSYSTECのように両側からローラで押さえるタイプなので今ひとつ安心感がないというか・・・
しっかり作ればどれでも同じなんですが・・・・

DELTAは台座が動かないので積層が非常にきれいでかつ高さのあるものも最初のレイヤーさえ固着していればきれいに印刷されます。
対しREPRAPは台座が前後に大きく動くため積層が荒く、失敗といってよいものがけっこうでます。
正確性に欠けると言って良いと思います。
対しBOX型は両方の良いところ取りですが、密閉型のためメンテナンスがしにくく、修理も面倒です。

結局DELTAが一番、立体物が安定して作成できるのではないでしょうか?
今回作るのはSYSTEC社製DELTAプリンタ

ですができたのはこれ

大きく変わりました。
SYSTEC社製自作プリンタは購入のままではまともに動きません、かなり部品を交換する必要がありました。
国産にあるまじき、マニュアルの不親切さ、部品の雑さ、がかなりあります。
SYSTEC社の自作プリンタキット、はっきり言ってお勧めできません・・・かなり腕に自信のある方、改造目的でコストはいくらかかってもいいよ!っていう人向けです。
だったら最初からまともなキット買った方がハッキリ言うと安いし、どうせ自作なら同じことです・・・
SYSTECのプリンタキットでDELTA作ろうとすると中級者レベルがいきなり超上級者レベルに格上げされます。コレが作れれば、もう、あなたには何も怖いものありません。

交換した部品

  SYSTEC純正  交換部品 
 エフェクタ  マグネット式  ベアリング式
 ホットエンド  J2? J5 or J6 
 オートレベリング  セミオート  近接センサ
 XYZキャリッジ  マグネット  ベアリング式
 ロッド  マグネット ベアリング式 
 ホットベッド 固定式   バネ可動式
 ホットベッドカバー 耐熱式ガラス  アルミ 
 LCD液晶  なし サインスマートLCD 

要するに重要な部品すべて総取っ替えになりました。
まずマグネットですがまともに動きません・・
はずれます。たぶん私の固着方法が悪いのだと思いますが、接着剤でいくらつけてもなかなかひっつきません。ちゃんと説明書指定の2つを掛け合わせるエポキシ使ってます。
もぅ手がべとべとです。
しかも円盤マグネットではなくネジの上にひっつけるタイプなのでしょっちゅうはずれては接着し直し。
しかも動作中もちょっとしたことでマグネット外れます。マグネットの力が弱い??


上記が、これに変わりました

エフェクタもJ2のホットエンドをJ5,J6に対応できるベアリングロッド式に作り替えました。
こちらが元々のマグネット式エフェクタ

こちらが改良して作ったベアリング式のエフェクタ
J5,J6どちらでも取り付け可能なように作ってます。
ファンは3カ所につけられるようにしてますが、2カ所(桜色のフィラメント部分)で、生成物もまず問題ないようです。
ホットエンドへは直接ファンがとりついてます。




XYZ軸のキャリッジも、ベアリングロッド用に自作しました。


以下備忘録です、ただし後日書き込んでるので覚えてないところもあるかもしれません。Marlineは2015年度版をつかってます。
今までのようにオートベッドレベリングをコメントアウトしたりしなくても最初から使えるようになっているようです
配線図



転送速度です。 250000にしてます


マザーは33 RAMPS+ArduinoMEGA

MENDEL_NAMEは何でも良いのですがKOSSELにしてます。
EXTRUDERSはホットエンドの数です。1個だけ

ロッドの設定です。
これによりDELTAの精度が大きく変わります。
DIAGONAL_ROD:Deltaのロッドの長さです。ベアリング中心(または鋼球)からベアリング中心までの距離
ほか、下参考にしてください。

ただし、2,3,4に関してはこの変数は個々の部分でしか使ってないのでその下DEFAULT_DELTA_RADIUS(・・・・・)に直接書き込んでいる人も居るようです。
要するにDEFAULT_DELTA_RADIUS(105)のように・・・
わたしは一応1,2,3,4をはかって書き込んだその下

#define DEFAULT_DELTA_RADIUS (DELTA_SMOOTH_ROD_OFFSET-DELTA_EFFECTOR_OFFSET-DELTA_CARRIAGE_OFFSET+38.0)
と補正値で調整しました。
これは正確な値を1,2,3,4に入れていないとロッドが山なりに動いたり、谷なりに動いたりしてホットエンドでベッドを削ってしまいます。

下記の方のホームページ
http://shimanagasi.fc2web.com/k800/k800assy.html#cal
・アームのディメンションをキャリブレートする
が非常に参考になります。
凸ならDELTA_RADIUSを増やし、凹スカスカならDELTA_RADIUSを減らし+38位で落ち着きました。
これさえしっかり設定すれば(正確にすれば)何台作っても理論上同じ大きさの造形物ができます。
以下そのまま原文です
・アームのディメンションをキャリブレートする

Marlinに設定した、アームの長さ(DELTA_DIAGONAL_ROD)はノギスで直接的に計測した値ですが、DELTA_RADIUSは正確な計測が難しく、適当に入れたものですから座標計算にはまだ誤差があり、ホットエンドは平面に誘導されません。これを平面上を移動するように合わせ込みます。

Repetier-Hostを立ち上げて、[プリンター接続]します。
[ホームポジション]ボタンを押します。
G-codeに"G1 Z50"を送信します。
ペットボトルのキャップなど少し高さのあるものをゲージとしてベッドに置き、ジョグボタンでZ方向を下げて行ってホットエンドの先っちょをぎりぎりに触れます(紙の場合と同じです)。

ゲージを抜いて、G-code"G1 Y-70"を送信します。
ホットエンドが手前に移動します。
この状態で先ほどのゲージをホットエンドの下に差し込んでみます。
差し込めなければホットエンドは凸面を描いて移動しており、スカスカならばホットエンドは凹面を移動している事になります。
[プリンター切断]します。

ArduinoIDEに切り替えて、凸ならDELTA_RADIUSを増やし、凹ならDELTA_RADIUSを減らしてから、Marlinファームウェアをコンパイルして書き込んでください。

以上の操作を繰り返して、水平面を移動するように調整します。


なお、キャリブレーションにはベッドとホットエンドの間に物を挟む方法のほかに、ダイヤルゲージをホットエンドの代わりにプラットフォームに取り付ける方法があります。これだと10μmの目盛りで非常に解りやすく正確にキャリブレーションを行うことが出来ます。
プリンターが稼動したら、取り付けアダプターを印刷してキャリブレーション環境を改善するとよいでしょう。


・Z座標のトラベル量を最終的に確定する

これまで平面を移動していなかったので最終的なトラベルがわかりませんでしたが、平面上を移動するようになったので、Z座標の移動量を確定して設定します。

Repetier-Hostを立ち上げて、[プリンター接続]します。
[ホームポジション]ボタンを押します。
G-codeに"G1 Z30"を送信します。
ベッドに紙を置いてジョグボタンでZ座標を下げ、触ります。
Z座標に示された値を、メモします。
[プリンター切断]します。

ArduinoIDEに切り替えて、Configuration.hの514行目のMANUAL_Z_HOME_POSに書いた値から、メモの値を引いて書き直し、K800にアップロードしなおします。

書き込めたらRepetier-Hostに戻って、[設定]-[プリンタ設定]メニューを選び、[エリア設定]タグ内の[プリント高さ]に同じ値を入力して[OK]ボタンを押します。

[プリンター接続]します。
[ホームポジション]ボタンを押します。
G-codeに"G1 Z0"を送信します。
さて、ベッド上ぎりぎりでぴたりと止まったでしょうか。
順次、G-codeに"G1 Y80"、"G1 X69.3 Y-40"と、"G1 X69.3 Y-40"を送信して確認します。

なお、ホットエンドやベッドの取り付けをいじった場合、Z座標のトラベルは計り直して設定し直さなければいけません。




最後に最終の確認として、Z軸の位置を調整します。
G-codeは”G1 Z2"くらいで動かします。
これはZ軸だけ2mm手前でストップするというコードです。
これで調べた高さをArduinoIDEに切り替えて、Configuration.hのMANUAL_Z_HOME_POSに書いた値から、メモの値を引いて書き直し、K800にアップロードしなおします。



一応ベッドのサイズを書き込みました。


オートレベリングのオフセットです。私は結局オートベッドで作らないでベッドの下にバネを取り付けて手動で調整する方法をとったのでここも不要になりましたが・・・


温度の設定です。温度のセンサーの種類を入れるのですが一応定石通りの数値を入れました。

ホットエンドとベッドの最大温度設定です。これ以上温度上がりませんという設定です。260度以上ホットエンドを暖めてもも、燃えちゃいます!

Ki Kd設定です。加熱特性を設定しないとやたらとホットエンド、ベッドの温度が上がるのが遅いとかなるのでは?
Marlineには自動で計測してくれるので

ホットエンドが十分冷えた状態ではじめます。
Repetier-Hostを立ち上げて、[プリンター接続]します。
G-codeに"M303 E0 S200 C8"を送信します。
ホットエンドに電源が入り、加熱特性が測定されて結果がログウィンドウに表示されます。
"Kp: Ki: Kd:"の値をMarlinのConfiguration.hの219行からに書いてコンパイルしてアップロードします。

だそうです。
ベッドの方も同じようにしますが
http://nefastudio.net/2015/07/06/4272.html
のページを参考にさせていただくと
M303 E-1 S90 C8
で指定したかと思います。



ベッド加熱特性です


リミットスイッチですがオートベッドレベリングをするのであれば最後の
#define ENDSTOPPULLUP_ZMIN

//#define ENDSTOPPULLUP_ZMIN
にしてコメントアウトにしてください。
でないとオートベッドレベリングZ軸がリミットスイッチ反応しません。



モータの回る方向です。


モータのステップ数(要するに回転速度)です。わたしは最終的にホットエンドに送るフィラメントのエクストルーダのスピードは最終的に95くらいにしました。
多すぎるとフィラメントを送りすぎてカツカツ音を立てます、少なすぎるとフィラメントがホットエンドに送られないので成形物がスカスカになります。


サインスマートのLCD液晶を使うための設定です。液晶によってコメントアウトするところが異なります。
私が買ったのはコレです


このあとは動作テストです。
リミットスイッチが反応するかRapter HostからM119コードを送信します。
すべてMAXがOPENになっている必要があります。

Xmax: open Ymax :open Zmax: open

次にXタワーのリミットスイッチを手で押し、再びM119コードを送信します。


上写真わかりづらいかもしれませんが、コマンドでM119と打てば下の画面で現在のリミットスイッチ状態が出ます。
なにもリミットが押されていなければOPEN、リミットが反応すればTRIGGEREDと出るはずです。

初めてのプリントはコレ。どれだけ細かなものが作れるか

例のごとくかなり小さな部分がゆがんでます。でもこれ、経験済みです。エフェクタのまわりに立体物にだけ風が当たるようなファンを取り付けることで

これだけきれいに変わります。