技术文章及通讯

复杂工业控制策略的设计与PLC实现

作者:Parasar Kodati, MathWorks, Tom Erkkinen, MathWorks, Arkadiy Turevskiy, MathWorks


可编程逻辑控制器(plc)用于控制问题,从相对简单的单输入单输出控制回路到具有多个耦合回路和复杂监控算法的系统。对于简单的控制问题,例如单一的比例-积分-导数(PID)循环,工程师可以实现PID控制器,并在机器运行时调整增益。对于更复杂的控制问题,在plc上编码和验证控制逻辑更具挑战性。设计人员必须确定多个控制器参数的值,并确保控制算法的所有部分按预期协同工作。在硬件原型或实际过程中调优一个复杂的控制器不仅耗时;这涉及相当大的损坏设备的风险。

解决方案是使用仿真来设计和验证模型中的复杂控制策略。然后,同样的模型可用于自动生成IEC 61131结构化文本,以编程plc进行部署。本文以轧钢机系统为例,演示了这种方法。

轧钢系统:控制设计目标

轧钢机用钢板生产厚度均匀的薄板。它通常由几个轧制阶段组成,每个阶段的辊对通过它的钢板进行压缩(图1)。在辊阶段之间,活套阶段保持钢板的张力,防止撕裂和松弛的形成。

plc_fig1_w.jpg
图1所示。轧机工艺示意图。

为了模拟多级生产过程,我们首先对单级轧机进行建模和控制。可以通过连接几个更简单的设置来分析更通用的配置。

我们简易磨机的控制系统必须满足以下要求:

  • 在最后一个轧辊的出口处,所生产的钢保持8毫米+/- 0.1毫米的厚度
  • 在最后一个轧辊出口处保持所需的吞吐量为1m /s +/- 0.1 m/s
  • 保持材料的张力为1.75 N/M^2 x 10^5,每辊100秒后
  • 检测传感器和执行器的故障,并从中恢复或安全关闭

创建植物模型

我们首先创建一个Simulink金宝app®我们将用来开发和测试我们的控制器的轧机模型。我们分两个步骤对该过程进行建模,首先对单个轧制阶段进行建模,然后对它们之间的活套进行建模。在轧制阶段,使用液压驱动器来产生轧制压缩力,压缩钢带。由电机驱动产生的滚动扭矩有助于控制滚动速度。使用SimMechanics, Simscape,以及SimHydraulics®我们可以分别对滚筒的机械、电气和液压元件进行建模,而不必明确地推导出方程。

我们使用SimMechanics对活套进行建模,将活套和前后钢带表示为三个由关节连接的体。然后,我们将滚动阶段和活套阶段模型组合在一个Simulink系统模型中(图2)。金宝app

plc_fig2_w.jpg
图2。金宝appSimulink模型显示了轧机阶段和活套阶段。=弯管角。

控制器的设计与验证

下一步是使用植物模型来设计控制器。图3显示了多级轧机过程的典型控制系统的多回路体系结构。

plc_fig3_w.jpg
图3。多回路控制体系结构。Theta =弯管角,sigma =板张力,omega =板速度。

控制系统由以下补偿器组成:

AGR-控制液压阀的开度以产生轧制压缩力以控制带钢厚度

ASR-命令直流电机的电压,产生轧制扭矩,从而控制带钢速度

大型强子对撞机-设置辊的转速参考值,以间接达到所需的材料张力(当张力高于所需值时,则设置更高的速度设定值,以提供额外的材料来降低张力。如果张力低于所要求的值,则通过降低纸张吞吐量来消除松弛。)

中国铁建-命令电流到活套电机,以定位活套,以保持材料张力

注意,所有循环都是耦合的。例如,AGR补偿器控制的液压作动器不仅影响带钢厚度,还影响带钢速度。LHC和ASR补偿器一起工作,以保持所需的张力和带钢速度。

