s7200模拟量处理如何通过局部变量来完成?

我有一个0~5V的模拟量进到EM235里,想通过在局部变量里来完成A/D转换,并且是实数.请问高手赐教!最好能发个实例看看!plkori2009@163.com谢谢!

最佳答案

使用局部变量
 您可以使用程序编辑器中的局部变量表来为子程序和中断服务程序分别指定变量,如图5--9所示。参见图5-9。局部变量可用于子程序传递参数,它增强了子程序的可移植性和再利用性。
 具体参看S7-200系统手册第五章P63
 模拟量比例换算
 因为A/D(模/数)、D/A(数/模)转换之间的对应关系,S7-200 CPU内部用数值表示外部的模拟量信号,两者之间有一定的数学关系。这个关系就是模拟量/数值量的换算关系。

 例如,使用一个0 - 20mA的模拟量信号输入,在S7-200 CPU内部,0 - 20mA对应于数值范围0 - 32000;对于4 - 20mA的信号,对应的内部数值为6400 - 32000。

 如果有两个传感器,量程都是0 - 16MPa,但是一个是0 - 20mA输出,另一个是4 - 20mA输出。它们在相同的压力下,变送的模拟量电流大小不同,在S7-200内部的数值表示也不同。显然两者之间存在比例换算关系。模拟量输出的情况也大致相同。

 上面谈到的是0 - 20mA与4 - 20mA之间换算关系,但模拟量转换的目的显然不是在S7-200 CPU中得到一个0 - 32000之类的数值;对于编程和操作人员来说,得到具体的物理量数值(如压力值、流量值),或者对应物理量占量程的百分比数值要更方便,这是换算的最终目标。

  如果使用编程软件Micro/WIN32中的PID Wizard(PID向导)生成PID功能子程序,就不必进行0 - 20mA与4 - 20mA信号之间的换算,只需进行简单的设置。 

 通用比例换算公式
 模拟量的输入/输出都可以用下列的通用换算公式换算:

 Ov = [(Osh - Osl)*(Iv - Isl)/(Ish - Isl)] + Osl

 其中:

 Ov: 换算结果 
 Iv: 换算对象 
 Osh: 换算结果的高限 
 Osl: 换算结果的低限 
 Ish: 换算对象的高限 
 Isl: 换算对象的低限 

 应用模拟量模块时,需要根据输入信号的规格设置右下角的DIP开关(Configuration开关)。DIP开关只对输入信号有效,并且对所有的输入通道都是相同的。

 EM231、EM235带模拟量输入通道的模块,还分别有电位器用于对输入信号进行校正。EM231和EM235上的Gain(增益)电位器用于调整输入信号和转换数值的放大关系;EM235上的Offset(偏置)用于对输入信号调零。如果没有精确的信号源,请不要调整。详细调整方法请参照《S7-200系统手册》。

 表2. EM235
                    单极性                  满量程输入     分辨率 
 SW1SW2SW3SW4SW5SW6
 ON  OFF  OFF  ON  OFF ON                  0 - 50 mV           12.5μV 
 OFF ON   OFF  ON  OFF ON                  0 - 100 mV         25μV 
 ON  OFF  OFF  OFF ON  ON                  0 - 500 mV         125μV 
 OFF ON   OFF  OFF ON  ON                  0 - 1 V                 250μV 
 ON  OFF  OFF  OFF OFF ON                  0 - 5 V                1.25mV 
                                                                     0 - 20 mA           5μA 
 OFF ON   OFF  OFF OFF ON                 0 - 10 V               2.5mV 
                       双极性                满量程输入      分辨率 
 SW1 SW2 SW3 SW4 SW5 SW6 
 ON    OFF  OFF  ON    OFF  OFF            ±25 mV             12.5μV 
 OFF   ON   OFF  ON    OFF  OFF            ±50 mV             25μV 
 OFF  OFF   ON   ON    OFF  OFF            ±100 mV           50μV 
 ON    OFF  OFF  OFF  ON    OFF            ±250 mV           125μV 
 OFF  ON    OFF  OFF  ON    OFF            ±500 mV           250μV 
 OFF  OFF   ON   OFF  ON    OFF            ±1 V                   500μV 
 ON    OFF  OFF  OFF  OFF   OFF           ±2.5 V                1.25mV 
 OFF  ON    OFF  OFF  OFF   OFF           ±5 V                   2.5 mV 
 OFF  OFF   ON   OFF  OFF   OFF           ±10 V                 5 mV 
 

提问者对于答案的评价:
谢谢你的指点!
 我去试试!

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

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

相关推荐

  • 请问6GK7342-5DA00-0XE0 停产替代是什么?

    哪位大神帮忙看下6GK7342-5DA00-0XE0 这个型号停产升级成什么型号了? 最佳答案 6GK7342-5DA03-0XE0 提问者对于答案的评价:

    SIMATIC S7-200 2021年7月5日
  • 关于PLC接地问题

    三个问题:1.PLC200的CPU接地和模拟量接地要连在一起吗,他们和机柜的接地连到一起吗?  (电源地说的就是CPU上的接地符号吧,模拟量模块上的不是24V电…

    SIMATIC S7-200 2017年8月24日
  • 200 程序

    现在有一段程序,我不太理解里面的LB30 LB31 LB32  他们是怎样命名? 他们里面的值会一直保存吗?他们的相关资料在哪里?…

    SIMATIC S7-200 2021年7月5日
  • AENO指令提问

    LD            SM0.0 MOVW&…

    SIMATIC S7-200 2021年7月5日
  • S7200CPU,MODBUS通讯

    有一个S7200CPU,做modbus从站,要求主站读取从站VD100、VD104、VD108….十个实数值,请问在从站“INIT”指令中,MaxIQ=?,MaxAI=?,Ma…

    SIMATIC S7-200 2017年12月9日
  • 西门子200与dcs通过DP通讯

    请问有谁知道西门子200与DCS通过DP通讯需要做哪些设置? 最佳答案 西门子200与DCS通过DP通讯需要做哪些设置?1、S7-200(需配置EM277模块)只能作为DCS的从站…

    SIMATIC S7-200 2020年10月31日
  • 西门子PLC控制太大变频器

    如何通过485线用西门子PLC控制台达变频器,程序又是什么? 最佳答案 参见:1、《在S7-200 程序中通过 USS 协议寻址多个驱动装置(MICR…

    SIMATIC S7-200 2020年10月31日
  • 关于s7-200的编程电缆

    同一台电脑,同一根编程电缆,在一个226CN上能正常通信,换到一个224Cn上却不能通信了,是不是这个224坏了或者里面设置了什么 最佳答案 首先你这个电缆肯定是没问题的。你接通C…

    SIMATIC S7-200 2021年7月5日
  • 关于断电数据保持的问题

    现西门子224CN,PLC,,对系统块中数据保持设置有MB 0 13现在程序中使用了MD0,请问MD0里的数据是不是永久保存的?不管断电多长时间都不会丢失? 最…

    SIMATIC S7-200 2020年11月1日
  • 200PLC 0-10V模块怎样使用0-20ma信号?

    我用的模块型号是6ES7 231-0HF22-0XA0,前6路是电压信号0-10V,请问怎样接受0-20ma信号? 可以在检测0-10V两个端子上连接一个500…

    SIMATIC S7-200 2017年12月8日

发表回复

登录后才能评论