メインコンテンツにスキップ

BDsensor-mのインストール

センサーケーブルをメインボードのEXP1インターフェースに接続する​

  • センサーのケーブル長が足りない場合は、パッケージ内の延長ケーブルを使用できます
  • BDsensor-mのCLK線とSDA線は、回路基板の任意のGPIOピンに接続できます。BDセンサーケーブルをBltouchポートに直接接続することもできます。例えば:
BLtouch | BDsensor-m
5V --> 5V
GND --> GND
S --> CLK/SCL (Input)
GND --> GND
Zmin --> SDA (Input/Output)
  • メインボードのコネクタの一部のピンは、MCUのGPIOに直接接続されていない場合があります(例えば、フィルタコンデンサが搭載されていたり、MOSFET、ダイオード、フォトカプラを介して絶縁されていたりしますが、抵抗や抵抗プルアップ/プルダウンを介して絶縁されている場合は使用可能です)。そのため、それらはBDsensor-mと一緒に使用できません。また、ファームウェアが接続エラーを報告します。例えば

  • ファンとヒーターのコネクタはMOSFETを介して絶縁されています、

  • 一部の回路基板では、温度サーミスタやリミット/プローブ用のコネクタは通常、フィルタコンデンサを介してGNDに接続されています、

  1. 下図のように、BDセンサーをホットエンドの近くに取り付けます。 STL of mount, STL_mount_VzBot_Goliath short

    Loading...

Marlinファームウェアへのパッチの適用​

BDセンサーはMarlin2.1.xに統合されています(2022.8.27以降)、

リリース版をダウンロードできます。ただし、最新のバグ修正版をダウンロードすることをお勧めします:https://github.com/MarlinFirmware/Marlin

必要なのは、設定ファイルとピンファイルの変更です。

Configuration.hの編集​

  1. BD_SENSORを有効化

    コメントを解除

    #define BD_SENSOR
    #define Z_SAFE_HOMING
    #define BD_SENSOR_PROBE_NO_STOP //adding this new line for fast bed leveling without nozzle stop,

    のみBD_SENSOR_PROBE_NO_STOP

    最新のMarlinバグ修正版:https://github.com/MarlinFirmware/Marlin

    説明:https://github.com/MarlinFirmware/Marlin/pull/25847

  2. プローブでホーミング

    Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PINが無効になっていることを確認し、以下のようにUSE_PROBE_FOR_Z_HOMINGを有効にする必要があります

    //#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
    // Force the use of the probe for Z-axis homing
    #define USE_PROBE_FOR_Z_HOMING
  3. 2回目のZホーミング速度を遅くする

    #define Z_PROBE_FEEDRATE_SLOW (Z_PROBE_FEEDRATE_FAST / 16)

    ここでは、ホーミングのバンプ速度とZ軸ホーミング速度を遅くする必要があります。BDsensor-mから読み取られるリミット信号は、通常のリミットスイッチのようにリアルタイムではないためです。

    Configuration_adv.hの編集​

    #define BABYSTEPPINGこの機能を有効にしてリアルタイムレベリング機能を実現します

    #define HOMING_BUMP_DIVISOR { 2, 2, 8 } // Re-Bump Speed Divisor (Divides the Homing Feedrate)

pins_boardname.hの編集​

以下の3行を追加して、ピンファイルpins_boardname.hでBDsensor-mのSDAピンとSCLピンを設定します(例:pins_PANDA_PI_V29.h):

#define I2C_BD_SDA_PIN PC6 // Please change to the actual number which the SDA wire is connected to your mainboard
#define I2C_BD_SCL_PIN PB2 // Please change to the actual number which the SLK wire is connected to your mainboard
#define I2C_BD_DELAY 20 // default value is 20, should be in the range [20,50].

通常のBLtouchのように印刷前に自動ベッドレベリングプローブ(G29)を行いたい場合は、コメントを解除してください

#define AUTO_BED_LEVELING_BILINEAR

そして以下のように値を編集してください

#define Z_CLEARANCE_DEPLOY_PROBE 0 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 1 // Z Clearance between probe points
#define Z_CLEARANCE_MULTI_PROBE 1 // Z Clearance between multiple probes

液晶画面にBDセンサー値を表示する​

  • ステータス表示機能付きのプリンター(G-code M117対応)、例えばLCD12864や一部のUARTスクリーン(Ender3V2など)の場合...

