研选课堂
HOME
研选课堂
正文内容
西门子plc模拟量编程入门 西门子PLC模拟量是如何编程的
发布时间 : 2024-10-11
作者 : 小编
访问数量 : 23
扫码分享至微信

西门子PLC模拟量是如何编程的

在PLC编程中,模拟量是我们经常会用到的,比如压力传感器的模拟量反馈就要用到模拟量输入模块,给比例阀的设定就需要用到模拟量输出模块等等,模拟量编程的掌握也是PLC编程的必备技能,编程的基本思路其实也是非常简单,下面我们就先简单说说:

对于模拟量输入来说:只需要将反馈的电压或电流信号进行数字化处理,并对处理后的数字量进行标准化(也就是0~100%或-100%~100%)。然后就可以根据实际进行编程了。

对于弄你两输出来说:就需要将程序执行后的结果进行去标准化,比如就是将0~100%转化成0~27648(这里量程的范围主要看选择的模块支持的信号和范围),如下面这段程序:

下面我们就一步步看看到底是什么编程的,我们这里就以模拟量输出为例来进行编程:

需要在硬件组态中插入一个模拟量模块,本例中插入的是模拟量输出模块 SM 332; AO 8 x 12 位; (6ES7332-5HF00-0AB0) ,8个通道,每个通道可设置为电流或电压输出

也可以设置量程,如下图所示:

2、下面我们就要知道我们要用到模拟量精度及量程转换

模拟量转换的分辨率

分辨率是 A/D 模拟量转换芯片的转换精度,即用多少位的数值来表示模拟量。模拟量模块的转换分辨率用于反映模拟量变化的最小单位。精度 < 15 位时,将所有由"x"标识的位设置为"0"。

模拟量模块所支持的模拟值精度,如表1.1所示。

表1.1

单极性输入范围(例如,电压输入0~10V,对应值为0~27648),如表所示。

双极性输入范围(例如,电压输入-10~10V,对应值为-27648~27648),如表所示。

例如,下表中 12 位分辨率的模块,其数据从低字节的第四位(bit3)开始变化,其最小变化单位2的3次方= 8 ,bit0~bit2 则补" 0 "(红色图框为无效位)

设该模拟量通道类型为电压0~10V,满量程电压值10V对应数据27648,其能识别的最小电压值为:

3、STEP 7 V5.x中模拟量输入/输出的编程

1)FC105/FC106 在哪里?

在编程界面下,在 "程序元素"中的 "库——> Standard Library ——> TI-S7 Converting Blocks"中可以找到,见下图:

注意:请不要使用 "S5-S7 Converting Blocks"下的 FC105,FC106,该路径下的功能是用于 S5 输入输出模板的,在 S7 输入输出模板上无法使用。

2) FC105功能描述

SCALE(FC105)功能接受一个整型值(IN),并将其转换为以工程单位表示的介于下限和上限(LO_LIM和HI_LIM)之间的实型值。将结果写入OUT。SCALE功能使用以下等式:

OUT = [ ((FLOAT (IN) - K1)/(K2 - K1)) * (HI_LIM - LO_LIM)] + LO_LIM

常数K1和K2根据输入值是BIPOLAR还是UNIPOLAR设置。

● BIPOLAR:假定输入整型值介于 -27648与27648之间,因此K1 = -27648.0,K2 = +27648.0

●UNIPOLAR:假定输入整型值介于0和27648之间,因此K1 = 0.0,K2 = +27648.0

如果输入整型值大于K2,输出(OUT)将钳位于HI_LIM,并返回一个错误。如果输入整型值小于K1,输出将钳位于LO_LIM,并返回一个错误。

通过设置LO_LIM > HI_LIM可获得反向标定。使用反向转换时,输出值将随输入值的增加而减小。

3) FC105的参数定义

故障信息:

如果输入整型值大于K2,输出(OUT)将钳位于HI_LIM,并返回一个错误。如果输入整型值小于K1,输出将钳位于LO_LIM,并返回一个错误。ENO的信号状态将设置为0,RET_VAL等于W#16#0008。

4) FC105例子程序

上图中用MW20作为模拟量输入地址(正常编程中在IN中模拟量输入地址比如PIW256,这个值根据前面规则来的,也就是单极性27648对应100)

5) FC106 功能描述

UNSCALE(FC106)功能接收一个以工程单位表示、且标定于下限和上限(LO_LIM和HI_LIM)之间的实型输入值(IN),并将其转换为一个整型值。将结果写入OUT。UNSCALE功能使用以下等式:

