S7-200模拟量比例换算
- 格式:docx
- 大小:53.88 KB
- 文档页数:2
SCALE(V1.0)库文件的使用
以下公式由计算换算值的图表中得出: Ov = (Osh - Osl) / (Ish - Isl) * (Iv - Isl) + Osl
"Scale" 库的描述: "scale.mwl" 库包括从INTEGER(整数) 到REAL (S_ITR)(实数)、从REAL(实数)to REAL (S_RTR)(实数)及从REAL(实数)到INTEGER (S_RTI)(整数)类型数据的比例换算。
3.2 模拟量输入换算为REAL数据格式的输出值(S_ITR): S_ITR 功能块可用来将模拟量输入信号转换成0.0到1.0之间的标么值( 类型REAL )。
此调用为4-20MA的偏移量,读入模拟量转换为0.0-1.0之间的量程存入到VD100
3.3 REAL格式数据比例换算(S_RTR): S_RTR 功能块可用来转换在范围内的REAL 格式的值(例如将0.0 到1.0输入值转化为百分数输出)。
本子程序调用为前面读取来的0.0-1.0量程转换为百分比0-100数值转出到DV200
3.4转换为INTEGER格式数据的模拟量输出(S_RTI): S_RTI 功能块可用来将REAL 数转换为INTEGER数据类型的模拟量输出。
本子程序调用:把模拟量量程0.0-1.0数字转换成0-20MA的信号输出
,在不同量程下,读取或输出得到不同的结果。
一次函数表达示:Y=KX+b(不过原点),Y=KX(过原点)。
一、S7-200 量程转换的基本概念
1. 工程量:指工程设计中没有量化之前的物理量,如温度、压力、流量、转速等;
2. 模拟量:指传感器输出的标准直流信号,如0--20MA、
4--20MA、0--10V、1--5V 等
3. 数字量(量化值):指与模拟量相对应的数值,如0--10V 模拟量对应0--32000 数字量;
4. 量程:工程量上限值减去工程量下限值;
5. 值域:数字量上限值减去数字量下限值;
6. 量程转换:把模拟量地址上的数字量经过PLC的数学运算指令运算后转换成工程量的方法。
二、S7-200PLC量程转换的过程
三、S7-200PLC 模拟量信号与数字量的关系
四、量程转换公式及其用法量程转换公式
五、量程转换公式的使用方法
某工程使用CPU224 扩展EM235模块测量温度,温度传感器的测量范围是-50 ℃----+120 ℃,信号输出0----10V,接在模拟量模块的输入端A 口(地址AIW0),假设AIW0=10000,此时温度是多少?根据给定条件:yH=120.0℃、yL=-50.0 ℃、xH=32000.0、xL=0.0、x=10000.0,则y=3.12℃
六、S7-200PLC 量程转换的编程方法
1. 读取模拟量地址的数据并转换为浮点数存入VD0 地址里
2. 把得到的数字量转换为工程量(量程转换),首先给各变量分配地址并安排在V 区,中间结果安排在M 区,最终结果存储在VD4 地址上,人机界面读取VD4地址得工程量数值。
X=VD0、Y=VD4
七、S7-200PLC 执行数学运算之前,必须将数据转换为同一类型的数据,然后再进行运算。
如果对数据类型不是特别熟悉将数据一律转换为浮点数再进行运算。
S7-200模拟量转换精度计算算法1. 引言S7-200系列是一种常用的工业自动化控制系统设备,常用于对模拟量信号的转换和处理。
本文档旨在介绍S7-200模拟量转换精度计算算法的原理和步骤,帮助用户更好地了解其工作原理和应用。
2. 算法原理模拟量转换精度计算算法的核心原理在于将输入信号的电压或电流值转换为相应的数字量,以便进行后续的数值处理。
其计算公式如下:模拟量数值 = (AD 数值 - AD 最小值) * 模拟量范围 / (AD 最大值 - AD 最小值)其中:- 模拟量数值:表示模拟量的数值,是转换后的结果。
- AD 数值:表示模拟输入信号的模拟到数字转换器(Analog-to-Digital Converter,ADC)的输出值。
- AD 最小值和 AD 最大值:表示 ADC 可接受的最小和最大模拟量输入值。
- 模拟量范围:表示模拟量输入信号的可测量范围。
3. 算法步骤以下是S7-200模拟量转换精度计算算法的具体步骤:1. 确定模拟量输入信号的最小和最大值,即 AD 最小值和 AD 最大值。
2. 获取 ADC 输出值,即 AD 数值。
3. 将 AD 数值代入计算公式,计算模拟量数值。
4. 根据需要进行附加的处理,比如单位转换、平滑处理等。
5. 使用模拟量数值进行后续的控制或数据分析。
4. 注意事项在使用S7-200模拟量转换精度计算算法时,需要注意以下事项:- 确保输入的 AD 数值在 AD 最小值和 AD 最大值范围内,否则可能会导致结果不准确。
- 注意模拟量范围和计算所需的单位,确保结果的正确性。
- 根据具体的应用场景,可能需要使用平滑滤波算法对模拟量数值进行平滑处理,以减小噪声的影响。
5. 总结S7-200模拟量转换精度计算算法是一种常用的工业自动化控制系统算法,用于将模拟量信号转换为数字量进行后续的处理。
本文介绍了算法的原理和步骤,并给出了注意事项,希望能够对用户在S7-200系统中使用模拟量转换精度计算算法提供帮助。
200SMART模拟量-100到100因为A/D(模/数)、D/A(数/模)转换之间的对应关系,S7-200 SMART CPU内部用数值表示外部的模拟量信号,两者之间有一定的数学关系。
这个关系就是模拟量/数值量的换算关系。
例如,使用一个0 - 20mA的模拟量信号输入,在S7-200 SMART CPU内部,0 - 20mA对应于数值范围0 - 27648;对于4 - 20mA的信号,对应的内部数值为5530 - 27648。
如果有两个传感器,量程都是0 - 16MPa,但是一个是0 - 20mA输出,另一个是4 - 20mA输出。
它们在相同的压力下,变送的模拟量电流大小不同,在S7-200 SMART内部的数值表示也不同。
显然两者之间存在比例换算关系。
模拟量输出的情况也大致相同。
上面谈到的是0 - 20mA与4 - 20mA之间换算关系,但模拟量转换的目的显然不是在S7-200 SMART CPU中得到一个0 - 27648之类的数值;对于编程和操作人员来说,得到具体的物理量数值(如压力值、流量值),或者对应物理量占量程的百分比数值要更方便,这是换算的最终目标。
通用比例换算公式模拟量的输入/输出都可以用下列的通用换算公式换算:Ov = [(Osh - Osl)*(Iv - Isl)/(Ish - Isl)] + Osl其中:Ov:换算结果Iv:换算对象Osh:换算结果的高限Osl:换算结果的低限Ish:换算对象的高限Isl:换算对象的低限它们之间的关系可以图示如下:图1. 模拟量比例换算关系量程转化指令库为便于用户使用,这里提供了量程转化库,用户可以添加到自己的Micro/WIN编程软件中应用。
模拟量比例换算指令库注意:此指令库/程序的和拥有者对于该软件的功能性和兼容性不负任何责任。
使用该软件的风险完全由用户自行承担。
由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。
如何对 S7-200 的 CPU224XP 和扩展模块 EM 231, EM 232 及 EM 235 的模拟量值进行比例换算?显示订货号说明:扩展模块 EM 231、 EM 232 和 EM 235模拟量的输入输出和 CPU224XP 一样以 word 格式的整数显示,这就需要做转换来确保正确的显示和过程中的应用 。
这些转换可通过附件中的下载功能块来完成。
下载中包括 转换功能块的 "Scale" 库 和易于理解的例程"Tip038" 。
1. 比例换算:下列图表显示输入输出值的比例换算。
这里对术语 "单极性", "双极性" 和 "20% 偏移" 有解释。
这些术语在其他 里非常重要。
如STEP 7Micro/Win - PID 向导(工具 > 指令向导 > PID 控制器)单极性比例换算只有正的或负的值范围 (图 01 显示了一个模拟量输入值 0到32000的例子)。
图 01在带有20%偏移的单极性的例子中, 最低限值是最大限值的 20% 。
(图 02 显示了一个模拟量输入值6400到 32000的例子)。
图 02双极性比例换算有正的和负的值范围 (图 03 显示了一个 模拟量输入值 -32000 到 32000的例子)。
图 03下表是对一些缩写地解释:参数描述Ov换算结果 (输出值)Iv模拟量值 (输入值)Osh换算输出值的高限 (换算输出高限)Osl换算输出值的低限 (换算输出低限)Ish换算输入值的高限 (换算输入高限)Isl换算输入值的低限 (换算输入低限)表 012. 公式以下公式由计算换算值的图表中得出:Ov = (Osh - Osl) / (Ish - Isl) * (Iv - Isl) + Osl3. 库3.1 "Scale" 库地描述"scale.mwl" 库包括从 INTEGER 到 REAL (S_ITR)、从REAL to REAL (S_RTR)及从REAL 到 INTEGER (S_RTI)类型数据的比例换算。
模拟量比例换算因为A/D(模/数)、D/A(数/模)转换之间的对应关系,S7-200 SMART CPU内部用数值表示外部的模拟量信号,两者之间有一定的数学关系。
这个关系就是模拟量/数值量的换算关系。
例如,使用一个0 - 20mA的模拟量信号输入,在S7-200 SMART CPU 内部,0 - 20mA对应于数值范围0 - 27648;对于4 - 20mA的信号,对应的内部数值为5530 - 27648。
如果有两个传感器,量程都是0 - 16MPa,但是一个是0 - 20mA输出,另一个是4 - 20mA输出。
它们在相同的压力下,变送的模拟量电流大小不同,在S7-200 SMART内部的数值表示也不同。
显然两者之间存在比例换算关系。
模拟量输出的情况也大致相同。
上面谈到的是0 - 20mA与4 - 20mA之间换算关系,但模拟量转换的目的显然不是在S7-200 SMART CPU中得到一个0 - 27648之类的数值;对于编程和操作人员来说,得到具体的物理量数值(如压力值、流量值),或者对应物理量占量程的百分比数值要更方便,这是换算的最终目标。
通用比例换算公式模拟量的输入/输出都可以用下列的通用换算公式换算:Ov = [(Osh - Osl)*(Iv - Isl)/(Ish - Isl)] + Osl其中:Ov:换算结果Iv:换算对象Osh:换算结果的高限Osl:换算结果的低限Ish:换算对象的高限Isl:换算对象的低限它们之间的关系可以图示如下:图1. 模拟量比例换算关系量程转化指令库为便于用户使用,这里提供了量程转化库,用户可以添加到自己的Micro/WIN编程软件中应用。
模拟量比例换算指令库注意:此指令库/程序的作者和拥有者对于该软件的功能性和兼容性不负任何责任。
使用该软件的风险完全由用户自行承担。
由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。
如何对S7-200 的CPU224XP 和扩展模块EM 231, EM 232 及EM 235 的模拟量值进行比例换算?扩展模块EM 231、EM 232 和EM 235模拟量的输入输出和CPU224XP 一样以word 格式的整数显示,这就需要做转换来确保正确的显示和过程中的应用。
这些转换可通过附件中的下载功能块来完成。
下载中包括转换功能块的"Scale" 库和易于理解的例程"Tip038" 。
1. 比例换算:下列图表显示输入输出值的比例换算。
这里对术语 "单极性", "双极性" 和"20% 偏移" 有解释。
这些术语在其他里非常重要。
如STEP 7 Micro/Win - PID 向导(工具> 指令向导> PID 控制器)单极性比例换算只有正的或负的值范围(图01 显示了一个模拟量输入值0到32000的例子)。
( 8 KB )图01在带有20%偏移的单极性的例子中, 最低限值是最大限值的 20% 。
(图02 显示了一个模拟量输入值6400到32000的例子)。
( 8 KB )图02双极性比例换算有正的和负的值范围 (图03 显示了一个模拟量输入值-32000 到32000的例子)。
( 9 KB )图03下表是对一些缩写地解释:参数描述Ov 换算结果 (输出值)Iv 模拟量值 (输入值)Osh 换算输出值的高限 (换算输出高限)Osl 换算输出值的低限(换算输出低限)Ish 换算输入值的高限 (换算输入高限)Isl 换算输入值的低限 (换算输入低限)表012. 公式以下公式由计算换算值的图表中得出:Ov = (Osh - Osl) / (Ish - Isl) * (Iv - Isl) + Osl3. 库3.1 "Scale" 库地描述"scale.mwl" 库包括从INTEGER 到REAL (S_ITR)、从REAL to REAL (S_RTR)及从REAL 到INTEGER (S_RTI)类型数据的比例换算。
西门子200的模拟量转换与写法模拟量值和A/D转换值的转换假设模拟量的标准电信号是A0—Am(如:4—20mA),A/D转换后数值为D0—Dm(如:6400—32000),设模拟量的标准电信号是A,A/D转换后的相应数值为D,由于是线性关系,函数关系A=f(D)可以表示为数学方程:A=(D-D0)×(Am-A0)/(Dm-D0)+A0。
根据该方程式,可以方便地根据D值计算出A值。
将该方程式逆变换,得出函数关系D=f(A)可以表示为数学方程:D=(A-A0)×(Dm-D0)/(Am-A0)+D0。
具体举一个实例,以S7-200和4—20mA为例,经A/D转换后,我们得到的数值是6400—32000,即A0=4,Am=20,D0=6400,Dm=32000,代入公式,得出:A=(D-6400)×(20-4)/(32000-6400)+4 假设该模拟量与AIW0对应,则当AIW0的值为12800时,相应的模拟电信号是6400×16/25600+4=8mA。
又如,某温度传感器,-10—60℃与4—20mA相对应,以T表示温度值,AIW0为PLC模拟量采样值,则根据上式直接代入得出: T=70×(AIW0-6400)/25600-10可以用T 直接显示温度值。
模拟量值和A/D转换值的转换理解起来比较困难,该段多读几遍,结合所举例子,就会理解。
为了让您方便地理解,我们再举一个例子:某压力变送器,当压力达到满量程5MPa时,压力变送器的输出电流是20mA,AIW0的数值是32000。
可见,每毫安对应的A/D值为32000/20,测得当压力为0.1MPa时,压力变送器的电流应为4 mA,A/D值为(32000/20)×4=6400。
由此得出,AIW0的数值转换为实际压力值(单位为KPa)的计算公式为:VW0的值=(AIW0的值-6400)(5000-100)/(32000-6400)+100(单位:KPa)编程实例:您可以组建一个小的实例系统演示模拟量编程。
因为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:换算对象O sh:换算结果的高限O sl:换算结果的低限I sh:换算对象的高限I sl:换算对象的低限它们之间的关系可以图示如下:图1. 模拟量比例换算关系实用指令库在Step7 - Micro/WIN Programming Tips(Micro/WIN编程技巧中)的Tip38就是关于如何实现上述转换的例程。
为便于使用,现已将其导出成为”自定义指令库“,可以添加到自己的Micro/WIN编程软件中应用。
如何对 S7-200 的 CPU224XP 和扩展模块 EM 231, EM 232 及 EM 235 的模拟量值进行比例换算?说明:扩展模块 EM 231、 EM 232 和 EM 235模拟量的输入输出和 CPU224XP 一样以 word 格式的整数显示,这就需要做转换来确保正确的显示和过程中的应用 。
这些转换可通过附件中的下载功能块来完成。
下载中包括 转换功能块的 "Scale" 库 和易于理解的例程"Tip038" 。
1. 比例换算:下列图表显示输入输出值的比例换算。
这里对术语 "单极性", "双极性" 和 "20% 偏移" 有解释。
这些术语在其他 里非常重要。
如STEP 7 Micro/Win - PID 向导(工具 > 指令向导 > PID 控制器)单极性比例换算只有正的或负的值范围 (图 01 显示了一个模拟量输入值 0到32000的例子)。
在带有20%偏移的单极性的例子中, 最低限值是最大限值的 20% 。
(图 02 显示了一个模拟量输入值6400到32000的例子)。
图 02双极性比例换算有正的和负的值范围 (图 03 显示了一个模拟量输入值 -32000 到 32000的例子)。
图 03下表是对一些缩写地解释:参数描述Ov 换算结果 (输出值)Iv 模拟量值 (输入值)Osh 换算输出值的高限 (换算输出高限)Osl 换算输出值的低限 (换算输出低限)Ish 换算输入值的高限 (换算输入高限)Isl 换算输入值的低限 (换算输入低限)表 012. 公式以下公式由计算换算值的图表中得出:Ov = (Osh - Osl) / (Ish - Isl) * (Iv - Isl) + Osl3. 库3.1 "Scale" 库的描述"scale.mwl" 库包括从 INTEGER 到 REAL (S_ITR)、从REAL to REAL (S_RTR)及从REAL 到 INTEGER (S_RTI)类型数据的比例换算。
浅谈S7-200PLC模拟量输入处理方法S7-200系列PLC是SIEMENS公司新推出的一种小型PLC。
它以紧凑的结构、良好的扩展性、强大的指令功能、低廉的价格,已经成为当代各种小型控制工程的理想控制器。
S7-200PLC包含了一个单独的S7-200CPU和各种可选择的扩展模块,可以十分方便地组成不同规模的控制系统。
其控制规模可以从几点到上百点。
在生产过程中,存在大量的物理量,如压力、温度、速度、旋转速度、pH值、粘度等。
为了实现自动控制,这些模拟量信号需要被PLC处理。
S7-200PLC模拟量输入扩展模块分为模拟量输入模块、模拟量输入/输出混合模块。
模拟量输入扩展模块提供了模拟量输入功能。
S7-200的模拟量输入扩展模块具有较大的适应性,可以直接与传感器相连,有很大的灵活性,并且安装方便。
1S7-200系列PLC模拟量输入模块介绍1.1主要模块的功能及特性1.1.1模拟量输入模块EM231。
EM231具有4路模拟量输入,输入信号可以是电压也可以是电流,其输入与PLC具有隔离。
输入信号的范围可以由SW1、SW2和SW3设定。
输入特性:4路模拟量输入电源电压:标准24VDC/4mA输入类型:0~10V、0~5V、±5V、±2.5V、0~20mA分辨率:12bit转换速度:250µs隔离:有1.1.2模拟量混合模块EM235。
EM235具有4路模拟量输入和1路模拟量输出。
它的输入信号可以是不同量程的电压或电流。
其电压、电流的量程是由开关SW1、SW2到SW6设定。
EM235有1路模拟量输出,其输出可以是电压也可以是电流。
1.2模块的寻址方式和模拟量值的表示方法1.2.1模拟量输入模块的寻址—模拟量输入映像区(AI区)。
模拟量输入映像区是S7-200CPU为模拟量输入端信号开辟的一个存贮区。
S7-200将测得的模拟值(如温度、压力)转换成1个字长的(16bit)的数字量,模拟量输入用区域标识符(AI)、数据长度(W)及字节的起始地址表示。
S7-200PLC模拟量比例换算因为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: 换算对象的低限它们之间的关系可以图示如下:图1. 模拟量比例换算关系实用指令库在STEP 7-Micro/WIN Programming Tips(Micro/WIN编程技巧中)的Tip38就是关于如何实现上述转换的例程。
为便于用户使用,现已将其导出成为“自定义指令库”,用户可以添加到自己的Micro/WIN编程软件中应用。
因为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: 换算对象的低限
它们之间的关系可以图示如下:
实用指令库
在STEP 7-Micro/WIN Programming Tips(Micro/WIN编程技巧中)的Tip38就是关于如何实现上述转换的例程。
为便于用户使用,现已将其导出成为“自定义指令库”,用户可以添加到自己的Micro/WIN编程软件中应用。
在这个指令库中,子程序Scale_I_to_R可用来进行模拟量输入到S7-200内部数据的转换;子程序Scale_R_I可用于内部数据到模拟量输出的转换。
将4-20mA模拟量输入转换为内部百分比值将内部百分比值转换为4-20mA模拟量输出。