plc模拟量转换标度变换数字量公式以及西门子变换写法

合集下载

plc模拟量计算公式

plc模拟量计算公式

plc模拟量计算公式LAD方法实现(1)计算公式说明[(IN0-IN1)/(IN2-IN1)]*(IN4-IN3)+IN3•IN0:模拟量输入信号,数据类型为整数•IN1:模拟量信号下限,数据类型为整数•IN2:模拟量信号上限,数据类型为整数•IN3:工程量数值下限,数据类型为实数•IN4:工程量数值上限,数据类型为实数(2)程序编写说明02SCL方法实现(1)计算公式说明[(Raw-Dmin)/(Dmax-Dmin)]*(Emax-Emin)+Emin •Raw:模拟量输入信号,数据类型为整数•Dmin:模拟量信号下限,数据类型为整数•Dmax:模拟量信号上限,数据类型为整数•Emin:工程量数值下限,数据类型为实数•Emax:工程量数值上限,数据类型为实数(二)程序编写说明FUNCTION FC1 : VOID //函数定义VAR_INPUT //输入变量定义Raw,Dmin,Dmax: INT;Emin,Emax: REAL;END_VARVAR_OUTPUT //输出变量定义OutReal: REAL;OutPercentage:REAL;END_VARVAR_TEMP //临时变量定义RawTemp: INT;END_VARBEGINIF (Emin < Emax) AND (Dmin < Dmax) THEN//判断上下限值是否设置合理IF Raw < Dmin THEN RawTemp := Dmin;//输入值超下限直接取下限END_IF;IF Raw > Dmax THEN RawTemp := Dmax;//输出值超上限直接取上限END_IF;IF (Raw >= Dmin) AND (Raw <= Dmax) THEN RawTemp := Raw;//输入正常直接读取输入值END_IF;OutReal := (INT_TO_REAL(RawTemp-Dmin)/INT_TO_REAL(Dmax-Dmin))*(Emax-Emin)+Emin;//数量类型转换和计算公式OutPercentage := (OutReal/(Emax-Emin))*100.0;ELSE //上下限值设置不合理直接输出零OutReal := 0.0;OutPercentage := 0.0;END_IF;END_FUNCTION。

S7-200 S7-300 PLC 模拟量自动计算公式表格

S7-200 S7-300 PLC 模拟量自动计算公式表格

已知模拟量通道数据值,计算模拟量输入值及对应工程量 输入类型 描述 代码 4-20mA 0-20mA
换算结果
工程量
换算结果
数据字
换算对象
工程量范围
输入类型范围
数据字范围
换算结果的高限 换算结果的低限 换算结果的高限 换算结果的低限 换算对象的高限 换算对象的低限
Ov2 20.0000 20.0000
Ov1 100.0000 100.0000
Iv 32000.00 27648.00
Osh1 100.00 100.00
Osl1 0.00 0.00
Osh2 20.00 20.00
Osl2 4.00 4.00
Ish 32000.00 27648.00
Isl 6400.00 0.00
已知工程量显示值,计算模拟量输入及对应的数据值 输入类型 数据字 工程量 工程量范围 输入类型范围 数据字范围
输入类型范围
数据字范围
换算结果的高限 换算结果的低限 换算结果的高限 换算结果的低限 换算对象的高限 换算对象的低限
Ov1 100.0000 100.0000
Iv 32000.00 27648.00
Ov2 20.0000 20.0000
Osh1 100.00 100.00
Osl1 0.00 0.00
用途:已知模拟量输入值(如检测到的电流值)、模拟量通道读数、工程值其中的一项,计算出另外两项的值。 使用说明:配置好EFGHIJ列,在D列输入数值,BC列自动计算出对应的数值。
模拟量的输入/输出都可以用下列的通用换算公式换算: Ov = [(Osh - Osl)*(Iv - Isl)/(Ish - Isl)] + Osl 其中: Ov:换算结果 Iv:换算对象 Osh:换算结果的高限 Osl:换算结果的低限 Ish:换算对象的高限 Isl:换算对象的低限

plc模拟量转换标度变换数字量公式以及西门子变换写法

plc模拟量转换标度变换数字量公式以及西门子变换写法

PlC模拟量标度转化原理信号的变换需要经过以下过程:物理量-传感器信号-标准电信号-A/D转换-数值显示。

声明:为简单起见,我们在此讨论的是线性的信号变换。

同时略过传感器的信号变换过程。

假定物理量为A,范围即为A0-Am,实时物理量为X;标准电信号是B0-Bm,实时电信号为Y;A/D转换数值为C0-Cm,实时数值为Z。

如此,B0对应于A0,Bm对应于Am,Y对应于X,及Y=f(X)。

由于是线性关系,得出方程式为Y=(Bm-B0)*(X-A0)/(Am-A0)+B0。

又由于是线性关系,经过A/D转换后的数学方程Z=f(X)可以表示为Z=(Cm-C0)*(X-A0)/(Am-A0)+C0。

