手工编程是指编程的各个阶段均由人工完成。利用一般的计算工具,通过各种三角函数计算方式,人工进行刀具轨迹的运算,并进行指令编制。
这种方式比较简单,很容易掌握,适应性较大。
下面我们了解一下数控编程步骤及需用到的代码:
1. 编程步骤
01、人工完成零件加工的数控工艺
02、分析零件图纸
03、制定工艺决策
04、确定加工路线
05、选择工艺参数
06、计算刀位轨迹坐标数据
07、编写数控加工程序单
08、验证程序
09、手工编程
10、刀轨仿真
2. 准备功能字G
准备功能字G是使数控机床建立起某种加工方式的指令,如插补、刀具补偿、固定循环等。G功能字由地址符G和其后的两位数字组成,从G00—G99共100种功能。
G00 定位或快速移动
G01 直线插补(进给速度)
G02 顺时针圆弧插补/螺旋线插补
G03 逆时针圆弧插补/螺旋线插补
G04 停留时间或延时时间
如:G04 X1000;G04 P1000
G09 准确停止或精确停止检查(检查是否在目标范围内)
G10 可编程数据输入
G17 选择XY平面
G18 选择XZ平面
G19 选择YZ平面
G20 英寸输入
G21 毫米输入
G27 返回并检查参考点
G28 返回参考点检测
如:G91/(G90) G28 X___ Y___ Z___
(经过中间点X___ Y___ Z___返回参考点)
G29 从参考点返回
如:G91/(G90) G29 X___ Y___ Z___
(从起始点经过参考点返回到目标点X___ Y___ Z___的指令)
G30 返回第2,3,4参考点
如:G91/(G90) G30 P2 X___ Y___ Z___(返回第2参考点)
G40 刀具半径补偿取消
G41 左侧刀具半径补偿(沿进给方向刀具在左边)
G42 右侧刀具半径补偿(沿进给方向刀具在右边)
G43 刀具长度补偿+方向
G44 刀具长度补偿-方向
G49 取消刀具长度补偿
G50 取消比例缩放
G51 比例缩放
如:ON G51 X___ Y___ Z___ P___;
OFF G50
(X___ Y___ Z___ 设定缩放中心位置)
(P:缩放比例,范围是1-999999,不能是小数,如果P800代表缩放比例是0.8)
G52 设置局部坐标系
G53 选择机床坐标系
G54 选用1号工件坐标系
G55 选用2号工件坐标系
G56 选用3号工件坐标系
G57 选用4号工件坐标系
G58 选用5号工件坐标系
G59 选用6号工件坐标系
G60 单方向定位,消除传动间隙(代替G00),过目标位置后回头至目标位置
G61 准停检查方式,切削进给接近目标位置时减速并检查位置公差范围
G62 自动拐角倍率
G63 攻牙方式
G64 正常切削方式,切削进给接近目标位置时不减速,以及切削段与段之间不减速
G65 宏程序调用
G66 模态宏程序调用
G67 模态宏程序调用取消
G68 坐标旋转
如:G17: G68 X___ Y___ R___
G69 坐标旋转取消
G73 多级钻削循环
G74 攻左旋螺纹循环
G76 精镗循环
G80 取消固定循环
G81 单级钻削循环
G82 单级钻削循环(实现孔底停留或延时)
G83 多级钻削循环
G84 攻右旋螺纹
G85 镗削固定循环
G86 镗削固定循环
G87 反镗固定循环
G88 镗削固定循环
G89 镗削固定循环
G90 绝对指令
G91 相对指令
G92 工件零点设定
G98 固定循环返回初始点
G99 固定循环返回R点
3. 坐标功能字
坐标功能字(又称尺寸字)用来设定机床各坐标的位移量。它一般使用X、Y、Z、U、V、W、P、Q、R、A、B、C、D、E等地址符为首,在地址符后紧跟“+”(正)或“-”(负)及一串数字,该数字一般以系统脉冲当量(指数控系统能实现的最小位移量,即数控装置每发出一个脉冲信号,机床工作台的移动量,一般为0.0001~0.01mm)为单位,不使用小数点。一个程序段中有多个尺寸字时,一般按上述地址符顺序排列。
4. 进给功能字F
该功能字用来指定刀具相对工件运动的速度。其单位一般为mm/min。当进给速度与主轴转速有关时,如车螺纹、攻丝等,使用的单位为mm/r。进给功能字以地址符“F”为首,其后跟一串数字代码。
5. 主轴功能字S
该功能字用来指定主轴速度,单位为r/min,它以地址符“S”为首,后跟一串数字。
6. 刀具功能字T
当系统具有换刀功能时,刀具功能字用以选择替换的刀具。它以地址符“T”为首,其后一般跟二位数字,代表刀具的编号。
7. 辅助功能字M
辅助功能字M是用于指定主轴的旋转方向、启动、停止、冷却液的开关,工件或刀具的夹紧和松开,刀具的更换等功能。辅助功能字由地址符M和其后的两位数字组成,M代码从M00-M99共100种。
M00 程序停止
M01 计划结束
M02 程序结束
M03 主轴顺时针转动
M04 主轴逆时针转动
M05 主轴停止
M06 换刀
M07 2号冷却液开
M08 1号冷却液开
M09 冷却液关
M10 夹紧
M11 松开
M12 不指定
M13 主轴顺时针,冷却液开
M14 主轴逆时针,冷却液开
M15 正运动
M16 负运动
M17 不指定
M18 不指定
M19 主轴定向停止
M20-M29 永不指定
M30 纸带结束
M31 互锁旁路
M32-M35 不指定
M36 进给范围1
M37 进给范围2
M38 主轴速度范围1
M39 主轴速度范围2
M40-M45 齿轮换档
M46-M47 不指定
M48 注销M49
M49 进给率修正旁路
M50 3号冷却液开
M51 4号冷却液开
M52-M54 不指定
M55 刀具直线位移,位置1
M56 刀具直线位移,位置2
M57-M59 不指定
M60 更换工作
M61 工件直线位移,位置1
M62 工件直线位移,位置2
M63-M70 不指定
M71 工件角度位移,位置1
M72 工件角度位移,位置2
M73-M89 不指定
M90-M99 永不指定
8. 常用算术
加法:#i=#j+#k
减法:#i=#j-#k
乘法:#i=#j*#k
除法:#i=#j/#k
正弦:#i=SIN[#j]
反正弦:#i=ASIN[#j]
余弦:#i=COS[#j]
反余弦:#i=ACOS[#j]
正切:#i=TAN[#j]
反正切:#i=ATAN[#j]
平方根:#i=SQRT[#j]
绝对值:#i=ABS[#j]
舍入:#i=ROUND[#j]
上取整:#i=FIX[#j]
下取整:#i=FUP[#j]
自然对数:#i=LN[#j]
指数函数:#i=EXP[#j]
或:#i=#jOR#k
异或:#i=#jXOR#k
与:#i=#AND#k
从BCD转为BIN:#i=BIN[#j]
从BIN转为BCD:#i=BCD[#j]
9. 逻辑运算符
EQ:等于
NE:不等于
GT:大于
GE:大于或等于
LT:小于
LE:小于或等于
10. 程序转移和循环
无条件转移:GOTO
条件转移:IF [条件表达式]
IF [条件表达式] GOTO n,如果条件满足,则跳转至程序段n
IF [条件表达式] THEN,如:IF [#I=#J] THEN #K=0
循环语句
WHILE [条件表达式] Dom (m=1,2,,3)
…
ENDm
如果条件满足则执行Dom至ENDm之间的程序(直到条件不满足),否则转而执行ENDm后面的程序。