西门子PLC模拟量变送器和模拟量值的表示技巧
- 格式:doc
- 大小:63.50 KB
- 文档页数:2
详解西门子PLC模拟量编程,一次给你讲清楚!1、对变送器进行取值,并进行控制2、对模数功能块 FC105 进行调用3、对 AI 模块进行设置4、对 AI 量程块进行选择这个实例,调试的是一个流量调节回路中,流量变送器输出 2-2-MA DC信号到 SM331 模拟输入模块,模块将该信号转换成浮点数,然后在程序中调用FC105将该值转换成工程量,我们就可以监视实际工程中的流量值了。
模拟量 AI 采用 SM311 模块是 8x12Bit(8 通道 12 位)对应货号是6ES7 331-7KF02-OABO,在模数转化上利用传感器或变送器的,电压或电流取出的值,到 AI 模块上进行转换,然后把值传给西门子的CPU 进行处理,从而检测控制传感器的值,如图模拟量输入模块模拟量输入用于连接电压和电流传感器、热电耦、电阻和热电阻,用来实现PLC 与模拟量过程信号的连接。
模拟量输入模块如图 2-1 所示,将从过程发送来的模拟信号转换成供PLC 内部处理用的数字信号。
本次工程用的是 SM311 输入模块如图所示。
该模块具有如下特点:分辨率为 9 到 15 位+符号位(用于不同的转换时间),可设置不同的测量范围。
通过量程模块可以机械调整电流 /电压的基本测量范围。
用STEP 7硬件组态工具可进行微调。
模块把诊断和超限中断发送到可编程控制器的 CPU 中。
模块向 CPU 发送详细的诊断信息模拟量输入模块的接线方式两线制电流和四线制电流都只有两根信号线,它们之间的主要区别在于:两线制电流的两根信号线既要给传感器或者变送器供电,又要提供电流信号;而四线制电流的两根信号线只提供电流信号。
因此,通常提供两线制电流信号的传感器或者变送器是无源的;而提供四线制电流信号的传感器或者变送器是有源的。
因此,当 PLC 的模板输入通道设定为连接四线制传感器时, PLC 只从模板通道的端子上采集模拟信号,如图 2-3,而当 PLC 的模板输入通道设定为连接二线制传感器时,如图2-2,PLC 的模拟输入模板的通道上还要向外输出一个直流24V的电源,以驱动两线制传感器工作。
西门子PLC中开关量、模拟量、脉冲量的介绍其实西门子PLC中无非就是三大量:开关量,模拟量,脉冲量。
只要搞清楚三者之间的关系,你就能熟练的掌握PLC了。
1.开关量也称逻辑量,指仅有两个取值,0或1、ON或OFF。
它是最常用的控制,对它进行控制是PLC的优势,也是PLC最基本的应用。
关量控制的目的是,根据开关量的当前输入组合与历史的输入顺序,使PLC产生相应的开关量输出,以使系统能按一定的顺序工作。
所以,有时也称其为顺序控制。
2.模拟量是指一些连续变化的物理量,如电压、电流、压力、速度、流量等。
PLC是由继电控制引入微处理技术后发展而来的,可方便及可靠地用于开关量控制。
由于模拟量可转换成数字量,数字量只是多位的开关量,故经转换后的模拟量,PLC也完全可以可靠的进行处理控制。
由于连续的生产过程常有模拟量,所以模拟量控制有时也称过程控制。
模拟量多是非电量,而PLC只能处理数字量、电量。
所有要实现它们之间的转换要有传感器,把模拟量转换成数电量。
如果这一电量不是标准的,还要经过变送器,把非标准的电量变成标准的电信号,如4—20mA、1—5V、0—10V等等。
同时还要有模拟量输入单元(A/D),把这些标准的电信号变换成数字信号;模拟量输出单元(D/A),以把PLC处理后的数字量变换成模拟量——标准的电信号。
所以标准电信号、数字量之间的转换就要用到各种运算。
这就需要搞清楚模拟量单元的分辨率以及标准的电信号。
例如:PLC模拟单元的分辨率是1/32767,对应的标准电量是0—10V,所要检测的是温度值0—100℃。
那么0—32767对应0—100℃的温度值。
然后计算出1℃所对应的数字量是327.67。
如果想把温度值精确到0.1℃,把327.67/10即可。
模拟量控制包括:反馈控制、前馈控制、比例控制、模糊控制等。
这些都是PLC内部数字量的计算过程。
3.脉冲量是其取值总是不断的在0(低电平)和1(高电平)之间交替变化的数字量。
PLC中模拟量的使用,你会使用么?模拟量的使用是plc掌握中的一部分,模拟量种类一般有电压型和电流型两种。
电流型相比于电压型更稳定,抗干扰力量较强。
模拟量的使用也是有辨别率的。
一般有12bit和14bit两种辨别率。
其中对应的数值分别为0~4000和0~16000。
一般对应的电压为0~10v,详细依据使用状况而定。
此种模拟量一般用于电压与数值为线性关系。
还有一种模拟量模块,用来转化采集的温度,是非线性的关系。
那么今日我们就举例说一下模拟量输入吧!首先我们选择的为松下FP-XC30T的主机+FP-X AD2模块,将模拟量输入模块安装在主机的第一个插槽中,此时模拟量1对应的地址就是WX10,模拟量2对应的地址就是WX11。
首先看一下实物图片吧!主机+AD2实物图图中的AD2模块安装在PLC的其次个插槽上,那么两路模拟量对应的地址就又发生了变化,第一路模拟量对应的地址变为了WX20,其次路模拟量对应的地址变成了WX21。
既然清晰了映射地址,那么我们就要进行接线了,一般我们使用电压型的接线,将模拟量电压的正端接在模块的“V”上,将模拟量的负端接到模块的“COM”上。
那么我们如何编写程序呢?模拟量读取程序根据上面的那个程序,一旦程序开头运行,我们就能将外部的电压值转化为一个0~4000的数值,并将此值传输到DT100的地址中,当然这段程序仅仅代表我们采集到了模拟量的信息,我们需要将其转化为我们的实际需要值,例如压力,扭力等等。
假如说我们的模拟量电压为0~10v,对应的我们的压力值为0~100Kpa,那么我们怎样才能将他们对应起来,更加直观的在触摸屏上显示出当前的压力值呢?这就需要我们的数学学问啦,大家考虑下该怎么做呢?大家可以参考Y=KX+b的二元一次方程将他们的对应关系表示出来,并在PLC中进行计算就好了。
西门子S7-300PLC模拟量输入输出1、基本概况S7-300 的CPU 用16 位的二进制补码表示模拟量值。
其中最高位为符号位S,0 表示正值,1 表示负值,被测值的精度可以调整,取决于模拟量模块的性能和它的设定参数,对于精度小于15 位的模拟量值,低字节中幂项低的位不用。
S7-300 模拟量输入模块可以直接输入电压、电流、电阻、热电偶等信号,而模拟量输出模块可以输出0~10 V、1~5 V、-10 V~10 V、0~20 mA、4~20 mA 等模拟信号。
2、模拟量输入模块SM331 模拟量输入(简称模入(AI))模块SM331 目前有三种规格型号,即8AI 乘以l2 位模块、2AI 乘以l2 位模块和8AI 乘以l6 位模块。
SM331 主要由A/D 转换部件、模拟切换开关、补偿电路、恒流源、光电隔离部件、逻辑电路等组成。
A/D 转换部件是模块的核心,其转换原理采用积分方法,被测模拟量的精度是所设定的积分时间的正函数,也即积分时间越长,被测值的精度越高。
SM331 可选四档积分时间:2.5 ms、16.7 ms、20 ms 和l00 ms,相对应的以位表示的精度为8、12、12 和14。
SM331 与电压型传感器的连接,如图1 所示。
图1 输入模块与电压型传感器的连接SM331 与2 线电流变送器的连接如图2a)所示,与4 线电流变送器的连接如图2b)所示。
4 线电流变送器应有单独的电源。
图2 输入模块与2/4 线变送器电流输入的连接3、模拟量输出模块SM332 模拟量输出(简称模出(AO))模块SM332 目前有三种规格型号,即4AO 乘以l2 位模块、2AO 乘以12 位模块和4AO 乘以l6 位模块,分别为4 通道的12 位模拟量输出模块、2 通道的12 位模拟量输出模块、4 通道的16 位模拟量输出模块。
SM332 可以输出电压,也可以输出电流。
在输出电压时,可以采用2 线回路和4 线回路两种方式与负载相连。
第3章 PLC 快速精通407必须将负载连接到Q I 和电流输出的模拟量电路M ANA 的参考点。
图3.2.10和图3.2.11中符号的意思如下。
Q I :模拟量输出电流;M ANA :模拟量电路的参考电位; R L :负载阻抗; L+:DC24 V 电源; M :接地;U iso :M ANA 和CPU 的M 端子之间的电位差。
3.2.4 模拟量的表示1.模拟值的精度CPU 以二进制格式来处理模拟值。
数字化模拟值适用于相同标称范围的输入和输出值。
模拟值均为二进制补码形式的实数,符号始终设在Bit15:“0”→+,“1”→−。
模拟值可能的精度如表3.2.2所示,表中以符号位对齐,未用的低位则用“0”来填补,表中的“x ”表示未用的位。
表3.2.2 模拟值可能的精度精度(位数)分 辨 率模 拟 值十 进 制十 六 进 制高8位低8位 8 128 80H 符号0 0 0 0 0 0 0 1 x x x x x x x 9 64 40H 符号0 0 0 0 0 0 0 0 1 x x x x x x 10 32 20H 符号0 0 0 0 0 0 0 0 0 1 x x x x x 11 16 10H 符号0 0 0 0 0 0 0 0 0 0 1 x x x x 12 8 8H 符号0 0 0 0 0 0 0 0 0 0 0 1 x x x 13 4 4H 符号0 0 0 0 0 0 0 0 0 0 0 0 1 x x 14 2 2H 符号0 0 0 0 0 0 0 0 0 0 0 0 0 1 x 15 1 1H 符号0 0 0 0 0 0 00 0 0 0 0 0 0 12.输入量程的模拟值表示① 范围在±1V 、±2.5V 、±5V 和±10V 电压量程内模拟值的表示如表3.2.3所示。
表3.2.3 范围在±1V 、±2.5V 、±5V 和±10V 电压量程内模拟值的表示 电 压 量 程 模 拟 值备注±10V±5V±2.5V±1V十 进 制十 六 进 制11.85V 5.92V 2.963 1.185V 32767 7FFF 上溢 32512 7F00 11.759V 5.879V 2.940V 1.176V 325117EFF上溢警告 27649 6C01。
对输入、输出模拟量的PLC编程的探讨及编程实例解析对于初学PLC编程的人来说,模拟量输入、输出模块的编程要比用位变量进行一般的程序控制难的多,因为它不仅仅是程序编程,而且还涉及到模拟量的转换公式推导与使用的问题。
不同的传感变送器,通过不同的模拟量输入输出模块进行转换,其转换公式是不一样的,如果选用的转换公式不对,编出的程序肯定是错误的。
比如有3个温度传感变送器:(1)、测温范围为 0~200,变送器输出信号为4~20ma(2)、测温范围为 0~200,变送器输出信号为0~5V(3)、测温范围为-100~500,变送器输出信号为4~20ma(1)和(2)二个温度传感变送器,测温范围一样,但输出信号不同,(1)和(3)传感变送器输出信号一样,但测温范围不同,这3个传感变送器既使选用相同的模拟量输入模块,其转换公式也是各不相同。
一、转换公式的推导下面选用S7-200的模拟量输入输出模块EM235的参数为依据对上述的3个温度传感器进行转换公式的推导:对于(1)和(3)传感变送器所用的模块,其模拟量输入设置为0~20ma电流信号 ,20ma对应数子量=32000,4 ma对应数字量=6400;对于(2)传感变送器用的模块,其模拟量输入设置为0~5V电压信号,5V 对应数字量=32000,0V对应数字量=0;这3种传感変送器的转换公式该如何推导的呢?这要借助与数学知识帮助,请见下图:上面推导出的(2-1)、(2-2)、(2-3)三式就是对应(1)、(2)、(3)三种温度传感变送器经过模块转换成数字量后再换算为被测量的转换公式。
编程者依据正确的转换公式进行编程,就会获得满意的效果。
二、变送器与模块的连接通常输出4~20ma电流信号的传感变送器,对外输出只有 +、- 二根连线,它需要外接24V电源电压才能工作,如将它的+、- 二根连线分别与24V电源的正负极相连,在被测量正常变化范围内,此回路将产生4~20ma电流,见下左图。
西门子PLC模拟量参数用PLC对现场信号进行处理,那就需要采集现场传感器信号,现场传感器多种多样,无非都分为数字量信号和模拟量信号。
数字量信号也就是我们常说的开关量信号,通断功能。
模拟量信号是连续的信号,它是传感器检测被测对象而输出的数据,这个数据随着被检测信号的变化而变化,我们叫它为模拟量,一般与现场信号成线性比例关系。
比如压力传感器、液位传感器、温度传感器、流量传感器等等。
这些传感器的信号如何让PLC接收呢?在PLC内部又如何处理呢?传感器信号要经过变送器,转变成标准的电信号,那么标准的电信号都是哪些呢?下面一一进行介绍,常见的标准的电信号包含的有电压信号和电流信号。
电压信号又分单极性和双极性,电流信号不分极性。
1、模拟量输入参数:电压(单极性)0~10V 0~5V 0~1V 0~500mV 0~100mV 0~50mV电压(双极性)±10V ±5V ±2.5V ±1V ±500mV ±250mV ±100mV ±50mV ±25mV电流 0~20mA2、量程范围:双极性全量程范围-32000~+32000单极性全量程范围0~320003、转换器:12位A/D转换器4、模拟量输出参数:电压输出±10V,电流输出0~20mA电压-32000~+32000,电流0~320005、精度:电压12位,电流11位6、S7-200PLC模拟量参数(1)CPU 224 XP本体模拟量输入:电压范围: -+10V,数据字格式,满量程:-3,2000至+3,2000。
(2)CPU 224 XP本体模拟量输出:电压范围:0—10V,数据字格式,满量程:0-至+3,2000;电流范围:0—20mA,数据字格式,满量程:0-至+3,2000;(3)S7-200 扩展模块EM231模拟量输入:电压范围:0—10V,0—5V(单极性)、+5V,+2.5V(双极性);电流范围:0—20mA ;数据字格式,满量程:0-至+3,2000(单极性);-3,2000—+3,2000(双极性)(4)S7-200 扩展模块EM232模拟量输出:电压范围: +10V,数据字格式,满量程:-3,2000至+3,2000。
西门子PLC模拟量变送器和模拟量值的表示
方法
生产过程中有大量连续变化的模拟量需要用plc来测量或掌握。
有的是非电量(如温度、压力、流量、液位、物体的成分和频率等);有的是强电电量(如发电机和电动机组的电流、电压、有功功率和无功功率、功率因数等)。
变送器用于将传感器供应的电量或非电量信号转换为标准的直流电流或直流电压信号,如直流0~10 V或直流4~20 mA信号。
西门子S7-300/400的CPU用16位二进制补码定点数来表示模拟量值。
A/D转换的结果是按16位二进制补码形式存储,即占用1个字(两个字节)的长度。
其中,最高位(第15位)为符号位,正数的符号位为0,负数的符号位为1。
模拟量模块的模拟值位数(即转换精度)可以设置为9~15位(与模块的型号有关,不包括符号位),假如模拟量值的精度小于15位,则模拟量值左移,使其最高位(符号位)在16位字的最高位(第15位),模拟量值左移后未使用的低位则填入“0”,这种处理方法称为“左对齐”。
设模拟量值的精度为12位,加上符号位,未使用的低位(第0~2位)为0,相当于实际的模拟值被乘以8。
三种转换精度的数据存储格式见表1。
S位为符号位,标有“×”的位被补为0。
表1 A/D转换结果存储格式示例。
对输入、输出模拟量的PLC编程的探讨及编程实例解析对于初学PLC编程的人来说,模拟量输入、输出模块的编程要比用位变量进行一般的程序控制难的多,因为它不仅仅是程序编程,而且还涉及到模拟量的转换公式推导与使用的问题。
不同的传感变送器,通过不同的模拟量输入输出模块进行转换,其转换公式是不一样的,如果选用的转换公式不对,编出的程序肯定是错误的。
比如有3个温度传感变送器:(1)、测温范围为 0~200,变送器输出信号为4~20ma(2)、测温范围为 0~200,变送器输出信号为0~5V(3)、测温范围为-100~500,变送器输出信号为4~20ma(1)和(2)二个温度传感变送器,测温范围一样,但输出信号不同,(1)和(3)传感变送器输出信号一样,但测温范围不同,这3个传感变送器既使选用相同的模拟量输入模块,其转换公式也是各不相同。
一、转换公式的推导下面选用S7-200的模拟量输入输出模块EM235的参数为依据对上述的3个温度传感器进行转换公式的推导:对于(1)和(3)传感变送器所用的模块,其模拟量输入设置为0~20ma电流信号 ,20ma对应数子量=32000,4 ma对应数字量=6400;对于(2)传感变送器用的模块,其模拟量输入设置为0~5V电压信号,5V 对应数字量=32000,0V对应数字量=0;这3种传感変送器的转换公式该如何推导的呢?这要借助与数学知识帮助,请见下图:上面推导出的(2-1)、(2-2)、(2-3)三式就是对应(1)、(2)、(3)三种温度传感变送器经过模块转换成数字量后再换算为被测量的转换公式。
编程者依据正确的转换公式进行编程,就会获得满意的效果。
二、变送器与模块的连接通常输出4~20ma电流信号的传感变送器,对外输出只有 +、- 二根连线,它需要外接24V电源电压才能工作,如将它的+、- 二根连线分别与24V电源的正负极相连,在被测量正常变化范围内,此回路将产生4~20ma电流,见下左图。
模拟量的处理1、模拟量的规范化读入模拟量输入模块的输入信号都与实际的物理量相对应,如用一个液位传感器-变送器来测量罐的液位,测量范围为0~500L,对应的输出电压为0~10V。
假设将该模拟量信号接入模拟量输入模块,对应于0~10V的电压信号,其转换值为0~27648,该数值应该进一步转换为实际物理量值(如:0~500L),这个过程称为“规范化”。
在STEP7的标准库中有可用于模拟量规范化的功能FC105,使用FC105(符号名为“SCALE”)可以将从模拟量输入模块所接收的整型值转换为以工程单位表示的介于下限(LO_LIM)和上限(HI_LIM)之间的实型值。
IN:欲转换为以工程单位表示的实型值的输入值(整数类型),可直接从模拟量输入模块接收数据;LO_LIM:以工程单位表示的下限值,实数类型;HI_LIM:以工程单位表示的上限值,实数类型;OUT:规范化后的值(物理量),实数类型;BIPOLAR:“1”表示输入值为双极性,“0”表示输入值为单极性。
示例说明,如果I0.0为“1”且M0.0为“0”,则可将地址为288的模拟量输入通道值(0~27648)转换为介于0.0和500.0之间的实型值,并写入MD104。
PIW288 为27648(01101100,00000000)MD104显示的值为500.00(注意MD104的值为实数显示);PIW288为27036(01010001,00000000)MD显示的值为375.00;PIW288为13824(00110110,00000000)MD104显示的值为250.00;PIW288为6912(00011011,00000000)MD显示的值为125.00。
FC105的功能可用下式表示:常数K1和K2根据输入值是双极性还是单极性来设置。
假定输入整型值介于-27648与27648之间,则K1=-27648.0,K2=+27648.0;假定输入整型值介于0和27648之间,则K1=0.0,K2=+27648.0。
零基础学习PLC⼊门,6个指令完成模拟量程序梯形图(附程序)这⼀节讲述4-20mA的模拟量信号进⼊西门⼦S7-200PLC以后,PLC怎样通过程序把它变成我们想要的实际数值。
虽然这节讲的是西门⼦PLC的模拟量处理程序,但道理都是⼀样的,你只要把程序的原理弄明⽩了,在其他品牌的PLC上应⽤也是⼀样的,不管是三菱的还是施耐德的都⼀样。
所以⽂章最后我会附上本节所讲的程序的下载⽅法,有需要的朋友可以⾃⼰下载研究。
通过上⼀节的学习我们知道,模拟量其实就是⼀个在⼀定数字范围内连续变化的数值。
这个数字范围绝⼤多数都是⽤4-20mA这个电流信号作为标准范围,⾄于为什么这样⽤,上⼀节已经讲的很清楚了,这⾥不再重复。
接下来看图1。
图1,的左边是⼀个量程范围为0-10kpa的压⼒变送器,它的输出电流就是0-10kpa对应4-20mA,所以压⼒在5kpa时对应的电流就是12mA,我们只要在电路中串联⼀个数字万⽤表就能看到电流的读数,然后我们通过这个读数,拿⼀个计算器通过加减乘除就能算出实际的压⼒是5kpa。
这就是⼿动的算法,如果⽤这种算法去算实际压⼒值,简直就是太⽼⼟了。
这些活只要交给PLC去⼲就⾏了,你只要把程序写好PLC就会不知疲倦的去算还不会出错,我们腾出时间看点⾃⼰想看的⽚⽚多好呢。
那怎么让PLC去算呢?很简单,我们只要做两件事就可以了。
第⼀,硬件部分,看图1的右边,我们只要在原来接数字万⽤表的地⽅,接⼀个PLC的模拟量输⼊模块就⾏了,你没看错,原理就是这样的。
它实际的接线图就是下⾯的图2。
在图2我们看到压⼒变送器和PLC的模拟量模块串联在⼀起,模拟量模块把接收到的4-20mA电流信号经过处理传送给PLC,这样PLC就能通过程序计算出实际的压⼒值了。
它的内部处理过程如下。
图3,是模拟量信号在PLC内部的处理过程和⼯作原理,只要能看明⽩这张图,我下⾯讲程序时你就能很容易理解了。
其实模拟量模块内部和压⼒变送器内部⼀样,都是有⼀块电路板。
对输入、输出模拟量的PLC编程的探讨及编程实例解析对于初学PLC编程的人来说,模拟量输入、输出模块的编程要比用位变量进行一般的程序控制难的多,因为它不仅仅是程序编程,而且还涉及到模拟量的转换公式推导与使用的问题。
不同的传感变送器,通过不同的模拟量输入输出模块进行转换,其转换公式是不一样的,如果选用的转换公式不对,编出的程序肯定是错误的。
比如有3个温度传感变送器:(1)、测温范围为 0~200,变送器输出信号为4~20ma(2)、测温范围为 0~200,变送器输出信号为0~5V(3)、测温范围为-100~500,变送器输出信号为4~20ma(1)和(2)二个温度传感变送器,测温范围一样,但输出信号不同,(1)和(3)传感变送器输出信号一样,但测温范围不同,这3个传感变送器既使选用相同的模拟量输入模块,其转换公式也是各不相同。
一、转换公式的推导下面选用S7-200的模拟量输入输出模块EM235的参数为依据对上述的3个温度传感器进行转换公式的推导:对于(1)和(3)传感变送器所用的模块,其模拟量输入设置为0~20ma电流信号 ,20ma对应数子量=32000,4 ma对应数字量=6400;对于(2)传感变送器用的模块,其模拟量输入设置为0~5V电压信号,5V 对应数字量=32000,0V对应数字量=0;这3种传感変送器的转换公式该如何推导的呢?这要借助与数学知识帮助,请见下图:上面推导出的(2-1)、(2-2)、(2-3)三式就是对应(1)、(2)、(3)三种温度传感变送器经过模块转换成数字量后再换算为被测量的转换公式。
编程者依据正确的转换公式进行编程,就会获得满意的效果。
二、变送器与模块的连接通常输出4~20ma电流信号的传感变送器,对外输出只有 +、- 二根连线,它需要外接24V电源电压才能工作,如将它的+、- 二根连线分别与24V电源的正负极相连,在被测量正常变化范围内,此回路将产生4~20ma电流,见下左图。
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。
西门子PLC模拟量变送器和模拟量值的表示方法
生产过程中有大量连续变化的模拟量需要用plc来测量或控制。
有的是非电量(如温度、压力、流量、液位、物体的成分和频率等);有的是强电电量(如发电机和电动机组的电流、电压、有功功率和无功功率、功率因数等)。
变送器用于将传感器提供的电量或非电量信号转换为标准的直流电流或直流电压信号,如直流0~10 V或直流4~20 mA信号。
西门子S7-300/400的CPU用16位二进制补码定点数来表示模拟量值。
A/D转换的结果是按16位二进制补码形式存储,即占用1个字(两个字节)的长度。
其中,最高位(第15位)为符号位,正数的符号位为0,负数的符号位为1。
模拟量模块的模拟值位数(即转换精度)可以设置为9~15位(与模块的型号有关,不包括符号位),如果模拟量值的精度小于15位,则模拟量值左移,使其最高位(符号位)在16位字的最高位(第15位),模拟量值左移后未使用的低位则填入“0”,这种处理方法称为
“左对齐”。
设模拟量值的精度为12位,加上符号位,未使用的低位(第0~2位)为0,相当于实际的模拟值被乘以8。
三种转换精度的数据存储格式见表1。
S位为符号位,标有“×”的位被补为0。
表1 A/D转换结果存储格式示例。