3.2.1 G代码简介
可以利用G代码来描述运动轨迹
将轨迹分成多段的连续直线或圆弧,G代码按照顺序描述每个线段的目标点坐标和线型,以及希望运行的速度和加速度特性等。
AM600支持DIN66025-1标准的G代码指令集。
德国DIN66025-1标准定义的G代码指令集为大多数数控设备厂家所采用。
G代码广泛应用于数控机床中的程序编程,通过G代码可以方便的描述轨迹,配合辅助指令还可以实现工件取放,刀具切换等操作。
3.2.2 G代码关键字
G---定位插补指令
F---速度(定义单位/s)
E---最大加速度
X---目标位置的X坐标
Y---目标位置的Y坐标
Z---目标位置的Z坐标
I---圆/椭圆的X坐标
J---圆/椭圆的Y坐标
D---刀具半径
H---开闭开关点
O---相对开关位置
L---绝对开关位置
3.2.3 常用的G代码
代码 功能
G00 无工具接触,定位的直线运动
G01 有工具接触的线性(直线)运动
G02 顺时针绕圆(弧)
G03 逆时针绕圆(弧)
G04 延时时间,单位:秒
G05 一个2D基样条点
G06 抛物线
G08 顺时针方向椭圆(弧)
G09 逆时针方向椭圆(弧)
G10 一个3D基样条点
G15 更改为2D
G16 通过平面法向量I/J/K中,通过激活3D模式更改为3D
G17 在X/Y平面,通过激活3D模式更改为3D
G18 在Z/X平面,通过激活3D模式更改为3D
G20 在Y/Z平面,通过激活3D模式更改为3D
G20 条件跳转(如果K<>0,跳转至L)
G36 给变量(O)写值(D)
G37 按值(D)增加变量(O)
G40 结束工具半径的修正(SMC_ToolCorr)
G41 从工件左侧开始工具半径的修正
G42 从工件右侧开始工具半径的修正
G50 结束圆路径(SMC_SmoothPath)/平滑路径函数(SMC_RoundPath)
G51 开始平滑路径函数
G52 开始圆路径函数
G53 结束转移坐标轴函数
G54 全部下列坐标轴设置偏移到指定位置
G55 添加指定位置到当前偏移量
G56 按当前位置等于指定位置那样设置偏移
G60 结束无效循环功能(SMC_AvoidLoop)
G61 启动无效循环功能(SMC_AvoidLoop)
G75 与插补器时间同步
G90 开始诠释下一个坐标值(为X/Y/Z/P-W/A/B/C)为绝对值(默认)
G91 开始诠释下一个坐标值(为X/Y/Z/P-W/A/B/C)为相对值
G92 设置位置不进行偏移
G98 开始诠释下一个坐标值I/J/K为绝对位置
G99 相对于起始点,开始诠释下一个坐标值I/J/K为相对位置(标准)
3.2.4 G代码语法举例
3.2.5 插补轴与辅助轴
AM600支持3轴插补,同时支持A/B/C/P/Q/U/V/W等8个辅助轴的定位控制,以便在插补运动过程中,除插补轴外的其他轴也能配合运行。
辅助轴的运行起止时间由G代码决定,但与XYZ轴运动没有同步关系。
XYZ轴按照设定的速度同步运行,辅助轴则按照定位运行方式运动到目标点。辅助轴和XYZ轴只在执行时间上是相同的,没有位置对应关系。
3.2.6 M指令
M指令用于将轨迹控制和逻辑控制相关联
应用举例:冲床上下料机械手,往往要等到冲头冲压完毕并回到顶点后,才开始抓取加工工件的动作。
M后面可跟随1~65535范围的值(word)类型;
语句中的K、L为可选参数,使用K、L传递常数值(Lreal类型),可以为逻辑程序提供更多的参数,该参数需要用另外的功能块SMC_GetMParameters来读取。
插补器执行到具有M指令的N050行语句时,就会停下来,并在插补器(wM端口)输出变量参数值10,用户的逻辑程序接到该参数值后,可以处理该参数值对应的逻辑,直到满足了设定的条件后,在插补器输入端(bAcknM)变量置位1,插补器继续轨迹插补,再加速运行;
3.2.7 H指令
表示2号开关(S2)在X20+20处闭合,在X100-10处断开。
在轨迹插补运行中,经过H指令指定的轨迹点时,输出指定的逻辑控制信号,用于逻辑控制的输出,并在插补器(dwSwitches端口)输出变量。
H指令和M指令不同,经过指定轨迹点位置输出逻辑信号时,并不出现轨迹运行的减速暂停。
应用举例:喷绘、点胶设备的喷嘴控制
3.2.8 轨迹控制的圆滑过渡
在实际应用中,对于轨迹转折处可能需要有倒角和圆滑处理,用G51/G52指令就可以启动圆滑路径处理,将拐角处位置改为连续即可实现连续插补。
应用举例:直角点胶不停机
例:
N000 G51 D1 //开始圆滑处理,D值=拐角点到圆滑切点距离
N010 G01 X1.5 Y3 F1 E0.5 E-0.5
N020 G01 X3 Y1.5
N030 G03 X6 Y2.8 I0.06 J3.8
N040 G01 X9 Y3.8
N050 G05 X11 Y3.6
N060 G05 X12.4 Y4.8
N070 G50//取消圆滑处理
3.2.9 轨迹控制的刀具补偿
用户一般设计所需工件外形或希望加工的图案形状,而设备控制的却是加工工具的运动轨迹,加工工具一般都会有其外形尺寸,如镗床、铣床、磨床的工具,因此加工工具的行走轨迹需要在工具轨迹的基础上,考虑工具的尺寸,这就是刀具补偿。
G-Code指令中的G41、G42、G40就分别是刀具半径左补偿、右补偿和取消半径补偿。
例:
N000 G41 D1// 开始刀具左补偿,D值=刀具补偿半径
N010 G01 X1.5 Y3 F1 E0.5 E-0.5
N020 G01 X3 Y1.5
N030 G03 X6 Y2.8 I0.06 J3.8
N040 G01 X9 Y3.8
N050 G05 X11 Y3.6
N060 G05 X12.4 Y4.8
N070 G40 // 取消刀具补偿
3.2.9 G代码总结
AM600支持的G代码语句关键字列举如下: