浔之漫智控技术(上海)有限公司
西门子模块代理商
西门子代理商 一个**的程序搞定西门子PLC模拟量输入信号换算
发布时间:2024-01-07
观看西门子代理商 一个**的程序搞定西门子PLC模拟量输入信号换算视频:

西门子代理商-浔之漫智控技术(上海)有限公司,库存大量西门子PLC,产品种类、型号齐全,涵盖了西门子200系列PLC、西门子300系列PLC及其EM221模块、EM222模块、EM223模块、EM231模块、EM232模块、EM235模块、PPI电缆、MPI电缆、5611卡、SM321、SM322、SM323、SM331、EM332模块等,S7-200系列主机包括CPU224CN、CPU226CN、CPU224XP,S7-300系列主机包括CPU312、CPU313、CPU314、CPU315-2DP等,价格低,交货速度快。

digital-layer-basic-controller - 副本.jpg

一个**的程序搞定西门子PLC模拟量输入信号换算

“引言:在实际的一些项目中,会使用几十上百个模拟量输入信号,这些模拟量输入信号可能是电压、电流或者热电阻信号等等,如果每个都单独处理的话,非常耗费时间。我们就想着能不能使用一个程序,简单配置一下,就能处理所有的模拟量输入信号呢?当然是可以实现,这也是我们这篇文章要解答的问题,请接着往下看。”

1模拟量信号的分类

西门子S7-1200/1500 PLC中模拟量模块的类型包括电压/电流、电阻/热电阻、热电偶,如图所示:

这三类模拟量模块的信号,又可以概况为四种情况:

a) 单极性信号。

不过零的模拟量信号变化为单极性信号,比如0~5V、4~20mA、0~300Ω。

单极性模拟量信号的额定测量范围为0~27648,其转化公式为:

以一个检测距离0~200mm,模拟量信号为0~10V的传感器,当In等于13824时,带入公式的Out的物理量实际值等于100mm。

b) 双极性信号。

过零的模拟量信号变化为双极性信号,比如±10V、±80mV。

双极性模拟量信号的额定测量范围为±27648,其转化公式为:

以一个检测角度±90°,模拟量信号为±10V的倾角传感器,当In等于-13824时,带入公式的Out的物理量实际值等于-90°。

c) 标准型温度测量。

将Pt100这类温度传感器的阻值转化成温度的类型。

其转化公式为:

这个公式是将模拟量测量值除以10.0得到实际的温度,比如说当前模拟量测量值为12345,那么实际的温度就是1234.5℃。

需要注意的是,如果使用热电偶,其也按照标准温度公式来转化。

d) 气候型温度测量。

气候型温度是一种特殊的类型,它是用来描述实际去天气温度,比如天气预报说,深圳明天的气温为10~20℃;哈尔滨明天的气温为-3~12℃。

其转化公式为:

这个公式是将模拟量测量值除以100.0得到实际的温度,比如说当前模拟量测量值为2062,那么实际的温度就是20.62℃。

2模拟量实际案例

在一个项目中,具有64个模拟量输入信号,其信号地址和类型如下所示:

按照该项目需求,进行程序编写,主要分为一下几个步骤:PLC和模块组态、将模拟量地址映射到数组、新建FB模板程序、编写控制程序。

a) 步骤1:PLC和模块组态

按照实际的模拟量模块进行组态,并设置好对应的模拟量类型,如图所示:

b) 将模拟量地址映射到数组

添加一个PLC数据类型(UDT),并命名为“typeChannel”,如图所示。

在PLC变量中,添加一个名称为 “AIChannel”,数据类型为“typeChannel”的数据,如图所示:

c) 新建FB模板程序

添加一个名称为“typeAI”,并添加模拟量通道的元素,如图所示:

再添加一个名称为“AIConvert”的FB函数块,并在接口中添加参数,如图所示:

d) 编写控制程序

使用一个FOR循环指令来进行初级处理,如果“enable”为TRUE,则启用该通道,并根据该通道的类型进行CASE判断,并处理程序,如图所示:

将该FB在OB1中进行调用,并新建全局变量,并关联形参,如图所示:

为了便于仿真测试,添加一个数组用于模拟AI信号值,如图所示:

仿真在线监控,这里将前三个模拟量通道配置为单极性,物理值范围为0~100.0Mpa,当模拟量通道有信号输入时,得到的模拟量转化值如图所示:


展开全文
优质商家推荐 拨打电话