技术文章和通讯

复杂工业控制策略的设计与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 × 10^5,每辊100秒后
  • 检测传感器和执行器的故障,并从它们中恢复或安全关闭

创建植物模型

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

我们使用SimMechanics对活套进行建模,将活套和前后的钢带表示为三个通过关节连接的体。然后,我们将滚动级和活套级模型合并到一个Simulink系统模型中(图2)。

plc_fig2_w.jpg
图2。Simulink模型显示轧机阶段和活套阶段。=活套角。

控制器的设计与验证

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

plc_fig3_w.jpg
图3。多回路的控制架构。=活套角度,=板张力,=板速度。

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

AGR-控制液压阀的开度,以产生滚动压缩力,控制带材厚度

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

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

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

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

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

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

多阶段过程的建模与仿真

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

显示具有机架间活套的多轧机级的Simulink模型
图5。显示具有机架间活套的多轧机级的Simulink模型。

附加的子系统被用于模拟过程的其他方面,如质量守恒和跨不同轧机阶段的运输延迟。图6显示了流程中三个阶段中的每个阶段的流程变量。每个阶段的厚度设定值已达到,以生产符合要求中规定的厚度的板材。不同机架之间的板材张力扰动也得到了有效的抑制。

plc_fig6_w.jpg
图6。过程变量的仿真结果。(a)在第3阶段出口达到的整体减薄目标。(b)三个阶段平均分配的总减厚目标。(c)板材张力不受干扰。

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

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

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

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

我们可以通过人为地在Simulink模型中引入故障来测试逻辑。图8显示了容错逻辑的仿真结果。当一个阶段失败时,监视控制器检查负载是否可以分配到剩余的正常阶段。如果可以,则对各个阶段agr要求新的减厚设定值。如果不能,则通过停止纸的移动来关闭该过程。

plc_fig8_w.jpg
图8。仿真结果显示,系统从阶段故障恢复:阶段2和3补偿时,阶段1失败。当第2阶段失败时,由于第3阶段无法单独完成整体减薄目标,系统将被关闭。

在PLC上实现控制器

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

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

自动代码生成消除了手工编码可能引入的错误,并有助于确保最终的结构化文本在PLC上产生的数值结果与我们在仿真中看到的结果非常接近。Simulink PLC Coder生成了一个测试台架,让我们将来自IDE的测试执行结果与原始模拟结果进行比较。

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

出版于2011 - 91894v01

查看相关功能的文章

查看相关行业文章

Baidu
map