BDsensor-m 설치
센서 케이블을 메인보드의 EXP1 인터페이스에 연결합니다.
- 센서 케이블 길이가 부족한 경우 패키지에 포함된 연장 케이블을 사용할 수 있습니다.
- BDsensor-m의 CKL 및 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에 필터 커패시터를 통해 연결됩니다.
-
아래 그림과 같이 BD 센서를 노즐 근처에 설치합니다. STL of mount, STL_mount_VzBot_Goliath short
Klipper 펌웨어에 패치 설치
-
튜토리얼에 언급되지 않은 작업은 수행하지 마세요.
-
이전에 수정한 Klipper 파일을 포기하고 Klipper를 업데이트합니다.
cd
cd ~/klipper
git checkout .
git pull -
사용자 디렉토리에서 아래의 git 명령을 실행하여 BD 센서의 최신 코드를 복제합니다.
cd && git clone https://github.com/markniu/Bed_Distance_sensor.git
-
다음 명령을 실행하여 설치합니다.
cd ~/Bed_Distance_sensor/klipper/
./install_BDsensor.sh
여기서 펌웨어 컴파일은 상위/하위 펌웨어 버전이 일치하지 않는다는 메시지가 뜰 때만
새 Klipper 펌웨어를 컴파일하십시오.
-
자신의 펌웨어 컴파일 튜토리얼을 참고하여 펌웨어를 컴파일하고 플래시합니다.
-
펌웨어 컴파일:
cd ~/klipper/ # klipper 디렉토리로 이동
make menuconfig # klipper 컴파일 설정 메뉴 실행
make clean # 정리 명령
make # 컴파일 명령 -
BD 센서가 연결된 메인보드에 펌웨어를 플래시합니다.
Moonraker를 사용하는 경우 다음 섹션을 moonraker.conf에 추가하십시오. 그러면 웹 또는 Klipperscreen에서 한 번 클릭으로 BDsensor를 업데이트할 수 있습니다.
[update_manager BDsensor]
type: git_repo
primary_branch: new
channel: dev
path: ~/Bed_Distance_sensor
origin: https://github.com/markniu/Bed_Distance_sensor.git
install_script: ./klipper/install_BDsensor.sh
is_system_service: False
managed_services: klipper
info_tags:
desc=Bed Distance Sensor
printer.cfg 편집
-
이 섹션을 printer.cfg에 복사하고
[BDsensor]
의sda_pin
및scl_pin
을 편집합니다. 다른 프로브 섹션(예: BLtouch)은 비활성화하십시오. BD 센서는 메인보드 또는 툴헤드 CAN 모듈에 연결할 수 있습니다. -
[BDsensor]
에서speed
를 0.8로 변경하십시오. 이 값은 z 틸트 및 PROBE_ACCURACY 명령에만 적용됩니다. 값이 작을수록 정밀도가 높아집니다. Z 홈 시 MCU가 BD 센서의 값을 읽을 때 일반적인 엔드스탑처럼 실시간으로 읽지 못하기 때문입니다.[BDsensor]
-
Z 홈 시 BD 센서를 엔드스탑으로 사용하려면
[stepper_z]
의endstop_pin
을endstop_pin: probe:z_virtual_endstop
으로 변경하십시오. -
printer.cfg에
[safe_z_home]
이 있는지 확인하십시오. -
[bed_mesh]
및[z_tilt]
또는[quad_gantry_level]
의[quad_gantry_level]
값을 1로 변경하십시오(권장: 0.7~1.0mm). Klipper의 기본값은 5mm이며, 이는 센서 범위를 초과할 수 있습니다. -
노즐 높이는
z_adjust:
에서만 설정하십시오. 양수는 베드에 가까워지고, 음수는 멀어집니다. 다른 노즐 높이 설정은 버그가 있을 수 있습니다. -
빠른 스캔을 활성화하려면
no_stop_probe:true
앞의 #을 삭제하십시오. -
아래는 설정 예시입니다.
[BDsensor]
scl_pin:PC6 # 서보 신호 핀
sda_pin:PC3 # 엔드스탑 신호 핀
delay: 20 # 20us per pulse, this value should be >=20 but must be below 50
z_offset:0 # this `z_offset` must be set to 0.
z_adjust:0.0 # z axis adjustment, replace the z_offset function. within -0.3 to 0.3mm
x_offset: -34
y_offset: 0
#no_stop_probe:true # enable this for fast probe, the toolhead will not stop at the probe point.
position_endstop: 0.8 # the Z axis will stop at this position (mm) while homing z, recommend value is 0.4~1.0
#speed:0.8 # this speed only works for the z tilt and PROBE_ACCURACY command.
[stepper_z]
endstop_pin: probe:z_virtual_endstop
#position_endstop: 0.5
homing_speed: 5
second_homing_speed: 0.8
[bed_mesh]
speed: 200
horizontal_move_z:1
algorithm: bicubic
[quad_gantry_level]
horizontal_move_z:1
설치 후 다음 GCODE 명령을 보내서 확인하십시오.
M102 S-1 # 센서 정보 읽기
M102 S-2 # 거리 값 하나 읽기
연결 확인
-
콘솔에서
M102 S-1
명령을 보냅니다. 반환 메시지 예시입니다. 반환 메시가 비어 있거나 다른 문자열이 반환되면 연결 및 전선 순서를 확인하십시오.Send: M102 S-1
Recv: V1.0 pandapi3d.com
캘리브레이션
- 노즐을 청소한 후 콘솔을 통해 Z축을 이동시켜 노즐이 베드에 닿을 때까지 내리십시오(BDsensor-m은 이 위치를 0으로 사용하므로
z_offset
이 필요하지 않습니다. 이것이 [BDsensor-m] 섹션에서 값이 0인 이유입니다). - 콘솔에서 GCODE 명령
M102 S-6
을 보냅니다. 프린터는 Z축을 0.1mm씩 천천히 위로 이동시키며 4mm까지 갑니다. 센서 설치 전에M102 S-6
을 실행하지 마시고, 캘리브레이션 중에는 전원을 끄지 마세요. 이 경우 이전 캘리브레이션 데이터가 삭제됩니다. 이런 경우 다시 캘리브레이션 하시면 됩니다. - 이후
M102 S-5
명령으로 BD 센서의 저장된 캘리브레이션 데이터를 확인할 수 있습니다.
주의사항:
-
Z축 홈 속도는 5가 가장 좋습니다.
-
M102 S-5
가 반환하는 첫 번째 원시 캘리브레이션 데이터가 400보다 큰 경우 센서가 너무 높게 설치되었다는 의미입니다. 베드에 더 가까이 설치해야 하며, 첫 번째 데이터의 권장값은 100입니다. 또한 두 번째 데이터 값이 첫 번째 데이터보다 10 이상 커야 합니다.-
FAQ: 캘리브레이션 데이터가 1로 시작하고 두 번째 값이 9, 세 번째 값이 24라면 의미는 무엇입니까?
-
이는 0-0.1mm 범위의 해상도가 9이고, 0.1-0.2mm 범위의 해상도가 15라는 의미입니다. 따라서 0-0.1mm 범위의 해상도가 10 이상이 되도록 다시 캘리브레이션하는 것이 좋습니다.
-
-
G28
실행 후 또는Z_tilt
및quad_gantry_level
명령으로 Z축 높이를 조정해야 합니다. -
Klipper가
Unknown pin chip name 'probe'
오류를 보고하지 않도록 섹션 이름의 대소문자를 정확히 지켜야 합니다.