PMAC支持的通用G、M代码及复合G、M代码

4.2.1 pmac支持的通用g、m代码
pmac卡允许执行机床类型的rs-274(g代码)程序,pmac将把g、m、t和d代 码作为子例程来调用[45]。当pmac在运动程序中遇到字母g后面带数值n的时候,便认 为是调用子程序program 1000中数值n程序段。为了增加程序的可读性,我们采用 gosub^fm命令,此命令使运动程序跳转型到同一运动程序段中{数值}的行号(n 或0),当程序遇到gosub后的return命令后马上返回。
例如,g17将导致直接跳转至prog1000的n17000; g117将导致程序直接跳转到 prog1010 的 n17000; g973.1 会导致跳至 prog1090 的 n73100。m 使用 proglonl,
t代码使用prog10n2, d代码使用prog10n3。
大多数时候,这些代码的数字范围在0到99内,所以执行它们只需要progslooo, 1001、1002和1003被要求来执行它们。对于那些想延伸代码数字超过100的用户,执行 它们将要求progslolo、1011等等。制造商的任务是对运动程序lono到10n3编写对应 程序,来实现他想要的动作,程序编写完成后便可执行对零件程序员和机器操作员不可见 的程序[46]。许多代码都已经是十分标准了,pmac卡已经提供了这些例子,如表4-2、表 4-3所示:
表4-2 pmac支持的标准g代码
g代码
解释
备注
g00
快速点到点定位
rapid命令
g01
直线插补方式
linear命令
g02
平面顺时针圆弧模式
circle 1 命令
g03
平面逆时针圆弧模式
circle2 命令
g04
暂停
dwell命令
g09
精确的停止
dwell命令
g17
选择xy平面
normalk-1 命令
g18
选择zx平面
normal j -1命令
g19
选择yz平面
normal i -1命令
g40
关断刀具半径补偿
cc0命令
g41
左刀具半径左补偿
cc1命令
g42
右刀具半径右补偿
cc2命令
g90
值编程
abs命令
g91
增量值编程
inc命令
表4-3 pmac支持的标准m代码
m代码
解释
备注
m00
编程停止
stop命令
m01
选项停止
假设输出点ml=l时发stop命令
m02
程序结束
return命令,返回程序顶部
m03
主轴正转
cmd “#4j+”
m04
主轴反转
cmd “#4卜”
表4-3 pmac支持的标准m代码(续)
m代码
解释
备注
m05
主轴停止
cmd “#4j
m 07
冷却液打开(喷雾)
假设输出点m7=l
m 08
冷却液打开(大量)
假设输出点m8=l
m 09
冷却液关断
假设输出点m7=0和m8=0
m30
循环的结束程序
return命令,返回程序开始处
4.2.2复合g、m代码
固定循环g代码
数控机床是一种按照事先编制好的零件加工程序自动进行高效加工的设备。g代码作 为一种通用机床语言,用来实现数控程序的编程,以便实现各进给轴的精确运动。以常用cnc加工中心数控系统深孔加工循环(g83)代码为例进行分析研究。
1.1加工中心g83代码分析
数控加工中,某些加工动作循环已经典型化[47]。例如,钻孔、镗孔的动作,主要由孔 定位、快进、工进、快退等动作组成,典型加工动作程序已经事先定制,存储于内存储器 中,需要时可直接调用相应g代码即可,从而简化编程工作。
常用立式加工中心数控系统固定循环g代码的程序格式主要有:数据形式、返回点平面、 孔加工方式、孔位置数据、孔加工数据和循环次数[48]。现在以深孔加工循环(g83)代码 为例进行介绍,其程序格式如下:
g98 (g99) g83 x_y_z_r_ p_q_ f _ k _
式中第一个g代码(g98或者g99)为返回点平面g代码,g98为返回初始平面, g99为返回r点平面。x、y:孔的位置。z:编程时是孔底z点的坐标值;增量编程 时是孔底z点与r点的距离。r:编程时是r点的坐标值;增量编程时是初始点与r 点距离。p:刀具在孔底暂停时间。q:为每次进刀量。f:钻孔进给速度。k:循环次数。 g83加工固定循环如图4-5所示。
刀具先快速定位至x、y所的坐标位置,再快速定位至r点,接着以f所的 进给速率向下钻削q所距离后(q必为正值,用增量值表示),快速退刀回r点,再向下快速定位于前一切削深度上方距离d处(由系统内部参数设定),再向下钻削q+d所 的距离后,再快速退回r点,以后依此方式一直钻孔到z所的孔底位置[49]。此处 的“d”表示刀具间歇进给时,每次下降由快速转为切削进给前这一点与前一次切削进给 下降的点之间的距离,由系统内部参数设定。
1.2 g83代码程序开发
现在以常用线轨加工中心控系统深孔加工循环(g83)代码为例,对此代码进行程序编 写。其关键程序见附录一。g83代码程序编写的大致流程图如图4-6所示。
2.3基于pmac的数控常用坐标系的实现
根据数控加工中心坐标系命令g16、g43、g44、g52、g53、g54、g55、g56、
g57、g58、g59的特点,需应用矩阵转换中的平移矩阵,即需将对刀测得的坐标偏移量 或者加工程序输入的数值赋给平移矩阵中的dll、d12、d13,而dll、d12、d13是由连 续的三个q变量赋值的。根据坐标系命令g20、g21、g50、g51.1、g68的特点,需要 应用矩阵转换中的旋转矩阵,即将加工程序输入的数值赋给旋转矩阵中的r11-r33,而 r11-r33是由连续的九个q变量赋值的。
现以g54、g51为代表说明具体实现方法。命令g54的格式:g54 x_ y_z_我
们只需将对刀测得的坐标偏移量xyz后面的数值赋给q40、q41、q42,然后程序执行adis 40即可。命令g51的格式:g51 x_y_z_p_ ,只需将p的数值赋给旋转矩阵中的q50、
q54、q59,其余q变量为0,然后程序执行arot50即可。如果既用到旋转矩阵又用到 平移矩阵,则将两者结合用即可。其关键程序见附录一。
无论工件在何种坐标系下进行加工,其坐标值都要转化为机床机械坐标系上的坐标值 5()。可做这样的计算:工件在机床机械坐标系上x的坐标值=x偏置+刀具长度补偿+刀具 半径补偿+刀具磨耗+x旋转后的坐标+x镜像后的坐标+x经极坐标转换后的坐标+程序中 的x坐标。
m代码
m代码作为一种通用机床语言,用来实现数控程序的编程,当多次运行相同的轨迹时, 可以将这段轨迹编成一个独立的程序存储在机床的存储器当中,被别的程序所调用,这样 的程序叫做子程序[52]。子程序执行顺序如图4-9所示。
指令格式: m98 p— l—;
m99;
解释: p:子程序号,如:p100;
l:调用次数。
pmac卡允许执行机床类型的m代码程序,pmac将把m代码作为子例程来调用, 需要程序执行其子程序然后返回执行程序的下一行时,可利用call指令来实现。
call命令使运动程序跳转到另一个运动程序,当程序遇到return命令后马上返 回。输入到pmac的子程序与主程序一样,用progn作标号(这样一个程序可以像调用
子程序一样调用其它程序)。prog的标题号n为call提交后的值:call7将执行 pr0g7并返回。紧接在call后的值可以包含小数。如果没有小数部分,则被调用的程 序段从头开始。如果存在小数部分,则被调用的程序跳转到由小数部分标号的行(如 果该标号不存在则pmac会产生错误并停止执行程序)。turbo pmac使用五位小数作为 行标号,如果位数不足,pmac将自动补零。例如,call 35.1 被翻译为 call35.10000,这将使跳转到程序 35 的标号 n10000 处执行[46]。m98 命令关键程序如下:
n98000 read (p ,l)
if (q100&800 > 0) cishu = q112 //子程序调用次数
else q112 =1
endif
if (q100&8000 > 0)
cxhao=q116 //p 程序号
endif
p1000=1
while (p1000 !> q112)
call (cxhao)
p1000 = p1000 + 1
endwhile
return
n99000
dwell 1
return
本文采摘自“基于pmac的加工中心开放式数控系统研究”,因为编辑困难导致有些函数、表格、图片、内容无法显示,有需要者可以在网络中查找相关文章!
本文由伯特利数控整理发表文章均来自网络仅供学习参考,转载请注明!

在不同要求下砝码使用的具体情况
农药残留快速检测分析仪XC24-NC详细说明及报价
维氏硬度计测量时对哪些方面有要求?
天台到色达县物流专线货运直达_天台到甘孜色达县物流公司
改性硅质聚苯保温板成套生产线
PMAC支持的通用G、M代码及复合G、M代码
潍坊到慈溪物流公司,潍坊到慈溪物流专线,潍坊至慈溪货运专线
红梗草根的功效与作用
推动智慧法院建设 感受司法温度
江山到常州新北区物流专线_江山到新北区物流公司直达运输
长沙到蒙特利尔物流专线,长沙到蒙特利尔国际货运专线
仓泵气动翻板式进料阀密封圈JQ641FM钟罩阀顶板上下氟橡胶密封圈一套三条
芜湖到三亚物流公司,芜湖到三亚物流专线直达运输
弯道会车预警系统解析
广州番禺区到常州钟楼区物流专线,广州番禺区到钟楼区物流公司直达货运
洁净室净化系统
网络故障解剖
海宁到昆明长水机场物流公司,海宁到长水机场物流专线货运
水表保温套主用于哪些地方
张家港到海口秀英区物流专线货运直达_张家港到秀英区物流公司