模拟量比例换算

合集下载

模拟量换算

模拟量换算

模拟量的输入/输出都可以用下列的通用换算公式换算:Ov = [(Osh - Osl)*(Iv - Isl)/(Ish - Isl)] + Osl其中:Ov: 换算结果Iv: 换算对象Osh: 换算结果的高限Osl: 换算结果的低限Ish: 换算对象的高限Isl: 换算对象的低限转换模拟量值到工程量值问题: 是否有功能块能转换模拟量值到工程量值?解答: 在Step7 中,standard library T1-S7 Converting Blocks FC105。

例如:转换一个模拟量PIW256到0.0~200.0工程范围Call FC105IN:=PIW256 (模拟量,范围-27648~27648)HI_LIM:=200.0 (上限)LO_LIM:=0.0 (下限)BIPOLAR:=M2.1 (极性如M2.1为1,对应的PIW256 为-27648~27648;如M2.1为0,对应的PIW256为0~27648)RET_V AT:=MW4 (错误返回值)OUT:=MD50 (工程值例子:从0到10V的值中输入到插在插槽6的模拟模块中。

目前这个值是一个整数(16位),应该规格化100到1000之间的REAL格式,并以双字MD10保存在位储存器中。

语句表的解决方案:L PIW 288 //0到10V的模拟量输入包含0到27648个整数(16位)ITD //16位整数值转换成32位整数DTR //32位整数转化成实数L 2.7648e+4 ///R //除以实数27648L 9.000e+2 //*R // 乘以实数***(1000-100)L 1.000e+2 //+R // 加上实数100(补偿值)T MD10 //把100到1000规格化成REAL格式。

200SMART模拟量-100到100

200SMART模拟量-100到100

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编程软件中应用。

模拟量比例换算指令库注意:此指令库/程序的和拥有者对于该软件的功能性和兼容性不负任何责任。

使用该软件的风险完全由用户自行承担。

由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。

模拟量计算,结合实际案例详解,原来是这么回事!

模拟量计算,结合实际案例详解,原来是这么回事!

模拟量计算,结合实际案例详解,原来是这么回事!模拟量是工业自动化使用的蛮多的一个东西,一般用在对温度、压力等数字量的检测和控制,比较高端的还会结合PID进行使用。

在学习模拟量的过程中,读取到相应的数据很简单,困扰大家学习模拟量的最大难题是对模拟量的量程范围的选择以及计算。

下面,陈老师将对模拟量的计算进行一个详细的解说,会结合相应的案例,帮助大家理解模拟量。

例1:如上图,一个温度感应模块,感应的温度时0~150°,对应的输出电压时0~10V,也就是说感应到0的温度,这个模块就输出一个0V的电压;感应到150°,就输出一个10V的电压。

中间的每一个温度也会对应一个相应的电压,这里需要去计算么,不不不,现在还不到计算的时候,我们继续往下看。

上图是我们FX系列的plc,加了2个模拟量的模块,其中FX3U-4AD就是用来接收这些电压数值的模块(也可以接收电流)。

有一点要记住,plc显示出来的是数字,而不是电压值。

而且,显示出来的数值大小也可以是不同范围,例如,可以把0-10V的电压显示为0-10000的数值,也可以显示为0-4000或者0-32000的对应数值,你选择的数值越大,检测的就越精确,看下图的3种模式,我们可以通过plc编程进行设定,选择其中一种:(由于我们的温度模块是0-10V的,我们plc的接收范围是-10V--+10V,我们把负数部分去掉,对应的数值的负数范围也可以去掉)下面我们选择0-32000的数值范围进行计算。

也就是说,读取到是数值0,就是电压为0v;读取到32000的数值,就是感应到的电压是10V。

再对应到我们温度模块的0-150°,可以发现0-10V就是一个中间量,我们不需要拿他来计算,0数值对应的温度是0°150°对应的数值是32000。

如上图,温度和读取的数值是一个线性关系,我们可以用坐标系表示,温度为X,显示的数值为Y,这时我们发现,他们之间存在一个比例关系,Y是X的k倍,也就是说,显示的数值是实际温度的K倍,具体是多少倍,我们不知道,我们可以列公式y=k*x,这时可以代入x=150°时,y=32000,即32000=k*150,可以求得,k=32000/150=2133结论是,读取到的数值除以2133就是实际的温度。

模拟量比例换算

模拟量比例换算

模拟量比例换算:因为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编程软件中应用。

模拟量计算

模拟量计算

假设模拟量的标准电信号是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时,压力变送器的电流应为4mA,A/D值为(32000/20)×4=6400。

由此得出,AIW0的数值转换为实际压力值(单位为KPa)的计算公式为:VW0的值=(AIW0的值-6400)(5000-100)/(32000-6400)+100(单位:KPa)编程实例您可以组建一个小的实例系统演示模拟量编程。

模拟量计算

模拟量计算

假设模拟量的标准电信号就是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时,压力变送器的电流应为4mA,A/D 值为(32000/20)×4=6400。

由此得出,AIW0的数值转换为实际压力值(单位为KPa)的计算公式为:VW0的值=(AIW0的值-6400)(5000-100)/(32000-6400)+100 (单位:KPa)编程实例您可以组建一个小的实例系统演示模拟量编程。

S7200的模拟量值进行比例换算图解

S7200的模拟量值进行比例换算图解

如何对 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的例子)。

