무한 스트로크 사용
무한 스트로크(센서리스 호밍)은 TMC 드라이버의 DIAG 신호를 통해 모터의 스톨(Stall)을 감지하여 물리적 리미트 스위치를 대체합니다.
다음 조건을 모두 충족해야 합니다:
- 메인보드가
DIAG기능을 지원합니다. - 드라이버가
DIAG신호 출력을 지원합니다. - 해당 리미트 포트에 어떤 장치도 연결하지 않아야 합니다.
- 기계 구조가 무한 스트로크 사용에 적합하여, 움직이는 부품이 끝점에 부딪혀도 손상되지 않아야 합니다.
메인보드 호환성 확인
| 유형 | 지원 상황 | 대표 모델 | 조작 요구 사항 |
|---|---|---|---|
| A 클래스 | 기본 직결 | Super / Gemini / CDY / E3 시리즈 | 해당 리미트 인터페이스 직접 사용 |
| B 클래스 | 점퍼 필요 | D / C / Pro-X10 / Micro 시리즈 | DIAG 점퍼 캡 필수 설치 |
| C 클래스 | 미지원 | Fly-F407ZG | 무한 스트로크 기능 사용 불가 |
확인 방법:
- 메인보드에
DIAG표시가 있는 점퍼 소켓이 있는지 확인합니다. - 회로도를 참조하여 드라이버 인터페이스의
DIAG신호가 리미트 포트에 연결되어 있는지 확인합니다. - 대부분의 메인보드는
Drive0이io0,Drive1이io1에 대응되며, 이하 동일합니다.
A 클래스 메인보드: DIAG 점퍼가 없으며, 기본적으로 해당 리미트 포트에 직결됩니다.
B 클래스 메인보드: DIAG 점퍼를 사용해야 합니다.
드라이버 호환성 확인
TMC5160, TMC2240 및 TMC2130에는 일반적으로 두 개의 DIAG 핀이 있습니다. 해당 제품 문서를 확인하거나 고객 지원에 문의하여 어떤 핀을 사용할지 확인하세요.
| 드라이버 모델 | 호환성 | DIAG 핀 | 설정 요구 사항 | 감도 범위 |
|---|---|---|---|---|
| TMC2209 | 지원 | 단일 핀 | diag_pin 직접 사용 | 0-255, 255가 가장 민감, 0이 가장 둔함 |
| TMC5160 | 지원 | 이중 핀 | diag0_pin 또는 diag1_pin 선택 | -64-63, -64가 가장 민감, 63이 가장 둔함 |
| TMC2240 | 지원 | 이중 핀 | diag0_pin 또는 diag1_pin 선택 | -64-63, -64가 가장 민감, 63이 가장 둔함 |
| TMC2130 | 지원 | 이중 핀 | diag0_pin 또는 diag1_pin 선택 | -64-63, -64가 가장 민감, 63이 가장 둔함 |
| TMC2208 | 미지원 | - | 무한 스트로크 기능 사용 불가 | - |
| TMC2660 | 미지원 | - | 무한 스트로크 기능 사용 불가 | - |
| LV8729 | 미지원 | - | 무한 스트로크 기능 사용 불가 | - |
설정 설명
- 실제 드라이버 모델과 축 이름에 따라 설정을 수정해야 합니다.
tmc2209_stepper_x의tmc2209를 해당 드라이버 모델로 변경해야 합니다.stepper_x의x는 X축을 나타냅니다. Y축을 설정하려면stepper_y로 변경해야 합니다.- 일부 기계는 무한 스트로크 사용 시 복귀(Retract)가 실패를 유발할 수 있으므로
homing_retract_dist를0으로 설정해야 합니다.
참고 설정
- TMC2209 참고 설정
- TMC5160 참고 설정
- TMC2130 참고 설정
- TMC2240 참고 설정
주의 사항:
- 아래 핀은 참고용이며, 실제 메인보드에 따라 수정해야 합니다.
diag_pin에는 일반적으로^를 추가해야 합니다. 그렇지 않으면 호밍이 실패할 수 있습니다.driver_SGTHRS는 실제 측정이 필요하며, 255가 가장 민감하고 0이 가장 둔합니다.
[stepper_x]
endstop_pin: tmc2209_stepper_x:virtual_endstop
position_endstop: 0
homing_retract_dist: 0
[tmc2209 stepper_x]
diag_pin: ^PD9
driver_SGTHRS: 100
주의 사항:
- 아래 핀은 참고용이며, 실제 메인보드에 따라 수정해야 합니다.
- 제품 매뉴얼을 확인하여
diag0_pin또는diag1_pin을 사용할지 확인해야 합니다. driver_SGT는 실제 측정이 필요하며, -64가 가장 민감하고 63이 가장 둔합니다.
[stepper_y]
endstop_pin: tmc5160_stepper_y:virtual_endstop
position_endstop: 0
homing_retract_dist: 0
[tmc5160 stepper_y]
diag1_pin: ^!PD9
driver_SGT: 1
주의 사항:
- 아래 핀은 참고용이며, 실제 메인보드에 따라 수정해야 합니다.
- 제품 매뉴얼을 확인하여
diag0_pin또는diag1_pin을 사용할지 확인해야 합니다. driver_SGT는 실제 측정이 필요하며, -64가 가장 민감하고 63이 가장 둔합니다.
[stepper_y]
endstop_pin: tmc2130_stepper_y:virtual_endstop
position_endstop: 0
homing_retract_dist: 0
[tmc2130 stepper_y]
diag1_pin: ^!PD9
driver_SGT: 1
주의 사항:
- 아래 핀은 참고용이며, 실제 메인보드에 따라 수정해야 합니다.
- 제품 매뉴얼을 확인하여
diag0_pin또는diag1_pin을 사용할지 확인해야 합니다. driver_SGT는 실제 측정이 필요하며, -64가 가장 민감하고 63이 가장 둔합니다.
[stepper_x]
endstop_pin: tmc2240_stepper_x:virtual_endstop
position_endstop: 0
homing_retract_dist: 0
[tmc2240 stepper_x]
diag1_pin: ^!PD9
driver_SGT: 1
감도 테스트
무한 스트로크 테스트 시 프린트 헤드를 기계 중앙으로 이동시키고, 언제든지 M112 비상 정지를 실행할 준비를 해야 합니다. 고속 또는 무인 상태에서 테스트하지 마십시오.
1단계: 최고 감도 설정
TMC2209:
SET_TMC_FIELD STEPPER=stepper_x FIELD=SGTHRS VALUE=255
TMC5160 / TMC2240 / TMC2130:
SET_TMC_FIELD STEPPER=stepper_x FIELD=sgt VALUE=-64
2단계: 단일 축 호밍 실행
G28 X
축이 이동하지 않거나, 비정상적으로 이동하거나, 정지하지 않으면 즉시 다음을 실행하십시오:
M112
이 경우 해당 DIAG 핀 배선, 점퍼 캡 및 설정을 확인해야 합니다.
3단계: 점진적으로 감도 낮추기
- TMC2209:
SGTHRS를 점진적으로 줄입니다. - TMC5160 / TMC2240 / TMC2130:
sgt를 점진적으로 늘립니다. - 조정할 때마다
SET_TMC_FIELD와 단일 축 호밍 테스트를 다시 실행합니다.
목표는 캐리지가 끝점까지 안정적으로 이동하고 정지할 수 있는 가장 높은 신뢰할 수 있는 감도를 찾는 것입니다.
4단계: 설정에 반영
적절한 값을 찾으면 해당 값을 printer.cfg의 해당 드라이버 설정에 기록합니다.
최대 감도에서도 눈에 띄는 충돌음, 클릭 소리가 나거나 안정적으로 트리거되지 않으면 일반적으로 호밍 속도가 너무 낮거나, 드라이버 전류가 너무 낮거나, 기계적 저항이 비정상적이거나, 해당 축이 무한 스트로크에 적합하지 않음을 의미합니다.