我们首先设计了控制单个滚轮运行的补偿器。我们开始线性化非线性模型使用Simulink控制设计金宝app。然后利用Simulink Control design中的PID设计工具对控制器进行调优,计算控制器增益。金宝app调谐器(图4)自动计算PID增益给定所需的响应时间。使用Sim金宝appulink设计优化我们微调控制器增益,使系统在非线性情况下表现良好。通过运行非线性仿真对总体设计进行了验证。请注意,植物模型有两个目的:我们使用Simulink Control Design生成的线性化植物模型来调整补偿器,我们使用完整的非线性植物模型来使用闭环仿真验证我们的控制器设计。金宝app

plc_fig4_w.jpg
图4。PID调节器。您可以使用滑块微调您的设计。

多阶段过程的建模与仿真

使用自定义库块,我们重用轧机阶段和活套阶段子系统作为多阶段流程中的组件(图5)。

金宝appSimulink模型显示多个轧机阶段与机架间活套阶段
图5。金宝appSimulink模型显示多个轧机阶段与机架间活套阶段。

附加的子系统被用来模拟过程的其他方面,如质量守恒和跨不同磨阶段的运输延迟。图6显示了流程中三个阶段中的每个阶段的流程变量。每个阶段的厚度设定值已经达到,以生产出要求中规定的厚度的薄片。不同机架之间的张力干扰也被有效地排除。

plc_fig6_w.jpg
图6。仿真结果为过程变量。(a)在第三阶段出口实现的总体减薄目标。(b)三个阶段平均分配总的减薄目标。(c)排除薄板张力扰动。

故障检测逻辑的设计与验证

除了反馈补偿器,过程控制器还必须包括监控、故障检测和恢复逻辑,例如,监控系统中传感器和执行器的状态。我们的重点是故障恢复逻辑,检测液压阀中的故障并采取纠正措施。具体来说,我们的逻辑将在一个多阶段过程中将整个减厚目标分配到各个阶段的厚度设定值。当一个级的液压压缩失败时,逻辑检查其他级是否可以补偿失败的级。如果可以,则重新计算各工作阶段的减厚设定值,以实现总体减厚目标。

我们使用状态流®来开发这个逻辑(图7)。请注意,这个逻辑是必须为实际过程控制开发的东西的简化表示,因为它假设失败的阶段不提供任何压缩,但允许材料通过。在实际的设置中,需要一个更加全面和复杂的逻辑。

plc_fig7_w.jpg
图7。在statflow中实现的容错设定值分布。

我们可以通过人为地在Simulink模型中引入故障来测试逻辑。金宝app图8显示了容错逻辑的仿真结果。当一个级发生故障时,监督控制器检查负载是否可以分配到其余正常的级。如果可以,则对各个阶段agr命令新的厚度减小设定值。如果不能,则通过停止薄片运动来关闭该过程。

plc_fig8_w.jpg
图8。仿真结果显示,系统从阶段故障恢复:阶段2和3补偿时,阶段1失败。当第2阶段失败时,系统关闭,因为仅靠第3阶段无法完成整体减厚目标。

在PLC上实现控制器

我们使用Sim金宝appulink PLC Coder从控制器自动生成iec61131结构化文本。然后可以将这些可移植的结构化文本导入目标PLC硬件所使用的IDE中。图9显示了由故障检测和调节逻辑生成的IEC 61131结构化文本。注意,生成的结构化文本有很好的注释,可以很容易地追溯到模型。

plc_fig9_w.jpg
图9。使用Simulink PLC编码器生成IEC 61131结构化文本。金宝app引用回状态流图的注释显示为蓝色。

自动代码生成消除了手动编码可能引入的错误,并有助于确保最终的结构化文本在PLC上产生的数值结果与我们在模拟中看到的结果密切匹配。金宝appSimulink PLC Coder提供了一个测试平台,可以让我们将来自IDE的测试执行结果与原始模拟结果进行比较。

如果我们想要使用硬件在环测试来测试完全实现的PLC硬件和软件,我们可以使用Simulink Coder从工厂模型生成C代码金宝app并在实时模拟器上运行,比如xPC Target,连接到PLC控制系统。

发布于2011 - 91894v01

查看相关功能的文章

查看相关行业的文章