变量编程

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

宏程序在数控车削加工中的应用数控车培训教程主讲:宣志勇宏程序什么是宏程序?数控程序中含有变量的程序称为宏程序宏程序由于允许使用变量、算术和逻辑运算以及条件转移等使得编制相同的加工程序更简便。宏程序主要用于编写二次曲线加工程序和加工类似零件以及其它特殊场合变量什么是变量?相对于常量而言,变量就是指可以根据用户的需要随时变化的量变量的表示方法:变量符号(#)+变量号如:#1#100变量号可用表达式来代替表示如:#[#1+2]表达式必须封闭在[]内变量变量的使用1、在地址符后面直接指定变量号或公式格式:地址符#I地址符-#I地址符[公式]例:F#1设#1=100则为F100Z-#2设#2=200则为Z-200X[#3+TAN[#4]]2、变量号可以用变量代替例:#[#10]设#10=10则为#103、程序号、顺序号和程序跳转号不能使用变量例:O#1/#2G00X100N#3Z100变量4、地址符引用的变量号所对应的变量都有具体的数值范围例:#10=150则M#10是不允许的5、#0为空变量,没有定义变量值的变量都是空变量6、程序定义变量值时可省略小数点例:#123=150变量值的范围局部变量和公共变量可以为0或下面范围中的值-1047~-10-29或10-29~1047变量的引用在地址符后指定变量号即可引用其变量值。如:G01X#1F0.1当用表达式指定变量时,要把表达式放在括号中。如:G01X[#1+#2]F#3被引用变量的值根据地址的最小设定单位自动地舍入如:系统的最小输入增量为1/1000mm时#1=12.3456当指定G01X#1时,实际指令值为G01X12.346引用空变量时,地址本身也被忽略变量变量的分类根据变量号分类系统变量系统变量用于读和写NC内部数据,系统变量是自动控制和通用程序开发的基础。1、接口信号接口信号是可编程机床控制器(PMC)和用户宏程序之间交换的信号。2、刀具补偿值用系统变量可以读和写刀具补偿值3、宏程序报警算术和逻辑运算表中列出的运算可以在变量中执行。运算符右边的表达式可包含常量或由函数或运算符组成的变量。表达式中的变量#j和#k可以用常数替换。左边的变量也可以用表达式赋值。包含定义,加、减、乘、除、三角函数计算、开平方、逻辑运算等等逻辑运算:等于:EQ格式:#jEQ#k不等于:NE格式:#jNE#k大于:GT格式:#jGT#k小于:LT格式:#jLT#k大于等于:GE格式:#jGE#k小于等于:LE格式:#jLE#k算术与逻辑运算指令的缩写程序中指令函数时,函数名的前二个字符可以用于指定该函数例如:ROUND→ROFIX→FI运算次序①函数②乘和除运算(*、/、AND)③加和减运算(+、-、OR、XOR)括号嵌套括号用于改变运算次序。括号可以使用5级,包括函数内部使用的括号。当超过5级时,出现P/S报警No.118。宏程序语句和NC语句下面的程序段为宏程序语句:包含算术或逻辑运算(=)的程序段。包含控制语句(例如,GOTO,DO,END)的程序段。包含宏程序调用指令(例如,用G65,G66,G67或其它G代码,M代码调用宏程序)的程序段。除了宏程序语句以外的任何程序段都为NC语句。转移和循环使用GOTO语句和IF语句可以改变控制的流向。有三中转移和循环可供使用。GOTO无条件转移IF条件转移WHILE当型循环1、无条件转移GOTOn;n为顺序例如:GOTO1;GOTO#10;2、条件转移IF[条件表达式]GOTOn例如:IF[#1GT10]GOTO2程序N2G00G91X10.0IF[条件表达式]THEN表达式例如:IF[#1EQ#2]THEN#3=0条件不满足条件满足3、当型循环WHILE[条件表达式]DOm;程序;ENDm;程序;说明:①m=1,2,3,可以多次使用。②最多嵌套三层。③省略WHILE,则产生从DO到END的无限循环。④WHILE比GOTO处理快。条件满足条件不满足标号可以多次使用:WHILE[…]DO1;程序;END1;﹕WHILE[…]DO1;程序;END1;可以嵌套3层:WHILE[…]DO1;﹕WHILE[…]DO2;﹕WHILE[…]DO3;程序;END3;﹕END2;﹕END1;可以跳到循环外边:WHILE[…]DO1;IF[…]GOTOn;END1;NnDO的范围不能交叉:WHILE[…]DO1;程序;WHILE[…]DO2;﹕END1;程序;END2;转移不能进入循环区:IF[…]GOTOn;﹕WHILE[…]DO1;N1…;END1;变量的赋值(对应)关系1程序中的地址在宏程序体中的变量程序中的地址在宏程序体中的变量A#1Q#17B#2R#18C#3S#19D#7T#20E#8U#21F#9V#22H#11W#23I#4X#24J#5Y#25K#6Z#26M#13变量的赋值(对应)关系2程序中的地址在宏程序体中的变量程序中的地址在宏程序体中的变量程序中的地址在宏程序体中的变量A#1J4#14K8#27B#2K4#15I9#28C#3I5#16J9#29I1#4J5#17K9#30J1#5K5#18I10#31K1#6I6#19J10#32I2#7J6#2K10#33J2#8K6#21K2#9I7#22I3#10J7#23J3#11K7#24K3#12I8#25I4#13J8#26G65A1.0B2.0I-3.0I4.0D5.0P1000变量:#1:1.0#2:2.0#4:-3.0#7:4.0#7:5.0自变量指定Ⅰ、Ⅱ混合使用CNC内部自动识别自变量指定Ⅰ和自变量指定Ⅱ。如果自变量指定Ⅰ和自变量指定Ⅱ混合指定,后指定的自变量类型有效。1O8989M03S800T0101G00X34Z5G73U16W0R16G73P10Q20U0.5W0.1F80N10G00X0G01Z0#1=15#2=10#3=15WHILE[#3GE0]DO1#4=#2*SQRT[#1*#1-#3*#3]/#1G01X[2*#4]Z[#3-15]#3=#3-0.5END1G01Z-20N20X34G70P10Q20F30M30O1415T0101M03S800G00X34Z5G73U17W0R17G73P10Q20U0.5W0.1F50N10G00X0G01Z0#1=20#2=14#3=0WHILE[#3LE144]DO1#4=#1*COS[#3]#5=#2*SIN[#3]G01X[2*#5]Z[#4-20]#3=#3+1END1Z-40N20X30G70P10Q20F30M30O9878M03S800T0101G00X34Z5G73U16W0R16G73P10Q20U0.5W0.1F80N10G00X0G01Z0#1=20#2=16#3=15.615WHILE[#3GE-15.615]DO1#4=#2*SQRT[#1*#1-#3*#3]/#1G01X[2*#4]Z[#3-15.615]#3=#3-0.5END1G01Z-40N20X34G70P10Q20F30M30O9878M03S800T0101G00X82Z5G73U16W0R16G73P10Q20U0.5W0.1F80N10G00X20.3G01Z-8#1=20#2=10#3=14WHILE[#3GE-14]DO1#4=#2*SQRT[#1*#1-#3*#3]/#1G01X[2*[17.15-#4]]Z[#3-14-8]#3=#3-0.5END1G01Z-90N20X82G70P10Q20F30M30

1 / 31
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功