开发环境如何简化PLC编程

集成开发环境让控制工程师在动态设计多个自动化配置时更容易创建和重用代码。

Aw 16064编程1

对杰克·派珀来说,灵活和快速不是娱乐和游戏。对于俄勒冈州尤金市Ridgeline管道制造公司的工程经理来说,这是一件严肃的事情,因为他的工作是从公司的挤压生产线中榨取利润。他必须时刻关注如何提高生产线的灵活性和速度,因为生产线每天要将10万磅的聚氯乙烯(PVC)加工成管道、弯头、卷帘和配件。

这就是为什么当自动化四条挤出线时,Piper寻求一些自动化供应商最近添加到其集成开发环境(ide)中的高级编程工具的好处。与其他制造公司的许多同行一样,他希望利用这些新的编程工具缩短开发时间、改进工程和减少错误的方式。

IDE定义:什么是集成开发环境?点击这里了解更多信息。

促使Piper对新编程工具产生兴趣的是Ridgeline通常会在短时间内收到来自分销商的紧急订单,当电气和其他建筑承包商需要补充其建筑工地日益减少的供应时。当这些最后一分钟的订单到来时,Ridgeline的四台自动化挤出机的生产速度比快速转移生产的能力更重要。

派珀解释说:“我们需要能够在几分钟内批准客户的订单并开始生产,而不是像我们的大型竞争对手那样通常需要一两天的时间。”

更复杂的是,Ridgeline的125种产品有不同的长度、直径、颜色和其他变化。派珀指出:“我们每天至少更换三种产品,每种产品都有自己独特的一套参数。“我们需要每条线路都能收集、存储和自动下载数据,运营商可以根据需要进行微调。

“我们越能自动化生产和监控管道厚度,我们就越能跟踪质量,并向客户提供一致的产品。这转化为收入的增加,因为我们避免了浪费材料。”它还使生产部门能够对生产线之间存在的问题和不一致进行故障排除。

为了为他的四个挤出机创建一个灵活的自动化平台来处理这些快速转换,Piper和他的团队与工程师合作罗克韦尔自动化公司(www.rockwellautomation.com)工业自动化集团(automationgroup.com),采用罗克韦尔集成架构的系统集成商,每条160英尺的挤出生产线上的设备都使用Allen-Bradley ControlLogix L61可编程自动化控制器(PAC)进行协调。操作人员通过供应商的PanelView Plus 1000人机界面(hmi)监控机器并进行产品切换。

从图书馆借阅
实现挤出生产线自动化的最大挑战是编写能够提供必要控制级别的独特代码。派珀说:“一个程序的好坏取决于它背后的知识基础。出于这个原因,他依赖于自动化集团工程师的专业知识,他们使用罗克韦尔自动化样本代码库中的温度控制示例开发了代码。

除了从自动化供应商(如Rockwell automation)编译的代码库中提取代码外,集成商和最终用户还可以创建自己的自定义库。以泵为例。一旦程序员定义了它,决定了如何控制它,并编写了必要的代码,生成的控制对象就可以在IDE中的任何地方重用。之后,如果有人改进了对象,那么修改很容易在整个系统中延续下去。

Piper回忆道:“通过使用示例代码,我们能够节省设计阶段的时间和头痛。由于这些效率,Ridgeline Pipe在启动两小时内就生产出了PVC管。“我们的团队从未见过在任何类似的生产环境中,在不到48小时内完成这项工作。”他还估计,这些线路现在需要的操作员更换、故障排除和预测性维护的时间减少了25%。

允许以这种方式使用代码库的是定义数据类型和共享它们的方法的行业标准的演变。因为这些数据定义允许在不同的软件包之间共享对象和与之相关的参数,代码库本质上促进了专业工程软件开发人员之间的协作方法。因此,这些开发人员没有尝试在设计环境中构建尽可能多的工程功能,而是专注于让他们的专业设计软件协同工作。

“我们的方法是将自动化设计与机械设计环境同步,”罗克韦尔自动化集成架构市场开发总监迈克•巴罗斯(Mike Burrows)表示。例如,在这种方法中,研究机器人的机械工程师可以确定机器人及其工作空间的大小,并在SolidWorks等机械软件包中模拟其运动。然后,在自动化设计环境中,可以获得与运动相关的扭矩轮廓、电气图纸和其他参数,用于确定电机和伺服器的尺寸,并确定执行运动轮廓的逻辑。

