关于840D系统中使用带参数的子程序的问题

已锁定

toni

  • 帖子

    147
  • 精华

    3
  • 被关注

    0

论坛等级:游侠

注册时间:2009-10-14

普通 普通 如何晋级?

关于840D系统中使用带参数的子程序的问题

1310

2

2010-07-15 19:49:24

我的程序是这样的:
PROC DEG_JS (Real zjb_i, Real zjb_j, Real jd_b, Real Zero_Numb) SBLOF DISPLOF
;***** DATE: ********
Def Real Pos_x, Pos_y,Pos_z
Def Real PosX_Rot=0 ; X Axis is Rot
Def Real PosZ_Rot=0 ; Z Axis is Rot
Def Real zjb_a, zjb_b, xb_c, _Deg, NeW_PosX, New_PosZ
Stopre
;*********************
Pos_x =$P_UIFR[1,X,TR]+$P_UIFR[1,X,FI]
Pos_y =$P_UIFR[1,Y,TR]+$P_UIFR[1,Y,FI]
Pos_z =$P_UIFR[1,Z,TR]+$P_UIFR[1,Z,FI]+$P_UIFR[1,W,TR]+$P_UIFR[1,W,FI]
zjb_a=Pos_x-PosX_Rot+zjb_i ;(a)
zjb_b=PosZ_Rot-Pos_z+zjb_j ;(b)
xb_c=SQRT(POT(zjb_a)+POT(zjb_b)) ;(c)
_Deg= ATAN2(zjb_b,zjb_a) ;(&)
NeW_PosX =(PosX_Rot)+(xb_c)*COS((_Deg)-(jd_b))
NeW_PosZ =(PosZ_Rot)-(xb_c)*SIN((_Deg)-(jd_b))
Stopre
;*******************
$P_UIFR[Zero_Numb,X,TR] = NeW_PosX
$P_UIFR[Zero_Numb,X,FI] =0
$P_UIFR[Zero_Numb,Y,TR] =Pos_y
$P_UIFR[Zero_Numb,Y,FI] =0
$P_UIFR[Zero_Numb,Z,TR] = NeW_PosZ
$P_UIFR[Zero_Numb,Z,FI] =0
$P_UIFR[Zero_Numb,W,TR] =0
$P_UIFR[Zero_Numb,W,FI] =0
$P_UIFR[Zero_Numb,B,TR] =$P_UIFR[1,B,TR]+$P_UIFR[1,B,FI]+(jd_b)
$P_UIFR[Zero_Numb,B,FI] =0
$P_UIFR[Zero_Numb,V,TR] =0
$P_UIFR[Zero_Numb,V,FI] =0
SBLON
RET
M17
该程序放在用户循环之下。
使用MDA方式执行的时候(带参数),DEG_JS (10,20,30,40)出现12550报警。
不带参数程序可以运行。
已检查,是否load和文件使能,并且参数11120已经设置成1.
请问大大该如何解决。是我程序的问题吗?谢谢各位。

关于840D系统中使用带参数的子程序的问题 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SINUMERIK

共有25497条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。