PLC编程:你需要知道的

虽然可编程逻辑控制器(PLC)非常重要,但控制器内部的编程也同样关键,可以被忽视。

通过马特Fether 2022年7月7日
Matrix Technologies Inc.提供。

学习目标

  • 可编程逻辑控制器(PLC)编程始于项目定义阶段,同时生成设计文档。
  • PLC编程应该以最终用户容易理解的方式进行。
  • 标准和具体应用也应考虑与PLC编程。

可编程逻辑控制器(plc)作为许多制造操作的基础,能够执行许多任务。虽然控制器非常重要,但控制器内部的编程也同样重要,可以忽略不计。Matrix Technologies的部门经理马特·费瑟(Matt Fether)提供了他如何编程plc的见解,以及如何使编程更容易的技巧。

问:你的plc是如何编程的?

答:这开始于项目的定义阶段生成设计文档.如果按照项目执行的适当程序正确地定义和记录控制系统,那么控制器的实际编程是项目执行中的中间步骤,并提供更有效的开发。可重用代码、标准对象库和复制工具的使用可以进一步提高开发效率。在项目的整个编程阶段使用测试过程。如果一个操作要在多个单元上生成,那么在一个信号单元上生成该操作,并在将其复制到下一个单元之前彻底测试它。

在开发过程中使用复制工具可以节省时间,并有助于消除敲击键盘生成程序所带来的“肥胖指法”。

问:PLC程序的组织方式是否允许其他人稍后修改或更新?

答:生成终端用户可以轻松解释的应用程序。在系统集成项目结束时,生成和/或修改的应用程序被移交给客户端。最好以一种经常使用系统的人能够理解的方式来开发应用程序。系统集成商应该成为客户的合作伙伴,而不是生成“专有”应用程序。系统集成商应该在整个项目生命周期内与客户进行设计评审。这有助于确保客户的期望和系统集成商的设计之间的连续性。

应用程序的组织在任何编程之前就开始了,并且至少应该在提案阶段进行考虑。考虑多种因素,包括应用程序控制的内容,系统的大小/复杂性,以及它是一个全新的应用程序还是对现有应用程序的修改。同样重要的是,与客户讨论组织,以了解他们的标准命名法和他们的工厂区域,以便将它们合并到应用程序中。同样,目标是生成终端用户可以轻松导航定位特定设备和/或设备的应用程序。在生产过程中进行故障排除时,易于导航尤其重要。由于“梳理PLC代码”而导致的任何额外的过程或设备停机都将导致收入损失。

下面的屏幕截图演示了最近为批处理过程实现的PLC代码。它是用阶梯逻辑编写的,使用罗克韦尔自动化公司的Studio5000 Logix Designer软件,用于罗克韦尔自动化公司的1756-L75处理器。Matrix Technologies Inc.提供。

下面的屏幕截图演示了最近为批处理过程实现的PLC代码。它是用阶梯逻辑编写的,使用罗克韦尔自动化公司的Studio5000 Logix Designer软件,用于罗克韦尔自动化公司的1756-L75处理器。Matrix Technologies Inc.提供。

问:你手头有调试代码的专业知识吗?

答:当自动化工程人员精通调试代码时,分配到项目的工程师将负责已开发应用程序的定义、开发和调试。这需要对最初开发的程序进行调试,以确保它们为工厂验收测试(FAT)以及项目的现场调试阶段做好准备。这为客户提供了一个更高效和成功的项目。

在编程的早期阶段使用全面的测试过程有助于消除调试整个系统所带来的耗时练习,并有助于确保成功开发应用程序。

在某些情况下,项目的最终内部测试或现场调试阶段可能需要额外的资源。计划时间表和/或项目复杂性可能需要额外的资源来完成程序的内部测试。正确定义应用程序并确保它们被正确组织,有助于实现近乎无缝的过渡。

在某些情况下,项目调试阶段可能需要不涉及开发的资源。虽然这并不理想,但通过遵循项目执行程序并进行彻底的项目交接,新资源可以迅速跟上速度。

问:你是否使用了最好的应用语言?

答:虽然有几种不同的编程语言,最常见的继续是阶梯逻辑。有些应用程序是用结构化文本编写的,或者使用功能块来完成某些任务。结构化文本可用于向最初以结构化文本编程的现有可编程控制器添加功能。功能块可用于某些任务,如模拟输入滤波或比例积分导数(PID)循环。然而,一些供应商软件包需要一定级别的许可才能访问函数块编程。如果基于当前的软件许可,最终用户在可访问性方面受到限制,那么使用功能块将限制将来查看和/或修改编程的能力。

一旦系统投入运行,工程咨询公司应该使用我们的客户最适合支持的编程语言。为客户提供他们无法访问和维护的专有应用程序是没有帮助的。应用程序的最佳语言是客户端在项目结束时会满意的语言。

问:除了传统的IEC 61131-3编程语言,还应该考虑什么?

答:在开发可编程控制器应用程序之前,需要考虑几个因素。最关键的是如何设计系统,使其最适合当前的需求,同时允许快速扩展。还要考虑被控制的过程或设备。是否为工艺或设备选择了正确的硬件和软件包?如果被控制的系统是一条包装线,我们是否遵循OMAC PackML模型或者使用客户提供的模型?

在进行任何开发之前,还需要考虑标准。应用程序是否会使用这些资源ISA标准比如ISA-88模型的批处理控制?我们将使用任何客户端提供的或供应商提供的全局对象吗?这两个问题,以及其他许多问题,开始让我们深入了解所需的控制器内存大小。
另一个重要的考虑因素是整体系统架构设计。了解现有的或潜在的新网络架构将会是什么样子。系统是否需要,例如,几个通信模块的功能,同时提供一个健壮/安全的网络设计?

还要考虑与制造执行系统(MES)和数据收集系统的任何潜在接口。这些系统是否需要任何标记结构和/或我们需要合并到应用程序中的命名?

这些是在开始编程之前需要考虑的几个注意事项的示例。

在设计控制系统时,确保编程符合应用程序的即时需求,并允许未来的可扩展性。

马特Fether部门经理在吗?矩阵技术他是CFE媒体和技术内容合作伙伴。由网页内容经理克里斯·瓦夫拉编辑,控制工程, CFE媒体与技术,cvavra@cfemedia.com

更多的答案

关键词:可编程逻辑控制器,PLC编程

在线

参见//www.globalelove.com/control-systems/plcs-pacs/

考虑一下这个

还有什么是否应考虑用PLC编程?


作者简介:马特·费瑟(Matt Fether)是Matrix Technologies的部门经理。