본문으로 건너뛰기

설치 BD센서

센서 케이블을 메인보드 또는 CAN 버스 헤드보드에 연결합니다.

  • SB2040는 Bdsensor를 사용할 수 없습니다.
  • SHT36은 Bdsensor의 CLK/SCL (입력)를 고전압 입력 포트에 연결하고 점퍼를 장착해야 합니다.
  • Bdsensor의 CKL 및 SDA 선은 회로판의 임의의 GPIO 핀에 연결될 수 있습니다. 또한 Bdsensor 케이블을 예를 들어 Bltouch 포트에 직접 연결할 수도 있습니다:
BLtouch    |    Bdsensor
5V --> 5V
GND --> GND
S --> CLK/SCL (입력)
GND --> GND
Zmin --> SDA (입력/출력)
  • 메인보드 커넥터의 일부 핀은 MCU의 gpios에 직접 연결되지 않을 수 있습니다(예를 들어, 그들 위에는 필터링 캐패시터가 있거나 MOSFET, 다이오드 또는 광커플러를 통해 격리될 수 있으며, 만약 그들이 저항을 통해 격리된다면, 그들도 Bdsensor와 함께 사용될 수 없습니다. 그리고 펌웨어는 연결 오류를 보고할 것입니다. 예를 들어

  • 팬과 히터의 커넥터는 MOSFET을 통해 격리됩니다,

  • 일부 회로판에서 온도 핫리저스터 및 엔드스톱/프로브를 위한 커넥터는 일반적으로 GND에 필터링 캐패시터를 통해 연결됩니다,

  1. 아래 그림과 같이, Bdsensor를 열단자 근처에 설치합니다. mount STL, STL_mount_VzBot_Goliath short

Marlin 펌웨어에 패치 설치

Bdsensor는 Marlin2.1.x (2022.8.27부터)에 통합되었습니다.

발행 버전을 다운로드할 수 있습니다. 그러나 현재 최신 오류 수정 버전을 다운로드하는 것이 권장됩니다: https://github.com/MarlinFirmware/Marlin

필요한 것은 구성 파일과 핀 파일을 변경하는 것입니다.

구성.h 편집

  1. BD센서 활성화

    주석 해제

    #define BD_SENSOR`
    `#define Z_SAFE_HOMING
    #define BD_SENSOR_PROBE_NO_STOP //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축 홈화

    Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN이 비활성화되어 있는지 확인하고 USE_PROBE_FOR_Z_HOMING이 다음처럼 활성화되어야 합니다.

    //#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
    // Z축 홈화를 위해 프로브 강제 사용
    #define USE_PROBE_FOR_Z_HOMING
  3. 두 번째 Z 홈화 속도 감소

    #define Z_PROBE_FEEDRATE_SLOW (Z_PROBE_FEEDRATE_FAST / 16)

    여기서 우리는 Bdsensor 프로세스에서 읽은 스톱퍼의 속도를 느리게 해야 하며, 일반적인 스톱퍼처럼 실시간으로 작동하지 않기 때문입니다.

    Configuration_adv.h 편집

    #define BABYSTEPPING 이 기능을 활성화하여 실시간 평탄화 기능을 구현합니다

    #define HOMING_BUMP_DIVISOR { 2, 2, 8 }       // Re-Bump Speed Divisor (Homing Feedrate를 나눕니다)

pins_boardname.h 편집

핀 파일 pins_boardname.h에서 Bdsensor의 SDA 및 SCL 핀을 구성하기 위해 다음 3줄을 추가합니다 (예를 들어): pins_PANDA_PI_V29.h

#define  I2C_BD_SDA_PIN    PC6   // SDA 와이어가 메인보드에 실제로 연결된 번호로 변경하십시오.
#define I2C_BD_SCL_PIN PB2 // SLC 와이어가 메인보드에 실제로 연결된 번호로 변경하십시오.
#define I2C_BD_DELAY 20 // 기본값은 20이며, 범위는 [20,50]입니다.

자동 침지/출격이 있는 프린팅 전에 일반적인 BLtouch처럼 Bdsensor를 사용하려면 주석 해제

#define AUTO_BED_LEVELING_BILINEAR

그리고 값이 다음과 같이 편집됩니다

#define Z_CLEARANCE_DEPLOY_PROBE   0 // 침지/출격을 위한 Z 클리어런스
#define Z_CLEARANCE_BETWEEN_PROBES 1 // 프로브 포인트 간의 Z 클리어런스
#define Z_CLEARANCE_MULTI_PROBE 1 // 여러 프로브 간의 Z 클리어런스

LCD 화면에서 Bdsensor 값 표시

  • 프린터가 상태 표시를 지원하는 경우(예: LCD12864 또는 Ender3V2 같은 UART 화면)

캘리브레이션

  1. 노즐을 청소한 후, 컨솔을 사용하여 Z 축을 제어하여 노즐이 침지판에 정확히 접촉하도록 합니다(Bdsensor는 이 위치를 0점으로 사용하므로 z_offset 값을 설정하지 않아도 됩니다. 우리는 이 값을 0으로 설정합니다).

  2. Gcode 명령 M102 S-6를 보내서 프린터가 Z 축을 매번 0.1mm씩 천천히 위로 이동하게 합니다. 4mm까지 도달할 때까지 계속합니다. 센서를 설치하기 전에 M102 S-6를 실행하거나 캘리브레이션 중에 프린터 전원을 끄지 마십시오. 그렇지 않으면 오래된 캘리브레이션 데이터가 삭제될 수 있습니다. 그런 경우에는 다시 캘리브레이션해야 합니다.

  3. M102 S-5를 보내서 Bdsensor가 성공적으로 캘리브레이션되었는지 확인할 수 있습니다. 이것은 Bdsensor에 저장된 원시 캘리브레이션 데이터를 반환합니다.

이 작업을 수행할 수 있는 캘리브레이션 도구도 있습니다: https://github.com/markniu/Bed_Distance_sensor/raw/new/marlin/BD_Config_Tool_Marlin.zip img

주의: 1015 또는 그 이상의 데이터 값은 센서 범위를 초과함을 나타냅니다. 0에서 1000 사이의 값이 5개 이상이거나 증가하는 값 delta가 >=10이면 캘리브레이션이 성공했다는 것을 의미합니다. 위에서 보여진 차트와 같습니다.

만약 M102 S-5가 첫 번째 원시 캘리브레이션 데이터가 400보다 크면 센서가 너무 높게 설치되었음을 의미하며 재설치하여 침지판에 더 가까워져야 합니다. 또한 두 번째 데이터가 첫 번째 데이터보다 10 이상 큰지 확인하십시오

테스트 및 프린팅

메뉴 베드 레이어

자동 베드 레이어

침지판 자동 레벨링의 두 가지 방법:

1. M102를 사용한 실시간 레이어 레벨링

이 자동 레벨링을 쉽게 활성화하거나 비활성화할 수 있습니다.

Kula에서 베드 레이어를 활성화하려면 G102 (모든 축을 홈화) G 코드 바로 아래에 M28 G 코드를 추가하세요. 예를 들어, G28 아래에 추가하면 Z 축 높이 0.2mm 미만에서만 베드 레이어가 이루어집니다.M102 S2

M102 S0로 Bdsensor를 사용하여 베드 레이어를 비활성화하거나, M18을 사용하여 이를 수행할 수도 있습니다.

M102   S-1     //연결 확인을 위해 센서 정보 읽기.
M102 S-2 //현재 거리 값 읽기
M102 S-5 //원시 캘리브레이션 데이터 읽기
M102 S-6 //조정을 시작하기 전에 노즐이 침지판에 접촉하도록 하세요. Z 축을 홈화하지 마십시오.
M102 S4 //조정 가능한 Z 높이 값 설정, 예를 들어 M102 S4는 Z 높이가 0.4mm 이하일 때 조정을 수행하며, 이를 비활성화하려면 M102 S0을 사용합니다.

2. G29를 사용한 자동 베드 레이어

다른 자동 베드 레이어 방법은 BLtouch와 동일한 방식으로 G29처럼 작동합니다. G29 아래에 한 줄을 추가하면 됩니다.

설치 동영상

크리스 지하실의 설치 동영상

Z 엔드스톱 확인 M119

이 단계를 확인하기 전에 Z를 홈화하지 마십시오. 그렇지 않으면 노즐이 프린팅 침지판을 넘칠 수 있습니다.

M119 명령 (엔드스톱 상태 보고)을 보내고 받은 메시지는 다음과 같습니다.

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

만약 z min이 열리지 않았다면, 설정을 확인하십시오. #define Z_MAX_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축을 홈화할 수 있습니다.