欢迎来到人人文库网! | 帮助中心 人人文库renrendoc.com美如初恋!
人人文库网
首页 人人文库网 > 资源分类 > DOC文档下载

参数化的程序.doc

  • 资源大小:36.50KB        全文页数:5页
  • 资源格式: DOC        下载权限:游客/注册会员/VIP会员    下载费用:10
游客快捷下载 游客一键下载
会员登录下载
下载资源需要10

邮箱/手机号:
您支付成功后,系统会自动为您创建此邮箱/手机号的账号,密码跟您输入的邮箱/手机号一致,以方便您下次登录下载和查看订单。注:支付完成后需要自己下载文件,并不会自动发送文件哦!

支付方式: 微信支付    支付宝   
验证码:   换一换

友情提示
2、本站资源不支持迅雷下载,请使用浏览器直接下载(不支持QQ浏览器)
3、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

参数化的程序.doc

看见最近有朋友对于参数化的程序很感兴趣,其实,老实说,SIEMENS的参数化编制程序是件很愉快的事情。就此,写篇帖子,简单讲一下参数程序的编制问题,希望对感兴趣的有所帮助。由于我对SIEMENS840D比较熟悉,所以以下说讲的一切都是在SIEMNES840D系统上测试过的,是经过实践检验的编制,可靠性应该是很好的。先让我来给大家介绍一下参数化的几种形式1)用DEF命令,在MPF或者SPF程序中制定变量,以达到调用的目的;2)通过SIEMENS自带的1000个R参数进行参数的编制;3)直接调用SIEMENS系统变量,进行参数化程序编制。大概也就这几种常见的形式了。我一个个给初学者进行讲解1)用DEF命令,在MPF或者SPF程序中制定变量,以达到调用的目的。这是一种很灵活的参数化编制形式。请看一下例子==========MPFDEFINEZ_MAXASG0G90G40G17SUPAZ850D0SPOS0DEFREALDIAMAX50,DIAMIN458,CAO_KUAN5EXTERNXICAO_1REAL,REAL,REALP_UIFR1CTRANSX,,Y,,Z,,B,;G54B;P_UIFR2CTRANSX,,Y,,Z,,B,;G55B;P_UIFR3CTRANSX,,Y,,Z,,B,;G56BN320CS_TOOL,,1;XICAOBCS_TP,,1G56G90G17G40MIRRORX0R90853R91WIDTH1103R92313XICAO_1(DIAMAX,DIAMIN,CAO_KUAN);也可以写成XICAO_1R902353XICAO_1MIRRORZ_MAXSPF_N_XICAO_1_SPF;PATH/_N_SPF_DIRPROCXICAO_1REALDIAMAX,REALDIAMIN,REALCAO_KUANSAVE;R90ISXCOORDINATE;R91ISYCOORDINATE;R92ISZCOORDINATE;R93ISSVALUE;R94ISOUTSIDEFVALUE;R95ISINSIDEFVALUE;DEFREALDIAMAX,DIAMIN,CAO_KUAN;MUSTSETD1,D2,D3SR93M03G01XR90YR91FR94M08R40DIAMAXR41DIAMINR602R611R00R1R92R3R92CAO_KUANR520R65R7250FR95L8000M05M09STOPREM17============以上是一个我编制的挖槽程序截取。在MPF中,在程序最开头进行了三个参数点定制DIAMAX50,DIAMIN458,CAO_KUAN5并用EXTERN命令进行SPF程序XICAO_1的声明,一般情况如果词程序位于SIEMNES的标准循环文件夹里面,或者是MPF相同的目录下是没有必要进行EXTERN的,这是一种习惯,我习惯把SPF文件放在SUBPROGRAM文件夹里面,便于管理,所以每次在调用XICAO_1这个程序的时候必须进行程序的声明,这很重要,否则,如果你不能调用SPF文件就不要怪我了,当然,也有其他方式进行参数传递的SPF调用的,比如PCALL等等命令,这里我就不多说了。DEF命令是定义你需要的参数,REAL是说明参数点类型是实数型的,如果是整数型的,就是INT,这个和VB语言很相似,如果有VB程序语言基础的朋友应该很容易理解,只不过VB里面是用DIM进行变量的定义的罢了。你也可以定义STRING50这种字串型,还有布尔型的,我就不多说。在MPF程序的后面将会引用这三个参数,并将这三个参数传递到SPF中去。请大家注意SPF的编制格式,是PROCXICAO_1REALDIAMAX,REALDIAMIN,REALCAO_KUANSAVE括号里面的参数顺序直接控制了你传递参数时填写的数字传递顺序。比如XICAO_1(50,485,5)就是按照PROC后面的那个括号里面的顺序进行传递的。这也就是SIEMENS的CYCLE标准循环里面的格式一样的,如果你使用过SIEMENS的CYCLE循环,那么在定义参数的时候,你的定义顺序必须按照说明书上的顺序来,否则,参数将会传递错误的信息,后果自负SAVE可以要,也可以不要,没有关系的。SAVE的作用是在执行完SPF以后,回到MPF时,将保留原MPF中的制定格式,怎么理解呢简单的距离就是当你的SPF中时G91编程的,而MPF中是G90编程的,那么加上SVAE以后,在M17执行完后,回到MPF以后,保留G90的形式进行下面的工作,否则就是按照SPF中的G91进行执行,也许就会出错。用个在SIEMENS的CYCLE里面在SAVE后面添加了一个DISPLOF参数的,用这个参数可以“拟制”SPF中的每一段程序的显示,当然也可以用SBLOF来单块拟制。不过,通常没有必要拟制程序的显示,因为不便于程序的检查,什么叫拟制呢简单的说就是在运行SPF时,加上DISPLOF后,以下的程序段,一直到M17结束,在AUTO界面教你嘎时,你无法看见这些程序段的执行过程。编制格式为PROCXICAO_1REALDIAMAX,REALDIAMIN,REALCAO_KUANSAVEDISPLOF大概这种形式的参数化程序就是这样子的了。当然,这方面还有其他的一些编制参数,不过一般的朋友没有必要要,我讲的应该可以满足一般的要求了。值得一提的是MACROS的编制。格式为DEFINEAS在我的前面程序例子前面已经提到了,就是DEFINEZ_MAXASG0G90G40G17SUPAZ850D0SPOS0在MPF以前定义这个以后,在整个MPF中的任何位置都可以调用这个“宏”,DEFINEZ_MAXASG0G90G40G17SUPAZ850D0SPOS0的作用就是用G0,取消所有坐标(采用机床原点坐标),取笑刀具几何补偿,C轴转到O以后,回到Z=850的位置。这个很简单,你也可以进行“全局MARCO”的编制,有点象VB程序语言中的“定义全局变量”的功效,往UMAC文件中添加就行了。不熟悉的朋友就不用管这个了。2)通过SIEMENS自带的1000个R参数进行参数的编制;请参考前面的程序例子,值得提示的是,请确定是否你的设备供应商已经占用了一些R参数,如果有设备制造商占用了一些R参数,最好不要使用这些R参数,选取其他R参数就可以了。其实,R参数的用法和用DEF定义的变量用法是一样的,重要的区别是R参数不用定义,可以直接在程序中任何位置进行调用就可以了。而且不受SPF,MPF的控制,任何程序都可以直接调用。不过,最好在使用R参数的时候,进行一些约定俗成,以便以后不会因为人员的变动造成参数含义的错乱,那时候就非常麻烦了其他关于R参数的就没有讲的。3)直接调用SIEMENS系统变量,进行参数化程序编制。最简单的引用就是前面治理中的P_UIFR1CTRANSX,,Y,,Z,,B,,;G54B其中P_UIFR1就是系统的变量中的“框架数据”,这和在“参数”里面的“坐标设置”是一样的功效,只是“坐标设置”中不能设定B罢了这种格式也是可以直接进行坐标的变换的,比如P_UIFR1CTRANSX,,Y,,Z,,B,,CROTZ,180具体情况就不多说了接下来说说系统变量中常见的一些变量。P_TXXX,这个变量的作用是激活主轴上的刀具数据;P_TOOL,是激活刀边补偿,D1,D2,D3,D4;P_TOOLL1,激活整个刀具的几何补偿,通常是指的刀具的悬长,G17Z,G18Y,G19X;P_TOOLL2,激活整个刀具的几何补偿,通常是指的刀具的悬长,G17Y,G18X,G19Z;P_TOOLL3,激活整个刀具的几何补偿,通常是指的刀具的悬长,G17X,G18Z,G19Y;P_TOOLNO,激活SIEMENS内部的刀号,T1,T2,T3,T32000;_P_TOOLR,激活刀具半径补偿;P_SEARCH,搜索变量,值为TRUE=1或者0;以上参数仅做参考,也许会因为设备制造商的不同有所小区别。以上这些参数都是可以在程序编制中直接编制的。大概参数化编程就讲完,还有很多东西没有来得及讲,希望感兴趣一起研究之==========至于还有朋友提高的IFELSEENDIF的条件语句结构,这好像不是属于参数化编程的一部分吧。严格上来讲应该属于“柔性编程”的一部分更贴近些。写个程序,给感兴趣的朋友,一个简单程序。你可以直接做成MPF,进行调用,看看结果就晓得是怎么回事情了。条件某工厂是中午1200下班,晚上1830下班。程序功能,在MDA中运行,显示时间,提示操作者是否到了下班时间。=====_N_SHOWTIME_MDF;PATH/_N_MPF_DIRDEFINTSHI,FENSHIA_HOURFENA_MINUTEIFSHI11ANDFEN50MSGTIMEIS2000A_YEARA_MONTHA_DAY,A_HOURA_MINUTEA_SECOND,GOODNOONLETUSHAVEARESTM0M2ELSEIFSHI18ANDFEN20MSGTIMEIS2000A_YEARA_MONTHA_DAY,A_HOURA_MINUTEA_SECOND,GOODEVENINGLETUSGOHOMEM0M2ELSEMSGTIMEIS2000A_YEARA_MONTHA_DAY,A_HOURA_MINUTEA_SECOND,LETUSGOONM0M2ENDIFENDIF=====这就是简单的条件语句的程序,拷贝一下,去试试会出现什么情况呢呵呵当然SIEMENS840D里面不仅仅是这么一点点,还有LOOP、WHILE,REPEAT,GOTOF,GOTOB这种条件语句,时间关系,不写下去了,感兴趣的朋友,我们可以继续讨论。

注意事项

本文(参数化的程序.doc)为本站会员(仙人指路)主动上传,人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知人人文库网(发送邮件至[email protected]或直接QQ联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。

关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

网站客服QQ:2846424093    人人文库上传用户QQ群:460291265   

[email protected] 2016-2018  renrendoc.com 网站版权所有   南天在线技术支持

经营许可证编号:苏ICP备12009002号-5