您现在所在的是:

三菱Mitsubishi

回帖:8个,阅读:5366 [上一页] [1] [下一页]
551
gangbook2000
文章数:23
年度积分:50
历史总积分:551
注册时间:2016/7/20
发站内信
发表于:2017/4/17 10:22:38
#0楼
三菱FX3U中的PID指令没有32位运算,如果我想把温度稳定在±0.5°,是没有办法吗?还请高手说说可以怎么做来实现?谢谢!
8302
fujifa
文章数:2937
年度积分:235
历史总积分:8302
注册时间:2014/2/10
发站内信
2017论坛贡献奖
2016论坛贡献奖
2015论坛贡献奖
发表于:2017/4/17 10:38:39
#1楼
以下是引用gangbook20002017/4/17 10:22:38的发言:
三菱FX3U中的PID指令没有32位运算,如果我想把温度稳定在±0.5°,是没有办法吗?还请高手说说可以怎么做来实现?谢谢!

其实日系的PID控制是百分比,0-10000,相当于0.00~100.00,所以,你需要使用线性化输入以及线性化输出,FX3U中可以使用SCL指令来线性化。

HAVE FUN!
精通富士POD,富士PLC的编程
有问题可以直接电邮:FUJIFA@yeah.net
551
gangbook2000
文章数:23
年度积分:50
历史总积分:551
注册时间:2016/7/20
发站内信
发表于:2017/4/17 10:58:13
#2楼
以下是引用fujifa2017/4/17 10:38:39的发言:
以下是引用gangbook20002017/4/17 10:22:38的发言:
三菱FX3U中的PID指令没有32位运算,如果我想把温度稳定在±0.5°,是没有办法吗?还请高手说说可以怎么做来实现?谢谢!

其实日系的PID控制是百分比,0-10000,相当于0.00~100.00,所以,你需要使用线性化输入以及线性化输出,FX3U中可以使用SCL指令来线性化。

HAVE FUN!
不是太懂,fx3u手册上看,它应该是增量式PID,我的输出应该是u(K)=u(k-1)+ △u, 那么这个△u就是0-10000?不应该吧?
551
gangbook2000
文章数:23
年度积分:50
历史总积分:551
注册时间:2016/7/20
发站内信
发表于:2017/4/17 11:06:00
#3楼
以下是引用fujifa2017/4/17 10:38:39的发言:
以下是引用gangbook20002017/4/17 10:22:38的发言:
三菱FX3U中的PID指令没有32位运算,如果我想把温度稳定在±0.5°,是没有办法吗?还请高手说说可以怎么做来实现?谢谢!

其实日系的PID控制是百分比,0-10000,相当于0.00~100.00,所以,你需要使用线性化输入以及线性化输出,FX3U中可以使用SCL指令来线性化。

HAVE FUN!

因为它的目标值寄存器和实际值寄存器都是16位的,比如我的目标值是50°,检测到的实际值是49.6°(它变成16位的话就成了50°),这样的话,PID就没有了输入误差从而不会有输出,使这个意思吗?还是我理解错了,还请指导一下,谢谢
85329
ZCMY 版主
文章数:47405
年度积分:1388
历史总积分:85329
注册时间:2004/3/16
发站内信
2018论坛贡献奖
2018春节活动(三)
2017论坛优秀版主
2017国庆活动(三)
2016论坛优秀版主
2015论坛优秀版主
2014论坛优秀版主
2014相约国庆
2013论坛优秀版主
2012论坛优秀版主
2011论坛贡献奖
2010年论坛优秀版主
发表于:2017/4/17 11:57:47
#4楼
呵呵;你以为你PLC上采集到的温度信号是小数显示的?
三菱的温度模块大多单位是0.1度,比如你读出的数据是500,就代表50.0度,所以你的根本不是问题;
551
gangbook2000
文章数:23
年度积分:50
历史总积分:551
注册时间:2016/7/20
发站内信
发表于:2017/4/17 12:28:43
#5楼
以下是引用ZCMY2017/4/17 11:57:47的发言:
呵呵;你以为你PLC上采集到的温度信号是小数显示的?
三菱的温度模块大多单位是0.1度,比如你读出的数据是500,就代表50.0度,所以你的根本不是问题;

哦,这样啊,因为我用的是4AD,数字量又经过浮点运算,得到的就是温度(比如50.1°),那么我就把它再认为的乘以10,相应的目标值也乘以10,就可以了吧?谢谢
551
gangbook2000
文章数:23
年度积分:50
历史总积分:551
注册时间:2016/7/20
发站内信
发表于:2017/4/17 12:38:40
#6楼
以下是引用ZCMY2017/4/17 11:57:47的发言:
呵呵;你以为你PLC上采集到的温度信号是小数显示的?
三菱的温度模块大多单位是0.1度,比如你读出的数据是500,就代表50.0度,所以你的根本不是问题;

剩下的问题,就是得到的输出量是1~32767吗?还是像如fujifa说的那样是百分比?比如输出MV放在d30,那么增量式的话,实际输出应该是 d0=d0+d30, 如果是百分比的话该怎么处理啊,
19263
pqsh 版主
文章数:7424
年度积分:1093
历史总积分:19263
注册时间:2006/8/22
发站内信
2018论坛解答高手
发表于:2017/4/17 17:40:25
#7楼
没有浮点,就是整数放大处理.
比如100,为了有多两位有效数,放大成10000.
如果我忘了我
请帮忙记得我
pqsh@163,326199298@v&q同号
551
gangbook2000
文章数:23
年度积分:50
历史总积分:551
注册时间:2016/7/20
发站内信
发表于:2017/4/18 7:52:02
#8楼
以下是引用pqsh2017/4/17 17:40:25的发言:
没有浮点,就是整数放大处理.
比如100,为了有多两位有效数,放大成10000.
嗯,这个也是ZCMY说了我才理解的,自己居然没想到这么处理(/ □ \)。谢谢

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

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

62.4004