你现在位置:首页>技术论文>经验技巧>台达PLC>正文
台达PLC有关子程序调用
日期:2007-1-17 17:58:23 来源:本站整理  
点击: 作者:未知
点击【】放大字体.
最近小弟调试程序,遇到了一个问题,还请指教
W1WW_P4LCJS_COM-PLC-技.术_网

程序抽出来如下:
WWW_PL※CJS_COM-PLC-技.术_网

   ld m2
WWW.PLCJS.COM——可编程控制器技术门户

   call p1
WWW_PLCJS@_COM%-PLC-技.术_网

   fend
WWW_PL※CJS_COM-PLC-技.术_网

p1
WWW.PLCJS.COM——可编程控制器技术门户

   ld m000
WWcW_PLCJS_COM-PLC-技.术_网

   ddrvi k90000 d3000 y0 y1
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

   sret
WWW_PLC※JS_COM-PmLC-技.术_网

   end
WWW_PLC※JS_COM-PmLC-技.术_网

程序一旦开始执行,我取消调用条件m2,伺服电机也不停止。
plcjs.技.术_网

当我不使用子程序时,取消调用条件m2,伺服电机停止。
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

请高手指点一下,因为根据具体情况,我必须使用子程,特急,非常感谢!!
WWW_PLC※JS_COM-PmLC-技.术_网

WWW_P※LCJS_CO※M-PLC-技-.术_网

匿名回复:
P.L.C.技.术.网——可编程控制器技术门户

    应该不会停,不该写Y0,Y1的输出频率,它不就一直输出了吗?
WW.W_PLC※JS_C,OM-PL,C-技.术_网

匿名回复:
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

    不是阿,估计是我的调用方法不对。
WW.W_PLC※JS_C,OM-PL,C-技.术_网

当不使用子程序时   
P.L.C.技.术.网——可编程控制器技术门户

   ld m2
plcjs.技.术_网

   ddrvi k90000 d3000 y0 y1
WWW_P※LCJS_COM-PLC-)技.术_网

取消调用条件m2,伺服电机停止
WWW_PLC※JS_COM-PmLC-技.术_网

WW.W_PLC※JS_C,OM-PL,C-技.术_网

匿名回复:
WWW.PLCJS.COM——可编程控制器技术门户

    不调用,就不会执行,PLC就不会去判断运行条件了。
WWW_PLCJS@_COM%-PLC-技.术_网

匿名回复:
W1WW_P4LCJS_COM-PLC-技.术_网

    不调用,就不会执行.
WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)

但是,一旦调用,取消条件也不停止了,直到走完给定脉冲数。
WWW_PLC※JS_COM-PmLC-技.术_网

当不使用子程序时 ,取消调用条件m2,伺服电机停止。
WWW_P※LCJS_CO※M-PLC-技-.术_网

WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)

匿名回复:
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

    当你使用CALL后,在取消CALL导通的条件,P1的程序段处于保持状态
plcjs.技.术_网

就这么简单...
——可——编——程——控-制-器-技——术——门——户

匿名回复:
WWW_PL※CJS_COM-PLC-技.术_网

    当使用CALL子程序调用指令时,一旦调用子程序之后,即使CALL指令的条件接点为OFF,子程序的程序会停止执行,并保持原来的状态。但是DDRVI指令比较特殊,即使子程序停止调用了,DDRVI指令仍然会执行,直到将脉冲发送完毕为止。
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

匿名回复:
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)

    
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户

  你如果将DDRVI指令放在子程序中,那么就没有办法中断DDRVI指令发送脉冲。因为DDRVI指令停止脉冲输出的唯一条件是:M2由ON到OFF的时候。而当你将M0由ON到OFF时,子程序P1已经停止调用,此时即使你再将M2由ON到OFF,DDRVI指令也不会停止发送脉冲,而是执行完相对定位指令才结束。因为此时子程序P1已经停止执行,所以PLC就不会知道M2由ON到OFF了.唯一的办法是将DDRVI指令放在主程序中,你如果想通过一个条件去控制PLC停止脉冲输出,那么你可以去控制标志位M1334、M1335(DVP-EH晶体管 机种)
WW.W_PLCJS_COM-PLC-技.术_网

  
——可——编——程——控-制-器-技——术——门——户

匿名回复:
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)

    
P.L.C.技.术.网——可编程控制器技术门户

  不好意思,刚才贴图时,忘记P1指针了!只好重复一遍!
WWW_PLC※JS_COM-PmLC-技.术_网

  你如果将DDRVI指令放在子程序中,那么就没有办法中断DDRVI指令发送脉冲。因为DDRVI指令停止脉冲输出的唯一条件是:M2由ON到OFF的时候。而当你将M0由ON到OFF时,子程序P1已经停止调用,此时即使你再将M2由ON到OFF,DDRVI指令也不会停止发送脉冲,而是执行完相对定位指令才结束。因为此时子程序P1已经停止执行,所以PLC就不会知道M2由ON到OFF了.唯一的办法是将DDRVI指令放在主程序中,你如果想通过一个条件去控制PLC停止脉冲输出,那么你可以去控制标志位M1334、M1335(DVP-EH晶体管 机种)
WWW_PLCJS_COM-PLC-技.术_网

  
plcjs.技.术_网

匿名回复:
P.L.C.技.术.网——可编程控制器技术门户

    谢谢,明白这个了。
WWW_P※LCJS_CO※M-PLC-技-.术_网

还有一个问题:把ddrvi指令放在子程中,执行完毕后取消调用条件,当执行条件再次成立时,ddrvi不执行了,为什么呢?是标志位的问题么?
WWW_PL※CJS_COM-PLC-技.术_网

匿名回复:
WWW_P※LCJS_COM-PLC-)技.术_网

    你说的当执行条件再次成立是指的图中的M0由OFF变为ON吧?
WWW_P※LCJS_COM-PLC-)技.术_网

DDRVI指令是相对定位指令,当DDRVI指令的条件接点M2由OFF变为ON时,DDRVI指令才会执行。而当你的M2一直为ON状态时,即使M0由OFF变为ON,只不过是重新调用了一次子程序,而DDRVI的条件接点并没有由OFF变为ON,所以DDRVI指令在M0由OFF变为ON时不会继续执行第二遍。
WWW_PLCJS@_COM%-PLC-技.术_网

匿名回复:
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)

    台达的脉冲输出指令DRVI、DRVA、PLSY等如果放在子程序中,当主程序调用子程序后,即使CALL指令的条件接点(比如上图中的M0)突然由ON变为OFF,DRVI、DRVA、PLSY指令仍然继续执行,直达脉冲输出完毕为止

本新闻共2页,当前在第11 2  
WWW_PLC※JS_COM-PmLC-技.术_网

评论内容
载入中...
载入中...
P
L
C



|










|


P
L
C









·最新招聘信息
·最新求职信息
·推荐产品
·推荐厂商
·栏目热门排行
·站内热门排行