2014年1月5日日曜日

Repetier-firmwareとMarlinの比較

デュアルエクストルーダーを使い始めて気がついたのですがこの二つのファームウェア、基本的なところでは大きく違わないのですが、細かい使い勝手を考えると結構違っていました。

Marlinはデフォルトで対応しているボードの種類(設定)が多く、購入時にインストールされていることも多いため、ほとんどの人が使用しているのではないでしょうか。通常の構成であれば機能も必要十分だと思います。なのでMarlinからRepetierに変更して良かった点、困った点について中心に書きます。

良かった点
  1. デュアルエクストルーダーのE stepを個別に設定可能
  2. Repetier-Hostとの連携によりエクストルーダー、ヒーター関連のg codeを無視するドライランが使える
  3. 最新バージョンでは設定をweb上で行ってからダウンロードできるのでconfigファイルの編集が必要なくなった
困った点
  1. 設定例等の資料が若干少ないため、一部戸惑う(例:エクストルーダーのオフセット、単位はモーターステップ数)
  2. configファイルのレイアウトが分かりにくい(例:デルタタイプの設定があちこちに点在して分かりにくい)
  3. エンドストップのノイズ対策がmarlinよりも弱いのか、ノイズによる誤動作が多い
  4. ホットエンドのサーミスタのノイズ対策が(以下略)
良くわからなかった点
  1. Repetier-Hostとの連携でバイナリによる高速通信が可能になる

良かった点1は今までに散散書いてきたから省略。2はめったに使わないですが、動作確認時は重宝します。3は結構画期的だと思います。configファイルをエディタで編集って慣れない人には結構大変だと思いますし、ミスタイプによるエラーも減ります。何よりバージョンアップ時のconfig再編集が楽。
困った点の1,2は前述のweb設定でかなりの部分が解消されると思います。それに対して3,4は地味ですが結構困りました。特にMarlinでは問題なく動くため、これまで気にしていなかったのですが、よくあるモーターとエンドストップの配線をひとまとめにする方法だとまともに動作しなくなります。エンドストップは原点に戻る動作を見張っていればいいのですが、サーミスターの方はそうもいきません。一瞬でも設定範囲から外れるとエラーでドライランモードに移行されてしまったりします。モーター、ヒーターの配線とエンドストップ、サーミスターの配線は少し離れた位置に配線し、コネクタの接触不良などが絶対に起きないようにチェックする必要があります。
良くわからない点としてバイナリ通信があります。より高速な通信が可能になるとのことなのですが、高速になったメリットがあまり感じられません。通信速度がボトルネックになるシチュエーションがあれば試してみたいと思います。

4 件のコメント:

  1. はじめまして。突然失礼します。
    自作のDelta式3DプリンタをRepetier-firmでdual extruder制御しようと試行錯誤中に、このブログを見つけ拝読しました。
    この記事の中でお試しになられたと書いているdual extruderの設定は、Deltaタイプの3Dプリンタのものでしょうか。それとも、以前の記事に書かれているMendel Maxのものでしょうか。
    どちらにせよ、是非詳細をうかがいたいです。

    返信削除
  2. kskjmさん、はじめまして
    Dual extruderはMendelmaxの方に搭載してました。詳細は2014年1月に投稿してる2つがすべてで、そのあとは主にシングルエクストルーダーで使ってます。
    Firmwareの方でDualのオフセットを設定するのは諦めてSlic3rの方で設定した方が簡単です。その代わりにRepetier-hostなどでgcodeの表示をすると上手く行きませんでした。
    もしかしたら最近の更新でそのあたり良くなっているかもしれないのですが、最新のファームウェアについてはフォローしきれていません。
    お力になれず、スミマセン。
    Blogなどお持ちでしたら教えてください。

    返信削除
    返信
    1. Watanabeさん、お返事ありがとうございます。
      なるほど、MendelMaxではRepetier-firmでEXT0+EXT1を制御できたのですね。もし可能であれば、その際に必要だったconfiguration.h等の変更部分を教えていただけないでしょうか。

      ちなみに私のブログ?はこちらです。(自分の備忘録としてここ最近記録しているだけなので、他の方には読みにくいかと思いますが・・・。)
      http://k-skjm.tumblr.com/

      削除
  3. Rostock MAXは制御ボードがRAMBOではじめからデュアルエクストルーダーの設定が用意されているはずなのですが…
    M117 extruder 2
    を入力した後、「二つ目のモーターは動作せず」となってますが、一つ目のモーターが動いてしまうという意味でしょうか?それともどちらのモーターも動かない?
    後者の場合、ホットエンドが設定温度に到達していないからモーターが動いていないのでは?
    #define EXT1_WAIT_RETRACT_TEMP 0
    としてみてください

    返信削除