宏程序编程实例与技巧方法PPT学习课件_第1页
宏程序编程实例与技巧方法PPT学习课件_第2页
宏程序编程实例与技巧方法PPT学习课件_第3页
宏程序编程实例与技巧方法PPT学习课件_第4页
宏程序编程实例与技巧方法PPT学习课件_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

下,1,用户宏程序编程,在数控编程中,宏程序编程灵活、高效、快捷,是加工编程的重要补充。宏程序不仅可以实现象子程序那样,例如,型腔加工宏程序、固定加工循环宏程序、球面加工宏程序、锥面加工宏程序等。,华中数控宏程序FANUC数控宏程序SIEMENS数控参数编程,下,2,华中数控用户宏程序,HNC-21/22T、HNC-21M为用户配备了强有力的类似于高级语言的宏程序功能,用户可以使用变量进行算术运算、逻辑运算和函数的混合运算,此外宏程序还提供了循环语句、分支语句和子程序调用语句,利于编制各种复杂的零件加工程序,减少乃至免除手工编程时进行繁琐的数值计算,以及精简程序量。,一、基础知识,1.宏变量及常量,(1)宏变量HNC-21/22T华中世纪星数控系统变量表示形式为#后跟14位数字,变量种类有三种:局部变量:#0#49是在宏程序中局部使用的变量,用于存放宏程序中的数据,断电时丢失为空。,下,3,一、基础知识,全局变量:用户可以自由使用#50#199,它对于由主程序调用的各子程序及各宏程序来说是可以公用的,可以人工赋值。HNC-21/22T子程序嵌套调用的深度最多可以有8层,每一层子程序都有自己独立的局部变量(变量个数为50)。系统变量:系统变量为#1000#1199,它能获取包含在机床处理器或NC内存中的只读或读/写信息,包括与机床处理器有关的交换参数、机床状态获取参数、加工参数等系统信息。(2)常量PI:圆周率;TRUE:条件成立(真);FALSE:条件不成立(假),1、宏变量及常量,下,4,2、运算符与表达式,(1)算术运算符:+,-,*,/(2)条件运算符:EQ(=),NE(),GT(),GE(),LT(),LE()(3)逻辑运算符:AND,OR,NOT(4)函数:SIN,COS,TAN,ATAN,ATAN2,ABS,INT,SIGN,SQRT,EXP(5)表达式:用运算符连接起来的常数,宏变量构成表达式。例如:175/SQRT2*COS55*PI/180;#3*6GT14,下,5,3、赋值语句,格式:宏变量=常数或表达式把常数或表达式的值送给一个宏变量称为赋值。例如:#2=175/SQRT2*COS55*PI/180;#3=124.0,下,6,4、条件判别语句IF,ELSE,ENDIF,格式(i):格式(ii):IF条件表达式IF条件表达式ELSEENDIFENDIF,下,7,5、循环语句WHILE,ENDW,格式:WHILE条件表达式ENDW,下,8,6、宏程序/子程序调用的参数传递规则,G代码在调用宏(子程序或固定循环,下同)时,系统会将当前程序段各字段(AZ共26个字段,如果没有定义则为零)的内容拷贝到宏执行时的局部变量#0#25,同时拷贝调用宏时当前通道九个轴(轴0轴8)的绝对位置(机床绝对坐标)到宏执行时的局部变量#30#38。宏程序的调用格式为:M98P(宏程序名)或G65P(宏程序名)。,#25Z,下,9,%1000;长半轴、短半轴分别为40、30的椭圆G54G90G00Z30M03S800G00X45Y-15;快速定位至下刀点Z3G01Z-5F100#0=0;给角度赋0初值WHILE#0LE360;当角度360度时,执行循环体内容#1=40*COS#0*PI/180;用椭圆的标准参数方程求动点M的X坐标值#2=30*SIN#0*PI/180;用椭圆的标准参数方程求动点M的Y坐标值G01X#1Y#2;用直线插补指令加工至M点,即用直线段逼近椭圆#0=#0+1;角度的递增步长取1度ENDWX45Y15;切出椭圆G00Z30M05X0Y0M30,7、用户宏程序编程思路,下,10,%1000;长半轴、短半轴分别为40、30的椭圆G92X0Y0Z30M03S800G00X45Y-15M08;快速定位至A点Z3G01Z-5F100#2=0;给角度赋0初值WHILE#2LE360;当角度360度时,执行循环体内容#11=40*COS#2*PI/180;用椭圆的标准参数方程求动点M的X坐标值#12=30*SIN#2*PI/180;用椭圆的标准参数方程求动点M的Y坐标值G42G64G01X#11Y#12D01;用直线插补指令加工至M点,即用直线段逼近椭圆#2=#2+1;角度的递增步长取1度ENDWG40G01X45Y15;切出椭圆至C点Z3M09G00Z30X0Y0M05M30,二、数控铣床用户宏程序编程,下,11,下,12,下,13,宏程序编程实例,ZH7640立式加工中心由北京第三机床厂产生,采用华中铣床、加工中心数控系统。加工范围600mm400mm500mm。刀库可容纳20把刀。可用于镗、铣、钻、铰、攻丝等各种加工。实例为在预先处理好的100mm100mm80mm合金铝锭毛坯上加工如图所示的零件,其中正五边形外接圆直径为80mm。,下,14,O5000;FANUCG54G90G00Z40X70Y20M08M03S600G43Z3H01G01Z-5F100#0=18N10#1=80*COS#0#2=80*SIN#0G41X#1Y#2D01#0=#0+72IF#0LT360GOTO10G40X70Y70Z40M05M30,O5000;HNC-21M%1000G54G90G00Z40X70Y20M08M03S600G43Z3H01G01Z-5F100#0=18IF#0LT360#1=80*COS#0#2=80*SIN#0G41X#1Y#2D01#0=#0+72ENDIFG40X70Y70Z40M05M30,宏程序编程实例,下,15,三、数控车床用户宏程序编程,%3015#10=0;X坐标(直径值)#11=0;Z坐标T0101M03S600G00X0Z34WHILE#10LE32G90G64G01X#10Z#11F100#10=#10+0.32#9=#10/2;求出X坐标的半径值,便于求解#11#11=32-#9*#9/8ENDWG00X80Z100M05M30,用宏程序编制如图所示抛物线的精加工程序。,下,16,用宏指令编制椭圆部分的精加工程序。,%3016;精加工椭圆程序T0101M03S800G00X39Z22#1=60;A点的角度#2=0;X坐标#3=0;Z坐标WHILE#1LE120;120是通过计算得来的B点角度#2=2*23*SIN#1*PI/180;直径编程#3=40*COS#1*PI/180G64G01X#2Z#3F100#1=#1+1;步长取1度ENDWG00X100Z100M05M30,下,17,用户宏程序训练,下,18,下,19,下,20,一、构成1.包含变量2.包含算术或逻辑运算(=)的程序段3.包含控制语句(例如:GOTO,DO,END)的程序段4.包含宏程序调用指令(G65,G66,G67或其他G代码,M代码调用宏程序)的程序段,FANUC数控系统用户宏程序,下,21,二、FANUC宏程序的变量,FANUC数控系统变量表示形式为#后跟14位数字,变量种类有四种:,下,22,下,23,三、刀具补偿存储器C用G10指令进行设定,P:刀具补偿号R:绝对值指令(G90)方式时的刀具补偿值。增量值指令(G91)方式时的刀具补偿值为该值与指定的刀具补偿号的值相加。,下,24,四、算术和逻辑运算,下列的运算可以在变量中执行。运算符右边的表达式可包含常量和或由函数或运算符组成的变量。表达式中的变量#j和#k可以用常数赋值。左边的变量也可以用表达式赋值。1、(定义)赋值:#i=#j;2、加法:#i=#j+#k3、减法:#i=#j-#k4、乘法:#i=#j*#k5、除法:#i=#j/#k,下,25,6、正弦:#i=SIN#j;7、反正弦:#i=ASIN#j;8、余弦:#i=COS#j;角度以度指定9、反余弦:#i=ACOS#j;9030表示为10、正切:#i=TAN#j;90.5度11、反正切:#i=ATAN#j/#K;12、平方根:#i=SQRT#j;13、绝对值:#i=ABS#j;14、舍入:#i=ROUND#j;15、上取整:#i=FUP#j;16、下取整:#i=FIX#j;17、自然对数:#i=LN#j;y=lnx18、指数函数:#i=EXP#j;y=ex,下,26,19、或:#i=#jOR#k;20、异或:#i=#jXOR#k;按位执行21、与:#i=#jAND#k;22、从BCD转为BIN#i=BIN#j;23、从BIN转为BCD#i=BCD#j;注:ARCSIN#i=ASIN#j取值范围当No.6004.0=0时:27090No.6004.0=1时:-9090ARCCOS#I=ACOS#j取值范围1800,下,27,下,28,ARCTAN#i=ATAN#j/#K;取值范围当No.6004.0=0时:0360No.6004.0=1时:-180180,3/2,/2,2,0,/2,-/2,-,0,第一象限,第二象限,第四象限,第一象限,第二象限,第三象限,第三象限,第四象限,下,29,ROUND函数在逻辑运算指令IF、WHILE中,ROUND函数在第一个小数位四舍五入。例如#2=1.2345;#1=ROUND#2;变量1的值是1.0在NC语句地址中,ROUND函数根据地值得最小设定单位指定四舍五入。例如#1=1.2345;#2=2.3456;G00G91X-#1;G01X-#2F300;G00X#1+#2;1.2345+2.3456=3.5801=3.580不返回到初始位置或G00X-ROUND#1+ROUND#21.235+2.346=3.581刀具返回到初始位置,下,30,上取整和下取整CNC处理数值运算时,若操作后产生的整数绝对值大于原数的绝对值时为上取整,小于原数的绝对值时为下取整。设:#1=1.2,#2=-1.2#3=FUP#1;则2.0赋给#3#3=FIX#1;则1.0赋给#3#3=FUP#2;则-2.0赋给#3#3=FIX#2;则-1.0赋给#3,下,31,运算次序函数乘、除(*、/、AND)加、减(+、-、OR、XOR)括号嵌套(方括号,圆括号用于说明)括号用于改变运算次序,可以使用5级。,下,32,五、转移和循环,使用GOTO语句和IF语句可以改变控制的流向。有三中转移和循环可供使用。GOTO无条件转移IF条件转移WHILE当型循环1、无条件转移GOTOn;n为顺序例如:GOTO1;GOTO#10;,下,33,2、条件转移IFGOTOn例如:IF#1GT10GOTO2程序N2G00G91X10.0IFTHEN例如:IF#1EQ#2THEN#3=0运算符:EQ等于(=)NE不等于()GT大于()GE大于等于()LT小于()LE小于等于(),条件不满足,条件满足,下,34,例:求110的总和。O9000;#1=0;#2=1;N1IF#2GT10GOTO2;#1=#1+#2;#2=#2+1;GOTO1;N2M30;,下,35,3、循环WHILEDOm;程序;ENDm;程序;说明:m=1,2,3,可以多次使用。最多嵌套三层。省略WHILE,则产生从DO到END的无限循环。WHILE比GOTO处理快。,条件满足,条件不满足,下,36,标号可以多次使用:WHILEDO1;程序;END1;WHILEDO1;程序;END1;,可以嵌套3层:WHILEDO1;WHILEDO2;WHILEDO3;程序;END3;END2;END1;,可以跳到循环外边:WHILEDO1;IFGOTOn;END1;N1,下,37,DO的范围不能交叉:WHILEDO1;程序;WHILEDO2;END1;程序;END2;,转移不能进入循环区:IFGOTOn;WHILEDO1;N1;END1;,下,38,六、FANUC宏程序的调用,1.非模态调用G65:格式:G65PpLl其中p:要调用的程序号L:调用次数(默认为1)自变量:数据传递到宏程序,例:G65P8000L2A10.B2.;调用2次程序号8000,经自变量A传递到宏程序#1=10;自变量B传递到宏程序#2=2。,下,39,自变量指定,根据使用的字母,CNC系统自动地决定自变量指定的类型。地址不需要按字母顺序指定。但应符合字地址的格式。但是,I,J和K需要按字母顺序指定。,下,40,自变量指定,根据使用的字母,系统自动决定自变量指定的类型。自变量指定用于传递诸如三维坐标值的变量。I,J,K的下标用于确定自变量指定的顺序,在实际编程中不写。,下,41,如果自变量指定和自变量指定混合指定的话,后指定的自变量类型有效。,下,42,六、FANUC宏程序的调用,2.模态调用(G66):G66PpLl;程序点G67;(取消模态),例:G66P8000L2A10.B2.;G00G90Z-10.;X-5.;G67;一旦发出G66则指定模态调用,即指定沿移动轴移动的程序段后调用宏程序。移动到Z-10,调用2次程序号8000,移动到X-5,再调用2次程序号8000。,下,43,%1000;长半轴40、短半轴30的椭圆G54G90G00Z30M03S800G00X45Y-15;Z3G01Z-5F100#0=0;给角度赋0初值WHILE#0LE360;#1=40*COS#0*PI/180;#2=30*SIN#0*PI/180;G01X#1Y#2;#0=#0+1;ENDWX45Y15;G00Z30X0Y0M05M30,七、FANUC与华中系统用户宏程序编程对照,G54G90G00Z30M03S800G00X45Y-15;Z3G01Z-5F100#10=0;给角度赋0初值WHILE#10LE360DO1;#11=40*COS#10;#12=30*SIN#10;G01X#11Y#12;#10=#10+1;END1X45Y15;G00Z30X0Y0M05M30,下,44,SI

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论