CONT_S 输出参数以下参数的名称既适用于数据块,也适用于通过 Openness API 访问。表格 10-16 参数 数据类型默认值 说明QLMNUP BOOL FALSE 如果置位输出“调节值信号上升”,则应打开控制阀。QLMNDN BOOL FALSE 如果置位输出“调节值信号下降”,则应关闭控制阀。PV REAL 0.0 有效的过程值在“过程值”输出中输出。ER REAL 0.0 在“误差信号”输出中输出有效系统偏差。PULSEGEN 说明指令 PULSEGEN 用于构造具有比例执行器脉冲输出的 PID 控制器。PULSEGEN 通过脉宽调制将输入值 INV(= PID 控制器的 LMN)转换成具有恒定周期持续时间的脉冲序列,该周期持续时间对应于更新输入值时所用的循环时间。应用可以用 PULSEGEN 指令来组态具有脉宽调制的两步或三步 PID 控制器。该函数通常与连续控制器 CONT_C 一起使用。调用PULSEGEN 指令具有一个初始化例程,在设置输入参数 COM_RST = TRUE 时将运行该例程。所有信号输出都被设置为零。完成初始化例程后,必须设置 COM_RST = FALSE。只有以固定时间间隔调用块时,在控制块中计算的值才是正确的。因此,应在循环中断OB(OB 30 到 OB 38)中调用控制块。在 CYCLE 参数中输入采样时间。出现错误时的响应错误消息字 RET_VAL 不由块进行评估。PULSEGEN 的工作模式脉宽调制在每个周期持续时间内,脉冲的持续时间和输入变量成比例。通过 PER_TM 分配的周期与PULSEGEN 指令的处理周期不同。相反,PER_TM 周期由 PULSEGEN 指令的多个处理周期组成,因此每个 PER_TM 周期中 PULSEGEN 调用的次数决定了脉冲宽度的精度。每个 PER_TM 中 30 % 的输入变量和 10 次 PULSEGEN 调用表示以下结果:• 前三次 PULSEGEN 调用时 QPOS_P 输出为“1”(10 次调用的 30%)• 后七次 PULSEGEN 调用时 QPOS_P 输出为“0”(10 次调用的 70%)调节值的精度“采样比率”为 1:10(CONT_C 调用与 PULSEGEN 调用之比)时,此示例中的调节值精度将限制为 10%,换言之,只能在输出 QPOS_P 以 10% 为步长的脉冲持续时间对设置的输入值 INV 进行模拟。精度将随每次 CONT_C 调用中 PULSEGEN 调用的次数的增加而提高。例如,如果调用 PULSEGEN 的频率是调用 CONT_C 频率的 100 倍,则获得的操作值范围的精度为 1%。说明调用频率的减速比必须由用户编程设定。自动同步可以使脉冲输出与更新输入变量 INV 的指令(例如 CONT_C)自动同步。这样可以确保尽快将输入变量的变化输出为脉冲。脉冲整形器以对应周期持续时间 PER_TM 的时间间隔评估输入值 INV,并将该值转换成相应长度的脉冲信号。但是,由于通常以较慢的循环中断等级计算 INV,因此在 INV 更新之后,脉冲整形器应尽快开始将离散值转换为脉冲信号。为此,块可以使用以下步骤来与周期的起始点同步:如果 INV 发生变化,且块调用不在周期的第一个或Zui后两个调用循环中,则执行同步。脉冲持续时间将重新计算,并在下一个循环与新周期一起输出。如果旧的 INV 值(即 LMN 的值)映射到脉冲信号,则开始新周期和后续同步通常会导致某种不jingque的情况产生。PULSEGEN 的工作模式模式根据分配给脉冲整形器的参数,可以组态带有三位输出或者带有双极性或单极性两位输出的PID 控制器。 下表给出了可能的模式所对应的开关组合的设置。模式 MAN_ON STEP3_ON ST2BI_ON三位控制 FALSE TRUE 任意具有双极的两步控制调节范围(-100 % 到 100 %)FALSE FALSE TRUE带单极性的两位控制调节范围(0 % 到 100 %)FALSE FALSE FALSE手动模式 TRUE 任意 任意两步/三步控制的手动模式在手动模式 (MAN_ON = TRUE) 下,无论 INV 为何值,均可使用信号 POS_P_ON 和 NEG_P_ON设置三步或两步控制器的二进制输出。三位控制在“三步控制”模式下,可以生成执行信号的三种状态。为此,将二进制输出信号 QPOS_P 和QNEG_P 的状态值分配给执行器的相应工作状态。下表给出了温度控制的示例通过特性曲线按输入变量计算脉冲持续时间。特性曲线的形状由Zui小脉冲持续时间或Zui小间隔及比率因子定义。比率因子的标准值为 1。曲线中的“转折”由Zui小脉冲持续时间或Zui小间隔引起。Zui小脉冲持续时间或Zui小间隔正确分配的Zui小脉冲持续时间或Zui小间隔 P_B_TM 可以防止短暂开/关次数,避免由此而缩短开关元件和执行器的使用寿命。如果由输入变量 LMN 的较小juedui值产生的脉冲持续时间小于P_B_TM,则这些juedui值将被抑制。如果较大输入值生成的脉冲持续时间大于 PER_TM -P_B_TM,这些输入值将被设置为 或 -。用输入变量(以 % 表示)乘以周期持续时间来计算正或负脉冲的持续时间:脉冲持续时间 = INV / 100 * PER_TM下图显示了三步控制器的对称特性曲线非对称三步控制使用比率因子 RATIOFAC 可以更改正脉冲与负脉冲持续时间的比率。例如,在热过程中,可为加热和冷却过程使用不同的系统时间常数。比率因子 < 1将输入变量与周期持续时间相乘所得到的负向脉冲输出的脉冲持续时间与比率因子相乘。正向脉冲持续时间 = INV /100 * PER_TM负向脉冲持续时间 = INV / 100 * PER_TM * RATIOFAC下图显示了三步控制器的非对称特性曲线(比率因子 = 0.5)比率因子 > 1将输入变量与周期持续时间相乘所得到的正向脉冲输出的脉冲持续时间除以比率因子。正向脉冲持续时间 = INV / 100 * PER_TM / RATIOFAC负向脉冲持续时间 = INV / 100 * PER_TM两位控制在两步控制中,只会将 PULSEGEN 的正向脉冲输出 QPOS_P 连接到开/关执行器。根据所使用的调节值范围,两步控制器具有双极或单极调节值范围。如果控制回路中的两步控制器的连接需要执行脉冲逻辑取反的二进制信号,则可在 QNEG_P获得取反的输出信号。PULSEGEN 输入参数输入参数的值在块中不受限制。 没有参数检查。表格 10-17 参数 数据类型 默认值 说明INV REAL 0.0 在输入参数“输入变量”中连接模拟调节变量。允许介于 -100 到 100 % 之间的值。PER_TM TIME T#1s 在参数“周期持续时间”中输入脉宽调制的恒定周期持续时间。 该时间对应于控制器的采样时间。 脉冲整形器采样时间与控制器采样时间的比率决定脉宽调制的精度。PER_TM >=20*CYCLEP_B_TM TIME T#50 ms 可在参数“Zui小脉冲/中断时间”中分配Zui小脉冲/中断时间。P_B_TM >= CYCLERATIOFAC REAL 1.0 使用“比率因子”输入参数可以更改正向脉冲持续时间与负向脉冲持续时间的比率。 例如,在热处理中,可以为加热和冷却补偿不同的时间常数(例如,在使用电加热和水冷却的工艺中)。允许介于 0.1 到 10.0 之间的值。STEP3_ON BOOL TRUE 在输入参数“启用三步控制”中激活适当的模式。 在三步控制中,两个输出信号都处于激活状态。ST2BI_ON BOOL FALSE 在输入参数“启用双极性调节值范围的两位控制”中,可以在“双极性调节值范围的两位控制”和“单极性调节值范围的两位控制”模式之间选择。STEP3_ON = FALSE 是必需的。MAN_ON BOOL FALSE 通过设置输入参数“启用手动模式”可手动设置输出信号。POS_P_ON BOOL FALSE 对于处于手动模式下的三步控制,可在输入参数“正向脉冲开启”中操作输出信号QPOS_P。 在两步控制的手动模式下,QNEG_P 始终设置为与 QPOS_P 反向。NEG_P_ON BOOL FALSE 对于处于手动模式下的三步控制,可在输入参数“负向脉冲开启”中操作输出信号QNEG_P。 在两步控制的手动模式下,QNEG_P 始终设置为与 QPOS_P 反向。参数 数据类型 默认值 说明SYN_ON BOOL TRUE 通过设置输入参数“启用同步”,可以使脉冲输出自动与更新输入变量 INV 的块同步。 这样可以确保尽快将输入变量的变化输出为脉冲。COM_RST BOOL FALSE 该块具有一个初始化例程,在对输入“重启”进行置位时将处理该例程。CYCLE TIME T#10ms 块调用之间的时间间隔必须恒定。 “采样时间”输入用于指定块调用之间的时间。CYCLE >= 1ms参数 数据类型 默认值 说明QPOS_P BOOL FALSE 如果要输出脉冲,输出参数“输出信号正向脉冲”将被置位。 在三步控制中,此项始终为正向脉冲。 在两步控制中,QNEG_P 始终设置为与 QPOS_P 反向。QNEG_P BOOL FALSE 如果要输出脉冲,输出参数“输出信号负向脉冲”将被置位。 在三步控制中,此项始终是负向脉冲。 在两步控制中,QNEG_P 始终设置为与 QPOS_P 反向。TCONT_CP 说明指令 TCONT_CP 用于控制具有连续或脉冲控制信号的温度处理过程。控制器功能基于 PID 控制算法及其它适用于温度过程的功能。为改进对温度过程的控制响应,该块包括了一个控制区,并在设定值阶跃变化时减少比例分量。该指令可以通过控制器优化功能自行设置 PI/PID 参数。应用控制器控制一个执行器;换句话说,使用一个控制器可进行加热或冷却操作,但不能同时进行这两种操作。如果将该块用于冷却,必须为 GAIN 分配一个负值。控制器的这种反转意味着,例如温度上升时,调节变量 LMN 会增大,冷却操作也随之加强。调用指令 TCONT_CP 必须以恒定总线循环时间调用。要达到该目的,可以使用循环中断优先级等级(例如,S7-300 的 OB35)。TCONT_CP 指令具有一个初始化例程,在设置输入参数 COM_RST = TRUE 时将运行该例程。初始化过程中,积分作用被设置为初始化值 I_ITVAL。所有信号输出都设置为零。在执行完初始化例程后,块将 COM_RST 重新设置成 FALSE。如果需要在 CPU 重启时执行初始化,则可在OB 100 中调用此块 (COM_RST = TRUE)。TCONT_CP 的工作模式设定值分支在输入 SP_INT 中输入浮点格式的设定值,作为物理值或者百分比值。用于形成控制偏差的设定值和过程值必须采用相同的单位。过程值选项 (PVPER_ON)根据 PVPER_ON,可读取 I/O 格式或浮点数格式的过程值。PVPER_ON 过程值输入TRUE 通过输入 PV_PER 中的模拟量 I/O (PIW xxx) 读取过程值。FALSE 在输入 PV_IN 处采集浮点格式的过程值。过程值标定 PV_NORM(PF_FAC,PV_OFFS)函数 PV_NORM 根据以下规则计算 CRP_IN 的输出:“PV_NORM 的输出” = “CRP_IN 的输出” * PV_FAC + PV_OFFS有以下用途:• 以 PV_FAC 为过程值因子、PV_OFFS 为过程值偏移量进行过程值调整。• 将温度值标定为百分比值如果要以百分比的形式输入设定值,现在必须将测得的温度值转换成百分比值。• 将百分比值标定为温度值如果想要以物理温度单位输入设定值,现在必须将测得的电压/电流值转换成温度值。参数计算:• PV_FAC = PV_NORM 的范围/CRP_IN 的范围;• PV_OFFS = LL (PV_NORM) - PV_FAC * LL(CRP_IN);其中,LL:下限。