求教S7-200中EM235控制温控阀的室外温度补偿怎么个算法 点击:1241 | 回复:8



hen1036

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 12回
  • 年度积分:0
  • 历史总积分:401
  • 注册:2011年1月10日
发表于:2011-07-14 09:51:35
楼主
在用EM235的模拟输出控制温控阀时,要求根据二次出水温度和室外温度控制温控阀开度大小,室外温度主要是补偿,不明白怎么个补偿发,编程的时候怎么做。我会用PID指令向导生成模拟输出控制,但加室外温度补偿的不会。求教了



miy_gongkong

  • 精华:0帖
  • 求助:2帖
  • 帖子:23帖 | 3065回
  • 年度积分:0
  • 历史总积分:12421
  • 注册:2008年9月18日
发表于:2011-07-14 22:40:21
1楼
补偿一般指的是 负反馈补偿,  也就是说 你把补偿 加到负反馈上就可以了;  难点是补偿的单位大小 不好确定!

不确定的蓝

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 12回
  • 年度积分:0
  • 历史总积分:401
  • 注册:2011年1月10日
发表于:2011-07-15 14:46:51
2楼

回复内容:
对:miy_gongkong 关于补偿一般指的是 负反馈补偿,  也就是说 你把补偿 加到负反馈上就可以了;  难点是补偿的单位大小 不好确定! 内容的回复:


就是不明白这个算法,室外温度从多少开始取,与开度的比例是怎样的

miy_gongkong

  • 精华:0帖
  • 求助:2帖
  • 帖子:23帖 | 3065回
  • 年度积分:0
  • 历史总积分:12421
  • 注册:2008年9月18日
发表于:2011-07-15 22:10:40
3楼

这个 你可以仔细分析一下 ,    你是为了实现二次出水温度恒定是吧! 

 假设, 你的设定温度是 60度,     当前二次温度反馈是 56度,   调节阀 开度是 40%,  在外部温度变化很小的情况下, 经过若干个PID 周期运算, 温度会 越来越接近 60度 , 也就是说 偏差 越小,无限接近与0 (收敛),  这是PID 调节的理想情况,

 但是, 可能就是因为 外部环境温度的变化 , 使得 PID 调节变得 趋于发散 ,所以这时候就要适当的 对外部温度的影响做补偿;

例如 :  温度在常温20 度时,  PID 调节温度误差在 正负0.5度(假设是正常),  当环境温度围绕着 20度(这时相当于一个基准点) 变化时, 10 ~ 45 变化,  相对于基准点温度  是 -10~ 15 度变化, 变化区间是35度, 把这个线性变化 按一定比例系数(这个系数可根据具体要求调整)  叠加在负反馈信号上 ,  在假设 t0 此刻检测到的 温度值是 52度(△8度), 当前调节阀开度是 48%(可调节范围20%~60%),外部温度是12度,这时把外部温度因素考虑进去. 12度相对于 20度基准点 是偏离了 -8度,  假设取一个系数 0.04, -8*0.04==   -0.32; 这个值就是温度补偿,       △8度- (-0.32) == 8.32 , 这个值就是补偿后的 负反馈,  原来是输出48%, 这时可能就输出 49% .  试想 此时 当外温度为 35度时 温度偏差为 35-20==15度, 15 * 0.04==0.6 ;   △8度- (+0.6) = 7.4 , 这时补偿是减小了PID 的输出,  符合基本补偿原理,(提示补偿不要搞反了);

我前面只说了比例项(打个比方) ,    具体多少很多参数有关 , 积分项+微分项+比例项, 每一项都要把补偿加进去.

不确定的蓝

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 12回
  • 年度积分:0
  • 历史总积分:401
  • 注册:2011年1月10日
发表于:2011-07-20 14:37:35
4楼
回复内容:
对:miy_gongkong 关于

这个 你可以仔细分析一下 ,    你是为了实现二次出水温度恒定是吧! 

 假设, 你的设定温度是 60度,     当前二次温度反馈是 56度,   调节阀 开度是 40%,  在外部温度变化很小的情况下, 经过若干个PID 周期运算, 温度会 越来越接近 60度 , 也就是说 偏差 越小,无限接近与0 (收敛),  这是PID 调节的理想情况,

 但是, 可能就是因为 外部环境温度的变化 , 使得 PID 调节变得 趋于发散 ,所以这时候就要适当的 对外部温度的影响做补偿;

例如 :  温度在常温20 度时,  PID 调节温度误差在 正负0.5度(假设是正常),  当环境温度围绕着 20度(这时相当于一个基准点) 变化时, 10 ~ 45 变化,  相对于基准点温度  是 -10~ 15 度变化, 变化区间是35度, 把这个线性变化 按一定比例系数(这个系数可根据具体要求调整)  叠加在负反馈信号上 ,  在假设 t0 此刻检测到的 温度值是 52度(△8度), 当前调节阀开度是 48%(可调节范围20%~60%),外部温度是12度,这时把外部温度因素考虑进去. 12度相对于 20度基准点 是偏离了 -8度,  假设取一个系数 0.04, -8*0.04==   -0.32; 这个值就是温度补偿,       △8度- (-0.32) == 8.32 , 这个值就是补偿后的 负反馈,  原来是输出48%, 这时可能就输出 49% .  试想 此时 当外温度为 35度时 温度偏差为 35-20==15度, 15 * 0.04==0.6 ;   △8度- (+0.6) = 7.4 , 这时补偿是减小了PID 的输出,  符合基本补偿原理,(提示补偿不要搞反了);

