您现在所在的是:

PLC论坛

回帖:6个,阅读:2881 [上一页] [1] [下一页]
17192
yuanyuesheng
文章数:3365
年度积分:715
历史总积分:17192
注册时间:2005/4/12
发站内信
发表于:2014/3/29 12:26:08
#0楼
如,VD100当前值为0.6,然后在运行过程中需要将VD100改变为0.5.问题是,如何保存原来的值0.6?
在程序里写了一个命令,在VD100的值改变命令之前,先将VD100赋给临时变量VD110,然后再改变VD100,但实际效果是,当VD100发生变化后,VD110也立即随之发生了变化,原值没有被保存在VD110中!
原问题见:
http://bbs.gkong.com/archive.aspx?id=382413
19046
qjj740210
文章数:4846
年度积分:400
历史总积分:19046
注册时间:2005/9/24
发站内信
2018春节活动(二)
2017国庆活动(二)
2017春节活动(二)
2016国庆活动(二)
西门子触摸屏(一)
三菱电机活动(二)
西门子logo体验(三)
西门子PLC体验(二)
2013辞旧迎新
发表于:2014/3/29 13:39:18
#1楼
关键是如何判断VD100的值什么时候有变化?PLC扫描是有周期时间的,所以就牵扯到判断频率的问题,即多长时间比较一下VD100的前后2值是否相等。比较时如果不想等,就将前值DMOV到VD110即可。
苦逼的奋斗者
5536
qinhya
文章数:2022
年度积分:50
历史总积分:5536
注册时间:2012/4/7
发站内信
发表于:2014/3/29 13:56:51
#2楼
楼上说的对,可以在每个扫描周期中记下当前数据,下个周期开始后,在读取当前数据,并将数据与上次保存的进行对比!
天道酬勤!
17192
yuanyuesheng
文章数:3365
年度积分:715
历史总积分:17192
注册时间:2005/4/12
发站内信
发表于:2014/3/29 15:46:53
#3楼
没有理解。。。
17192
yuanyuesheng
文章数:3365
年度积分:715
历史总积分:17192
注册时间:2005/4/12
发站内信
发表于:2014/3/29 16:28:21
#4楼
理解啦!在将原值VD100用MOV_R指令存放到临时变量VD110时,其使能端加一个对VD100和VD110的判断,只有当VD100和VD110相等时,意味着VD100没有发生变化,才可以将VD100送给VD110;否则,当VD100和VD110不等时,意味着VD100有了变化,就不能将变化过的VD100的值再给VD110了!这样就保存了VD100每个变化周期前的数值!
马上试,结果稍后汇报。
17192
yuanyuesheng
文章数:3365
年度积分:715
历史总积分:17192
注册时间:2005/4/12
发站内信
发表于:2014/3/29 16:52:34
#5楼
按住葫芦起来瓢,问题此起彼伏,相互牵扯。
453
米尔bestMpNl
文章数:1
年度积分:50
历史总积分:453
注册时间:2016/7/12
发站内信
发表于:2016/7/12 22:50:55
#6楼
ppp

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2025 Gkong.com, All Rights Reserved

62.4004