西门子MM430变频器实现PID恒压供水,案例以动力站水泵变频控制进行分解:
注意设定参数 PID控制 P2200---P2293
一、恒压控制原理:
1、通过变频器PID功能 控制,实现恒压控制。
2、恒压控制必须有主设定、反馈值两路输入控制,变频器将反馈值实时与主设定值进行比较,把偏差保存到参数R2273中,PID调节是基于偏差进行的,如果偏差为正数,即反馈量小于主设定时,变频器频率会自动提升,以提高目标压力,则变频频率会自动降低。
二、恒压供水接线:
MM430接线
压力反馈使用2线制仪表的接线
三、恒压供水参数设置
DI端子设置
P0700[0]=2 端子启动
P0701[0]=1 DI1 作为启动信号
P0703[0]=9 DI3作为故障复位
DO端子设置
P0731[0]=52.2 DO1设置为运行信号
P0732[0]=52.3 DO2设置为故障信号
P0748.1=1 DO2作为故障输出,有故障时NO触点闭合,
无故障时NO触点断开。
AI端子设置
P0756[0] =2 模拟量输入通道1,电流信号
P0757[0] =4 模拟量输入通道1定标X1=4mA
P0758[0] =0 模拟量输入通道1定标Y1=0%
P0759[0] =20 模拟量输入通道1定标X2=20mA
P0760[0] =100 模拟量输入通道1定标Y2=
P0761[0] =4 模拟量输入通道1死区宽度4mA
AO端子设置
P0771[0]=21 模拟量输出通道1,设置为实际频率输出
P0773[0]=50 模拟量输出通道1,滤波时间50ms
P0777[0]=0 模拟量输出通道 定标X1=0%
P0778[0]=4 模拟量输出通道 定标Y1=4mA
P0779[0]=100 模拟量输出通道 定标X2=
P0780[0]=20 模拟量输出通道 定标Y2=20mA
P0781[0]=4 模拟量输出通道死区宽度4mA
PID恒压控制功能调试2.3.4 AO端子设置
P0771[0]=21 模拟量输出通道1,设置为实际频率输出
P0773[0]=50 模拟量输出通道1,滤波时间50ms
P0777[0]=0 模拟量输出通道 定标X1=0%
P0778[0]=4 模拟量输出通道 定标Y1=4mA
P0779[0]=100 模拟量输出通道 定标X2=
P0780[0]=20 模拟量输出通道 定标Y2=20mA
P0781[0]=4 模拟量输出通道死区宽度4mA
P2200[0]=1 使能PID控制器
P2240[0]=X 依用户需求设置压力设定值的百分比
P2253[0]=2250 BOP作为PID目标给定源
P2264[0]=755.0 PID反馈源于模拟通道1
P2265=1 PID反馈滤波时间常数
P2274=0 微分时间设置。通常微分需要关闭,设置为0
P2280=P参数 比例增益设置(需要根据现场调试)
P2285=I参数 积分时间设置(需要根据现场调试)
PLC模拟量核心问题就是物理量程对应信号量程(比如0~10V,或4~20ma),信号量程对应A/D转换的整数范围,A/D转换的整数值西门子S7-200是0~32000,对西门子S7-300/400是0~27648。
1、西门子S7-300/400可以用FC105/FC106处理模拟(SCALE/UNSCALE)
2、西门子S7-200用AIW、AQW输入、输出模拟量,S7-200会自动将输入的模拟量转换为0~32000的整数,程序编写时通过AIW将转换后的0~32000的整数读进程序,通过你的计算,通过AQW输出即可,CPU会自动的D/A转换的。
西门子S7-200PLC模拟量编程的思维是什么?
模拟量输入就是将模拟量传感器、变送器的电量信号通过模拟量输入模板输入到PLC中,并应用程序进行转换为数值。而模拟量输出就是应用程序将数值通过模拟量输出模板输出到相应的外部设备中。必备的知识点:
a、要熟悉S7-200PLC模拟量输入、输出模块的硬件特性。
b、要熟悉S7-200PLC模拟量输入、输出模块的接线方法;
c、要熟悉S7-200PLC模拟量输入、输出模块的方式设置;
d、要熟悉模数、数模转换的方法;
e、要熟悉S7-200PLC相关的编程指令;
f、要熟悉你应用的模拟量传感器、变送器的电气特性及接线方法。
1.S7-200模拟量输入模块(EM231,EM235)寻址
l 每个模拟量扩展模块,按扩展模块的先后顺序进行排序,其中,模拟量根据输入、输出不同分别排序。模拟量的数据格式为一个字长,地址必须从偶数字节开始,精度为12位;模拟量值为0-32000的数值。输入格式: AIW[起始字节地址] 如AIW0 输出格式: AQW[起始字节地址] AQW0 每个模拟量输入模块,按模块的先后顺序地址为固定的,顺序向后排。例::AIW0,AIW2,AIW4……、AQW0,AQW2……。
l 每个模拟量扩展模块至少占两个通道,第一个模块只有一个输出AQW0(EM235只有一个模拟量输出),第二个模块模拟量输出地址也应从AQW4开始寻址,以此类推。
2.传感器连接到S7-200 模拟量输入模块(EM231,EM235)有哪些注意事项?
l 模拟量输入模块可以通过拨码开关设置为不同的测量方式(电流电压)。模块开关的设置应用于整个模块,一个模块只能设置为一种测量范围;开关设置只有在重新上电后才能生效。只能将输入端设置为一种量程和格式,即相同的输入量程和分辨率。
l EM235是Zui常用的模拟量扩展模块,它实现了4路模拟量输入和1路模拟量输出功能。EM235模拟量扩展模块的接线方法,对于电压信号,按正、负极直接接入X+和X-;对于电流信号,将RX和X+短接后接入电流输入信号的“+”端;未连接传感器的通道要将X+和X-短接。
l 注意:为避免共模电压,须将M端与所有信号负端连接,未连接传感器的通道要短接。当模拟量输入PLC接收到一个变动很大的不稳定的值时,原因之一:你可能使用了一个自供电或隔离的传感器电源,两个电源没有彼此连接,由此产生了一个很高的上下振动的共模电压,影响模拟量输入值。原因之二:可能是模拟量输入模块接线太长或绝缘不好。解决方法:1.连接传感器输入的负端与模块上的公共M端以补偿此种波动。(注意:事前要确定这是两个电源间的唯一连接。如果一个连接已经存在了,当再添加公共连接时可能会产生一个多余的补偿电流。)
l 当出现模拟量输入PLC接收到信号变化很慢,这可能是你使用了滤波器,可以通过降低滤波采样数,或取消模拟量滤波方式解决。
3.关于EM235是否能用于热电阻测温问题?
EM235不是用于与热电阻连接测量温度的模块,勉强使用容易带来故障。
4.关于EM235输入校准问题:
模拟量输入模块使用前应进行输入校准。其实出厂前已经进行了输入校准,如果OFFSET和GAIN电位器已被重新调整,需要重新进行输入校准。其步骤如下:
A、切断模块电源,选择需要的输入范围。
B、 接通CPU和模块电源,使模块稳定15分钟。
C、用一个变送器,一个电压源或一个电流源,将零值信号加到一个输入端。
D、 读取适当的输入通道在CPU中的测量值。
E、 调节OFFSET(偏置)电位计,直到读数为零,或所需要的数字数据值。
F、将一个满刻度值信号接到输入端子中的一个,读出送到CPU的值。
G、 调节GAIN(增益)电位计,直到读数为32000或所需要的数字数据值。
H、必要时,重复偏置和增益校准过程。
5.模拟量值和A/D转换值的转换问题:
假设模拟量的标准电信号是A0—Am(如:4—20mA),A/D转换后数值为D0—Dm(如:6400—32000),设模拟量的标准电信号是A,A/D转换后的相应数值为D,由于是线性关系,函数关系A=f(D)可以表示为数学方程:
A=(D-D0)×(Am-A0)/(Dm-D0)+A0。
根据该方程式,可以方便地根据D值计算出A值。将该方程式逆变换,得出函数关系D=f(A)可以表示为数学方程:
D=(A-A0)×(Dm-D0)/(Am-A0)+D0。
具体举一个实例,以S7-200和4—20mA为例,经A/D转换后,我们得到的数值是6400—32000,即A0=4,Am=20,D0=6400,Dm=32000,代入公式,得出:
A=(D-6400)×(20-4)/(32000-6400)+4
假设该模拟量与AIW0对应,则当AIW0的值为12800时,相应的模拟电信号是6400×16/25600+4=8mA。
又如,某温度传感器,-10—60℃与4—20mA相对应,以T表示温度值,AIW0为PLC模拟量采样值,则根据上式直接代入得出:
T=70×(AIW0-6400)/25600-10
可以用T 直接显示温度值。
模拟量值和A/D转换值的转换理解起来比较困难,该段多读几遍,结合所举例子,就会理解。为了让您方便地理解,我们再举一个例子:
某压力变送器,当压力达到满量程5MPa时,压力变送器的输出电流是20mA,AIW0的数值是32000。可见,每毫安对应的A/D值为32000/20,测得当压力为0.1MPa时,压力变送器的电流应为4mA,A/D值为(32000/20)×4=6400。由此得出,AIW0的数值转换为实际压力值(单位为KPa)的计算公式为:
VW0的值=(AIW0的值-6400)(5000-100)/(32000-6400)+100(单位:KPa)
编程实例
您可以组建一个小的实例系统演示模拟量编程。本实例的的CPU是CPU222,仅带一个模拟量扩展模块EM235,该模块的第一个通道连接一块带4—20mA变送输出的温度显示仪表,该仪表的量程设置为0—100度,即0度时输出4mA,100度时输出20mA。温度显示仪表的铂电阻输入端接入一个220欧姆可调电位器,简单编程如下:
温度显示值=(AIW0-6400)/256
编译并运行程序,观察程序状态,VW30即为显示的温度值,对照仪表显示值是否一致。
根据现场电机、变频器及控制压力的大小等实际情况 设定以上参数即可实现简单的PID恒压供水控制。