QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
11天前
查看: 3794|回复: 25
收起左侧

[讨论结束] 请教一个较难的PLC编程问题

 关闭 [复制链接]
发表于 2008-10-30 20:43:56 | 显示全部楼层 |阅读模式 来自: 中国浙江宁波

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
如何在西门子PLC中实现如下功能:/ _* J9 ^- |9 u+ ?: x* C* Q
; [, c+ ~0 r! V4 ~. Y7 O1 L
    在整个运行中,若20秒钟内如出现5次某一触点信号输入,实现一个输出。运行时持续检测上述工况是否出现。/ }# Q) m9 R8 C/ K; n$ K
   (这里定时器好像不好用,我要的是计时器,且可能要用到先进先出的队列)
  \. _; l' t; t* Y- p2 U; e6 f5 H3 ]) y, B  L4 @. l
如何编程实现,望指教。
发表于 2008-10-31 12:12:37 | 显示全部楼层 来自: LAN
我不知道哦,帮你顶顶
发表于 2008-10-31 15:48:16 | 显示全部楼层 来自: 中国湖北襄阳
可以用中断嘛,若20秒钟内如出现5次某一触点信号输入则产生一次中断,在中断程序里面设置输出,就OK了
 楼主| 发表于 2008-10-31 21:16:35 | 显示全部楼层 来自: 中国浙江宁波
我要问的问题就是:( a  E  X3 d% Y* Z9 C6 I
) o) N5 A  W7 Q$ f
    如何实现20秒钟内出现5次某一触点信号输入即产生一个输出。- G' `, M. [$ e* m
   (关键在20秒 时间 内5次信号的识别)!!!: o) F4 X" K& J' S3 Q$ g8 f7 I
   如果用定时器的话,只能把时间切分为一个个20秒,但如果出现在第一个20秒没有达到5次输入,但在第一个和第二个之间有5次输入,就检查不出来。
