摘要:一、在实际的工业生产流程里,特别是那种连续不断的生产当中,常常要对一些像压力、电压、电流、温度、流量之类的物理量进行收集或者控制。要知道,这些物理量都是会随着时间改变而改变的,在控制的领域里,咱们就把这种会随着时间变化而变化的物理量叫做模拟量。
一、在实际的工业生产流程里,特别是那种连续不断的生产当中,常常要对一些像压力、电压、电流、温度、流量之类的物理量进行收集或者控制。要知道,这些物理量都是会随着时间改变而改变的,在控制的领域里,咱们就把这种会随着时间变化而变化的物理量叫做模拟量。
二、模拟量的标准信号采集
采集模拟量的模块有三种类型:普通的模拟量模块、RTD(热电阻)模块以及 TC(热电偶)模块。普通模拟量模块能够采集标准的电流和电压信号。这里面,电流包含了 0 - 20mA、4 - 20mA 这两种信号;电压涵盖了 +/-2.5V、+/-5V、+/-10V 这三种信号。
模拟量输入:依靠传感器检测转化成标准信号,从模拟量信号变成数字量信号(AD)。
模拟量输出:把 PLC 内部的数据转变成标准信号,从数字信号变成模拟量信号(DA)。
200 smart 模拟量的精度是 11Bit,对应 0 - 27648 。200 系列模拟量的精度是 12Bit,对应的是 0 - 32000 。
选用电压/电流信号的差别
0 - 10V 取信号比较简单,接线方便,测量也方便(一般的环境都能用)。0 - 20 MA 和 4 - 20MA 相比较,后者在市场上的占有率更高;在 4 - 20MA 中,低于 4MA 能判断是开路,大于 20MA 可以认定是短路故障。电流和电压相比,电流源的内阻特别大,电流阻抗低,抗干扰的能力强,信号稳定,传输的距离也远。
三、模拟量的接线
模拟量的电流、电压信号按照模拟量仪表或者设备线缆的个数被分成了四线制、三线制、两线制这三种类型,不一样类型的信号,它们的接线方式也是不一样的。四线制信号说的是模拟量仪表或者设备上信号线和电源线加起来一共有 4 根线。仪表或者设备有单独的供电电源,除了两个电源线,还有两个信号线。四线制信号的接线方式如下图所示。
三线制信号呢,就是说仪表或者设备上的信号线和电源线加起来一共 3 根线,其中负信号线跟供电电源的 M 线是共用的一根线。三线制信号的接线方式如下图展示的那样。
两线制信号说的是仪表或者设备上信号线和电源线一共就两根接线。因为 S7 - 200 SMART CPU 模拟量模块通道没有供电的本事,所以仪表或设备得从外面接上 24V 直流电源。两线制信号的接线方式如下图这样。
没使用的模拟量通道得把通道的两个信号端给短接起来,接线的方式如下图展示的那样。
我们常常也会用到 PT100 温度变送器,电流型和电压型的变送器接线的方式是不一样的。
四、模拟量输入输出组态
1.打开系统块,选择跟实际硬件一样的模拟量模块。
2.组态模拟量输入类型
(1)系统指定从模拟量通道 0 开始进行寻址。
(2)输入类型可以选电压/电流型。选了具体类型后,前两组通道是一个输入类型,就是说第一通道的输入类型得根据第 0 通道来定。
(3)选择跟对应的仪表或设备一样的信号范围。
(4)抑制可选 10/50/60/100HZ,传感器的响应时间或者传送模拟量信号到模块的信号线长度情况,会让模拟量输入值产生波动。在这种情形下,波动值可能变得太快,使得程序逻辑没办法有效响应。所以可以对模块进行组态来对信号进行抑制。
(5)滤波周期选得越大,意味着采集的数据就会越精确。
(6)超出上下限报警,如果勾选了,上限超过 32767 就会报警,下限超过 -32767 也会报警。
3.组态模拟量输出
(1)选择跟实际仪表或者设置能够接收的模拟量输入信号相同的类型。
(2)范围选定这方面,如果仪表或设备是 4 - 20MA,还是得选择 0 - 20MA 的信号范围。
(3)当 CPU 处于 STOP 模式的时候,可以把模拟量输出点设置成特定的值,或者保持在切换到 STOP 模式之前的输出状态。在 STOP 模式下,设置模拟量输出行为有两种办法:一是“将输出冻结在最后状态”:勾选之后,在 PLC 从 RUN 转换到 STOP 时,能把所有模拟量输出冻结在最后状态的那个值。二是“替换值”:要是“将输出冻结在最后状态”这个对话框没勾选,只要 CPU 处于 STOP 模式,就可以输入用在输出上的值(-32512 到 32511 )。默认的替换值是 0 。
(4)可以给所选模块的所选通道选择是启用还是禁用下面这些报警:超出上限、超出下限 、“断路”(只限于电流通道) 、“短路”(只限于电压通道)
五、模拟量程序通用比例换算公式
模拟量的输入和输出都能够用
下面这个通用的换算公式来换算:Ov = [(Osh - Osl)*(Iv - Isl)/(Ish - Isl)] + Osl 。
它的具体意义是这样的:
在输出部分,
Ov 指的是换算结果(实际的输出值 AQWx ,数据类型是浮点数);
Osh 指的是换算结果的高限(传感器检测的上限 ,数据类型是浮点数);
Osl 指的是换算结果的低限(传感器检测的下限 ,数据类型是浮点数)。
在输入部分,
Iv 指的是换算对象 (采集输入值 AIWx ,数据类型是整数);
Ish 指的是换算对象的高限 (模拟量转换数字量的上限 ,数据类型是整数);
Isl 指的是换算对象的低限 (模拟量转换数字量的上限 ,数据类型是整数)
六、程序编写
首先,要对采集值的范围进行限定(这个程序是在子程序里编写的,后面咱们会详细分享这个子程序)
再次,根据换算公式编写换算程序
最后,在左侧项目树调用此子程序,在管脚处输入具体的实参即可
七、库文件的添加
在西门子 PLC 里,可以手动添加模拟量库文件,直接调用特别方便。下面咱们介绍一下具体的添加办法(在本平台回复“库文件”就能下载 smart 常用库文件)。打开 Micro/WIN 编程软件,选择库,然后右键点击打开库文件夹。
把下载解压好的库文件复制黏贴至库文件
关闭软件后再次打开软件按上诉方法选择库点刷新库即可
八、编程举例
九、模拟量常见问题
1.为什么使用S7-200 SMART模拟量输入模块时接收到变动很大的不稳定的值?
(1)有可能模拟量输入模块和现场传感器各自用了自供电或者隔离的电源,但是这两个电源没有进行等电位连接,意思就是模拟量输入模块的电源和现场传感器的信号地没连上。这样就会出现一个很高的上下晃动的共模电压,对模拟量输入值有影响。
(2)也有可能是模拟量输入模块接线太长或者绝缘不好,受到了电磁干扰。可以考虑用下面这些办法解决:把现场传感器的负端和模块上的公共 M 端连接起来,来弥补这个波动,如下图所示:(要注意的是,得保证这是两个电源系统之间唯一的联系)不过得满足下面这些条件:模拟量输入模块内部不是隔离的;共模电压得小于 12V 并且大于 -12V;对于 60Hz 干扰信号的共模抑制比是 40dB;
2.模拟量模块分辨率和转换精度的区别?
分辨率指的是 A/D 模拟量转换芯片的转换精确程度,简单说就是用多少位的数值来展现模拟量。比如 10 位分辨率和 11 位分辨率的差别。S7 - 200 SMART CPU 模拟量 0 ~ 20mA 的通道值范围是 0 ~ 27648 。要是分辨率是 10 位,那就意味着当外部电流信号的变化超过 0.01953125mA 时,模拟量 A/D 转换芯片才觉得外部信号有变化。但要是分辨率是 11 位,就表示当外部电流信号的变化大于 0.009765625mA 时,模拟量 A/D 转换芯片就认为外部信号有变化。
S7-200SMART 模拟量详解(一) PLC论坛-全力打造可编程控制器专业技术论坛 -
来源:PLC技术玩