G0, G1: Linear Motions 直线(快速)移动. G2, G3: Arc and Helical Motions 圆弧移动 G4: Dwell 停留时间. G10 L2, G10 L20: Set Work Coordinate Offsets 工具(切换)坐标 G17, G18, G19: Plane Selection 工作平面选择 G20, G21: Units 长度单位.设置. G28, G30: Go to Pre-Defined Position 快速移动到设定位置 G28.1, G30.1: Set Pre-Defined Position 设置当前位置为设定位置 G38.2: Probing (需要有反馈信号) G38.3, G38.4, G38.5: Probing (需要有反馈信号) G40: Cutter Radius Compensation Modes OFF (Only) 刀头补偿 G43.1, G49: Dynamic Tool Length Offsets G53: Move in Absolute Coordinates 按照机器绝对坐标移动. G54, G55, G56, G57, G58, G59: Work Coordinate Systems 选择工作坐标表. G61: Path Control Modes G80: Motion Mode Cancel 取消当前命令组. G90, G91: Distance Modes 绝对路径/相对路径 编程模式 G91.1: Arc IJK Distance Modes G92: Coordinate Offset 工件坐标系设定. G92.1: Clear Coordinate System Offsets G93, G94: Feedrate Modes 移动模式选择(G93 多少分钟 进多少步, G94 每分钟进多少步.) M0, M2, M30: Program Pause and End M3, M4, M5: Spindle Control 钻头刀具控制 M7* , M8, M9: Coolant Control 冷却液控制. M56* : Parking Motion Override Control (*) denotes commands not enabled in config.h by default.
In this project, we design and build a 3D stage for multiple purposes, such as 3D scanning, 3D printing, engraving, etc. After through discussion and careful verification in SolidWorks, we bought material and built up the stage one time successfully.
By utilizing Grbl for Arduino CNC Board, the spindle of the stage can walk along the designed route under the control of an Arduino Mega Board and a computer. Because Grbl is designed based on G-Code standard, it is easy to use a normal CNC software to send a G-Code sequence which represents the expected route from the computer to the Arduino board. Then, the Grbl program running on the Arduino board interprets the received G-Code and controls a bunch of signals that control three step motor drivers, protection switches, optical grating encoders, spindle switch, etc.
Send command '$\$\$$' to check Grbl setting.
$0=10 $1=25 $2=0 $3=5 $4=0 $5=0 $6=0 $10=1 $11=0.010 $12=0.002 $13=0 $20=0 $21=1 $22=1 $23=0 $24=25.000 $25=500.000 $26=250 $27=5.000 $30=1000 $31=0 $32=0 $100=1280.000 $101=1280.000 $102=1280.000 $110=2560.000 $111=2560.000 $112=2560.000 $120=10.000 $121=10.000 $122=10.000 $130=600.000 $131=600.000 $132=600.000
SolidWorks Files for this project, please open system3.SLDASM after unarchiving the archive.
The Arduino Uno board runs the Grbl program and the Mega board is responsible for decoding the signals of three optical gating encoders to provide more accurate position information.
UniversalGCodeSender for Windows and macOS
UniversalGCodeSender is based on java. So, it can run on nearly all platforms supporting java. In the archive above, we provide a bat file for launching UniversalGCodeSender in Windows and a packed App for macOS.