Burrows报告说,像宝洁(Proctor and Gamble)和通用汽车(General Motors)这样的大型制造商在制造任何设备之前,都在他们的设计环境中使用这类软件工具来模拟生产线。他说:“这些公司现在不仅在设计过程中减少了步骤,而且还可以在生产前进行一些模拟和建模。”“所以原型制作过程要快得多。”

除了数据定义的标准化之外,Burrows还指出了自动化软件供应商在ide方面的另外两个发展。第一种是基于标记的操作系统,它允许用更少的实用程序实现更多的功能。一旦定义,标记就可以在整个体系结构中使用——在操作员界面、驱动器和I/O中。因此,不再需要为每个设备提供单独的实用程序。

“我们的目标是减少必须提供查找表、重写标签和同步控制参数的次数,”Burrows说。在过去,工程师必须在多达30个配置实用程序中重新键入和同步标签定义。

另一个开发是将设计时间与运行时集成起来,这样控制功能就可以在整个系统中共享。伺服驱动器、分布式I/O设备和网络设备与控制器共享一个公共运行时引擎,减轻了设计时间过程的负担。巴罗斯说:“程序员不再需要确定设备是什么,以及它如何在系统中通信。”“控制器和伺服驱动器已经相互识别,并知道它们是如何工作的。

“集成的运行时环境允许您只担心为机器编程。它将找出如何最好地配置自动化设备。”

64位,抽象和IEC 61131-3
今天的ide可用的高级编程工具超越了代码库和使它们成为可能的底层技术。许多供应商也在开发基于pc技术不断发展的工具。

“最近最大的进步是基于pc的软件正在进行从32位到64位的转变——功率立即翻倍,”位于明尼阿波利斯的TwinCAT3专家、体育博士鲍勃·特拉斯克(Bob Trask)说倍福自动化有限公司(www.beckhoff.com)。“尽管大多数计算机硬件已经使用64位处理器好几年了,但软件基本上只用了它一半的功率。”

他指出,随着个人电脑计算能力的不断提高,以及从多个来源进口软件组件的能力不断增强,64位的趋势最近已经积聚了一股动力。他继续说道:“伴随着硬件的速度和能力而来的是运行速度更快的软件和高级图形。

事实上,Trask认为抽象是软件领域最近取得的许多进步的原因。对于软件开发,术语“抽象”并不是指不具体的想法或任务。相反,它意味着通过面向对象编程实现关注点和任务的分离。“换句话说,如果一个程序员在一个层次上处理一些事情,他或她就完全被从另一个层次上处理它的过程中移除或抽象出来了,”Trask解释道。

>>集成逻辑和运动控制的新功能:自动化供应商解释他们如何提供真正集成的设计环境等。访问http://bit.ly/zlfcyw

使用面向对象编程和pc实现自动化,以及IEC 61131-3第三版,可以帮助从开发人员到最终用户的整个范围的用户。“如果处理得当,这些新技术将为开发者提供一个更强大、功能更丰富的环境,”Trask说。“让多个程序员在相同的可重用代码上工作的能力,以及在不牺牲现有特性的情况下添加功能的潜力,提高了效率,减少了错误。”对于最终用户来说,好处包括设备上更直观的用户界面,以及更好的性能、可维护性和对性能指标的访问。

>>点击这里阅读。net如何促进模块化。

为了减少错误和提高安全性,自动化供应商和软件开发人员也正在远离脚本或解释语言,如Visual Basic脚本版(VBScript)、Visual Basic for Applications (VBA)和专有编辑器。总部位于休斯顿的工业自动化软件和云服务提供商Tatsoft LLC的首席执行官Marcos Taccolini表示,他们正在用c#和Visual Basic . net (VB.Net)等编译型语言取代这些解释型语言,这些语言允许在设计阶段进行一些测试。

“使用解释性语言,你不能在开发阶段进行完整的代码验证,”他解释道。在这些情况下,只有在执行过程中才能识别诸如使用变量而不初始化和参数不一致之类的错误。因此,最终验证必须在项目运行时进行,而不是在工程配置期间进行。

在开发用于ide的高级编程工具时,增加安全性的另一个趋势是采用计算环境,例如。net Framework微软(msft . o:行情)。(www.microsoft.com)华盛顿州雷德蒙德市。和Java甲骨文(orcl . o:行情)。(www.oracle.com)这些工具允许进程与操作系统的本地隔离。Taccolini说:“这可以更好地利用多处理器核心的计算机,并确保更大的运行稳定性,即使面对潜在的驱动程序和硬件错误,或者单个模块的故障。”

更多掌控