BDsensor 설치
센서 케이블을 메인보드 또는 CAN 버스 툴헤드 보드에 연결합니다.
- SB2040은 BDsensor를 사용할 수 없습니다.
- SHT36은 BDsensor의 CLK/SCL (Input)을 고전압 입력 포트에 연결하고 점퍼를 연결해야 합니다.
- BDsensor의 CLK 및 SDA 선은 회로 기판의 모든 GPIO 핀에 연결할 수 있습니다. BD 센서 케이블을 Bltouch 포트에 직접 연결할 수도 있습니다. 예:
BLtouch | BDsensor
5V --> 5V
GND --> GND
S --> CLK/SCL (Input)
GND --> GND
Zmin --> SDA (Input/Output)
-
메인보드 커넥터의 일부 핀이 MCU의 GPIO에 직접 연결되지 않을 수 있으므로(예: 필터 커패시터가 있거나 MOSFET, 다이오드 또는 광커플러를 통해 격리되어 있지만 저항 또는 저항 풀업/풀다운을 통해 격리된 경우도 사용 가능), BDsensor와 함께 사용할 수 없습니다. 그리고 펌웨어에서 연결 오류를 보고합니다. 예:
-
팬 및 히터 커넥터는 MOSFET으로 격리되어 있습니다,
-
일부 회로 기판에서 온도 서미스터 및 리미트/프로브용 커넥터는 일반적으로 필터 커패시터를 통해 GND에 연결되어 있습니다,
-
아래 그림과 같이 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 편집
-
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
-
프로브로 홈잉
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 -
두 번째 홈잉 Z 속도 감속
#define Z_PROBE_FEEDRATE_SLOW (Z_PROBE_FEEDRATE_FAST / 16)여기서 홈잉 충돌(bump) 속도와 Z축 홈잉 속도를 감속해야 합니다. BDsensor에서 읽는 리밋 신호가 일반 리밋 스위치처럼 실시간이 아니기 때문입니다.
Configuration_adv.h 편집
#define BABYSTEPPING이 기능을 활성화하여 실시간 레벨링 기능을 구현합니다#define HOMING_BUMP_DIVISOR { 2, 2, 8 } // Re-Bump Speed Divisor (Divides the Homing Feedrate)
pins_boardname.h 편집
핀 파일 pins_boardname.h에서 다음 3줄을 추가하여 BDsensor의 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 센서 값 표시
- 상태 표시를 지원하는 프린터(gcode M117 지원), 예: LCD12864 또는 Ender3V2와 같은 일부 uart 화면...
교정
-
노즐을 청소한 후 콘솔에서 Z축을 이동하여 노즐이 베드 플레이트에 닿을 때까지 이동합니다(BDsensor는 이 위치를 0점으로 사용하므로 z_offset이 필요하지 않으며, 값을 0으로 설정합니다).
-
gcode 명령
M102 S-6을 전송하면 프린터가 매번 Z축을 0.1mm씩 천천히 위로 이동하여 4mm에 도달할 때까지 진행합니다. 센서를 설치하기 전에 M102 S-6을 실행하지 마시고, 교정 중에 프린터 전원을 끄지 마십시오. 그렇지 않으면 이전 교정 데이터가 삭제됩니다. 이런 경우에는 다시 교정하면 됩니다. -
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 범위 내에 있고 증가 값 delta가 >=10이면 교정이 성공한 것입니다. 위에 표시된 차트와 같습니다.
M102 S-5가 반환한 첫 번째 원시 교정 데이터가 400보다 크면 센서가 너무 높게 설치된 것이므로 베드에 더 가깝게 재설치해야 합니다. 또한 두 번째 데이터가 첫 번째 데이터 값보다 10 이상 큰지 확인하십시오
테스트 및 인쇄
메뉴: 베드 레벨링
자동 베드 레벨링
베드 자동 레벨링에는 두 가지 방법이 있습니다:
1. M102를 사용한 실시간 초기 레이어 레벨링
G코드 명령을 전송하거나 G코드 파일에 G코드를 추가하여 이 자동 레벨링 기능을 쉽게 활성화하거나 비활성화할 수 있습니다.
Cura에서 베드 레벨링을 활성화하려면 프린터 기계 설정의 "시작 G코드" 섹션에서 G28(모든 축 원점 복귀) 코드 바로 아래에 M102 코드를 추가하세요. 예를 들어, G28 아래에 이렇게 표시하면 Z축 높이가 0.2mm를 초과하지 않을 때만 베드 레벨링을 수행한다는 의미입니다. M102 S2
M102 S0을 전송하면 BD 센서의 실시간 레벨링이 비활성화됩니다(G28, 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와 같으며, G28 아래에 G29 한 줄만 추가하면 됩니다.
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