scale.zip ( 26 KB )Tipscale库程序点击下载初中数学几何知识,三角形相似的那些知识。

在带有20%偏移的单极性的例子中, 最低限值是最大限值的 20% 。

(图 02 显示了一个模拟量输入值6400到 32000的例子)。

图 02双极性比例换算有正的和负的值范围 (图 03 显示了一个到 32000的例子)。

图 03下表是对一些缩写地解释:初中数学几何知识,三角形相似的那些知识。

初中数学几何知识,三角形相似的那些知识。

表 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-200模拟量换算

S7-200模拟量换算

因为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编程软件中应用。

模拟量计算.pdf

模拟量计算.pdf

假设模拟量的标准电信号是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时,压力变送器的电流应为4mA,A/D值为(32000/20)×4=6400。

由此得出,AIW0的数值转换为实际压力值(单位为KPa)的计算公式为:VW0的值=(AIW0的值-6400)(5000-100)/(32000-6400)+100(单位:KPa)编程实例您可以组建一个小的实例系统演示模拟量编程。

模拟量转换方法

模拟量转换方法

其实很简单就是一个Y(实际值)=A*X(数字量)+B的公式而已。

例如你的压力变送器检测压力范围是0~200kPa,输出4~20mA,PLC通过通道设置可以设置成输入4~20mA,对应数字量0~4000,那么0~200kPa与4~20mA是一一对应关系,4~20mA与0~4000是一一对应的关系,所以0~200kPa与0~4000就是一一对应关系,既然是一一对应关系,他两个就符合公式Y=A*X+B,这里A=1/20,B=0。

因此实际压力值=采集的数字量/20。

望采纳。

谢谢,有点似懂非懂了,基本采纳了。

所以还要继续向你请教:1.数字量范围(如0~4000)是由AD模块决定么?PLC采集的数字量是什么进制?2.3.Y=AX+B的公式中,B是什么,为什么B是0,如果B恒等0为什么还要加B。

倍数=数字量程上限/传感器量产上限;然后根据采集的数字量/倍数,得出实际的压力值,对么?压力单位是Kpa?4.5.手头的模块不是FX配套2AD/4AD的,是国产普通采集模块,换算方法是否一样适用?6.1、0~4000是根据模块里特殊寄存器设置的,比如三菱的FX3U-04AD的BFM #0设置输入的类型,就决定了类型是电压,还是电流,是4~20mA还是-20~2 0mA等等。

采集到的数字量都是十进制数字。

2、B=0,是通过这几个参数计算出来了,因为0~200kpa与0~ 4000成一一对应关系,而算出来的A=1/20,B=0,不是B固定就是0的,如果你要是西门子的AD,是0~20mA对应0-32000,那么就是0~200kpa对应4~20mA对应6400~32000,那么就是Y=X/128-50,A=1/128,B=-50。

压力单位这个很多,气体压力一般是kpa,mpa,bar,固体压力一般是kg/m的平方,N/m 平方等等。

3、只要是PLC的AD模块都是这个算法,置于别的AD模块就不一定了。

4到20ma模拟量转换公式

4到20ma模拟量转换公式

plc模拟量如何换算?4到20ma模拟量转换公式模拟量值和A/D转换值的转换是成线性关系的。