那么就很容易得出逆变换的数学方程为X=(Am-A0)*(Z-C0)/(Cm-C0)+A0。

方程中计算出来的X就可以在显示器上直接表达为被检测的物理量。

5、PLC中逆变换的计算方法以S7-200和4-20mA为例,经A/D转换后,我们得到的数值是6400-32000,及C0=6400,Cm=32000。

于是,X=(Am-A0)*(Z-6400)/(32000-6400)+A0。

例如某温度传感器和变送器检测的是-10-60℃,用上述的方程表达为X=70*(Z-6400)/25600-10。

经过PLC的数学运算指令计算后,HMI可以从结果寄存器中读取并直接显示为工程量。

用同样的原理,我们可以在HMI上输入工程量,然后由软件转换成控制系统使用的标准化数值。

在S7-200中,(Z-6400)/25600的计算结果是非常重要的数值。

这是一个0-1.0(100%)的实数,可以直接送到PID指令(不是指令向导)的检测值输入端。

PID指令输出的也是0-1.0的实数,通过前面的计算式的反计算,可以转换成6400-32000,送到D/A端口变成4-20mA输出。

1.自己写转换程序。

2.需要注意你的模拟量是单极性的还是双极性的。

函数关系A=f(D)可以表示为数学方程:A=(D-D0)×(Am-A0)/(Dm-D0)+A0。

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: 换算对象Osh: 换算结果的高限Osl: 换算结果的低限Ish: 换算对象的高限Isl: 换算对象的低限它们之间的关系可以图示如下:图1. 模拟量比例换算关系实用指令库在Step7 - Micro/WIN Programming Tips(Micro/WIN编程技巧中)的Tip38就是关于如何实现上述转换的例程。

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

S7-200模拟量比例换算

S7-200模拟量比例换算

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

plc模拟量与实际工程量的转换公式与详细程序图

plc模拟量与实际工程量的转换公式与详细程序图

比如有一个压力变送器输入20kp--800kp,输出0—10V信号给PLC,然后PLC把0-10V转换为0-4000数字信号,现在要在PLC程序里实现把20Kp—800KP转换为20-800后直接在触摸屏上显示,可以这样实现,
一种方法调整模拟量增益与偏置,
另外一种方法自己在程序里用公式转换
首先用(4000-0)/(800-20)=5.128,
然后用800乘以5.128等于4102,再用4102-102=4000,
这样就可以得到另外一个公式,以三菱FX为例,当D0为模拟量通道直接写进数范围是0-2000.那么就可以用(D0+K102)/5.128=D1,那么D1就对应20-800,这样就可以直接在触摸屏上显示。

因为在三菱FX-PLC里5.128无法表示,可以把(D0+K102)先乘以K100后在除以K512,这样换算的精度就提高了。

如果还想提高精度可以把(D0+K102)先乘以K1000后,再除以K5128,这样换算的精度就更高了。

这是D0等于0时,0V信号输入,D34等于20。

这是D0等于2000时,5V信号输入,D34等于409。

这是D0等于4000时,10V信号输入,D34等于800。

PLC模拟量与数字量之间的转换

PLC模拟量与数字量之间的转换

(3) 转换时间。完成一次A/D转换的时间TC为A/D转换
时间,在这段时间里输入A/D的模拟电压数值应稳定不变, 否则就会造成A/D转换的误差。通常转换时间TC比采样/保持
器的孔径时间TAP大,更比孔径抖动TAJ大得多,因此若不加采
样保持器,在保证转换误差不大于量化误差e的条件下,A/D 转换器直接转换输入信号Vx(t)的最高频率是很低的,公式(2-2) 是转换时间TC和转换器的位数与可采集信号的最高频率的关系:
换速度。
A/D转换器的类型较多。按其转换输出数据的方式,可分 为并行和串行两种,其中并行又分为8位、10位、14位和16位 等;按其转换原理可分为逐次逼近式和双积分式等。 并行与串行ADC各有其优势。并行ADC占用较多的数据线, 具有输出速度快的优点,在转换位数较少时具有很高的性价比。
串行ADC占用的数据线少,转换速度慢,但它也有自身的优点:
3.3 模拟量与数字量之间的转换 3.3.1 A/D转换器
A/D转换器是一种将模拟量转换成数字量的器件,通常也 称为ADC。在数据采集系统中,传感器的输出大部分为模拟信 号(电压、电流),而计算机只能接收数字量。为此,需要在传 感器与计算机之间进行模/数转换,以便将模拟电压信号转换 成计算机能识别的二进制数字信号。因此A/D转换器是数据采 集系统的重要环节,它直接关系到测量的准确度、分辨力和转
图2 ADC1143功能框图
ADC1143的引脚功能:
模拟输入电压引脚(27~29脚) 模拟电压范围
可编程
模拟电 压范围V +5 +10 输出电压 二进制 二进制 模拟电压引 入脚 27、28 29 27、28 26脚连接情 况 开断 开断 20脚连接情 况 2 2、29
+20

