一、CNC编程上机实战?
CNC编程是属于数控机械加工一行业的,它有分为手工编程与电脑编程。如果只是简单的平面加工与规则的角度(如90。45。30。60度)的斜角加工,用手工编程就可以了。如果是针对与复杂的曲面加工就要依靠与电脑了。
电脑编程又要依附于各类的编程软件(如Pro/E,UG,CAXA)
之类的,这些软件又主要依靠于(CAD设计,CAM制造,CAE分析)的原理编制结合而成的。学习这些软件时最主要的是要学会三维建造数模,只有建造好了数模后才能根据实际指定加工路线,最后通过加工路线生成数控程序。这类的书籍一般都只讲的电脑软件操作。在新华书店或者是到卖电脑软件学习书店里去买!
我本人也是搞数控操作与编程的,也是一只菜鸟!
祝你早日取的真经!
二、数控车床编程?
FANUC数控系统常用M代码:
M03:主轴正传
M04:主轴反转
M05:主轴停止
M07:雾状切削液开
M08:液状切削液开
M09:切削液关
M00:程序暂停
M01:计划停止
M02:机床复位
M30:程序结束,指针返回到开头
M98:调用子程序
M99:返回主程序
FANUC数控系统G代码:
代码名称-功能简述
G00------快速定位
G01------直线插补
G02------顺时针方向圆弧插补
G03------逆时针方向圆弧插补
G04------定时暂停
G05------通过中间点圆弧插补
G07------Z样条曲线插补
G08------进给加速
G09------进给减速
G20------子程序调用
G22------半径尺寸编程方式
G220-----系统操作界面上使用
G23------直径尺寸编程方式
G230-----系统操作界面上使用
G24------子程序结束
G25------跳转加工
G26------循环加工
G30------倍率注销
G31------倍率定义
G32------等螺距螺纹切削,英制
G33------等螺距螺纹切削,公制
G53,G500-设定工件坐标系注销
G54------设定工件坐标系一
G55------设定工件坐标系二
G56------设定工件坐标系三
G57------设定工件坐标系四
G58------设定工件坐标系五
G59------设定工件坐标系六
G60------准确路径方式
G64------连续路径方式
G70------英制尺寸寸
G71------公制尺寸毫米
G74------回参考点(机床零点)
G75------返回编程坐标零点
G76------返回编程坐标起始点
G81------外圆固定循环
G331-----螺纹固定循环
G90------绝对尺寸
G91------相对尺寸
G92------预制坐标
G94------进给率,每分钟进给
G95------进给率,每转进给
功能详细:
G00—快速定位
格式:G00X(U)__Z(W)__
说明:(1)该指令使刀具按照点位控制方式快速移动到指定位置。移动过程中不得对工件
进行加工。
(2)所有编程轴同时以参数所定义的速度移动,当某轴走完编程值便停止,而其他
轴继续运动,
(3)不运动的坐标无须编程。
(4)G00可以写成G0
例:G00X75Z200
G0U-25W-100
先是X和Z同时走25快速到A点,接着Z向再走75快速到B点。
G01—直线插补
格式:G01X(U)__Z(W)__F__(mm/min)
说明:(1)该指令使刀具按照直线插补方式移动到指定位置。移动速度是由F指令
进给速度。所有的坐标都可以联动运行。
(2)G01也可以写成G1
例:G01X40Z20F150
两轴联动从A点到B点
G02—逆圆插补
格式1:G02X(u)____Z(w)____I____K____F_____
说明:(1)X、Z在G90时,圆弧终点坐标是相对编程零点的绝对坐标值。在G91时,
圆弧终点是相对圆弧起点的增量值。无论G90,G91时,I和K均是圆弧终点的坐标值。
I是X方向值、K是Z方向值。圆心坐标在圆弧插补时不得省略,除非用其他格式编程。
(2)G02指令编程时,可以直接编过象限圆,整圆等。
注:过象限时,会自动进行间隙补偿,如果参数区末输入间隙补偿与机床实际反向间隙
悬殊,都会在工件上产生明显的切痕。
(3)G02也可以写成G2。
例:G02X60Z50I40K0F120
格式2:G02X(u)____Z(w)____R(\-)__F__
说明:(1)不能用于整圆的编程
(2)R为工件单边R弧的半径。R为带符号,“+”表示圆弧角小于180度;
“-”表示圆弧角大于180度。其中“+”可以省略。
(3)它以终点点坐标为准,当终点与起点的长度值大于2R时,则以直线代替圆弧。
例:G02X60Z50R20F120
格式3:G02X(u)____Z(w)____CR=__(半径)F__
格式4:G02X(u)____Z(w)__D__(直径)F___
这两种编程格式基本上与格式2相同
G03—顺圆插补
说明:除了圆弧旋转方向相反外,格式与G02指令相同。
G04—定时暂停
格式:G04__F__或G04__K__
说明:加工运动暂停,时间到后,继续加工。暂停时间由F后面的数据指定。单位是秒。
范围是0.01秒到300秒。
G05—经过中间点圆弧插补
格式:G05X(u)____Z(w)____IX_____IZ_____F_____
说明:(1)X,Z为终点坐标值,IX,IZ为中间点坐标值。其它与G02/G03相似
例:G05X60Z50IX50IZ60F120
G08/G09—进给加速/减速
格式:G08
说明:它们在程序段中独自占一行,在程序中运行到这一段时,进给速度将增加10%,
如要增加20%则需要写成单独的两段。
G22(G220)—半径尺寸编程方式
格式:G22
说明:在程序中独自占一行,则系统以半径方式运行,程序中下面的数值也是
以半径为准的。
G23(G230)—直径尺寸编程方式
格式:G23
说明:在程序中独自占一行,则系统以直径方式运行,程序中下面的数值也是
以直径为准的。
G25—跳转加工
格式:G25LXXX
说明:当程序执行到这段程序时,就转移它指定的程序段。(XXX为程序段号)。
G26—循环加工
格式:G26LXXXQXX
说明:当程序执行到这段程序时,它指定的程序段开始到本段作为一个循环体,
循环次数由Q后面的数值决定。
G30—倍率注销
格式:G30
说明:在程序中独自占一行,与G31配合使用,注销G31的功能。
G31—倍率定义
格式:G31F_____
G32—等螺距螺纹加工(英制)
G33—等螺距螺纹加工(公制)
格式:G32/G33X(u)____Z(w)____F____
说明:(1)X、Z为终点坐标值,F为螺距
(2)G33/G32只能加工单刀、单头螺纹。
(3)X值的变化,能加工锥螺纹
(4)使用该指令时,主轴的转速不能太高,否则刀具磨损较大。
G50—设定工件坐标/设定主轴最高(低)转速
格式:G50S____Q____
说明:S为主轴最高转速,Q为主轴最低转速
G54—设定工件坐标一
格式:G54
说明:在系统中可以有几个坐标系,G54对应于第一个坐标系,其原点位置数值在机床
参数中设定。
G55—设定工件坐标二
同上
G56—设定工件坐标三
同上
G57—设定工件坐标四
同上
G58—设定工件坐标五
同上
G59—设定工件坐标六
同上
G60—准确路径方式
格式:G60
说明:在实际加工过程中,几个动作连在一起时,用准确路径编程时,那么在进行
下一段加工时,将会有个缓冲过程(意即减速)
G64—连续路径方式
格式:G64
说明:相对G60而言。主要用于粗加工。
G74—回参考点(机床零点)
格式:G74XZ
说明:(1)本段中不得出现其他内容。
(2)G74后面出现的的座标将以X、Z依次回零。
(3)使用G74前必须确认机床装配了参考点开关。
(4)也可以进行单轴回零。
G75—返回编程坐标零点
格式:G75XZ
说明:返回编程坐标零点
G76—返回编程坐标起始点
格式:G76
说明:返回到刀具开始加工的位置。
G81—外圆(内圆)固定循环
格式:G81__X(U)__Z(W)__R__I__K__F__
说明:(1)X,Z为终点坐标值,U,W为终点相对于当前点的增量值。
(2)R为起点截面的要加工的直径。
(3)I为粗车进给,K为精车进给,I、K为有符号数,并且两者的符号应相同。
符号约定如下:由外向中心轴切削(车外圆)为“—”,反这为“”。
(4)不同的X,Z,R决定外圆不同的开关,如:有锥度或没有度,
正向锥度或反向锥度,左切削或右切削等。
(5)F为切削加工的速度(mm/min)
(6)加工结束后,刀具停止在终点上。
例:G81X40Z100R15I-3K-1F100
加工过程:
1:G01进刀2倍的I(第一刀为I,最后一刀为IK精车),进行深度切削:
2:G01两轴插补,切削至终点截面,如果加工结束则停止:
3:G01退刀I到安全位置,同时进行辅助切面光滑处理
4:G00快速进刀到高工面I外,预留I进行下一步切削加工,重复至1。
G90—绝对值方式编程
格式:G90
说明:(1)G90编入程序时,以后所有编入的坐标值全部是以编程零点为基准的。
(2)系统上电后,机床处在G状态。
N0010G90G92x20z90
N0020G01X40Z80F100
N0030G03X60Z50I0K-10
N0040M02
G91—增量方式编程
格式:G91
说明:G91编入程序时,之后所有坐标值均以前一个坐标位置作为起点来计算
运动的编程值。在下一段坐标系中,始终以前一点作为起始点来编程。
例:N0010G91G92X20Z85
N0020G01X20Z-10F100
N0030Z-20
N0040X20Z-15
N0050M02
G92—设定工件坐标系
格式:G92X__Z__
说明:(1)G92只改变系统当前显示的坐标值,不移动坐标轴,达到设定坐标
原点的目的。
(2)G92的效果是将显示的刀尖坐标改成设定值。
(3)G92后面的XZ可分别编入,也可全编。
G94—进给率,每分钟进给
说明:这是机床的开机默认状态。
G20—子程序调用
格式:G20L__
N__
说明:(1)L后为要调用的子程序N后的程序名,但不能把N输入。
N后面只允许带数字1~99999999。
(2)本段程序不得出现以上描述以外的内容。
G24—子程序结束返回
格式:G24
说明:(1)G24表示子程序结束,返回到调用该子程序程序的下一段。
(2)G24与G20成对出现
(3)G24本段不允许有其它指令出现。
]实例
例:通过下例说明在子程序调用过程中参数的传递过程,请注意应用
程序名:P10
M03S1000
G20L200
M02
N200G92X50Z100
G01X40F100
Z97
G02Z92X50I10K0F100
G01Z-25F100
G00X60
Z100
G24
如果要多次调用,请按如下格式使用
M03S1000
N100G20L200
N101G20L200
N105G20L200
M02
N200G92X50Z100
G01X40F100
Z97
G02Z92X50I10K0F100
G01Z-25F100
G00X60
Z100
G24
G331—螺纹加工循环
格式:G331X__Z__I__K__R__p__
说明:(1)X向直径变化,X=0是直螺纹
(2)Z是螺纹长度,绝对或相对编程均可
(3)I是螺纹切完后在X方向的退尾长度,±值
(4)R螺纹外径与根径的直径差,正值
(5)K螺距KMM
(6)p螺纹的循环加工次数,即分几刀切完
提示:
1、每次进刀深度为R÷p并取整,最后一刀不进刀来光整螺纹面
2、内螺纹退尾根据沿X的正负方向决定I值的称号。
3、螺纹加工循环的起始位置为将刀尖对准螺纹的外圆处。
例子:
M3
G4f2
G0x30z0
G331z-50x0i10k2r1.5p5
G0z0
M05
补充:
1、G00与G01
G00运动轨迹有直线和折线两种,该指令只是用于点定位,不能用于切削加工
G01按指定进给速度以直线运动方式运动到指令指定的目标点,一般用于切削加工
2、G02与G03
G02:顺时针圆弧插补G03:逆时针圆弧插补
3、G04(延时或暂停指令)
一般用于正反转切换、加工盲孔、阶梯孔、车削切槽
4、G17、G18、G19平面选择指令,指定平面加工,一般用于铣床和加工中心
G17:X-Y平面,可省略,也可以是与X-Y平面相平行的平面
G18:X-Z平面或与之平行的平面,数控车床中只有X-Z平面,不用专门指定
G19:Y-Z平面或与之平行的平面
5、G27、G28、G29参考点指令
G27:返回参考点,检查、确认参考点位置
G28:自动返回参考点(经过中间点)
G29:从参考点返回,与G28配合使用
6、G40、G41、G42半径补偿
G40:取消刀具半径补偿
7、G43、G44、G49长度补偿
G43:长度正补偿G44:长度负补偿G49:取消刀具长度补偿
8、G32、G92、G76
G32:螺纹切削G92:螺纹切削固定循环G76:螺纹切削复合循环
9、车削加工:G70、G71、72、G73
G71:轴向粗车复合循环指令G70:精加工复合循环G72:端面车削,径向粗车循环G73:仿形粗车循环
10、铣床、加工中心:
G73:高速深孔啄钻G83:深孔啄钻G81:钻孔循环G82:深孔钻削循环
G74:左旋螺纹加工G84:右旋螺纹加工G76:精镗孔循环G86:镗孔加工循环
G85:铰孔G80:取消循环指令
11、编程方式G90、G91
G90:绝对坐标编程G91:增量坐标编程
12、主轴设定指令
G50:主轴最高转速的设定G96:恒线速度控制G97:主轴转速控制(取消恒线速度控制指令)G99:返回到R点(中间孔)G98:返回到参考点(最后孔)
具体看FANUC编程操作说明书,仅供参考。
三、数控车床编程练习
数控车床编程练习指南
数控车床编程是现代制造业中的关键技能之一。在数字化、自动化的工业环境中,数控车床的使用越来越普遍,因此,掌握数控车床编程成为了许多从事机械加工行业的人士的必备技能。本文将为您提供一些数控车床编程练习的指导,帮助您快速提升编程能力。
1. 数控车床编程的基础知识
在开始数控车床编程练习之前,您需要了解一些基础概念。首先,数控车床编程是通过输入一系列指令来控制车床进行加工操作。这些指令包括机床坐标系的设定、刀具半径补偿、进给速度、切削深度等。熟悉数控编程语言(例如G代码)以及相关的指令格式和规范非常重要。
其次,了解数控系统的工作原理也是编程的基础。数控系统包括机床控制部分和程序输入设备两个主要组成部分。熟悉数控系统的结构和功能,理解编程与机床的关系,对于编写高效、准确的程序至关重要。
2. 数控车床编程练习的步骤
掌握了数控车床编程的基础知识后,下面是一些实际练习的步骤,帮助您逐步提升编程技能:
- 选择合适的练习材料:为了更好地练习数控车床编程,推荐选择一些实际的加工材料进行练习,例如铝合金、钢材等。这样可以更好地模拟实际加工场景,提高练习的实用性。
- 分析加工要求:在练习前,仔细阅读加工要求,理解零件的几何形状、尺寸、加工工艺等。这有助于您确定合适的加工策略和编写正确的加工程序。
- 绘制加工图纸:根据加工要求,使用CAD软件绘制出零件的几何形状和尺寸。这是编写加工程序的基础,也是您理解加工要求的重要工具。
- 编写加工程序:根据绘制的加工图纸,使用数控编程语言编写加工程序,包括几何指令、切削参数、进给速度等。在编写过程中,注重编程规范和代码简洁性。
- 模拟加工过程:使用模拟软件或数控仿真设备,对编写的加工程序进行模拟。通过模拟,可以验证程序的正确性,预测加工过程中可能出现的问题,提前调整参数。
- 实际加工验证:选择合适的机床,加载编写的程序,进行实际的加工验证。在实际加工过程中,注意安全操作,关注加工效果和质量。
3. 数控车床编程练习的技巧
除了以上的基础知识和步骤,还有一些技巧可以帮助您更好地进行数控车床编程的练习:
- 多进行实践:数控车床编程是一门实践性很强的技能,通过大量的实践才能真正掌握。因此,建议您多进行练习,尝试不同的加工操作,积累经验。
- 学习相关资料:数控车床编程是一个庞大的领域,有很多相关的书籍、教程和技术资料可以学习。定期阅读和学习相关资料,可以帮助您了解最新的技术和发展动态。
- 参加培训课程:如果您对数控车床编程还比较陌生,可以考虑参加一些培训课程。通过系统的学习和实践指导,可以快速提升编程能力。
- 与他人交流:与其他从事数控车床编程的人士进行交流和讨论,可以相互学习和分享经验。可以加入一些相关的社群或论坛,在这里您可以找到志同道合的朋友。
- 保持持续学习:数控车床编程涉及到各种新技术和新设备的不断出现,因此,要保持持续学习的态度。关注行业的发展动态,学习新的编程技术和工具,不断提升自己的编程水平。
4. 总结
数控车床编程练习是提高编程能力的重要途径。通过系统的学习和实践,您可以掌握数控车床编程的基础知识和技巧,提升自己的编程能力。记住,编程是一个不断学习和实践的过程,只有持之以恒地进行练习,才能不断进步。希望本文能对您的数控车床编程练习提供一些帮助和指导。
四、数控车床编程特点
数控车床编程特点
数控车床是现代制造业中不可或缺的重要设备,其具有高效、准确、灵活等特点。而数控车床的编程则是数控技术的核心之一。下面就让我们来了解一下数控车床编程的特点。
高效性:相比传统的手工编程,数控车床编程具有更高的效率。通过使用计算机辅助编程软件,可以快速而准确地将图纸上的设计要求转化为机床上的切削运动轨迹。这不仅减少了人力成本,还大大提高了生产效率。
准确性:数控车床编程的另一个显著特点是其高度的准确性。由于所有的编程指令都是通过计算机精确计算得出的,因此可以保证工件加工的精度。相比之下,人工编程容易受到人为因素的影响,而且容易出现误差。数控车床编程可以大大提高产品的加工精度,满足客户对产品质量的要求。
灵活性:数控车床编程还具有很强的灵活性,可以快速适应不同的加工需求。通过简单地修改编程指令,就可以实现不同形状、不同尺寸的工件加工。这种灵活性使得生产过程更加灵活多变,可以根据市场需求调整产品的设计和加工方案。
可重复性:数控车床编程具有很好的可重复性。一旦完成了一个工件的编程,只需要将编程文件保存下来,下次再加工相同的工件时,只需加载相应的编程文件即可。这种可重复性不仅减少了编程的时间和工作量,还可以保证每个工件的加工质量的一致性。
易学易用:虽然数控技术对操作者的要求较高,但是数控车床编程的软件通常都提供了友好的用户界面和易学易用的操作方式。操作者只需简单的学习一些基本的编程知识,就可以进行数控车床编程。而且随着数控技术的不断发展,编程软件也越来越智能化,更加方便操作。
提高生产效率:数控车床编程的高效性和准确性对于生产效率的提高起到了关键作用。由于数控车床可以实现自动化加工,可以大大缩短生产周期,提高生产效率。同时,数控车床编程还能够减少因人为因素而引起的误差,提高加工质量,降低不良品率。
降低成本:数控车床编程的使用可以显著降低企业的生产成本。相比传统的手工编程,数控车床编程节省了大量的人力资源,减少了人员培训的时间和成本。此外,数控车床编程还能够提高产品的一致性,降低了废品率,节约了原材料和能源的使用。
优化加工方案:数控车床编程还可以帮助企业优化加工方案。通过计算机模拟和仿真,可以在加工前对加工过程进行全面的分析和评估,找出最佳的加工路径和切削参数。这样不仅可以提高加工效率,还可以减少切削力和工具磨损,延长刀具的使用寿命。
总之,数控车床编程具有高效性、准确性、灵活性、可重复性、易学易用等特点,对于提高生产效率、降低成本、优化加工方案等方面都有着重要的作用。随着数控技术的不断发展,数控车床编程将更加智能化和人性化,为制造业的发展带来更大的便利和效益。
五、数控车床圆弧怎么编程,数控车床圆弧编程事例?
在车有圆弧和倒角时用,刀架在操作者这边,从右到左,车外圆用G42,从左到右车,外圆用G41。从右到左,车内径用G41,从左到右,车内径用G42,要是刀架在操作者对面,从右到左,车外圆用G41,从左到右车,外圆用G42。从右到左,车内径用G42,从左到右,车内径用G41。
在刀具补偿中,相对应的R输入刀具R值。在T中输入想应的偏值,偏值是方向定。例:机床[CKA6140,CAK40]4方位刀架,刀尖R=0.8,车外圆,用G42,在R中输0.8在T中输33的方向为[x+,z-]车内径,用G41,在R中输0.8在T中输22的方向为[x-,z-]+-为进刀正负方向。
六、数控车床A怎么编程?
数控车床A编程需要遵循G代码和M代码的规范,首先设定工件坐标系和机床参考点,然后根据零件图样确定加工轮廓,示意图和工艺要求,通过CAD/CAM软件生成相应的G代码程序,同时根据不同的切削工况、速度和加工方式设定相关参数。
最后将生成好的程序输入到数控系统中,进行调试和加工。程序编制需要严格按照标准化要求进行,防止误操作和机床碰撞等问题的发生。
七、数控车床怎么编程?
数控车床编程一般遵循以下步骤:选择合适的工件坐标系和刀具坐标系。定义工件的几何形状和尺寸。计算刀具路径。选择合适的切削参数。生成数控程序。在数控车床上运行程序。
八、数控车床编程步骤?
数控车床编程的步骤如下:
1、设置机床原点和工件零点;
2、根据切削加工要求选择刀具;
3、按加工图纸分析加工要求;
4、根据分析结果编写编程代码;
5、进行插补加工;
6、核查加工程序,确认加工结果。
九、数控车床怎样编程?
数控车床编程目前主要是通过软件的形式,主流的软件有UG,PROE,MasterCAM,PowerMILL等。。这些软件的使用请关注我们头条号或是悟空问答。
十、数控车床编程代码?
G代码分组功能
*G0001定位(快速移动)
*G0101直线插补(进给速度)
G0201顺时针圆弧插补
G0301逆时针圆弧插补
G0400暂停,精确停止
G0900精确停止
*G1702选择XY平面
G1802选择ZX平面
G1902选择YZ平面
G2700返回并检查参考点
G2800返回参考点
G2900从参考点返回
G3000返回第二参考点
*G4007取消刀具半径补偿
G4107左侧刀具半径补偿
G4207右侧刀具半径补偿
G4308刀具长度补偿+
G4408刀具长度补偿-
*G4908取消刀具长度补偿
G5200设置局部坐标系
G5300选择机床坐标系
*G5414选用1号工件坐标系
G5514选用2号工件坐标系
G5614选用3号工件坐标系
G5714选用4号工件坐标系
G5814选用5号工件坐标系
G5914选用6号工件坐标系
G6000单一方向定位
G6115精确停止方式
*G6415切削方式
G6500宏程序调用
G6612模态宏程序调用
*G6712模态宏程序调用取消
G7309深孔钻削固定循环
G7409反螺纹攻丝固定循环
G7609精镗固定循环
*G8009取消固定循环
G8109钻削固定循环
G8209钻削固定循环
G8309深孔钻削固定循环
G8409攻丝固定循环
G8509镗削固定循环
G8609镗削固定循环
G8709反镗固定循环
G8809镗削固定循环
G8909镗削固定循环
*G9003绝对值指令方式
*G9103增量值指令方式
G9200工件零点设定
*G9810固定循环返回初始点
G9910固定循环返回R点
G代码被分为了不同的组,这是由于大多数的G代码是模态的,所谓模态G代码,是指这些G代码不只在当前的程序段中起作用,而且在以后的程序段中一直起作用,直到程序中出现另一个同组的G代码为止,同组的模态G代码控制同一个目标但起不同的作用,它们之间是不相容的。00组的G代码是非模态的,这些G代码只在它们所在的程序段中起作用。标有*号的G代码是上电时的初始状态。对于G01和G00、G90和G91上电时的初始状态由参数决定。
如果程序中出现了未列在上表中的G代码,CNC会显示10号报警。
同一程序段中可以有几个G代码出现,但当两个或两个以上的同组G代码出现时,最后出现的一个(同组的)G代码有效。
在固定循环模态下,任何一个01组的G代码都将使固定循环模态自动取消,成为G80模态。
1.3辅助功能
本机床用S代码来对主轴转速进行编程,用T代码来进行选刀编程,其它可编程辅助功能由M代码来实现,本机床可供用户使用的M代码列表如下
M代码功能
M00程序停止
M01条件程序停止
M02程序结束
M03主轴正转
M04主轴反转
M05主轴停止
M06刀具交换
M08冷却开
M09冷却关
M18主轴定向解除
M19主轴定向
M29刚性攻丝
M30程序结束并返回程序头
M98调用子程序
M99子程序结束返回/重复执行这是普通的指令编程,还有利用变量编制的程序,
统宏程序编程
一变量
普通加工程序直接用数值指定G代码和移动距离;例如,GO1和X100.0。使用用户宏程序时,数值可以直接指定或用变量指定。当用变量时,变量值可用程序或用MDI面板上的操作改变。
#1=#2+100
G01X#1F300
说明:
变量的表示
计算机允许使用变量名,用户宏程序不行。变量用变量符号(#)和后面的变量号指定。
例如:#1
表达式可以用于指定变量号。此时,表达式必须封闭在括号中。
例如:#[#1+#2-12]
变量的类型
变量根据变量号可以分成四种类型
变量号
变量类型
功能
#0
空变量
该变量总是空,没有值能赋给该变量.
#1-#33
局部变量
局部变量只能用在宏程序中存储数据,例如,运算结果.当断电时,局部变量被初始化为空.调用宏程序时,自变量对局部变量赋值,
#100-#199
#500-#999
公共变量
公共变量在不同的宏程序中的意义相同.当断电时,变量#100-#199初始化为空.变量#500-#999的数据保存,即使断电也不丢失.
#1000
系统变量
系统变量用于读和写CNC运行时各种数据的变化,例如,刀具的当前位置和补偿值.
变量值的范围
局部变量和公共变量可以有0值或下面范围中的值:
-1047到-10-29或-10-2到-1047
如果计算结果超出有效范围,则发出P/S报警NO.111.
小数点的省略
当在程序中定义变量值时,小数点可以省略。
例:当定义#1=123;变量#1的实际值是123.000。
变量的引用
为在程序中使用变量值,指定后跟变量号的地址。当用表达式指定变量时,要把表达式放在括号中。
例如:G01X[#1+#2]F#3;
被引用变量的值根据地址的最小设定单位自动地舍入。
例如:
当G00X#/;以1/1000mm的单位执行时,CNC把123456赋值给变量#1,实际指令值为G00X12346.
改变引用变量的值的符号,要把负号(-)放在#的前面。
例如:G00X-#1
当引用未定义的变量时,变量及地址都被忽略。
例如:当变量#1的值是0,并且变量#2的值是空时,G00X#1Y#2的执行结果为G00X0。
双轨迹(双轨迹控制)的公共变量
对双轨迹控制,系统为每一轨迹都提供了单独的宏变量,但是,根据参数N0.6036和6037的设定,某些公共变量可同时用于两个轨迹。
未定义的变量
当变量值未定义时,这样的变量成为空变量。变量#0总是空变量。它不能写,只能读。
引用
当引用一个未定义的变量时,地址本身也被忽略。
当#1=
当#1=0
G90X100Y#1
G90X100
G90X100Y#1
G90X100Y0
(b)运算
除了用赋值以外,其余情况下与0相同。
当#1=时
当#1=0时
#2=#1
#2=
#2=#1
#2=0
#2=#*5
#2=0
#2=#*5
#2=0
#2=#1+#1
#2=0
#2=#1+#1
#2=0
(c)条件表达式
EQ和NE中的不同于0。
当#1=时
当#1=0时
#1EQ#0成立
#1EQ#0不成立
#1NE#0成立
#1NE#0不成立
#1GE#0成立
#1GE#0不成立
#1GT#0不成立
#1GT#0不成立
限制
程序号,顺序号和任选程序段跳转号不能使用变量。
例:下面情况不能使用变量:
0#1;
/#2G00X100.0;
N#3Y200.0;
二算术和逻辑运算
下面表中列出的运算可以在变量中执行。运算符右边的表达式可包含常量和或由函数或运算符组成的变量。表达式中的变量#j和#k可以用常数赋值。左边的变量也可以用表达式赋值。
说明:
角度单位
函数SIN,COS,ASIN,ACOS,TAN和ATAN的角度单位是度。如90°30'表示为90.5度。
ARCSIN#i=ASIN[#j]
(1)取值范围如下:
当参数(NO.6004#0)NAT位设为0时,270°~90°
当参数(NO.6004#0)NAT位设为1时,-90°~90°
(2)当#j超出-1到1的范围时,发出P/S报警NO.111.
(3)常数可替代变量#j
ARCCOS#i=ACOS[#j]取值范围从180°~0°当#j超出-1到1的范围时,发出P/S报警NO.111.常数可替代变量#j
三程序举例
铣椭圆:
轨迹:
椭圆程序代码如下:
N10G54G90G0S1500M03
N12X0Y0Z20.
N14G0Z1
N16G1Z-5.F150.
N18G41D1
N20#1=0
N22#2=34
N24#3=24
N26#4=#2*COS[#1]
N28#5=#3*SIN[#1]
N30#10=#4*COS[45]-#5*SIN[45]
N32#11=#4*SIN[45]+#5*COS[45]
N34G1X#10Y#11
N36#1=#1+1
N38IF[#1LT370]GOTO26
N40G40G1X0Y0
N42G0Z100
N44M30
铣矩形槽:
铣矩形槽代码如下:
#102=0.
N3#100=0.
#101=0.
#103=200.
#104=400.
G91G28Z0.
G0G90G54X0.Y0.
G43H1Z20.
M3S2000.
N4G0X#100Y#101
G01Z#102F200.
#102=#102-2.
IF[#102EQ-50.]GOTO1
GOTO2
N2
N4X#104F500.
Y#103
X#100
Y#101
#100=#100+10.
#101=#101+10.
#103=#103-10.
#104=#104-10.
IF[#100EQ100.]GOTO3
GOTO4
N3
N1
M5
M9
G91G28Z0.
G28Y0.
M30
铣倾斜3度的面:
轨迹:
铣倾斜3度的面的代码如下:
O0001
#[#1+1*2]=1
G65P9012L1A0B0.1C4I100J3K0
M30
宏程序O9012代码如下:
G54G90G00X[#3]Y0Z100
S500M3
G01Z0F300
WHILE[#1LE10]DO1
#7=#1/TAN[#5]+#3
G1Z-#1X#7
#8=#6/2-ROUND[#6/2]
IF[#8EQ0]GOTO10
G1Y0
GOTO20
N10Y#4
N20#1=#1+#2
#6=#6+1
END1
G0
Z100
铣半球:
轨迹:
铣半球代码如下:
G90G0G54X-10.Y0M3S4500
G43Z50.H1M8
#1=0.5
WHILE[#1LE50.]DO1
#2=50.-#1
#3=SQRT[2500.-[#2*#2]]
G1Z-#1F20
X-#3F500
G2I#3
#1=#1+0.5
END1
G0Z50.M5
M30
铣喇叭:
铣喇叭代码如下:
M03S500
M06T01
#1=0
#2=0
G0Z15
X150Y0
N11
#2=30*SIN[#1]
#3=30+30*[1-COS[#1]]
G01Z-#2F40
G41X#3D01
G03I-#3
G40G01X150Y0
#1=#1+1
IF[#1LE90]GOTO11
G0Z30
M30