假设模拟量的标准电信号是A0~Am(如4~20mA),A/D转换后的数值为D0~Dm (如6 400~32 000),设模拟量的标准电信号是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(2)具体举一个实例,以S7-200和4~20mA为例,经A/D转换后,得到的数值是6 400~32 000,即A0=4,Am=20,D0=6 400,Dm=32 000,代入公式,得出:A=(D-6400)×(20-4)/(32000-6400)+4假设该模拟量与AIW0对应,则当AIW0的值为12800时,相应的模拟电信号是6400×16/25600+4=8mA。

例如,当输入模拟量设定为电流信号的输入,在S7-200 CPU内部,电流信号0-20mA对应于数值范围0-32000;但是对于4-20mA的信号,对应的内部数值为6400-32000。

那可能有学员不知道这个6400是怎么算来的?其实这里的数字量和电流是成正比的,只需要按比例去算就可以了。

因为电流信号0-20mA对应于数值范围0-32000,那么1mA对应的数字量就是32000/20=1600,而4mA对应的数字量就等于4*1600,等于6400。

(这里是以S7-200 PLC 来作为举例,对于S7-200 SMART S7-300 400等等PLC也是同理的,只是对应的数字量不同而已)不同的传感变送器,通过不同的模拟量输入输出模块进行转换,其转换公式是不一样的,如果选用的转换公式不对,编出的程序肯定是错误的。

对S7-200 的模拟量值进行比例换算

对S7-200 的模拟量值进行比例换算

如何对 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)类型数据的比例换算。

模拟量换算

模拟量换算

返回专题资料首页 >>模拟量比例换算因为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其中:它们之间的关系可以图示如下:图1. 模拟量比例换算关系实用指令库 Ov:换算结果 Iv:换算对象 Osh:换算结果的高限 Osl:换算结果的低限 Ish:换算对象的高限 Isl: 换算对象的低限Page 1 of 2模拟量- 换算PDF w 在STEP 7-Micro/WIN Programming Tips(Micro/WIN编程技巧中)的Tip38就是关于如何实现上述转换的例程。

S7200模拟量详细教程

S7200模拟量详细教程

模拟量比率换算由于A/D(模/数)、(D/A)数/模变换之间的对应关系, S7-200CPU内部用数值表示外面的模拟量信号,二者之间有必定的数学关系。

这个关系就是模拟量/数值量的换算关系。

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

假如有两个传感器,量程都是0-16MPa,可是一个是0-20mA输出,另一个是4-20mA输出。

它们在同样的压力下,变送的模拟量电流大小不一样,在S7-200内部的数值表示也不一样。

明显二者之间存在比率换算关系。

模拟量输出的状况也大概同样。

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

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

通用比率换算公式模拟量的输入/输出都能够用以下的通用换算公式换算:Ov=[(Osh-Osl)*(Iv-Isl)/(Ish-Isl)]+Osl此中:Ov:换算结果Iv: 换算对象Osh:换算结果的高限Osl:换算结果的低限Ish: 换算对象的高限Isl: 换算对象的低限它们之间的关系能够图示以下:图1. 模拟量比率换算关系适用指令库在Step7-Micro/WINProgrammingTips(Micro/WIN编程技巧中)的Tip38就是对于怎样实现上述变换的例程。

为便于使用,现已将其导出成为”自定义指令库“,能够增添到自己的Micro/WIN编程软件中应用。

在这个指令库中,子程序Scale_I_to_R可用来进行模拟量输入到S7-200内部数据的变换;子程序Scale_R_I可用于内部数据到模拟量输出的变换。

模拟量计算.pdf

模拟量计算.pdf

假设模拟量的标准电信号是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时,压力变送器的电流应为4mA,A/D值为(32000/20)×4=6400。

由此得出,AIW0的数值转换为实际压力值(单位为KPa)的计算公式为:VW0的值=(AIW0的值-6400)(5000-100)/(32000-6400)+100(单位:KPa)编程实例您可以组建一个小的实例系统演示模拟量编程。

4到20ma模拟量转换公式

4到20ma模拟量转换公式

模拟:
模拟是对真实事物或者过程的虚拟。

模拟要表现出选定的物理系统或抽象系统的关键特性。