我前面只说了比例项(打个比方) ,    具体多少很多参数有关 , 积分项+微分项+比例项, 每一项都要把补偿加进去.

内容的回复:

谢谢,但这个系数取多少有定值吗。还有积分项+微分项+比例项, 每一项都要把补偿加进去吗,只把补偿加到PID运算后的结果上不行吗?如果把积分项+微分项+比例项都加上补偿,而补偿又是随室外温度变化的,那积分项+微分项+比例项岂不是定不住,那这个系统能调的出来吗。

miy_gongkong

  • 精华:0帖
  • 求助:2帖
  • 帖子:23帖 | 3065回
  • 年度积分:0
  • 历史总积分:12421
  • 注册:2008年9月18日
发表于:2011-07-20 21:29:12
5楼

那积分项+微分项+比例项岂不是定不住,那这个系统能调的出来吗。

-------------------------------------

我是说 Mn(PID输出) = Mp + Mt + Md (比例+积分+微分) 每一项值计算完了后 加补偿,

假设补偿为△C,  那么 Mn = (Mp+ △C) + (Mt + △C) + (Md+△C)

                                              =  △C * (Mp + Mt + Md ), 而且每一项 △C的系数都不同;

你嫌麻烦的话, 直接给 Mn 加 △C 补偿就可以了,  例如 , Mn = Mn + △C;  //  这也可能会"粗"一点, 相当于粗调;

 

 

miy_gongkong

  • 精华:0帖
  • 求助:2帖
  • 帖子:23帖 | 3065回
  • 年度积分:0
  • 历史总积分:12421
  • 注册:2008年9月18日
发表于:2011-07-20 21:31:33
6楼

而补偿又是随室外温度变化的, 那积分项+微分项+比例项岂不是定不住,那这个系统能调的出来吗。

-------------------------------------
PID 调节 积分项+微分项+比例 各项 本来就是 实时动态变化的啊!  难道你以前调PID 不变么?

 

不确定的蓝

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 12回
  • 年度积分:0
  • 历史总积分:401
  • 注册:2011年1月10日
发表于:2011-07-21 11:22:26
7楼

PID 调节 积分项+微分项+比例 各项 本来就是 实时动态变化的啊!  难道你以前调PID 不变么?

 

 


我是用200编程软件的“PID调节控制面板”在线测出合适的P、I值后写入PLC的,写入后P、I值就是固定的了,不应该是变化的啊,只有调节后的输出值是变化的。

内容的回复:

沧海一粟——王者之师

  • 精华:1帖
  • 求助:1帖
  • 帖子:8帖 | 1264回
  • 年度积分:99
  • 历史总积分:8209
  • 注册:2007年10月17日
发表于:2012-07-19 15:09:22
8楼
引用 不确定的蓝 的回复内容:回复内容:对:miy_gongkong 关于 这个 你可以仔细分析一下 ,    你是为了实现二次出水温度恒定是吧!   假设, 你的设定温度是 60度,     当前二次温度反馈是 56度,   调节阀 开度是 40%,  在外部温度变化很小的情况下, 经过若干个PID 周期运算, 温度会 越来越接近 60度 , 也就是说 偏差 越小,无限接近与0 (收敛),  这是PID 调节的理想情况, 但是, 可能就是因为 外部环境温度的变化 , 使得 PID 调节变得 趋于发散 ,所以这时候就要适当的 对外部温度的影响做补偿;例如 :  温度在常温20 度时,  PID 调节温度误差在 正负0.5度(假设是正常),  当环境温度围绕着 20度(这时相当于一个基准点) 变化时, 10 ~ 45 变化,  相对于基准点温度  是 -10~ 15 度变化, 变化区间是35度, 把这个线性变化 按一定比例系数(这个系数可根据具体要求调整)  叠加在负反馈信号上 ,  在假设 t0 此刻检测到的 温度值是 52度(△8度), 当前调节阀开度是 48%(可调节范围20%~60%),外部温度是12度,这时把外部温度因素考虑进去. 12度相对于 20度基准点 是偏离了 -8度,  假设取一个系数 0.04, -8*0.04==   -0.32; 这个值就是温度补偿,       △8度- (-0.32) == 8.32 , 这个值就是补偿后的 负反馈,  原来是输出48%, 这时可能就输出 49% .  试想 此时 当外温度为 35度时 温度偏差为 35-20==15度, 15 * 0.04==0.6 ;   △8度- (+0.6) = 7.4 , 这时补偿是减小了PID 的输出,  符合基本补偿原理,(提示补偿不要搞反了);我前面只说了比例项(打个比方) ,    具体多少很多参数有关 , 积分项+微分项+比例项, 每一项都要把补偿加进去. 内容的回复:谢谢,但这个系数取多少有定值吗。还有积分项+微分项+比例项, 每一项都要把补偿加进去吗,只把补偿加到PID运算后的结果上不行吗?如果把积分项+微分项+比例项都加上补偿,而补偿又是随室外温度变化的,那积分项+微分项+比例项岂不是定不住,那这个系统能调的出来吗。


我觉得这个补偿是加在设定值的补偿

热门招聘
相关主题

官方公众号

智造工程师