M코드

아래 표는 지원되는 M코드를 보여줍니다

MCode
기능
예시
예시 응답
커뮤니티 펌웨어 전용

선택적 정지. M333이 활성화된 경우 이 명령에 도달하면 프로그램이 일시 중지됩니다. 대신 M334가 설정되면 일시 중지가 발생하지 않습니다

M2

프로그램 종료, 스핀들 및 공기 정지

M3

스핀들을 시작합니다. S 매개변수는 분당 회전수(RPM)를 설정합니다

M3 S5000

스핀들을 5000 rpm로 켭니다

M5

스핀들을 정지합니다

M5

M6

자동 공구 교환, T0은 무선 프로브를 나타내고 T-1은 없음

M6 T1

공구 1로 변경하고 TLO를 설정합니다

M7

에어플로우를 시작합니다

M7

M9

에어플로우를 중지합니다

M9

M17

모든 활성화 핀을 켭니다

디버그 전용

M18

개별 모터를 끌 수 있게 합니다. 파라미터가 없으면 모두 끄는 동작으로 처리됩니다

디버그 전용

M20

SD 카드 루트의 파일을 나열합니다. 하위 폴더는 표시되지 않습니다

디버그 전용

M21

3D 프린터용 OctoPrint 코드로 아무 동작을 하지 않습니다

사용하지 마십시오

M23

파일 선택

M23 gcodes/test.cnc

M24

현재 파일 재생 시작

사용 금지

M25

현재 재생 중인 파일 일시중지 (일시중지는 M600 사용)

사용 금지

M26

현재 파일을 리셋하여 처음부터 시작할 준비

사용 금지

M27

현재 진행 상황 보고 (컨트롤러 디스플레이를 현재 라인과 동기화하는 데 유용)

M30

프로그램 종료, Carvera에서는 작동 없음. M26을 참조

M30

M32

파일을 선택하고 재생 시작. 매크로는 M98 참조

M32 gcodes/test.cnc

M82

e_absolute_mode 켬

디버그 전용

M83

e_absolute_mode 끔

디버그 전용

M84

모든 활성화 핀을 끕니다

디버그 전용

M92

스텝/mm 설정

M98 X12

X축 스텝을 mm당 12로 설정합니다

G코드의 특정 라인으로 점프

M97 P14

현재 파일의 14번 라인으로 이동

현재 실행 중인 gcode 안에서 서브프로그램을 열며, 종종 매크로라고 합니다. 완료되면 메인 프로그램으로 복귀합니다. 파라미터 P는 gcodes/macros 폴더 안의 ####.cnc 이름을 가진 파일을 참조하는 숫자입니다. 선택적 L 파라미터는 서브프로그램을 지정된 횟수만큼 반복합니다

M98 P1001 L4

경로로 서브프로그램을 열며 완료되면 메인 프로그램으로 복귀합니다. 위와 동일하나 선택적 L 명령은 경로 앞에 와야 합니다

M98 L2 {gcodes/test.cnc}

서브프로그램에서 메인 프로그램으로 복귀

M99

M105

현재 스핀들 온도를 읽습니다

M105

M112

비상 정지

디버그 전용

M114

각 축의 현재 WCS를 콘솔에 출력

M115

펌웨어 버전과 기능 보고

M115

FIRMWARE_NAME:Smoothieware, FIRMWARE_URL:http%3A//smoothieware.org, X-SOURCE_CODE_URL:https://github.com/Smoothieware/Smoothieware, FIRMWARE_VERSION:master-811c4f62, X-FIRMWARE_BUILD_DATE:Oct 30 2024 15:14:06, X-SYSTEM_CLOCK:100MHz, X-AXES:5, X-GRBL_MODE:1, X-CNC:1, X-MSD:1, X-WARNING:deprecated_MCU

M117

명령 다음 줄에 임의의 텍스트를 허용하는 비표준 G코드입니다. 사용 가능한 디스플레이 패널에 출력됩니다

대신 M118을 사용하세요

라인의 남은 부분을 콘솔에 출력

평가된 라인을 시리얼 포트로 씁니다.

M118.1 P[2+2]

콘솔에 4를 출력합니다

M119

현재 프로브 정보를 보고

X_max:0 Y_max:0 Z_max:0 pins- (XL)P0.24:0 (XL)P0.25:0 (YL)P1.1:0 (YL)P1.4:0 (ZL)P1.8:0 Probe: 0