模拟量转换数字量公式

模拟量转换数字量公式

信号的变换需要经过以下过程:物理量-传感器信号-标准电信号-A/D转换-数值显示。

声明:为简单起见,我们在此讨论的是线性的信号变换。

同时略过传感器的信号变换过程。

假定物理量为A,范围即为A0-Am,实时物理量为X;标准电信号是B0-Bm,实时电信号为Y;A/D转换数值为C0-Cm,实时数值为Z。

如此,B0对应于A0,Bm对应于Am,Y对应于X,及Y=f(X)。

由于是线性关系,得出方程式为Y=(Bm-B0)*(X-A0)/(Am-A0)+B0。

又由于是线性关系,经过A/D转换后的数学方程Z=f(X)可以表示为Z=(Cm-C0)*(X-A0)/(Am-A0)+C0。

那么就很容易得出逆变换的数学方程为X=(Am-A0)*(Z-C0)/(Cm-C0)+A0。

方程中计算出来的X就可以在显示器上直接表达为被检测的物理量。

5、PLC中逆变换的计算方法以S7-200和4-20mA为例,经A/D转换后,我们得到的数值是6400-32000,及C0=6400,Cm=32000。

于是,X=(Am-A0)*(Z-6400)/(32000-6400)+A0。

例如某温度传感器和变送器检测的是-10-60℃,用上述的方程表达为X=70*(Z-6400)/25600-10。

经过PLC的数学运算指令计算后,HMI可以从结果寄存器中读取并直接显示为工程量。

用同样的原理,我们可以在HMI上输入工程量,然后由软件转换成控制系统使用的标准化数值。

在S7-200中,(Z-6400)/25600的计算结果是非常重要的数值。

这是一个0-1.0(100%)的实数,可以直接送到PID指令(不是指令向导)的检测值输入端。

PID指令输出的也是0-1.0的实数,通过前面的计算式的反计算,可以转换成6400-32000,送到D/A端口变成4-20mA输出。

1.自己写转换程序。

2.需要注意你的模拟量是单极性的还是双极性的。

函数关系A=f(D)可以表示为数学方程:A=(D-D0)×(Am-A0)/(Dm-D0)+A0。

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

PlC模拟量标度转化原理
信号的变换需要经过以下过程:物理量-传感器信号-标准电信号-A/D转换-数值显示。

声明:为简单起见,我们在此讨论的是线性的信号变换。

同时略过传感器的信号变换过程。

假定物理量为A,范围即为A0-Am,实时物理量为X;标准电信号是B0-Bm,实时电信号为Y;A/D转换数值为C0-Cm,实时数值为Z。

如此,B0对应于A0,Bm对应于Am,Y对应于X,及Y=f(X)。

由于是线性关系,得出方程式为Y=(Bm-B0)*(X-A0)/(Am-A0)+B0。

又由于是线性关系,经过A/D转换后的数学方程Z=f(X)可以表示为Z=(Cm-C0)*(X-A0)/(Am-A0)+C0。

那么就很容易得出逆变换的数学方程为X=(Am-A0)*(Z-C0)/(Cm-C0)+A0。

方程中计算出来的X就可以在显示器上直接表达为被检测的物理量。

5、PLC中逆变换的计算方法
以S7-200和4-20mA为例,经A/D转换后,我们得到的数值是6400-32000,及C0=6400,Cm=32000。

于是,X=(Am-A0)*(Z-6400)/(32000-6400)+A0。

例如某温度传感器和变送器检测的是-10-60℃,用上述的方程表达为X=70*(Z-6400)/25600-10。

经过PLC的数学运算指令计算后,HMI可以从结果寄存器中读取并直接显示为工程量。

用同样的原理,我们可以在HMI上输入工程量,然后由软件转换成控制系统使用的标准化数值。

在S7-200中,(Z-6400)/25600的计算结果是非常重要的数值。

这是一个0-1.0(100%)的实数,可以直接送到PID指令(不是指令向导)的检测值输入端。

PID指令输出的也是0-1.0的实数,通过前面的计算式的反计算,可以转换成6400-32000,送到D/A端口变成4-20mA输出。

1.自己写转换程序。

2.需要注意你的模拟量是单极性的还是双极性的。

函数关系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转换值的转换理解起来比较困难,该段多读几遍,结合所举例子,就会理解。

西门子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时,压力变送器的电流应为4mA,A/D值为(32000/20)×4=6400。

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

本实例的的CPU是CPU222,仅带一个模拟量扩展模块EM235,该模块的第一个通道连接一块带4—20mA变送输出的温度显示仪表,该仪表的量程设置为0—100度,即0度时输出4mA,100度时输出20mA。

温度显示仪表的铂电阻输入端接入一个220欧姆可调电位器,简单编程如下:
LD SM0.0
MOVW+14632, VW12 -I+6400, VW12 MOVW VW12, VW13 /I+256, VW13。

相关文档
最新文档