キャリブレーション​

  1. ノズルを清掃し、次にコンソールでZ軸を移動させ、ノズルがベッドプレートにちょうど接触するまで移動します(BDsensor-mはこの位置を0点として使用するため、z_offsetは不要です。値を0に設定します)。

  2. gcodeコマンドM102 S-6を送信すると、プリンターはZ軸を毎回ゆっくりと0.1mm上昇させ、4mmに達するまで続けます。センサーを取り付ける前にM102 S-6を実行しないでください。また、キャリブレーション中にプリンターの電源を切らないでください。そうしないと、古いキャリブレーションデータが削除されます。そのような場合は、再度キャリブレーションしてください。

  3. M102 S-5を送信して、BDセンサーが正常にキャリブレーションされたかどうかを確認できます。これはBDセンサーに保存されている生のキャリブレーションデータを返します。

これを実行できるキャリブレーションツールもあります:https://github.com/markniu/Bed_Distance_sensor/raw/new/marlin/BD_Config_Tool_Marlin.zip 注意:データ値が1015または> 1010はセンサー範囲外を示します。最初の5点(0~0.5mm)以上の値が0から1000の範囲内にあり、増加する値のデルタが>=10であれば、キャリブレーションは成功です。上記のグラフに示されているように。

M102 S-5が返す最初の生のキャリブレーションデータが400より大きい場合、センサーが高すぎる位置に取り付けられていることを意味し、ベッドにより近い位置に再取り付けする必要があります。また、2番目のデータが最初のデータ値より10以上大きいことを確認してください

テストと印刷​

メニュー:ベッドレベリング

自動ベッドレベリング

ベッドを自動でレベリングする方法は2つあります:​

1. M102を使用して最初の数層をリアルタイムでレベリングする

この自動レベリング機能は、Gコードコマンドを送信するか、GコードファイルにGコードを追加することで簡単に有効化または無効化できます。

Curaでベッドレベリングを有効にするには、プリンターのマシン設定の「スタートGコード」セクションにあるG28(全軸ホーミング)コードの直下にM102コードを追加してください。例えば、G28の下にこのように記述すると、Z軸の高さが0.2mm以下の場合にのみベッドレベリングを行うことを意味します。M102 S2

M102 S0を送信すると、BDセンサーのリアルタイムレベリングが無効になります(G28、M18でも無効になります)。ちなみに、この機能はデフォルトで無効になっています。

M102 S-1 //Read sensor information, and we can use this for connection checking.
M102 S-2 //Read current distance value
M102 S-5 //Read raw Calibrate data
M102 S-6 //Start Calibrate,before that make sure the nozzle is just touched the bed,and then the printer restarted. don't home z axis before this.
M102 S4 //Set the adjustable Z height value,e.g. M102 S4 means it will do adjusting while the Z height <=0.4mm , disable it by M102 S0.

2. G29によるベッド自動レベリング

もう一つの自動ベッドレベリング方法は、BLtouchのG29と同様で、G28の下にG29の行を追加するだけです。

インストール動画

Chris's Basementのインストール動画

Zリミットスイッチの確認M119​

この手順を確認する前に、Z軸をホーミングしないでください。ノズルがプリントベッドに衝突する可能性があります。

これはM119コマンド(リミットスイッチの状態を報告)を送信した後の応答メッセージです。

Send: M119
Recv: x:open y:open z:open

z minがトリガーされていない場合は、設定を確認してください。#define Z_MIN_ENDSTOP_HIT_STATE HIGH

  • Zモーターがオフ/ロック解除されていることを確認する
  • ノズルがベッド面に接触するまで、手でZ軸を下に移動させる
  • M102 S-2を送信し、戻り値が0.00mmであることを確認してから、再度M119を送信すると、zリミットスイッチがトリガーされていることがわかります。
Send: M119
Recv: x:open y:open z:TRIGGERED

接続の確認​

M102 S-1で接続を確認します。これは応答メッセージの例です。空白やその他の文字列が返された場合は、接続と配線の順序を確認してください。

Send: M102 S-1
Recv: V1.0 pandapi3d.com

上記のすべての手順が正しければ、これでZ軸をホーミングできます。​

Loading...