M120

상태 저장 (push)

디버그 전용

M121

상태 복원 (pop)

디버그 전용

M143

3D 프린터 특정 코드

사용 금지

M203

최대 이송 속도를 mm/sec로 설정

M203 X100

M203.1

액추에이터의 최대 속도 설정

M204

M204 Snnn - 기본 가속도를 nnn으로 설정, Xnnn Ynnn Znnn은 축별 가속도 설정

M205

M205 Xnnn - junction deviation 설정, Z - Z junction deviation 설정, Snnn - 최소 플래너 속도 설정

M206

홈 위치 오프셋 설정

M206 X15 Y15 Z15

홈 오프셋을 15,15,15으로 설정

M220

S<퍼센트>- 이송 속도 비율 오버라이드(퍼센트) 설정

M220 S50

M221

소프트 엔드스톱 켜기/끄기

M221 S0

소프트 엔드스톱을 끕니다. M221 S1은 켭니다

M223

S<퍼센트>- 스핀들 속도 계수 오버라이드(퍼센트) 설정

M223 S80

M301

3D 프린터 전용

사용 금지

M303-305

3D 프린터 핫엔드 온도 제어용 PID 자동 튜너에서 사용됩니다. Carvera에서는 기능 없음

사용 금지

M306

현재 위치를 기준으로 홈 오프셋 설정

M321

레이저 모드 진입. 기계가 현재 공구를 자동으로 내리고 스핀들 콜렛을 보정합니다 (레이저 오프셋을 작업 표면에 설정하기 위해)

M321

M322

레이저 모드 종료

M322

M323

레이저 테스트 모드 진입. 레이저 모듈에 매우 낮은 전력이 공급되며, 주로 레이저 재초점에 사용됩니다

M323

M324

레이저 테스트 모드 종료

M324

M325

S<퍼센트>- 레이저 출력 계수 오버라이드(퍼센트) 설정

M325 S50

M331

자동 진공 모드를 켭니다. 켜져 있으면 스핀들이 작동할 때 진공이 자동으로 켜지고 스핀들이 작동하지 않을 때 꺼집니다

M331

M332

자동 진공 모드 끄기

M332

선택적 정지 모드를 끕니다. M01 참조

선택적 정지 모드를 켭니다. M01 참조

라인별 실행 모드 끄기

