600 likes | 729 Views
第十一章 S7-200 系列 PLC. 模拟量单元及 PID 指令. 第一节 S7-200 EM235 模拟量单元. 模拟量模块有模拟量输入模块、模拟量输出模块、模拟量输入输出模块。 1 、 模拟量输入模块( A/D ) 作用: PLC 只能接收数字量信号,模拟量信号是一种连续变化的物理量。为实现模拟量控制,必须先对模拟量进行模 / 数( A/D )转换,将模拟信号转换成 PLC 所能接受的数字信号。模拟量输入模块的功能就是实现模 / 数( A/D )转换。. 组成. 由滤波、模数转换 A/D ,光电耦合等部分组成 。 光电耦合器起防止电磁干扰的作用 。
E N D
第十一章S7-200系列PLC 模拟量单元及PID指令
第一节 S7-200 EM235模拟量单元 模拟量模块有模拟量输入模块、模拟量输出模块、模拟量输入输出模块。 1、 模拟量输入模块(A/D) 作用:PLC只能接收数字量信号,模拟量信号是一种连续变化的物理量。为实现模拟量控制,必须先对模拟量进行模/数(A/D)转换,将模拟信号转换成PLC所能接受的数字信号。模拟量输入模块的功能就是实现模/数(A/D)转换。
组成 • 由滤波、模数转换A/D,光电耦合等部分组成 。 • 光电耦合器起防止电磁干扰的作用 。 • 对多通道的模拟量输入单元,通常设置多路转换开关进行通道的切换,且在输出端设置信号寄存器。
使用及特性 • 一般先用信号变送器把它们变换成统一的标准信号(如4-20mA的直流电流信号,1-5V的直流电压信号等),然后再送入模拟量输入模块 。 • 模拟量输入模块(EM231)具有4个模拟量输入通道。
模块上部共有12个端子,每3个点为一组,共4组。模块上部共有12个端子,每3个点为一组,共4组。 • 每组可作为一路模拟量的输入通道(电压信号或电流信号),电压信号用两个端子(A+、A–),电流信号用3个端子(RC,C+,C – ),其中RC与C+端子短接。未用的输入通道应短接(B+、B – )。 • 该模块需要直流24V供电(M、L+端)。可由CPU模块的传感器电源24VDC/400mA供电,也可由用户提供外部电源。右端分别是校准电位器和配置DIP设定开关。
EM231的电压输入范围:单极性0~10V,0~5V;双极性±5V,±2.5V • 电流输入范围 :0~20mA • 模拟量到数字量的最大转换时间 :250μs • 每个通道占用存储器AI区域2个字节。该模块模拟量的输入值为只读数据。
模拟量输入模块(EM231)的输入信号经模数(A/D)转换后的数字量数据值是12位二进制数。数据值的12位在CPU中存放格式如图所示。最高有效位是符号位:0表示正值数据,1表示负值数据。模拟量输入模块(EM231)的输入信号经模数(A/D)转换后的数字量数据值是12位二进制数。数据值的12位在CPU中存放格式如图所示。最高有效位是符号位:0表示正值数据,1表示负值数据。
① 单极性数据格式(0~10V、0~5V) 2个字节的存储单元的低3位均为0,数据值12位(单极性数据)是存放在第3~ 14位区域。这12位数据的最大值应为215-8=32760。单极性数据格式的全量程范围设置为0~32000。差值32760-32000=760则用于偏置/增益,由系统完成。由于第15位为0,表示是正值数据。
② 双极性数据格式(±5V、±2.5V) 2个字节存储单元的低4位均为0,数据值12位(双极性数据)是存放在第4~15位区域。最高有效位是符号位,双极性数据格式的全量程范围设置为–32000~+32000。 模拟量输入模块的分辨率通常以A/D转换后的二进制数数字量的位数来表示(12/11位)。
2、 模拟量输出模块(D/A) 模拟量输出模块由光电耦合器、数模转换器D/A和信号驱动等环节组成。光电耦合器防止电磁干扰。
1)外部接线图 左端起的每3个点为一组,共二组。每组可作为一路模拟量输出(电压或电流信号)。 第一组V0端接电压负载、I0端接电流负载,M0为公共端。 第二组的接法与第一组类同。 该模块需要直流24V供电。
输出信号的范围:电压输出为±10V,电流输出为0~20mA。电压输出的设置时间为100µs,电流输出的设置时间为2ms。每个输出通道占用存储器AQ区域2个字节。用户程序无法读取模拟量输出值。输出信号的范围:电压输出为±10V,电流输出为0~20mA。电压输出的设置时间为100µs,电流输出的设置时间为2ms。每个输出通道占用存储器AQ区域2个字节。用户程序无法读取模拟量输出值。 • PLC运算处理后的12位数字量信号(BIN数)在CPU中存放格式如图所示。最高有效位是符号位:0表示是正值,1表示是负值。
① 电流输出数据格式 2个字节的存储单元的低3位均为0,数据值12位数据是存放在第3~14位区域。电流输出数据字格式为0~+32000。第15位为0,表示是正值数据。
②电压输出的数据格式 • 2个字节的存储单元的低4位均为0,数据值的12位是存放在第4~15位区域。电压输出数据格式为-32000~+32000。 • 模拟量输出模块的分辨率通常以D/A转换前待转换的二进制数数字量的位数表示。
3、 模拟量输入输出模块(EM235) • EM235具有4个模拟量输入通道、1个模拟量输出通道 。 • 模拟量输入功能同EM231模拟量输入模块,技术参数基本相同 。 • 电压输入范围有所不同,单极性为0~10V、0~5V、0~1V、0~500mV、0~100mV、0~50mV。双极性为±10V、±5V、±2.5V、±1V、±500mV、±250mv、±100mV、±50mV、±25mV。 • 该模块的模拟量输出功能同EM232模拟量输出模块。技术参数也基本相同。 • 该模块需要直流24V供电。可由CPU模块的传感器电源24VDC/400mA供电。也可由用户提供外部电源。
二、校准及配置 下图为231及235的DIP配置开关的位置
四、精度及重复性 精度反映仪表在某一测量点上,测量值与实际值的偏差。而重复性则指在不改变输入信号,仪表每次读数之间的差异。
四、EM235的安装使用及程序编制 EM235安装使用及编制程序的一般过程如下: ①根据输入信号的类型及变化范围设置DIP开关,完成模块的配置工作,必要时进行校准工作。 ②完成硬件的接线工作。注意输入、输出信号的类型不同,采用不同的接入方式。模块4个输入端的信号在内部放大器前是叠加处理的,为防止空置端对接线端的干扰,空置端应短接。接线还应注意传感器的线路尽可能地短,且应使用屏蔽双绞线,要保证24VDC传感器电源无噪声、稳定可靠。
③确定模块安装入系统时的位置,并由安装位置确定模块的编号。S7-200扩展单元安装时在主机的右边依次排列,并从0开始编号。模块安装完毕后,将模块自带的接线排插入扩展总线。③确定模块安装入系统时的位置,并由安装位置确定模块的编号。S7-200扩展单元安装时在主机的右边依次排列,并从0开始编号。模块安装完毕后,将模块自带的接线排插入扩展总线。 ④为在主机中进行输入模拟量转换后数字数据的处理工作及输出需要在模拟量单元中转换为模拟量的数字量,要在主机中安排一定的存储单元。一般使用模拟量输入AIW及模拟量输出AQW单元安排由模拟量模块送来的数字量及待送入模块的数字量。而在主机的变量存储区V存放处理产生的中间数据。扩展模块的编址方法见本书第六章本地I/O和扩展I/O的寻址中的有关内容。
EM235的工作程序编制一般包含以下内容: 1、设置初始化子程序。在该子程序中完成采样次数的预置及采样和单元清零的工作,为开始工作做好准备。 2、设置模块检测子程序。该子程序检查模块的连接正确性及模块工作的正确性。 3、设置子程序完成采样及相关的计算工作。 4、工程所需的有关该模拟量的处理程序。 5、处理后的模拟量的输出工作。
第三节 PID调节及PID指令 一、PID调节方程式及在计算机中的应用 1、PID方程的离散化及改进 输出=比例项+积分项+微分项+初值
2、PID回路的类型及输入、输出量的标准化 ⑴回路控制类型的选择 P、PI、PID、I、D ⑵回路输入的转换和标准化 必须将SP、PV转换为标准的浮点型实数。转换步骤为: ①把16位整数值转换成浮点型实数值; 如: ITD AIW0,ACO DTR AC0,AC0
②把实数进一步标准化为0.0~1.0之间的数; 式中 Rnorm为标准化的实数; Rraw为没有标准化的实数值; Offset为调整值(单极性0.0,双极性0.5); Span为域值大小(单极性32000,双极性64000)。 如:/R 64000.0,ACO +R 0.5,ACO MOVR AC0,VD100
⑶回路输出转换成刻度整数值 与上面过程相反 如:MOVR VD108,AC0 -R 0.5,AC0 *R 64000.0,AC0 ROUND AC0,AC0 DTI AC0,LW0 MOVW LW0,AQW0 ⑷ 回路的正、反作用 回路增益Kc>0为正作用, Kc<0为反作用; Kc=0时的积分、微分控制,TI、TD >0为正作用, TI、TD < 0为反作用。
PID EN ENO TBL LOOP 二、PID回路控制指令 进行PID运算的前提条件是逻辑堆栈栈项(TOS)值必须为1。在程序中最多可以用8条PID指令。PID回路指令不可重复使用同一个回路号(即使这些指令的回路表不同),否则会产生不可预料的结果。 PID指令 TBL:VB回路表的起始地址 LOOP:(0~7)回路号 PID TBL,LOOP
若要以一定的采样频率进行PID运算,采样时间必须输入到回路表中。且PID指令必须编入定时发生的中断程序中,或者在主程序中由定时器控制PID指令的执行频率。若要以一定的采样频率进行PID运算,采样时间必须输入到回路表中。且PID指令必须编入定时发生的中断程序中,或者在主程序中由定时器控制PID指令的执行频率。 编写PID控制程序应注意的几个问题: 1、变量和范围 PVn、SPn在回路表中只能被指令读取而不能被修改。 Mn是PID运算产生的结果, 在每一次PID运算完成之后,需要把新的输出值写入回路表,以供下一次P1D运算。输出值被限定为0.0~1.0之间的实数。当PID指令从手动方式切换到自动方式时,回路表中的输出值可以用来初始化输出值。
如果使用积分控制,积分项前值要根据PID运算结果更新。每次PID运算后更新了的积分项前值要写入回路表,用作下一次PID运算的输入。当输出值超过范围(大于1.0或小于0.0),那么积分项前值必须根据下列公式进行调整:如果使用积分控制,积分项前值要根据PID运算结果更新。每次PID运算后更新了的积分项前值要写入回路表,用作下一次PID运算的输入。当输出值超过范围(大于1.0或小于0.0),那么积分项前值必须根据下列公式进行调整: (Mn>0) (Mn<0) 式中 MX是经过调整后的积分项前值; MPn是第n采样时刻的比例项; MDn是第n采样时刻的微分项。 修改回路表中积分项前值时,应保证MX的值在0.0~1.0之间。调整积分项前值后使输出值回到(0.0~1.0)范围,可以提高系统的响应性能。