切换为不分页显示
【首页】→ 【PLC】→ 主题:咨询中断的问题
字体:    评论
咨询中断的问题
发表:hnwhlk  (2010-09-06 16:09:23)
分类:PLC  |  阅读:20334  |  评论:17  |  最新评论:2010-09-26 21:36:09 By hnwhlk
何老师及各位老师:我最近的项目要用到外部中断。可是遇到的问题如下:
    我用的PLC是10MC机型。 我的工况是:机器大约2秒转动一周,产生一个位置到达信号,接入PLC的X1点。
   因为在我的主程序中,用作其它功能例如几只机器手的动作等,其程序所占用的时间比较长,为了确保机器位置到达信号能及时准确,我用到了外部中断X1↑。
   我在I/O组态里,将该点设定上升沿中断。因为每一个中断间隔时间很长(远远大于中断服务程序所占用的时间)按理,这个中断服务程序应该在每一个X1↑到来的时候,都进入中断程序。可是,我编的这个中断程序只在系统启动后,第一个X1↑时执行一次,以后无论多少个X1↑时,中断都不响应。不知是什么原因,难道是我的MC的PLC有问题。如果您能将我在附件中的模拟程序在机器上运行一下,就很清楚了。它的接线非常简单,接上电源、并将24V一端按入S/S,另一端作为信号间断地碰一下X1.请您告诉我应该如何解决。谢谢您的帮助!祝好人永远快乐!
   因为我没有权上传文件。哪位老师肯给个邮箱,我把我编的中断练习程序发过去。再次表示由衷的感谢!

评论 | 引用

本文共14条评论
.9.  回复:咨询中断的问题
刘建阳(2010-09-08 19:20:33)  IP:125.124.103.*
中断程序只有中断事件发生了,PLC才会去执行中相应的中断子程序。
中断没有发生,PLC不会去执行。
永宏的中断子程序是必须写在副单元的。
.8.  回复:咨询中断的问题
hnwhlk(2010-09-08 7:25:05)  IP:58.253.219.*
何老师:您好!   
   您说的办法,我也试过了,我做的调试装置中X1的连接是用一个行程开关。正如前面我提到的那样,子程序中的结果完全不是中断上升沿的结果
   按照您说的:“当第一次中断发生时,子程序电路有上跳沿变化,执行 MOV \ RST 指令1次,此时电路状态1(得电);
          当第二次中断又发生时,由于第一次中断执行后的结果,子程序电路状态为1,第二次中断发生,电路状态没有发生变化”也就可以理解成子程序电路在第一次得电后就永远处于得电状态,能有办法改变子程序电路状态为1吗?当然是在程序运行的状态下改变。我在主程序中有146指令及145指令也不行。
   还想请教。中断程序一定要写在子程序里吗?
   说心里话,我早晨打开电脑看到何老师的回复心里第一想法就是尽快打开对应的网页,我是带着欣喜的期待去等着网页打开,可见我们这些PLC的中间用户是多么可怜!

.7.  回复:咨询中断的问题
刘建阳(2010-09-07 21:19:32)  IP:122.231.194.*
去好好理解plc的基本工作原理。
.6.  回复:咨询中断的问题
刘建阳(2010-09-07 21:16:17)  IP:122.231.194.*
中断子程序使用了脉冲执行型指令
当第一次中断发生时,子程序电路有上跳沿变化,执行 MOV \ RST 指令1次,此时电路状态1(得电);
当第二次中断又发生时,由于第一次中断执行后的结果,子程序电路状态为1,第二次中断发生,电路状态没有发生变化
这时候 MOV \ RST 不执行。
第3次~第N次,均不执行,因为电路状态没有0→1跳变。
若需要每次中断都执行,不要用P指令即可。
.5.  回复:咨询中断的问题
hnwhlk(2010-09-07 18:44:19)  IP:58.253.219.*
我心急如火,可楼上的朋友为什么要这样呢。我盼望能有热心的老师给我指点迷津,当看到有回复时心情非常高兴,可看到的是些无关我的问题的帖子,让我心情就像是吃了个苍蝇。
 [返回]
<< [1] [2] [3] >>

按用户名:    按标题:   按内容:       包括所有回复
【首页】→ 【PLC】→ 评论:咨询中断的问题
帖子标题:
   未登录!    

您的权限:
发表回复:×
UBB功能:×
文件上传:×
 
 
  图示说明: 24小时新发主题  最近被编辑的主题  超过24小时普通主题
页面执行时间:234.375毫秒 | 在线:31 今日:705 合计:8973133 | 清除COOKIE |