上海市锦天城律师事务所关于宁波双林汽车部件股份有限公司首次公

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

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

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

资源描述

§2.4数控系统指令代码—6二.宏编程及其技术应用椭圆§2.4数控系统指令代码—6椭圆方程§2.4数控系统指令代码—6椭圆拟合算法§2.4数控系统指令代码—6用户宏程序§2.4数控系统指令代码—61.宏编程概念宏程序:含有变量的程序。宏程序的最大特点:以FANUC0i数控系统为例介绍宏指令编程§2.4数控系统指令代码—6宏程序调用示例§2.4数控系统指令代码—61.宏编程概念宏程序类型:A、B。B类程序符号直观好记FANUC0系列只有A,需用H指令§2.4数控系统指令代码—6使用方法与子程序类似,区别是在宏程序主体中,除了使用通常的CNC指令外,还可以使用变量的CNC指令,进行变量运算,宏指令可以给变量设定实际值。2.用户宏程序A§2.4数控系统指令代码—6变量1)变量的概念:变量用#和后面的数字表示,其格式为:#i(i=1,2,3…)2)变量的引用:变量可以代替宏程序中地址后面的数值。例:F#103,G00Z#100,G#130,§2.4数控系统指令代码—63)变量共四种:空变量、局部变量、公共变量和系统变量空变量:#0没有值能赋给该变量;局部变量:#1~#33,只能用于宏程序中存储数据,断电时初始化为空。公共变量(#100~#149断电时初始化为空;(#500~#531断电不丢失)§2.4数控系统指令代码—6系统变量:①刀具偏移(#1~#99、#2000~#2200)②接口输入信号(#1000~#1015、#1032)③接口输出信号(#1100~#1115、#1132、#1133)④计时信息(#3011、#3012)⑤需要零件计数和加工零件计数信息(#3901、#3902)⑥模态信息(#4001~#4120)⑦位置信息(#5001~#5083)§2.4数控系统指令代码—64)运算指令和转移指令(G65)格式:G65HmP#iQ#jR#k;其中:m=01~99,Hm表示运算指令和转移指令的功能;#i:运算结果的变量名;#j,#k:被运算的变量名,可以定为常量;例:G65H01P#100Q0;#100=0G65H02P#100Q#101R#102;#100=#101+#102G65H84P2000Q#100R#101;#100#101时,转移到N2000程序段§2.4数控系统指令代码—6G代码H代码功能定义G65H01定义,置换#i=#j″H02加法#i=#j+#k″H03减法#i=#j-#k″H04乘法#i=#j×#k″H05除法#i=#j÷#k″H22绝对值″H31正弦#i=#j·SIN(#k)″H32余弦#i=#j·COS(#k)″H84条件转移4IF#j<#k,GOTOn#i=#j§2.4数控系统指令代码—6例:在以圆心为(X0,Y0),半径为r的圆周上,始角为α加工n个等分孔。X0、Y0:螺栓孔圆周基准点的坐标值使用变量:#500,#501:基准点的坐标(X0,Y0)#502:半径(r)#503:始角(α)#504:孔的个数(n)#100:表示加工第i个孔的计数(i)#101:计数的总值=n(ie)#102:第i个孔的角度(θ1)#103,#104:第i个孔的坐标值(Xi,Yi)基准点X0,Y0rαXY第3孔第2孔第1孔第n孔§2.4数控系统指令代码—6•调出用户宏程序主体的程序O0010(主程序);•N010G65H01P#500Q10000;X=100mm•G65H01P#501Q-200000;Y=-200mm•G65H01P#502Q100000;r=100mm•G65H01P#503Q20000;α=20°•G65H01P#504Q12;n=12•N020G92X0Y0Z0;设定坐标系•N025M98P9010;调出用户宏程序•G00X0Y0;回原点•N030M02;程序结束§2.4数控系统指令代码—6基准点X0,Y0rαXY第3孔第2孔第1孔§2.4数控系统指令代码—6用户宏程序主体如下(子程序):O9010;N100G65H01P#100Q0;i=0G65H01P#101Q#504;ie=nN200G65H04P#102Q#100R360000;G65H05P#102Q#102R#504;G65H02P#102Q#503R#102;G65H32P#103Q#502R#102;G65H02P#103Q#500R#103;G65H31P#104Q#502R#102;G65H02P#104Q#501R#104;G90G00X#103Y#104;第i孔定位nii360X=X+rCOS(θi)Y=Y+rSIN(θi)§2.4数控系统指令代码—6N250…;孔加工代码(或G90G99G81X#103Y#104ZRF;)G65H01P#100Q#100R1;i=i+1G65H84P200Q#100R#101;i<ie时,转移到N200程序段N300M99;用户宏程序主体结束§2.4数控系统指令代码—6第一节变量及其运算一、宏变量在宏程序中使用的变量称为宏变量。宏变量值可在程序中修改或利用MDI面板操作进行修改。3.用户宏程序B§2.4数控系统指令代码—6二、宏变量的表示及引用(1)变量的表示•变量符号#+变量号#0~#49如:#1=#2+100;G01X#1F300;•表达式(必须封闭在括号中)如:#[#1+#2-12]3.用户宏程序B§2.4数控系统指令代码—6(2)变量的引用§2.4数控系统指令代码—6§2.4数控系统指令代码—6(3)变量的赋值直接赋值#1=10;#112=#6*cos[#100];格式:变量=常数或表达式§2.4数控系统指令代码—6直接赋值的规律:§2.4数控系统指令代码—6宏程序中自变量赋值§2.4数控系统指令代码—6变量赋值方法1§2.4数控系统指令代码—6§2.4数控系统指令代码—6变量赋值方法2§2.4数控系统指令代码—6§2.4数控系统指令代码—6§2.4数控系统指令代码—6§2.4数控系统指令代码—6§2.4数控系统指令代码—6宏程序的调用§2.4数控系统指令代码—6§2.4数控系统指令代码—6调用示例§2.4数控系统指令代码—6G65调用指令说明§2.4数控系统指令代码—6三、宏变量的类型•空变量#0•局部变量#1~#33•公共变量#100~#199#500~#999•系统变量#1000~3.用户宏程序B§2.4数控系统指令代码—6§2.4数控系统指令代码—6四、宏变量运算1、算术运算:主要是指加、减、乘、除、乘方、函数等§2.4数控系统指令代码—6§2.4数控系统指令代码—62、数学和逻辑运算:通常是指两个数值的比较或者关系。常用的运算有:EQ(等于)NE(不等于)GT(大于)GE(大于且等于)LT(小于)LE(小于且等于)AND(与)OR(或)NOT(非)§2.4数控系统指令代码—6函数格式赋值Definition#i=#j求和Sum求差difference乘积Product求商Quotient#i=#j+#k#i=#j-#k#i=#j*#k#i=#j/#k§2.4数控系统指令代码—6函数格式正弦sine余弦cosine正切tangent反正切arctangent#i=SIN[#j]#i=COS[#j]#i=TAN[#j]#i=ATAN[#J]/[#k]平方根Squareroot绝对值Absolutevalue四舍五入Roundingoff#i=SQRT[#j]#i=ABS[#J]#I=ROUND[#J]或OR异或XOR与AND#I=#JOR#K#I=#JXOR#K#I=#J§2.4数控系统指令代码—6在程序中可用GOTO语句和IF语句改变控制执行顺序。分支和循环操作共有三种类型:GOTO语句——无条件分支(转移)IF语句——条件分支;if…,then…WHILE语句——循环;while…五、分支和循环§2.4数控系统指令代码—61、无条件分支GOTO语句控制转移(分支)到顺序号n所在位置。顺序号可用表达式指定。格式:GOTOn;n—(转移到的程序段)顺序号例:GOTO1;GOTO#10;§2.4数控系统指令代码—6在IF后指定一条件,当条件满足时,转移到顺序号为n的程序段,不满足则执行下一程序段。格式:IF[表达式]GOTOn;...Nn…;条件表达式由两变量或一变量一常数中间夹比较运算符组成,条件表达式必需包含在一对方括号内。条件表达式可直接用变量代替。2、条件分支IF语句§2.4数控系统指令代码—6§2.4数控系统指令代码—6例程求1~10的和。O9500;#1=0;和#2=1;加数N1IF[#2GT10]GOTO2;相加条件#1=#1+#2;相加#2=#2+1;下一加数GOTO1返回1N2M30;结束§2.4数控系统指令代码—63、循环WHILE语句在WHILE后指定一条件表达式,当条件满足时,执行DO到END之间的程序,(然后返回到WHILE重新判断条件,)不满足则执行END后的下一程序段。格式:WHILE[条件表达式]DOm;(m=1,2,3)...ENDm;§2.4数控系统指令代码—6§2.4数控系统指令代码—6•五种情况说明:§2.4数控系统指令代码—6§2.4数控系统指令代码—6宏程序的数学基础§2.4数控系统指令代码—6常见曲线的标准方程§2.4数控系统指令代码—6例1:T02内圆车刀§2.4数控系统指令代码—6例2:加工一椭圆:椭圆长轴为100,短轴为50O100-XXY-Y50§2.4数控系统指令代码—6加工路线为O→X→Y→-X→-Y→X→O假如现在要加工内形,它的刀具轨迹如下图。§2.4数控系统指令代码—6O0001;N10G92X0Y0Z0S1200M03;确定坐标系;N20G01G41X50;图1中OX距离;N30#1=0;将角度设为自变量,赋初值为0;N40X[50*COS[#1]]Y[25*SIN[#1]]F200;XY轴联动的步距;N50#1=#1+1;自变量每次自加1;N60IF[#1LT360]GOTO40;如果变量自加后不足360度,则转到第40段执行,否则执行下一段;(40前不用加行号N)N70G00G40X0;撤消刀补,回到起点N80M30;程序结束§2.4数控系统指令代码—6说明:若要提高椭圆的加工精度,可将自变量的角度(步距)改小(如0.1°),修改程序很简单。若要将此椭圆轮廓加工多次,只需多加两循环语句。对于可以用标准的参数方程表示的曲线,如正圆、抛物线、渐开线、摆线等,宏编程技术可以方便的编制其加工程序。§2.4数控系统指令代码—6例3:在圆周上钻、镗均匀分布的孔如下图所示,在半径为R的圆周上均匀分布n个孔。§2.4数控系统指令代码—61、数学建模n个孔均匀分布,则第i个孔与编程坐标系X轴夹角为αi=360/n×(i-1)(1≤i≤n)第i个孔的孔中心在编程坐标系中X、Y值分别如下:xi=Rcosαiyi=Rsinαi§2.4数控系统指令代码—62、变量设置变量名称变量意义#1孔所在圆周半径R#2均匀分布孔总个数n#3第i个孔#4第i个孔的孔中心与编程坐标X轴夹角i#10第i个孔的孔中心X坐标值ix#11第i个孔的孔中心Y坐标值iy#6孔深度#7R平面高度§2.4数控系统指令代码—6G90G98G81X[#10]Y[#11]Z[#6]R[#7]F500#3=#3+1END1G80取消固定循环G91G28Z0退刀M05M303、宏程序#1=50#2=6孔个数;#3=1#5=3.14159/180#6=-20#7=5While#3LE#2DO1#4=360/#2*[#3-1]*#5#10=#1*COS(#4)#11=#1*SIN(#4)§2.4数控系统指令代码—6例4椭圆长轴100mm,短轴48mm,毛坯55×90mm。§2.4数控系统指令代码—6•加工工艺过程车端面粗、精车φ30、φ36和倒角调头车端面粗、精车椭圆面§2.4数控系统指令代码—6左端参考程序G00X58Z2;倒角;§2.4数控系统指令代码—6左端参考程序G00X

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

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

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

×
保存成功