BDsensor-m-m 설치
센서 케이블을 메인보드의 EXP1 포트에 연결
- 센서 케이블 길이가 부족한 경우 패키지 내 연장 케이블을 사용할 수 있습니다.
- BDsensor-m-m의 CLK와 SDA 선은 보드의 모든 GPIO 핀에 연결할 수 있습니다. 또한 BD 센서 케이블을 BLtouch 포트에 직접 연결할 수도 있습니다. 예시:
BLtouch | BDsensor-m
5V --> 5V
GND --> GND
S --> CLK/SCL (입력)
GND --> GND
Zmin --> SDA (입력/출력)
-
메인보드 커넥터의 일부 핀은 MCU의 GPIO에 직접 연결되지 않을 수 있습니다(예: 필터 커패시터가 있거나 MOSFET, 다이오드 또는 광커플러를 통해 격리된 경우. 단, 저항 또는 풀업/풀다운 저항을 통해 격리된 경우는 가능). 따라서 이러한 핀은 BDsensor-m과 함께 사용할 수 없으며, 펌웨어에서 연결 오류를 보고합니다. 예를 들어:
-
팬 및 히터 커넥터는 MOSFET을 통해 격리되어 있습니다.
-
일부 보드의 온도 서미스터 및 엔드스톱/프로브용 커넥터는 일반적으로 필터 커패시터를 통해 GND에 연결되어 있습니다.
-
아래 그림과 같이 BD 센서를 히트엔드 근처에 장착합니다. 마운트 STL 파일, STL_mount_VzBot_Goliath short
Loading...
Marlin 펌웨어에 패치 적용
BD 센서는 Marlin 2.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 // 노즐 정지 없이 빠른 베드 레벨링을 위한 새 줄 추가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
// Z축 홈에 프로브 사용 강제
#define USE_PROBE_FOR_Z_HOMING -
두 번째 홈 Z 속도 감소
#define Z_PROBE_FEEDRATE_SLOW (Z_PROBE_FEEDRATE_FAST / 16)여기서는 BDsensor-m 프로세스에서 읽은 스위치가 일반 스위치처럼 실시간이 아니기 때문에 범프 홈 속도와 Z 홈 속도를 늦춰야 합니다.
Configuration_adv.h 편집
실시간 레벨링 기능을 위해 #define BABYSTEPPING을 활성화합니다.
#define HOMING_BUMP_DIVISOR { 2, 2, 8 } // 재범프 속도 제수 (홈 피드레이트를 나눔)
pins_boardname.h 편집
BDsensor-m의 SDA 및 SCL 핀을 구성하려면 핀 파일 pins_boardname.h(예: pins_PANDA_PI_V29.h)에 다음 3줄을 추가합니다.
#define I2C_BD_SDA_PIN PC6 // SDA 선이 메인보드에 연결된 실제 핀 번호로 변경하십시오.
#define I2C_BD_SCL_PIN PB2 // SLK 선이 메인보드에 연결된 실제 핀 번호로 변경하십시오.
#define I2C_BD_DELAY 20 // 기본값은 20이며, 범위 [20,50] 내에 있어야 합니다.
일반 BLtouch처럼 인쇄 전에 자동 베드 레벨링 프로브(G29)를 수행하려면 다음을 주석 해제합니다.
#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에 BD 센서 값 표시
- 상태 표시가 있는 프린터(LCD12864 또는 Ender3V2와 같은 일부 UART 화면 등)의 경우 gcode M117을 지원합니다.
캘리브레이션
-
노즐을 청소한 후 콘솔에서 노즐이 베드 판에 살짝 닿을 때까지 Z축을 이동합니다(BDsensor-m은 이 위치를 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 범위 내에 있고 증가 값 델타가 >=10이면 캘리브레이션이 성공한 것입니다. 위에 표시된 차트와 같습니다.
M102 S-5가 반환하는 첫 번째 원시 캘리브레이션 데이터가 400보다 크면 센서가 너무 높게 설치되었음을 의미하며, 베드에 더 가깝게 재설치해야 합니다. 또한 두 번째 데이터 값이 첫 번째 데이터 값보다 10 이상 큰지 확인하십시오.
테스트 및 인쇄
메뉴 베드 레벨
자동 베드 레벨링
자동 베드 레벨링에는 두 가지 방법이 있습니다:
1. 처음 몇 레이어에 M102 실시간 레벨링 사용
gcode 명령을 보내거나 gcode 파일에 gcode를 추가하여 이 자동 레벨링을 쉽게 활성화하거나 비활성화할 수 있습니다.
Klipper에서 베드 레벨링을 활성화하려면, 프린터 기계 설정의 "시작 G 코드" 섹션에서 G28(모든 축 홈) gcode 바로 아래에 M102 S2 gcode를 추가하십시오. 예를 들어 G28 아래에 M102 S2를 추가하면 Z축 높이가 0.2mm 이하일 때만 베드 레벨링을 수행합니다.
M102 S0을 보내거나 G28 다음에 M18을 추가하면 BD 센서를 사용한 베드 레벨링이 비활성화됩니다. 참고로 기본적으로는 비활성화되어 있습니다.
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_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