模拟量:
模拟量是指变量在一定范围连续变化的量;也就是在一定范围(定义域)内可以取任意值(在值域内)。

数字量是分立量,而不是连续变化量,只能取几个分立值,如二进制数字变量只能取两个值。

4到20ma模拟量转换公式:
设模拟量为I,实际温度为T,对应的-20℃~80℃为:T=(I-4)/(20-4)*[80-(-20)]+(-20);
方程解释:温度=(电流-电流低端)/(电流高端-电流低端)×(量程高端-量程低端)+量程低端;
变量在一定范围连续变化的量;也就是在一定范围(定义域)内可以取任意值(在值域内)。

数字量是分立量,而不是连续变化量,只能取几个分立值,如二进制数字变量只能取两个值。

模拟量用于“量测压”领域:
量测值电压值、有功功率、无功功率、温度和变压器抽头位置等均用量测值表示与状态量(也称逻辑量)对照也称为模拟量。

因日立仪器吸取试剂时并不是按参数设置的体积吸取,而是要多吸一部分(此部分称为模拟量),此种设计的目的是为了防止试剂被稀释。

模拟量的使用:
模拟量的使用是plc控制中的一部分,模拟量种类一般有电压型
和电流型两种。

电流型相比于电压型更稳定,抗干扰能力较强。

模拟量的使用也是有分辨率的。

一般有12bit和14bit两种分辨率。

其中对应的数值分别为0~4000和0~16000。

对应的电压为0~10v,具体根据使用情况而定。

此种模拟量一般用于电压与数值为线性关系。

还有一种模拟量模块,用来转化采集的温度,是非线性的关系。

4到20ma模拟量转换公式

4到20ma模拟量转换公式

模拟:
模拟是对真实事物或者过程的虚拟。

模拟要表现出选定的物理系统或抽象系统的关键特性。

4到20ma模拟量转换公式:
设模拟量为I ,实际温度为T ,对应的・20°C~80°C为:
T=(I-4)/(20-4)*[80-(-20)]+(-20);
方程解释:温度二(电流■电流低端)/(电流高端・电流低端)x (量程高端■量程低端)+量程低端;
变量在一定范围连续变化的量;也就是在一定范围(定义域)内可以取任意值(在值域内X数字量是分立量,而不是连续变化量,只能取几个分立值,如二进制数字变量只能取两个值。

模拟量用于"量测压〃领域:
量测值电压值、有功功率、无功功率、温度和变压器抽头位置等均用量测值表示与状态量(也称逻辑量)对照也称为模拟量。

因日立仪器吸取试剂时并不是按参数设置的体积吸取,而是要多吸一部分(此部分称为模拟量),此种设计的目的是为了防止试剂被稀释。

模拟量的使用:
模拟量的使用是pic控制中的一BB分,模拟量种类一般有电压型和电流型两种。

电流型相比于电压型更稳定,抗干扰能力较强。

模拟量的使用也是有分辨率的。

一般有12bit和14bit两种分辨率。

其中对应的数值分别为0~4000和0~ 16000。

对应的电压为0 ~
10v ,具体根据使用情况而定。

此种模拟量一般用于电压与数值为线性关系。

还有一种模拟量模块,用来转化采集的温度,是非线性的关系。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

模拟量比例换算
因为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编程软件中应用。

模拟量比例换算指令库
注意:此指令库/程序的作者和拥有者对于该软件的功能
性和兼容性不负任何责任。

使用该软件的风险完全由用户
自行承担。

由于它是免费的,所以不提供任何担保,错误
纠正和热线支持,用户不必为此联系西门子技术支持与服
务部门。

在这个指令库中,子程序S_ITR用来进行模拟量输入到S7-200 SMART 内部数据的转换;子程序S_RTI可用于内部数据到模拟量输出的转换。

编程举例:
将4 - 20mA模拟量输入转换为内部百分比值将内部百分比值转换为4 - 20mA模拟量输出
图2. 编程举例
热电阻、热电偶比例换算
温度模拟量输入模块(EM231 TC、EM231 RTD)所读取的数据是温度测量值的10倍(摄氏或华氏温度)。

如AIW16里监控到520相当于实际温度52.0度。

,可以自己做运算,当然也可以按照上文图2中的步骤做量程转换,调整上下限即可。

相关文档
最新文档