OUT = [ ((IN - LO_LIM)/(HI_LIM - LO_LIM)) * (K2 - K1) ] + K1

并根据输入值是BIPOLAR还是UNIPOLAR设置常数K1和K2。

● BIPOLAR:假定输出整型值介于 -27648和27648之间,因此,K1 = -27648.0,K2 = +27648.0

● UNIPOLAR:假定输出整型值介于0和27648之间,因此,K1 = 0.0,K2 = +27648.0

如果输入值超出LO_LIM和HI_LIM范围,输出(OUT)将钳位于距其类型(BIPOLAR或UNIPOLAR)的指定范围的下限或上限较近的一方,并返回一个错误。

6) FC106 的参数定义

故障信息:

如果输入值超出LO_LIM和HI_LIM范围,输出(OUT)将钳位于距其类型(BIPOLAR或UNIPOLAR)的指定范围的下限或上限较近的一方,并返回一个错误。ENO的信号状态将设置为0,RET_VAL等于W#16#0008。

7) FC106 例子程序

上图中就是MD作为设定,本例设定50,对应的输出就是13824,并将MW16(13824送至PQW256,控制对应设备,例如比例阀的开口度)。

那么TIA Portal博途中模拟量输入/输出的编程

1)SCALE/UNSCALE在哪里?

在TIA Portal中指令SCALE/UNSCALE的功能和STEP7中的FC105/FC106功能相同,用于模拟量输入/输出的编程。

编程界面下,在 "指令" 中的"基本指令 ——> 转换操作"中可以找到,

电气相关知识和经验是用来分享,希望本文能对你有帮助。与人玫瑰,手留余香。

西门子PLC的模拟量功能,图文实例讲解硬件和软件!

在自动化控制中,除了按钮,开关等数字量信号外,还有模拟量信号也很常见,比如说测量压力,流量,温度等信号,使用模拟量可以得到较为精确的数值,所以需要对模拟量信号进行处理,包括模拟量输入信号,模拟量输出信号、电阻、电偶信号等,由于模拟量信号类型较多,很多初学者不是很熟悉,经常搞错,这里结合西门子STEP7软件讲解如何使用模拟量以及有哪些注意事项。

1 对于西门子S7-300/400系列,PLC本身不带模拟量,需要使用PLC的拓展模块进行连接,打开软件STEP7,按照实际使用的拓展模块,将软件里的拓展模块放在机架上,如图所示

2 对模拟量的地址进行更改,这个地址对应程序里的地址,比如说图中地址为256,在程序里编程也需要使用256,程序才能识别出正确的模拟量通道。

3 模拟量也有很多类型,比如说电压型,四线制电流型,二线制电流型。

对于电压信号,由多种可选类型,可根据实际设备的信号类型进行选择。比如说-10V—10V,-5V—5V,-1V—1V,1-5V。

当然,西门子系列的模拟量拓展模块有很多,除了文中所用到的,还有很多其他的电压信号应用在不同领域。如下图所示。

对于电流信号则分为二线制和四线制

二线制信号是指;信号的两根线既是电源线又同时是信号线。二线制的优点是接线简单,只适用一般功率小的一次传感器,如:压变、差压变、温变、电容式液位计、射频导纳、电磁流量计、涡街流量计等。传感器本身用电由二线制中得到,是必影响其带载能力。

四线制信号是指;电源两根线,信号两根线。电源和信号是分开工作的。四线制的优点是由于是将电源和功率分开,所以本机的功率与信号是没有功率上的关联的,适用于大功率的的传感器,如超声波(由于其为了加大抗干扰能力,所以发射的功率会很大,所以此款产品选型时要尽量四线的,二线的一般抗干扰能力较弱),就不能作成2线的,只能是4线,分别是工作电源2个,输出2个。

除此之外对于传感器等设备来说还有三线制。三线制是指;一根线为电源正线,一根线为信号正线,一根线为电源负线和信号负线的公共线。

但对于PLC来说,无论两线制还是四线制信号,拓展模块的接线端子只有两根。那么对于应用有什么区别?

区别就在于,将模块设置为两线制后,两个端子会有24V的电压。

而将模块设置为四线制后,这两个端子就没有了电压,那么给大家留个问题。

在使用三线制传感器的时候,需要将PLC模块设置成几线制模式?

我们继续学习,

对于二线制电流号,我们同样有多个选择。

有-20—20ma,0-20ma以及4-20ma。

我们需要按照所使用的设备来决定信号类型。

