控制编程:编写一次,在开放系统的任何地方运行

对于工业控制,为运行在多个设备上的过程甚至离散控制设计复杂的程序是极其困难的,通常需要简化。开放系统有帮助。

通过汤姆•爱德华兹 2011年12月18日

如果人们编写控制程序,在多种类型的控制设备上运行它们会很有用:“一次编写,随处运行。”为多个控制器开发控制程序的主要障碍之一是,尽管各种供应商都做出了承诺,但由于尝试为多个硬件平台或“层”开发而导致的封闭和专有架构以及编程困难,在实现这种可移植性方面造成了严重的障碍。

一直以来,人们的梦想是,各个自动化供应商能够从不可移植的机器级代码和只能在特定品牌或类型的硬件上运行的编程中走出来,并提供一种开发可以更广泛使用的程序的方法。虽然这可能适用于IT领域,但在工业控制领域,这对程序员来说是一个开发噩梦。为在多个设备上运行的过程(甚至离散)控制设计复杂的程序是极其困难的。通常情况下,程序必须被“简化”到开始降低整个应用程序功能的程度。

此外,调试可能会发现一系列全新的问题。某些内容可能在一个目标设备上顺利执行,但在另一个设备上却不能。然后必须确定这是软件问题还是硬件问题。因此,程序员可能会修改代码以纠正硬件在一台设备上运行时出现的问题,但最终会影响其他设备上的执行。在这方面,这与web开发人员必须为多个web浏览器(internet Explorer、Firefox、Chrome、Safari等)编写页面时遇到的问题非常相似。

当然,尝试实现多种类型控制器的可移植性可能会使供应商面临必须支持多种不同设备的严峻挑战。

Opto 22没有试图满足所有程序员的所有需求,而是提供了一套编程工具,旨在与一系列基于以太网的硬件(独立和机架式控制器)一起工作,以接受控制程序。一切都紧密地结合在一起工作;游戏没有层级;不用担心程序只在一种控制器上工作。

但与此同时,如果控制工程师不喜欢这种方法,并且他们想将代码移植到多种类型的主控制器上,那么就有一个解决方案。无需使用Opto 22标准的基于流程图的编程软件PAC Control,程序员可以使用C、Java或其他编程语言工作,然后使用PC或IPC与Opto 22 I/O模块通信。优点包括使用Opto 22提供的控制器以外的控制器来执行程序。使用高级编程语言(如C和Java)提供了移植到工厂pc和ipc的能力(它们理解和执行此类代码自然没有问题)。

为了促进这一点,免费的OptoMMP工具包包括驱动程序和示例代码,可以从PC直接通信到Opto 22 I/O接口到您的现场设备。通过这种方式,控件程序员可以为多种类型的控制器开发代码(或“编写一次”)——我们自己的pac,加上pc和ipc,甚至是基于板的控件。

一些封闭的体系结构不允许这种选择。Opto 22 I/O系统采用开放的、基于网络的协处理器架构设计。专用的I/O处理器允许它独立于控制器执行。这为希望用C(或其他高级编程语言)编写代码、在PC上运行并与I/O通信的控件程序员创造了一个理想的场景。

NES + L编程

例如,New Enterprise Stone & Lime Co. Inc. (NES+L)在宾夕法尼亚州和特拉华州经营承包公司、混凝土工厂、采石场和生产设施。该公司完成的项目包括PNC公园(匹兹堡海盗队的主场)、宾夕法尼亚收费公路和宾夕法尼亚州立大学的比弗体育场。

NES+L使用各种基于pc的控制系统和Opto 22 I/O来控制用于制造混凝土、沥青、水泥、沥青和其他骨料的设备。通常,该公司使用的Opto 22系统包括一个通过以太网与PC通信的智能I/O处理器。PC机与模拟和数字I/O模块连接,以控制用于将石块拖入混合料的输送机的运动。基于pc的系统还控制液压门的打开和关闭,液压门用来将其他成分释放到混合物中。

但是为NES&L定义这些和其他过程的控制软件是由NES&L程序员使用Visual Basic创建的自定义的基于pc的控制应用程序。这个控制应用程序运行在PC上,而不是在Opto 22控制器上。NES+L控制程序有许多选项,例如NES+L必须创建的具体“食谱”分数的变量和函数。这些程序通常需要根据工厂的需要进行修改,NES+L认为使用“自制”应用程序比使用Opto 22编程工具更容易进行这些类型的更改。

NES+L还希望将操作数据发送回其办公室,以促进快速计费。这种类型的数据采集和与软件数据库的通信是基于pc的系统可以自行完成的。由于固有的“企业连接”,基于pc的系统特别有吸引力。NES+L很乐意使用它需要的I/O系统,而不必被迫使用专用的编程包和控制器。

一些控制硬件供应商要求使用他们的软件,通常每个座位花费1000美元或更多。NES+L程序员通过使用开放硬件架构避免了这些成本。

Tom Edwards是Opto 22的高级技术顾问。由Mark T. Hoske编辑,CFE Media,控制工程www.globalelove.com

请参阅与2012年1月封面故事相关的控件编程文章。

www.opto22.com

www.nesl.com

//www.globalelove.com/pac