求助STEP7模拟量处理、PID控制的程序

各位高人,大家好!
 我初学PLC,安装的是STEP7 V5.2,也看了网上找到的一些西门子资料,可对模拟量如何处理,如何实现PID控制仍然一头雾水。希望那位高人能提供帮助,给一个含有模拟量处理、PID控制的程序例子(最好有中文注解),在此谢谢!邮箱xingwanglu@163.com

最佳答案

如何在STEP 7中进行模拟量的线性化和还原?
 说明: 

 一个模拟量输入提供了一个数字值来表示标准化的模拟量信号(电流,电压,电阻或温度),该数字值应该能够表示出所测量的参数(例如:容器中的液位)。这个过程被称为模拟量的标准化或线性化。 

 相反的,当用户程序计算出一个过程值,并转化为数字量,用于模拟量输出模板输出一个模拟量信号驱动模拟量执行机构,这个过程称为还原。模拟量线性化/还原功能的库文件可以下载并使用。图01是一个线性化的例子。 

  ( 2 KB ) 
 图. 01 

 图02是一个还原的例子。 

  ( 2 KB ) 
 图. 02 

 这里 y 值是转化后的结果,而 x 值是已知参数。 

 以下四个功能是可装载的库文件,根据 y 或 x 侧的数据类型不同有所区别。 

 在FC164中 ,x 值为整数类型 , y 值为整数类型 .
     2.   在FC165中 ,x 值为整数类型 , y 值为实数类型 . 

     3.   在FC166中 ,x 值为实数类型 , y 值为整数类型 . 

     4.   在FC167中 ,x 值为实数类型 , y 值为实数类型 . 

 注意: 

 这些功能并不改变地址寄存器 AR1/AR2 ,使用 FBD 和 LAD 时,提供ENO 功能用于将RLO=0 或 1 保存到BR位中。 

 以FC165为例介绍程序的处理(整数类型到实数类型的线性化) 

 FC165的参数:
   声明
  名称
  类型
  内容
  
 in
  X
  INT
  范围 {-32768,..,0,..,+32767}
  
 in
  yMIN
  REAL
   y 的最小值
 {-3.402823e+38,..,
 0.0,..,+3.402823e+38}
  
 in
  yMAX
  REAL
   y 的最大值
 {-3.402823e+38,..,
 0.0,..,+3.402823e+38}
  
 in
  x0
  INT
  范围 {-32768,..,0,..,+32767}
  
 in
  y0
  REAL
  范围 {-3.402823e+38,..,
 0.0,..,+3.402823e+38}
  
 in
  x1
  INT
  范围 {-32768,..,0,..,+32767}
  
 in
  y1
  REAL
  范围 {-3.402823e+38,..,
 0.0,..,+3.402823e+38}
  
 out
  y
  REAL
  范围 {-3.402823e+38,..,
 0.0,..,+3.402823e+38}
  

 

 
 通过设定 yMIN 和 yMAX ,可以设定计算 y 值的范围,这实际上也限定了模拟量模板的上限和下限。 

 Y 可以根据线性方程y = a x + b 来计算。 

 因而这里使用的公式为:y = (y1-y0) / (x1-x0) * (x-x0) + y0 

 使用FC165(整型 > 实型) 进行线性化的例子: 

  ( 3 KB ) 
 图. 03 

 一个通过模拟量输入模块得到的4mA 到 20mA 信号,在CPU内部被转化成0 到 27648 。待测值为液位,已知模拟量与液位的对应关系为4mA表示0.0m , 20mA表示1.7m 。 

 这里的参数为:
 P0(x0=0; y0=0.0)
 P1(x1=+27648; y1=+1.7) 

 调用FC165如下:
 CALL FC165
 x:=PEW20
 yMIN:=0,0
 yMAX:=1.7
 x0:=0
 y0:=0.0
 x1:=27648
 y1:=1.7
 y:=MD22 

 注意:
 参考手册 "S7-300 Automation System Module data"  (Entry ID 8859629), 第5 章 "Representation of the analog values of analog modules" 来查找CPU检测的电压、电流、电阻以及温度范围。对于S7-400系统,相关信息可以在手册"Automation System S7-400 Module Specifications" (Entry ID 1117740),  5.3章节 "Analog Value Representation"查询。 

 复制 "scale.zip" 并双击打开。通过SIMATIC Manager 将项目进行解压即可使用。该项目包含FC164, FC165, FC166 以及FC167 的功能。 

  Scale.zip ( 27 KB )   

 重要提示
 示例程序是免费的,用户可以复制、转发。程序的作者及所有者对于软件的功能和兼容性不负有责任,使用者需要自己承担风险。由于软件是免费的,不担保错误的更正和热线支持。 

 STEP 7库中也包含了IEC标准块FC105 "SCALE" 。关于该块的说明请参考Step7的在线帮助。 

 关键字:
 测量范围,测量值修改 

  
  
  条目号:24624928     日期:2007-02-28 
  
  
 

提问者对于答案的评价:
谢谢

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc352131.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午1:03
下一篇 2021年7月5日 上午1:03

相关推荐

发表回复

登录后才能评论