5 u0 }8 q' i  B/ i% f( P
5 i. G# u& B2 I9 [4 q% q( e   望指教!
发表于 2008-11-1 10:04:04 | 显示全部楼层 来自: 中国广东广州
可能要做5个定时器了。4 F3 G0 ?- N  y1 e5 i% D
RUN后的第一次信号输入,开始T0计时,20秒内看有没有5次(T0用于第一次、第六次、第11次。。。。下面的一次类推,20秒到了后就复位重新开始计数了)5 G, v! u$ I# {; n  K4 T+ X
       第二次信号输入,开始T1计时. }# S/ \+ `8 B* n8 i. h
     第三次信号输入,开始T2计时( R. {/ W2 n/ p; U/ H
    第四次信号输入,开始T3计时
- l5 W& D: R2 `/ r   第五次信号输入,开始T4计时
2 Z  r2 G- b0 v% g比如第一次与第五次之间是21秒,但是第二次与第六次之间为19秒,这样就可以通过T1来识别了。不会漏掉
, ]) r9 ?9 U" F( f, h- `( K" b注意定时复位定时器就可以了。
发表于 2008-11-1 17:51:21 | 显示全部楼层 来自: 中国陕西汉中
用计数器C1计数来处理5次输入,用定时器T1来控制20s延时,如果C1=5 and T1=1,z则输出一个结果,然后用定时器T2来控制输出结果时间,同时T1,C1复位重复工作即可.
发表于 2008-11-1 18:38:50 | 显示全部楼层 来自: 中国四川成都
同意楼上的说法   就是两个条件同时满足  ( Q8 ~" T" I- G6 M& ?: M. Q

9 h( A/ d: w3 K# |* {6 U: u. G4 q" i  若T1小于20秒  M0接通    计数器到5     C0接通
6 v" |- x( y, m" u* N$ D+ w4 g. h. \" u      $ o4 ^& o  Z  I6 G6 [: Y  Y
  ------11----------11-------------Y0! i1 r7 y$ t5 N  P: _( D
            M0             C0
发表于 2008-11-1 19:09:39 | 显示全部楼层 来自: 中国浙江温州
是有点 难度哦 titter
 楼主| 发表于 2008-11-1 20:51:30 | 显示全部楼层 来自: 中国浙江宁波
二楼的方法好像可以。但不太现实。为什么呢。. W# m) R. a: i% W$ G! W) z
如果我要实现1分钟20次,那我不就要做20个定时器了吗?!!!( c$ }4 Y  ~+ P& v7 a
6 W& L: z3 ^2 M
三楼和四楼的方法,恕我愚钝,还不太能理解。感觉太简单,实现不了。呵。 望深解之。
发表于 2008-11-2 18:22:44 | 显示全部楼层 来自: 中国天津
用上升沿计数  闭合一次记一次数 设定五次输出
发表于 2008-11-2 21:04:18 | 显示全部楼层 来自: 中国江苏常州
还没学,帮你顶下
发表于 2008-11-3 09:59:23 | 显示全部楼层 来自: 中国山东青岛
好像有个指令 是三菱 的pls 也就是 10楼说的 上升沿触发命令
 楼主| 发表于 2008-11-3 20:17:43 | 显示全部楼层 来自: 中国浙江宁波
我要的是20秒5次, 不是单单的5次计数,!
发表于 2008-11-3 20:57:41 | 显示全部楼层 来自: 中国广东韶关

我知道怎样做

能否给点积分
发表于 2008-11-3 21:05:03 | 显示全部楼层 来自: 中国广东韶关
你可以用系统时间,设置5个变量,s1、s2、s3、s4、s5每个脉冲来时记忆当时系统时间,以s5-s1<=20,输出,然后s1=s2,s2=s3,s3=s4,s4=s5,s5等于第六个脉冲,不停循环。
发表于 2008-11-4 00:38:16 | 显示全部楼层 来自: 中国上海

回复 1# 超海天一色 的帖子

不太懂,仅供参考!
. z" N! f9 f" Q2 k20秒内,I0.0 五次输入,Q1.0一次输出,不知道对不对。
* w% T3 R& y* ~0 a& a4 F" c1 K. i) K& k7 E; L0 \# b: j
[ 本帖最后由 evtepe 于 2008-11-4 00:42 编辑 ]
20秒钟内如出现5次某一触点信号输入,实现一个输出.jpg
screenshot.jpg
发表于 2008-11-4 20:16:01 | 显示全部楼层 来自: 中国广东韶关
原帖由 zhg309 于 2008-11-3 21:05 发表 http://www.3dportal.cn/discuz/images/common/back.gif
9 q& s3 t- j8 J+ J: H你可以用系统时间,设置5个变量,s1、s2、s3、s4、s5每个脉冲来时记忆当时系统时间,以s5-s1

/ }4 V# H1 p+ T  Z  c/ M/ |0 x+ V4 y6 Z6 C! Z, p

3 X$ J# y5 W% L& y: R5 w+ x$ ~3 d2 |' y! g- A
这个主意好,我本来还只想到用一个定时器计时,用四个地址记录间隔时间,如果他们的时间和小于20S就输出,用堆栈最好(就是要把最早的时间替换为最近的时间),不过不知道PLC中有吗; K5 q) N3 H5 M
3 u" q& k9 p0 {( Y' L( X- R. F
[ 本帖最后由 wjx6205 于 2008-11-4 21:43 编辑 ]
发表于 2008-11-5 17:28:22 | 显示全部楼层 来自: 中国山东淄博

回复 6# ahxinny 的帖子

正确的很!!!!
发表于 2008-11-15 22:02:49 | 显示全部楼层 来自: 中国上海
想问一下兄弟解决了吗?想问问如何解决的?
发表于 2008-12-3 17:38:06 | 显示全部楼层 来自: LAN
同意采用记录时间时隔的方法是目前我可以想到的最好的方法。
& M) k) j9 \$ V不过我认为楼主如能深入分析一下具体工况,或许不用引出这么复杂的问题。
发表于 2008-12-4 15:39:08 | 显示全部楼层 来自: 中国浙江绍兴
有难度,好好考虑以下
发表于 2008-12-12 11:00:12 | 显示全部楼层 来自: 中国江苏盐城
楼主解决了的话,希望分享下,小弟也想学习下!!!
发表于 2008-12-18 20:04:19 | 显示全部楼层 来自: 中国河南南阳
非要用西门子的吗,用三菱的PLC行吗
发表于 2008-12-22 10:27:10 | 显示全部楼层 来自: 中国北京
长了见识,不错不错!
发表于 2008-12-22 17:12:35 | 显示全部楼层 来自: 中国河北唐山
利用20S计时器的上升沿给计数器清零,然后开始计数,在计时器下降沿是判断计数器是否大于5即可。
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

快速回复 返回顶部 返回列表