3Dプリンター(6) ― 2015年11月09日
コントロールボードとモータードライバー
3Dプリンターの制御系をHackします。このブログでもいろいろ作成しているArduinoが制御マイコンになります。デジタルポートとアナログポートを使用します。
Arduinoとコントロールボード
RapRep 3Dプリンターのコントロールボードのセットです。内容はArduino mega2560 R3互換ボード、RAMPS1.4コントロールボード、A4988ステッピングモータードライバーがセットになっています。特にセットで購入する必要はありませんが、今回はセットのほうが割安になっていました。
Arduino Mega2560 R3にはファームウエアに当たるスケッチを書き込みます。スケッチはMarlinをダウンロードし、自分の構成にパラメーターを合わせて修正します。Arduino IDEからArduino Mega2560 R3に書き込み完了です。

モータードライバー

- A4988使用時の計算式
I_TripMax = Vref / (8 x Rs)
I_TripMax : 制御電流
Vref : VR-GND間の電圧
Rs : シャント抵抗値
- DRV8825V使用時の計算式
Ifs = Vref / (5 x Rs)
Ifs : 制御電流
Vref : VR-GND間の電圧
Rs : シャント抵抗値
1.5A x 80% = Vref / (8 x 0.2Ω) で Vref = 1.92V
に設定しました。互換A4988ドライバーボードはシャント抵抗値が異なることがあります。前に購入したAsShopで扱っているA4988ドライバーボードはR100 = 0.10Ωでした。ネットで解説されているI = Vref * 2.5 という計算式はPololu社のリファレンスボードの場合でシャント抵抗がR050 = 0.05Ω時の計算式です。ステッピングモータの制御電流値の設定はドライバーICとシャント抵抗値を確認し、発熱対策を考慮した設定にする必要があります。

ステッピングモーター

e-bayなどで販売時に表記されているトルクの単位はいろいろありわかりにくいです。1N.m(ニュートン.メートル)は1000mN.m、100N.cm、0.001kN.mとも表記できます。また0.102kgf.m、10.197kgf.cm、10197.162gf.cmとも表記されます。変換計算をしてくれるページがありますので参照してください。
ドライバーボード同様にステッピングモーターも多少発熱します。しかし、熱くて触れないほどというのは定格電流値を超えている可能性があります。モーターの寿命にも影響しますので定格電流値以内で使用してください。
LCD表示ユニット

このユニットには操作用のロータリーエンコーダーとSDカードソケットが実装されています。SDカードに印刷データを転送してオフライン印刷が可能になります。
温度計測センサー
RepRapでは一般的に安価なNTCサーミスター素子を使用します。詳細はこちらのページで解説されています。だいたいホットエンドやヒーテッドベッドに付属してきますが、改めて購入するのであればPTFE耐熱ケーブル付きをおすすめします。細めの2心PTFE耐熱ケーブルがなかなか見つかりません。MarlinFirmeareにはたくさんのセンサーが予め記述されていますので購入したものを選択してください。RAMPS1.4コントロールボードの温度センサー端子に接続します。極性はありません。
エンドスイッチ
XYZ軸のゼロ点検出用のセンサーです。マイクロスイッチか、ホール素子を使用した位置検出センサーです。RAMPS1.4コントロールボードのエンドスイッチ端子に接続します。MIN、MAX合計で6個接続できますがMINのみ(3個のセンサー)で十分でしょう。MAXはMarlinFirmeareで最大移動距離が設定できますので代用が可能です。
最近のコメント