라인별 실행 모드 켜기. 각 라인 후 일시중지합니다. 빈 라인이나 ; 또는 (로 시작하는 라인에서는 일시중지하지 않습니다

M370

자동 베드 레벨링 데이터를 지우고 G32가 다시 실행될 때까지 보정을 비활성화합니다

M370

M374

자동 레벨링 그리드를 SD 카드에 저장

M374.1

SD에서 자동 레벨링 그리드 삭제

M375

SD 카드에서 그리드를 로드

M375.1

MDI 창에 현재 베드 레벨링 그리드 데이터를 표시

M375.1

플렉스 보정 비활성화

플렉스 보정 출력

플렉스 보정 데이터를 SD에 저장

SD에서 보정 데이터 로드

M400

이 시점까지 모든 이동이 완료될 때까지 대기

알려진 크기의 원형 보링을 사용하여 프로브 팁 보정

M460 X25 L3

보링 내부 중심에서 시작합니다. 25mm 보링을 기반으로 보정하며 3번 측정의 평균을 내어 값이 #150에 저장됩니다. 재시작 시 이 값을 저장하려면 config-set sd zprobe.probe_tip_diameter #을 사용하세요. M461의 모든 파라미터 중 T,S를 제외한 모든 것이 구현되어 있습니다

알려진 크기의 보스(boss)를 사용하여 프로브 팁 보정

M460.2 X15 L3

보스 위의 중심에서 시작합니다. X 또는 Y 중 하나가 필요하며 둘 다는 필요하지 않습니다. X 또는 Y의 값은 보스의 측정된 치수입니다. L은 프로브를 반복하여 평균을 낼 횟수입니다. M462의 모든 파라미터 중 T,S를 제외한 모든 것이 구현되어 있습니다

앵커 2를 사용하여 프로브 팁 보정

M460.3

클리어런스 Z로 올바른 위치로 이동한 다음 XY로 이동하고 Z로 프로브합니다. 위치는 앵커 2의 구성 위치와 저장된 앵커 폭에 기반합니다. 먼저 앵커 폭을 측정하고 설정하세요.

보링 프로브

M461 X25 Y30 D2.5 H10 C2 Q15 L2 R1.8 S1 F100 K200

대략 보링의 중심에서 시작합니다. 매크로는 Z 프로브로 시작하여 (H)10mm 아래로 이동합니다. 도구가 표면에 닿으면 (C)2만큼 후퇴합니다. 그렇지 않으면 새로운 저점에서 계속 진행합니다. H가 주어지지 않았거나 0이면 매크로는 시작 높이에서 프로빙합니다. 그런 다음 회전각 (Q)15도로 회전하여 X 방향으로 (X)25mm를 프로빙하여 표면에 닿을 때까지 진행합니다. 중심 쪽으로 (R)1.8mm 만큼 후퇴한 후 훨씬 느린 속도로 다시 프로빙합니다. 중심으로 돌아와 -x 방향에 대해 반복합니다. 그런 다음 Y 방향에 대해 X 단계를 반복하여 (Y)30을 프로빙합니다. X와 Y 프로브를 (L)2번 반복합니다. 모든 일반 프로브 이동은 (F)100 mm/sec로 진행되며 프로브 시작 간 이동은 고속 (K)200으로 이동합니다. 완료되면 프로그램은 X축을 따른 거리를 #151에, Y축을 따른 거리를 #152에, MCS의 중심점을 #154,#155에 저장합니다. S가 1로 설정되어 있으므로 프로그램은 현재 WCS(보통 G54, 다른 값으로 재정의되지 않은 경우)를 보링의 중심으로 설정합니다. S가 설정되지 않으면 프로브 매크로는 WCS에 영향을 주지 않습니다. (D)는 점 사이 거리를 계산하는 데 사용되며 공구 팁 직경을 나타냅니다. 모든 파라미터는 선택 사항이지만 X 또는 Y 중 적어도 하나는 있어야 합니다. 하나만 제공하면 해당 방향으로만 프로빙합니다.

보스 프로브

M461 X25 Y25 E12

M461의 모든 파라미터가 작동합니다. 직사각형 블록/보스의 대략적인 중심에서 시작하여 프로브는 양의 X 방향으로 (X)25mm 이동한 다음 측면에 도달하기 위해 -(C+E)만큼 아래로 프로빙합니다. 그런 다음 블록 중심을 찾기 위해 더블탭 프로빙을 수행하여 포인트 1을 찾습니다. 클리어런스 위치로 복귀한 후 중심 위치로 이동하고, 음의 방향에 대해 X 프로빙을 반복하고 두 Y 방향도 동일하게 수행합니다. 출력 변수는 M461과 동일합니다. S1이 설정되면 보스의 중심이 새로운 XY 원점이 됩니다. S2가 설정되고 프로빙 높이(H)가 주어지면 Z 원점이 프로빙된 표면으로 설정됩니다

내부 코너 프로브

M462 X-15 Y-15

M461의 D, H, C, Q, F, K, L, R, S를 구현합니다. 좌측 하단 내부 코너를 프로빙합니다(여기서 X와 Y의 방향은 프로브가 이동하는 방향을 결정하며, 이 경우 왼쪽 및 기계 전면 쪽으로 이동). 중심 위치를 #151 및 #152에 저장합니다

외부 코너 프로브

M463 X15Y15

M461의 D, H, C, Q, F, K, L, R, S를 구현합니다. M462의 E를 구현하며 4점 대신 2점 진행과 유사하게 동작합니다. 좌측 하단 외부 코너를 프로빙합니다(여기서 X와 Y의 방향은 프로브가 이동하는 방향을 결정하며, 이 경우 왼쪽 및 기계 전면 쪽으로 이동). 중심 위치를 #151 및 #152에 저장합니다. S는 M462에서와 동일하게 작동합니다

축 및 각도 프로브

M464 X10 E10 V10

M461의 H,C,X,Y,Q,F,K,L,R을 구현합니다. 하나의 축 값(X 또는 Y)만 받습니다. 시작 위치에서: 지정된 축에 수직으로 (E)10 거리만큼 더블탭 프로빙을 하여 표면에 닿을 때까지 진행합니다. E의 부호는 프로빙 방향을 결정합니다. 시작 위치로 복귀합니다. 지정된 축을 따라 (X)10만큼 이동하고 프로빙을 반복합니다. 시작 위치로 복귀합니다. V가 설정되어 있으므로 프로브는 표면과 동일한 각도로 (V)10만큼 이동합니다. 각도를 도(도 단위)로 #153에 저장합니다

4번째 축(A축) 재료 프로빙

M465.1 Y15 E30 F200 K600 L2

머신 오프셋을 사용한 4번째 축(A축) 재료 프로빙

M465.2 X10 Y15 R1 F200 K600

더블탭을 사용하는 직선 프로브

M466 X{dist} Y{dist} Z{dist} D{팁 직경} Q{각도} L{반복수} R{후퇴} S{xy로 저장, 하나의 축만 주어지고 q가 없으면 그 축만 0으로 저장} F{이송 속도} I{NC용 반전}

사각형 프로빙

M466.1 X{dist] Y{dist} H{depth}

M469 / M469.0

향후 기능: 사용자 정의 핀에서 진정한 3축 프로브로 기계 홈 위치 지정

구현되지 않음

M469.0 I{반전}

진정한 3축 프로브로 앵커 1 보정

M469.1

M469.1 I{반전}

진정한 3축 프로브로 앵커 2 보정

M469.2

M469.2 I{반전}

M469.3

향후 기능: 진정한 3축 프로브로 ATC 공구 위치 보정

구현되지 않음

진정한 3축 프로브로 4번째 축 헤드스톡 보정

M469.4

M469.4 I{반전} Y{헤드스톡 폭} H{프로빙할 깊이}

프로브로 4번째 축 높이 오프셋 보정

M469.5

M469.5 R{핀 직경} X{첫 프로브 위치에서 프로브까지의 거리} H{프로빙 최대 깊이}

M469.6

기계 오프셋 보고 및 설정 (기계 전용 코드)

디버그 전용

X - 원래 X 위치 Y- 원래 Y 위치, Z - 원래 Z 위치, P-프로브 설정 유형. 1은 앵커 1, 2는 앵커 2, 3은 ATC 공구 위치 등

M470

무선 프로브 주소 설정

M470 S2020

M471

무선 프로브를 페어링 모드로 설정

M471

M472

무선 프로브 레이저 켜기

M472

M481-489

콘솔 명령으로 처리하는 것이 더 나은 WiFi 관련 G코드

사용 금지

M490

ATC 홈 프로세스 실행. 필요 시 M490.1 또는 M490.2 발행 시 자동으로 호밍이 실행됩니다

M490

M490.1

스핀들 콜렛을 조여 새 공구를 스핀들에 고정

M490.1

M490.2

스핀들 콜렛을 풀고 현재 밀링 비트를 떨어뜨립니다

M490.2

M491

보정 수행, 현재 공구의 TLO(공구 길이 오프셋)가 재설정됩니다

M491

현재 공구를 보정하고 이전에 저장된 공구 길이 오프셋(TLO)과 길이를 비교하여 공구 파손 검사를 수행합니다.

M491.1 H0.05

차이가 0.05보다 크면 기계를 정지

M492

툴랙이 비어 있는지 확인하는 내부 명령

디버그 전용

TLO 프로브가 트리거되었을 때 공구 오프셋을 저장합니다. 특정 값으로 TLO를 설정하려면 M493.3 사용

디버그 전용

새 공구를 T 파라미터로 설정. T-1은 비어 있음. T0은 프로브

M493.2 T5

값으로 공구 길이 오프셋 저장. 완전히 새 값으로 설정하려면 Z 사용

M493.3 Z-15

TLO를 -15로 설정

현재 WCS 위치에서 오프셋 H를 사용하여 TLO를 설정

M493.3 H10

공구를 WCS Z 위 10mm에 위치시키고 게이지 핀이나 종이 트릭을 사용합니다. 이렇게 하면 현재 WCS에 맞는 적절한 TLO를 계산합니다

현재 공구 길이 오프셋 보고

M493.5

향후: ATC 일시중지

M494 / M494.1

프로브 레이저 켜기

M494.1

M494.2

프로브 레이저 끄기

M494.2

M495

파라미터에 따라 마진, Z프로브, 자동 레벨링을 수행하며 필요 시 프로브 공구 변경. X와 Y는 마진 시작, C와 D는 마진 범위, O와 F는 Z 프로브 오프셋, A와 B는 자동레벨 범위, I와 J는 각 축을 따라 프로빙할 포인트 수, H는 자동레벨 프로브 높이입니다. P1은 원점으로 이동합니다

M495.3

-z, -x 및 -y 방향으로 3축 z 프로브를 수행합니다. 다른 프로빙 기능은 G38 참조. D는 프로브 팁 직경을 설정하고 H는 3축 프로브 금속 조각의 두께입니다

M495.3 D3.175 H9

M496.2

작업 원점으로 이동. X 및 Y 파라미터는 앵커 1을 기준으로 한 위치를 설정

M496.2 X30Y0

M496.3

앵커 1로 이동

M496.4

앵커 2 위치로 이동

M496.5

지정 위치로 이동. X 및 Y 파라미터는 앵커 1을 기준으로 한 위치를 설정

M496.5 X30Y0

M497

큐가 비워질 때까지 대기. 보통 내부 명령

디버그 전용

M498 / M498.1

EEPROM 데이터를 보고합니다. 현재 공구 번호, TLO, toolmz, refmz 및 WCS 오프셋을 콘솔에 출력합니다

M498.2

EEPROM 데이터 삭제. 실행하지 마십시오

사용하지 마십시오

M499/M499.1

현재 공구 정보를 콘솔에 출력

M499.2

ATC 공구 위치 데이터를 모두 콘솔에 출력

M500

설정 파일의 변경 사항을 SD 카드에 저장

M501

// 설정 오버라이드 로드

디버그 전용

구현되지 않음

M502

M502는 config-override를 삭제하여 모든 것이 config에 있는 기본값으로 돌아갑니다

디버그 전용

M503

설정 파일 값을 콘솔에 출력

M504

특정 설정 오버라이드 파일로 저장

M504 "/sd/config-override"

M561

자동 베드 레벨링 데이터를 지우고 G32가 다시 실행될 때까지 보정을 비활성화합니다. M370과 동일

M565

zprobe 오프셋을 설정합니다. 추후 조사 필요

M600

현재 파일을 일시중지합니다 (일시중지 추가용으로 사용)\

M601

현재 파일 재개 - 보통 MDI 콘솔에서 실행

M665

M665는 암 솔루션에 기반한 선택적 암 솔루션 변수를 설정합니다.

기능 불확실

M670

다음 리셋까지 프로브 기본 정보를 설정합니다. S - 느린 이송 속도, K - 빠른 이송 속도, R - 복귀 이송 속도, Z - 프로빙 최대 Z 깊이, H - 프로빙 거리, I - 프로브 반전 상태, D - 프로빙 전 대기

M801

내부 진공기(Carrera)를 켭니다. S 매개변수는 진공 세기를 설정합니다 (S100 = 100%). Carvera Air에서는 PSU 팬을 켭니다

M801 S100

M802

Carvera에서 진공을 끄고 Carvera Air에서는 PSU 팬을 끕니다

M802

M811

스핀들 냉각 팬을 켭니다. S 매개변수는 팬의 출력(세기)을 설정합니다

M811 S100

M812

스핀들 냉각 팬 끄기

M812

M821

라이트 켜기

M821

M822

라이트 끄기

M822

M831

공구 감지 센서 레이저 켜기

M831

M832

공구 감지 센서 레이저 끄기

M832

M841

무선 프로브 충전 전원 켜기

M841

M842

무선 프로브 충전 전원 끄기

M842

M851

확장 포트 전원 켜기. S 매개변수는 포트의 PWM 출력을 설정합니다

M851

M852

확장 포트 전원 끄기

M852

M881

2.4G 채널을 설정: S 매개변수와 함께 전송 시작

M881 SwifiNetworkName

M882

WiFi 네트워크 끄기

M882

M885

하드 엔드스톱 끄기 (전원 재부팅 시 다시 켜짐, 호밍 시 무시됨)

M886

하드 엔드스톱 켜기

M887

홈 체크 끄기

M888

홈 체크 켜기

]

스핀들 속도 보고

M957

현재 스핀들 속도 및 상태

상태: on, 현재 RPM: 15086 대상 RPM: 15000 PWM 값: 0.699

M958

스핀들 PID 파라미터 설정, 파라미터 P, I, D

M1000

M1000은 하위(소문자) 명령을 simpleshell로 전달하는 특수 명령입니다 (호스트가 이러한 명령을 허용하지 않을 경우 사용)

마지막 업데이트