但对于2线制电流信号,模块的选择则少了很多,只有一个4-20ma,大家知道那是为什么吗?

因为4-20电流信号是最优的信号标准。行业内一般把4-20ma电流信号作为行业标准。

那么为什么4~20mA是行业标准呢?

采用电流信号的原因是不容易受干扰。并且电流源内阻无穷大,导线电阻串联在回路中不影响精度,在普通双绞线上可以传输数百米。上限取20mA是因为防爆的要求:20mA的电流通断引起的火花能量不足以引燃瓦斯。下限没有取0mA的原因是为了能检测断线:正常工作时不会低于4mA,当传输线因故障断路,环路电流降为0。常取2mA作为断线报警值。

对于西门子300/400系列PLC,在使用模拟量的时候需要在程序里选择信号类型,除此之外还应该在拓展模块上更改模块种类,

如上图所示,选择好模拟量输入类型后需要将硬件的量程卡也切换到相应的位置。

当然正常操作应该是先有设计,先在硬件上修改,然后在程序里设置,我为了大家理解才这样讲解的。

硬件讲解完了,软件也需要编程,STEP7对于模拟量的处理很方便。

需要使用FC105,将模拟量的值转换为0-100的数,对应量程中的0%-100%。

文中的程序较为简单,是一个在大料仓里面的雷达料位机,只要料仓里面的原料低于某个位置,机器就会发出一个报警,使用该报警可以提示操作人员进行手动或者自动补料。

好了, 你看懂了吗?

还有个问题哦!

在使用三线制传感器的时候,需要将PLC模块设置成几线制模式?

大家要踊跃发言啊!

相关问答

西门子plc模拟量编程实例?

以下是一个使用西门子PLC的模拟量编程示例:假设有一个温度传感器,将温度值转换为4-20mA模拟量信号,然后将信号输入到PLC的模拟量输入模块中。我们需要将输入的...

西门子PLC模拟量怎么处理的。程序怎么编写的?

模拟量输入:使用MOV指令,输入为AIW0或AIW6(看你PLC是否自带模拟量输入),输出为VW0,模拟量输出:使用MOV指令,输出为VW2,输出为AQW0或AQW6(看你PLC是否自...模.....

西门子plc模拟量输入电压0到10v怎么测量?

对于西门子PLC模拟量输入电压0到10V的测量,需要使用模拟量变送器来将传感器采集到的模拟量信号转换为4~20mA信号,再通过0~10V的电压转换模块将其转换为PLC所需...

plc模拟量怎么设电压?

PLC控制电压:plc的模拟量输出,0~10V等,通过PLC(西门子)的模拟量输出0~~32000对应0~~10V。PLC可编程逻辑控制器,它采用一类可编程的存储器,用于其内部存储程...

西门子S7-1200PLC如何转换模拟量?

刚好手头有一个项目有用到模拟量输入输出的,下面就讲解一下首先我这里用的模拟模块是SM1234模块4输入2输出下面是软件设置,可以选择电压模式或者电流模式...

西门子PLC模拟量和数字量之间如何转换?

实质:都是读取模拟量通道,至于转换,则由PLC的AD模块完成。200系列:假设你的模拟量接驳在第一个通道:读取模拟量:MOVWAIW0,VW0此时VW0中保存的就是...实质...

西门子plc200模拟量,模块的使用两线制,四线制的接线方式?模拟量的输入还有输出的梯形图编程实例?

单极性:0~5V双极性:-5~+5V。(下面别处运过来的)两线制:两根线及传输电源又传输信号,也就是传感器输出的负载和电源是串联在一起的,电源是从外部引入的,...

用西门子plc控制多个模拟量输入信号,该怎么编程?

模拟量的采集与控制,是现在工业控制中常见的一个环节,在小型工程中,我们经常选用PLC作为控制器,那么对于PLC能否对模拟量进行采集与控制呢?这是肯定的,PLC...如...

请问师傅们西门子S7-200PLC的模拟量输入输出指令怎么用?AlW和AQW在梯形图里怎么写?请画?

比如plc后面挂一个两路模拟量输入模块和一个两路模拟量输出模块,那么,两路输入地址寄存器分别为AIW0和AIW2,如果后面还有输入模块,地址一次为AIW4AIW6……以...

西门子1200PLC怎么输出模拟量?

可以到69你说的型号应该是1215或1217,因为最多可以挂8个模块,每个模块8个这是64个,然后CPU本带了2输入/2输出,这是4个,最后还可以插一个1通道的模拟量信号...

 喜瑞  次帅 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部