您现在所在的是:

三菱Mitsubishi

回帖:16个,阅读:1287 [上一页] [1] [2] [下一页]
1628
VvORCG
文章数:101
年度积分:50
历史总积分:1628
注册时间:2019/3/2
发站内信
发表于:2020/3/9 22:25:27
#0楼
想这个问题想的睡不着。求教一下论坛的大神们。
现有数据D0和D2,要求D0的数据发生改变时D2的数据也以相同的变化幅度改变,同时D2里的数据又可以单独写入。
假设D0=1000,D2=500。变更D0=800,减少的幅度为20%,此时D2=400。D0里的数据如果增加,D2里的数据也会以相同幅度增加。
D0里面数据的改变会同时改变D2里的数据,单独改变D2的数据不会影响D0里的数据。
PLC是三菱FX3U。卡壳了,浮点运算什么的试了一晚上,没一次数据是对的。
42331
YXBK 版主
文章数:19445
年度积分:2745
历史总积分:42331
注册时间:2007/4/14
发站内信
2015论坛优秀版主
2015春节活动
2013论坛优秀版主
2012论坛优秀版主
发表于:2020/3/10 2:10:30
#1楼
这不就是乘以一个系数的事呀,1000*0.5=500,800*0.5=400,单独改变D2的数据就改变系数可以了。800*0.4=320
此帖发自手机工控论坛
大家一起学习
22928
gk_0 版主
文章数:7735
年度积分:709
历史总积分:22928
注册时间:2013/9/9
发站内信
2018论坛贡献奖
2017论坛贡献奖
2017国庆活动(二)
2016论坛贡献奖
2016国庆活动(三)
英威腾变频器(一)
S7-200 SMART(一)
寻找英威腾(三)
英威腾PLC体验(一)
2015春节活动
2013辞旧迎新
2013辞旧迎新
2013国庆活动
发表于:2020/3/10 8:10:52
#2楼
我想你的难点是需要另外一个D,来存放上一个周期D0的数据,再做比较,计算增减系数,达到对D2也同步的目的
不被人嘲笑的梦想,就不值得去追求!
1732
gushunyi
文章数:331
年度积分:45
历史总积分:1732
注册时间:2006/1/9
发站内信
发表于:2020/3/10 11:14:36
#3楼
不好弄 。。假设D0/2  实时传送给 D2     要想单独改D2   增加一个手动按钮阻断D0-/2 传送 D2      或者D0/2传送D2  不要实时的   只有D0输入有变化时第一次传送一次给D2
2440
51477工控迷
文章数:682
年度积分:66
历史总积分:2440
注册时间:2017/3/31
发站内信
发表于:2020/3/10 11:33:07
#4楼
一定要取D0来改变D2吗,,直接拿变化的那个东西做个现行比较不行吗,,就好比如  A会变化会改变D0,D0改变D2,,,那为什么不直接A变换改变D0,,A变化改变D2呢
1935
578313419
文章数:153
年度积分:50
历史总积分:1935
注册时间:2015/9/14
发站内信
发表于:2020/3/10 15:51:29
#5楼
用一个中间寄存器Dn暂存D0的值,Dn≠D0就计算然后给D2赋值,并且把变化后的值再次存入中间寄存器Dn,计算公式一楼已经给出。
至于改变D2的值得看你怎么改变了,但是只能用脉冲式的赋值方式了。
1628
VvORCG
文章数:101
年度积分:50
历史总积分:1628
注册时间:2019/3/2
发站内信
发表于:2020/3/10 18:03:15
#6楼
回复 #1楼 YXBK
系数我试了,最后得出来D2的数都是一堆乱七八糟的
1628
VvORCG
文章数:101
年度积分:50
历史总积分:1628
注册时间:2019/3/2
发站内信
发表于:2020/3/10 18:05:01
#7楼
回复 #3楼 gushunyi
想了一天这个东西了Orz
1628
VvORCG
文章数:101
年度积分:50
历史总积分:1628
注册时间:2019/3/2
发站内信
发表于:2020/3/10 18:05:45
#8楼
回复 #4楼 51477工控迷
变化的东西就是D0没有其他的数据
42331
YXBK 版主
文章数:19445
年度积分:2745
历史总积分:42331
注册时间:2007/4/14
发站内信
2015论坛优秀版主
2015春节活动
2013论坛优秀版主
2012论坛优秀版主
发表于:2020/3/10 19:05:08
#9楼
以下是引用VvORCG2020/3/10 18:03:15的发言:
系数我试了,最后得出来D2的数都是一堆乱七八糟的

是不是浮点数这块没有设置好,正常来说不可能乱七八糟的,这就是一个简单的乘法计算而已,自己都可以计算出来的,如果PLC计算的结果与你算出来的结果不符,那就应该是你的程序问题(你要注意寄存器有没有重复使用的),你可以把你的程序截图上来看看。
大家一起学习

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

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

62.4004