西门子plc模拟量的处理
- 格式:ppt
- 大小:693.00 KB
- 文档页数:15
零基础学习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内部的处理过程和工作原理,只要能看明白这张图,我下面讲程序时你就能很容易理解了。
其实模拟量模块内部和压力变送器内部一样,都是有一块电路板。
S7-300程序设计方法(模拟量控制)引言在自动化控制系统中,模拟量控制是一种重要的控制方式。
S7-300是西门子公司开发的一种可编程控制器(PLC),它提供了一种灵活的方式来实现模拟量控制。
本文将介绍如何使用S7-300进行模拟量控制的程序设计方法。
硬件配置,我们需要了解S7-300的硬件配置。
S7-300包括一个或多个CPU,用来执行用户编写的程序。
CPU和其他设备之间通过总线连接,包括输入模块、输出模块和模拟量模块。
在模拟量控制中,模拟量模块用来读取传感器的模拟信号,并输出控制信号给执行器。
编程软件S7-300使用STEP7编程软件进行程序设计。
STEP7提供了一个友好的图形化界面,以及一套丰富的函数库来支持编程。
在开始编程之前,我们需要安装和配置STEP7软件,并连接S7-300 PLC。
程序设计步骤1. 配置模拟量模块:在STEP7软件中,我们需要配置模拟量模块。
这包括设置模块的地质、通道数和其他参数。
配置完成后,我们可以通过函数调用的方式读取模块的模拟信号。
2. 编写读取模拟信号的程序:在STEP7软件中,我们可以使用函数库提供的函数来读取模拟量模块的模拟信号。
这些函数会将模拟信号转换为数字量,以便后续的控制算法使用。
3. 设计控制算法:在STEP7软件中,我们可以使用图形化编程语言来设计控制算法。
控制算法可以包括PID控制器、滤波器和限幅器等。
通过读取模拟信号并对其进行处理,我们可以控制信号,并输出给执行器。
4. 编写输出控制信号的程序:在STEP7软件中,我们可以使用函数库提供的函数来输出控制信号。
这些函数将控制信号转换为模拟输出信号,并输出给执行器。
5. 调试和测试:在完成程序设计后,我们需要进行调试和测试。
我们可以使用STEP7软件提供的在线模拟功能来模拟真实的输入和输出信号,并进行调试和测试。
本文介绍了在S7-300上进行模拟量控制的程序设计方法。
通过配置模拟量模块、编写读取模拟信号的程序、设计控制算法和编写输出控制信号的程序,我们可以实现灵活且高效的模拟量控制。
西门子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(高电平)之间交替变化的数字量。
1、FC105SCALE功能接受一个整型值(IN),并将其转换为以工程单位表示的介于下限和上限(LO_LIM和HI_LIM)之间的实型值。
将结果写入OUT。
SCALE 功能使用以下等式:OUT = [((FLOAT (IN)-K1)/(K2-1))* (HI_LIM-O_LIM)]+ LO_LIM常数K1和K2根据输入值是BIPOLAR还是UNIPOLAR设置。
BIPOLAR:假定输入整型值介于7648与27648之间,因此K1 = -7648.0,K2 = +27648.0UNIPOLAR:假定输入整型值介于0和27648之间,因此K1 = 0.0,K2 = +27648.0如果输入整型值大于K2,输出(OUT)将钳位于HI_LIM,并返回一个错误。
如果输入整型值小于K1,输出将钳位于LO_LIM,并返回一个错误。
通过设置LO_LIM 》HI_LIM可获得反向标定。
使用反向转换时,输出值将随输入值的增加而减小。
FC105参数参数说明数据类型存储区描述EN 输入BOOL I、Q、M、D、L 使能输入端,信号状态为1时激活该功能。
ENO 输出BOOL I、Q、M、D、L 如果该功能的执行无错误,该使能输出端信号状态为1。
IN 输入INT I、Q、M、D、L、P、常数欲转换为以工程单位表示的实型值的输入值。
HI_LIM 输入REAL I、Q、M、D、L、P、常数以工程单位表示的上限值。
LO_LIM 输入REAL I、Q、M、D、L、P、常数以工程单位表示的下限值。
BIPOLAR 输入BOOL I、Q、M、D、L 信号状态为1表示输入值为双极性。
信号状态0表示输入值为单极性。
OUT 输出REAL I、Q、M、D、L、P 转换的结果。
RET_VAL 输出WORD I、Q、M、D、L、P 如果该指令的执行没有错误,将返回值W#16#0000。
对于W#16#0000以外的其它值,参见“错误信息”。
错误信息如果输入整型值大于K2,输出(OUT)将钳位于HI_LIM,并返回一个错误。
PLC对模拟量信号是怎么进行处理的模拟量信号是自动化过程控制系统中最基本的过程信号(压力、温度、流量等)输入形式。
系统中的过程信号通过变送器,将这些检测信号转换为统一的电压、电流信号,并将这些信号实时的传送至控制器(PLC)。
PLC通过计算转换,将这些模拟量信号转换为内部的数值信号。
从而实现系统的监控及控制。
从现场的物理信号到PLC内部处理的数值信号,有以下几个步骤:从以上PLC模拟量的信号输入流程可以看到,在自动化过程控制系统中,模拟量信号的输入是非常复杂的。
但是,在现目前的工业现场,对模拟量信号的处理已基本都采用电流信号方式进行传输,相比于电压信号方式,电流信号抗干扰能力更强,传输距离更远,信号稳定。
这里就PLC对模拟量信号的转换过程进行一个简单的分解介绍。
1PLC对模拟量信号的转换西门子S7-200SMART PLC模拟量模块对模拟量信号的转换范围台达DVP系列模拟量模块对模拟量信号的转换范围从以上可以看到:1、模拟量信号接入PLC后,PLC将模拟量信号转换为了整型数据,不是浮点数(如西门子-27,648 到 27,648);2、不同品牌的PLC对模拟量转换范围是有差异的(如西门子-27,648 到 27,648;台达-32,384 到 32,384);3、PLC同一个模块对不同类型的模拟量信号的转换范围是一致的(如西门子对±10 V、±5 V、±2.5 V 或 0 到 20mA的模拟量信号的转换范围均为-27,648 到 27,648);故从以上几点我们可以知道,接入PLC的模拟量信号还需要进行再转换处理,才可以得到与实际物理量相匹配的数据;在进行数据转换处理的时候,还应该与使用的PLC模块的处理数据范围相对应。
2PLC数据转换处理过程1、模拟量信号与PLC转换数据之间的转换从以上内容知道,从PLC直接读取到的模拟量信号为整型数据,整型数据无法直观的反馈出实际的物理量大小,故为了能够直观的反馈出现场的过程信号情况,还应该将这些整型数据转换为反馈直观真实的浮点数信号。
S7-1200PLC模拟量数据采集及调试作为一名自动化工程师,在工控维修或者工控调试中,经常会碰到模拟量信号采集与处理问题。
那什么是模拟量?又该如何采集并处理,结合最近处理一个案例,跟大家分享一下。
模拟量是指一些连续变化的物理量,如电压、电流、压力、速度、流量等信号量。
模拟信号是幅度随时间连续变化的信号,通常电压信号为0~10V,电流信号为4~20mA,可以用PLC的模拟量模块进行数据采集,其经过抽样和量化后可以转换为数字量。
本次分享的是,利用西门子PLC采集压力传感器信号,从安装到调试的全过程。
硬件清单如下:1.西门子PLC一块CPU1214C DC/DC/DC 如下图:2.模拟量输入模块是SM1231 4AIX16 BIT(模拟量4通道):模拟量输入模块是SM1231 4AIX16 BIT 四线制度压力传感器3.四线制度压力传感器1个,DC24V 4-20MA:压力传感器数据采集,大致需要经过以下5个步骤:(1)压力传感器正确安装,并正常接线:四线压力传感器,24V供电(2线)+2信号线(2线),如下图所示:四线压力传感器接线PLC模块接线传感器插头(2)模拟量通道配置:定义模拟量0通道,IW112采集数据,模拟量配置如下:模拟量0通道配置(3)PLC程序编写:PLC模拟量功能块,西门子博途有现场的功能块,NORM_X和SCALE_X 直接调用就行,如下图,需要注意数据类型.PLC程序(4)现场调试:现场监控PLC程序如调试中,出现了以下情况,压力变送器IW112,采集的数据,超范围太多,需要检查一下压力传感器是否有断线?我这个就是断线,采集的数据不对,如下图:检查线路后,发现有虚接,重新接线后,信号采集正常:如下图:。
西门子S7-300PLC模拟量编程西门子S7-300PLC模拟量方面的实例,包含了以下几个方面的要点: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 与模拟量过程信号的连接。
模拟量输入模块将从过程发送来的模拟信号转换成供PLC 内部处理用的数字信号。
本次工程用的是SM311 输入模块如下图所示。
该模块具有如下特点:分辨率为9 到15 位+符号位(用于不同的转换时间),可设置不同的测量范围。
通过量程模块可以机械调整电流/电压的基本测量范围。
用STEP 7硬件组态工具可进行微调。
模块把诊断和超限中断发送到可编程控制器的CPU 中。
模块向CPU 发送详细的诊断信息。
模拟量输入模块的接线方式两线制电流和四线制电流都只有两根信号线,它们之间的主要区别在于:两线制电流的两根信号线既要给传感器或者变送器供电,又要提供电流信号;而四线制电流的两根信号线只提供电流信号。
因此,通常提供两线制电流信号的传感器或者变送器是无源的;而提供四线制电流信号的传感器或者变送器是有源的。
因此,当PLC 的模板输入通道设定为连接四线制传感器时,PLC 只从模板通道的端子上采集模拟信号,如图2-3,而当PLC 的模板输入通道设定为连接二线制传感器时,如图2-2,PLC 的模拟输入模板的通道上还要向外输出一个直流24V的电源,以驱动两线制传感器工作。
对输入、输出模拟量的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电流,见下左图。