技术论坛

840D系统使用主程序和子程序之间的参数传递12550报警

作者 主题
KK2
新手

经验值: 36
发帖数: 5
精华帖: 0
主题:【求助】840D系统使用主程序和子程序之间的参数传递12550报警


只看楼主 楼主 2017-08-04 18:25:28

导轨磨上想用一个嵌套子程序

主程序部分:

G90G01G54V0U0F5000

R27=R25

IF R26>0.1 GOTO CCC

IF R23>80 GOTO CCC

R28=R25-R26

IF R28<0 GOTO CCC

DDD:JIANXIEV(R21,R22,R23,R24)

G91G01U=-R26F200

R27=R27-R26

R28=R27-R26

IF R28<0 GOTO AAA

......

......


子程序名称是JIANXIEV

程序内容:

PROC JIANXIEV(REAL START_Y,REAL END_Y,REAL INCH_Y,REAL F_Y)


IF(END_Y>START_Y)AND(INCH_Y<0) GOTO END

IF(END_Y<START_Y)AND(INCH_Y>0) GOTO END

.......

.......


运行过程中产生12550报警:名称JIANXIEV未定义或选项/功能未激活

PS:12550的报警号我已经查过,但是看不懂

里面有个检查选项MD10711 $MN_NC_LANGUAGE_CONFIGURATION

我查了一下机床参数,没有这一项

请知道问题在哪里的朋友帮一下忙

谢谢


 
以下网友喜欢您的帖子:

  
重要声明:

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1413090&b_id=20

至圣

经验值: 28623
发帖数: 5906
精华帖: 61
回复:840D系统使用主程序和子程序之间的参数传递12550报警
推荐帖


只看楼主 1楼 2017-08-04 19:55:23

主程序最前面加一句

EXTERN JIANXIEV(REAL,REAL,REAL,REAL)


欢迎交流,QQ:2301013064 邮箱:feige6@139.com
以下网友喜欢您的帖子:

  
侠圣

经验值: 2428
发帖数: 490
精华帖: 0
回复:840D系统使用主程序和子程序之间的参数传递12550报警


只看楼主 2楼 2017-08-05 22:28:46

这种程序程序我编过不少,以我个人的感觉既然子程序中已经使用了字符串作为变量PROC JIANXIEV(REAL START_Y,REAL END_Y,REAL INCH_Y,REAL F_Y),

那么在

JIANXIEV(R21,R22,R23,R24)中就没必要再使用R参数,直接写入变量数值即可,比如JIANXIEV(1,2,3,4)。




技术是层纸,一捅就破
以下网友喜欢您的帖子:

  
版主

经验值: 38721
发帖数: 10357
精华帖: 72
回复:840D系统使用主程序和子程序之间的参数传递12550报警


只看楼主 3楼 2017-08-06 12:01:28

直接写入变量数值还是很方便的。


西门子的多年使用者http://yinshenren.ys168.com/、
以下网友喜欢您的帖子:

  
版主

经验值: 21705
发帖数: 8417
精华帖: 46
回复:840D系统使用主程序和子程序之间的参数传递12550报警


只看楼主 4楼 2017-08-06 20:34:33

其实R参数是为了便于修改,在R参数页面一目了然,你不能指望操作工来看懂这个程序。


不停的学习,不停的进步!
以下网友喜欢您的帖子:

  
侠圣

经验值: 2428
发帖数: 490
精华帖: 0
回复:840D系统使用主程序和子程序之间的参数传递12550报警


只看楼主 5楼 2017-08-07 23:33:50
以下是引用lranbing在2017-08-06 20:34:33的发言 >4楼

其实R参数是为了便于修改,在R参数页面一目了然,你不能指望操作工来看懂这个程序。

西门子的循环中直接输入参数的例子也不少,相对于用R参数来说更加方便,尤其是在通道间的参数传递,R参数就无法做到。说白了目的就是让操作工更加难以理解。建议楼主多看看循环编程手册,这种实例多得是。而且楼主的子程序中变量参数本身就不多,所以更加没必要。


技术是层纸,一捅就破
以下网友喜欢您的帖子:

  
游士

经验值: 230
发帖数: 27
精华帖: 0
回复:840D系统使用主程序和子程序之间的参数传递12550报警


只看楼主 6楼 2017-09-05 14:21:17
解决了吗?自带的循环就可以用R参数带变量
 
以下网友喜欢您的帖子:

  
侠士

经验值: 1784
发帖数: 76
精华帖: 0
回复:840D系统使用主程序和子程序之间的参数传递12550报警


只看楼主 7楼 2017-12-08 10:50:09

建议使用MGUD全局用户变量替换你的R参数,应该可以解决


不将就
以下网友喜欢您的帖子:

  
  • 上一页
  • 1
  • 下一页
收起
840D系统使用主程序和子程序之间的参数传递12550报警
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。