CN114942616A - 用于为过程控制系统生成可实施的序列功能图代码的方法、系统和计算机程序产品 - Google Patents

用于为过程控制系统生成可实施的序列功能图代码的方法、系统和计算机程序产品 Download PDF

Info

Publication number
CN114942616A
CN114942616A CN202210133736.0A CN202210133736A CN114942616A CN 114942616 A CN114942616 A CN 114942616A CN 202210133736 A CN202210133736 A CN 202210133736A CN 114942616 A CN114942616 A CN 114942616A
Authority
CN
China
Prior art keywords
operational
control
configuration parameters
function
operational functions
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210133736.0A
Other languages
English (en)
Inventor
安波大辅
骆俞伊
马里切尔·巴卡考
阿奇·桑比坦·奥里多
张继松
张恩耀
中村裕之
大河原忠辉
汤浅庆子
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Publication of CN114942616A publication Critical patent/CN114942616A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/33Intelligent editors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32252Scheduling production, machining, job shop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Programmable Controllers (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

本发明提供了方法、系统和计算机程序产品,其使得能够生成可执行序列功能图,以便由过程控制系统进行后续检索和实施。在一个实施例中,生成可执行序列功能图,包括:(i)接收表示用于实施序列流内的操作功能的选中设备的设备选择数据,(ii)接收表示要由选中设备实施的一组操作功能的操作数据,(iii)对一个或多个配置参数赋值,(iv)接收控制语句数据,所述控制语句数据表示要在所述一组操作功能的实施期间用于实施过程流控制的一组控制语句,(v)一个或多个控制语句配置参数赋值,以及生成用于实施一组操作功能的机器可读SEBOL程序代码。

Description

用于为过程控制系统生成可实施的序列功能图代码的方法、 系统和计算机程序产品
技术领域
本发明涉及工业自动化和过程控制系统的领域。更具体地,本发明提供了能够生成可执行的序列功能图的方法、系统和计算机程序产品,以供过程控制系统随后检索和实施。
背景技术
工业环境实施用于运行和控制制造过程、转换过程或生产过程的控制系统(例如,分布式过程控制系统)。控制系统通常包括连接到一个或多个现场设备的一个或多个过程控制器。现场设备可以包括位于工业环境内的阀、阀致动器、开关和变送器(例如,温度传感器、压力传感器、水位传感器和流量传感器),并且这些现场设备被配置用于物理控制功能或过程控制功能。现场设备控制功能的示例包括打开阀或关闭阀、以及测量过程参数和/或环境参数(例如,温度或压力),以控制过程工厂或系统内的一个或多个过程。
在另一端,控制系统内的过程控制器可以被配置为接收由现场设备生成的信号,其中,所接收到的信号传达与由现场设备测量到的过程参数相对应的信息和/或关于现场设备的状态的其它信息。过程控制器可以附加地执行控制应用,该控制应用实施用于实施过程控制决策的一个或多个控制模块。过程控制器内的控制模块通过通信线路或连接向现场设备发送控制信号,以控制一个或多个现场设备的操作。作为被放置为过程控制器和一个或多个现场设备之间的通信中介,输入-输出(I/O)设备通过将电信号转换为数字值、并通过经由一个或多个通信协议发送和接收这种信号,来实现过程控制器与现场设备之间的数据传输和控制指令传输。
过程工厂内的控制系统可以包括一个或多个过程控制器,并且每个控制器经由I/O卡和/或I/O端口连接到一个或多个现场设备。一个或多个控制器存储用于现场设备的控制和操作的控制应用和实施控制策略。控制系统可以被配置成跟踪或收集与各种工厂资产或工厂设备相关的数据,工厂资产或工厂设备包括但不限于现场设备、旋转设备和关键机械。控制系统可检索地存储工厂或工厂组中的所有设备或资产的设备相关数据和/或性能数据,以用于监控工厂资产的状态和健康并进行维护工作的目的。另外,控制系统可以被配置成:一方面,用作工厂操作员与一个或多个现场设备之间的通信中介;或者另一方面,用作操作员终端与一个或多个现场设备之间的通信中介,以用于实现这种现场设备的高效配置、调试、检查和维护的目的。
为了本书面描述的目的,将可以理解的是,对“现场设备”的引用可以包括对阀、阀致动器、开关、变送器、智能变送器、定位器或可以位于工业过程环境内并且可以被配置用于物理或过程控制功能的其它传感器设备中的任何一个的引用。现场设备可以包括“智能”现场设备,即,支持诸如HART或基金会现场总线通信协议的数字通信协议的设备。
为了本书面描述的目的,对“控制系统”的引用应当被理解为,对可以在过程控制环境、工业工厂或工业环境中实施的任何控制系统的引用,并且应当包括分布式控制系统(DCS)和/或安全控制系统(SCS)。
为了下面书面描述的目的,术语“物理设备标签”应当表示,与实际现场设备相关联的设备名称或设备标识符。理想地,位于工业环境内或与工业环境内的控制系统耦接的每个现场设备都设置有唯一的物理设备标签。典型地,每个现场设备都设置有本地存储器,并且对应于这种现场设备的物理设备标签可检索地存储在本地存储器中。当现场设备与控制系统耦接时,控制系统可以检索和读取与现场设备相对应的物理设备标签,并且使用这样的物理设备标签作为与现场设备相对应的唯一标识符,以用于现场设备操作、控制或监控的目的。
为了下面书面描述的目的,术语“系统标签”应表示与控制系统内的软件功能块或软件控制模块唯一关联的名称或标识符,并且所述软件功能块或软件控制模块被配置成控制、监控特定现场设备或与特定现场设备接口。理想地,被配置为控制、监控现场设备或与现场设备接口的软件控制模块的每个软件功能块都设置有唯一的系统标签。系统标签由控制系统用来实现、控制和/或操作相应的软件功能块或软件控制模块。
为了下面书面描述的目的,术语“标签”本身应当被理解为指代物理设备标签或系统标签。
当在工业环境内配置和实施过程时,管道和仪器图(P&ID)被用作示出过程流的管道以及安装的设备和仪器的图。通常,一个或多个P&ID以打印输出的形式、或以PDF文件或图像文件的形式提供给工程师。P&ID通常包括用于管道、信号线、仪器和仪器组的标准化符号和数字。
在过程控制环境设计过程(例如,工业工厂设计过程)期间,控制工程师可以基于P&ID图来设计过程控制系统。控制工程师将读取P&ID,并从中提取工程数据。工程数据可以用于配置过程控制环境内的批处理过程或一个或多个其它过程。
图1示出了示例性P&ID 100。图1中所示的P&ID 100示出了用于制作和分配茶的过程环境,并且包括茶壶、入口阀和出口阀、水输入和蒸汽输入、以及所述过程中涉及的相应管道、阀和控制组件的表示。
在P&ID内表示的过程,可以通过使用序列功能图(SFC)来记录和表示。SFC(sequential function chart)是以图形编程语言表达的程序代码的序列,其中所述程序代码的序列被生成以在过程控制系统内实现。它可以用于能够被表示为在过程控制系统内实现的一系列顺序地有组织步骤的编程过程。
例如,图2示出了用于实施在图1的处理环境100内向茶壶注水以用于制作和分配茶的过程的SFC 200。如图2所示,SFC 200包括(i)在步骤202,初始化过程,(ii)在步骤204,向茶壶注水,以及(iii)在步骤206,结束注水步骤。
SFC内的每个步骤由图形编程语言(在优选实施例中,图形编程语言是面向序列和批处理语言(SEBOL)编程语言)中的程序代码定义。程序代码定义在每个步骤中执行的动作。在用于生成SFC的现有系统中涉及在SFC序列构建器界面内生成SFC。SFC序列构建器界面是允许用户定义一系列有序和链接的步骤的图形用户界面。
当在现有技术的SFC序列构建器界面内生成SFC时,用户需要频繁地引用P&ID。这是因为,批处理内的物理设备的标签标识符或标签名称需要包括在相应的程序代码内,以使程序代码能够操纵和控制物理设备。
图3提供了示例性P&ID 302和可包括在对应于P&ID 302的SFC内的一种类型的对应程序代码304的表示300。如从图3中可以看出的,来自P&ID 302的各种标签标识符(例如01XV001、01LI001)被特别地包括在相应的程序代码304的段内,以用于使SFC能够操纵和控制对应于这些标签标识符的设备的目的。因此,可以理解为,当生成SFC时,用户需要重复地引用和查看对应的P&ID。
图4示出了可被配置成使得能够生成SFC的一种SFC序列编辑器400。SFC序列编辑器400可被配置为使得由一个或多个特定设备或一个或多个特定设备的一个或多个组件实现的操作序列可在SFC序列编辑器400内生成。SFC序列编辑器400可为用户或控制工程师提供绘图画布,以创建步骤的有序序列来表示序列流程图。步骤的有序序列内的每个步骤可以包括可在特定设备或特定设备的一个或多个组件上实施的一个或多个动作,或由特定设备或特定设备的一个或多个组件实施的一个或多个动作。步骤的序列可以通过使用有向连接符来互连单个步骤被排序,其中有向连接符指定控制流,并且可以定义如何从一个步骤进行到下一个步骤。
在SFC序列编辑器400内创建步骤的有序序列的基于用户输入或基于控制工程师输入的动作需要通过在程序代码文本编辑器内实现的编码步骤来完成,以允许控制工程师指定或创建编程代码(例如,SEBOL代码),该编程代码将在SFC序列编辑器400内已经定义的操作序列中的一个或多个特定步骤处实现。
图5提供了SFC序列编辑器502和基于文本的编辑器504的表示500。SFC中正在被构造的每个步骤可以用程序代码(例如,SEBOL代码)来配置。通过选择SFC序列编辑器502内的SFC内的步骤(例如,通过双击该步骤或触发适当的命令或界面选项),SFC序列编辑器502在显示器上调用基于文本的编辑器(SFC序列编辑器504),使得用户或控制工程师可以编写与选中步骤相对应的程序代码(例如,SEBOL代码)。写入文本编辑器SFC序列编辑器504中的代码与SFC的选中步骤相关联或链接,使得当SFC的该步骤在过程控制系统内执行时,对应的程序代码被执行以用于操纵或控制过程控制系统的特定设备或组件。
以上结合图1至5描述的现有技术解决方案存在多个缺点,包括:
·由于用于生成SFC的程序代码的现有基于文本的编辑器没有将P&ID的显示集成在编辑器内,因此用户或控制工程师必须在P&ID显示和文本编辑器之间连续切换,以用于编写对应于P&ID的SFC程序代码的目的,以及
·在基于文本的编辑器中手工编写程序代码很慢且容易出错,特别是当用户或控制工程师不精通编程语言的情况下。
因此,需要解决现有技术中的这些缺点的解决方案。
发明内容
本发明提供了方法、系统和计算机程序产品,其使得能够生成可执行序列功能图,以便由过程控制系统进行后续检索和实施。
本发明提供一种用于在过程控制系统内生成用于过程控制的序列功能图内的程序代码的处理器实现的方法,包括:(i)接收表示用于实现序列流的选中的设备的设备选择数据;(ii)接收表示将由所述选中的设备实施的一组操作功能的操作数据;(iii)对与一个或多个操作功能相对应的一个或多个操作功能配置参数赋值;(iv)接收表示将在实施所述一组操作功能期间实现以用于过程流控制的一组控制语句的控制语句数据;(v)对与所述一组控制语句内的一个或多个控制语句相对应的一个或多个控制语句配置参数赋值;以及(vi)基于接收的所述操作数据、接收的所述控制语句数据、赋值的所述操作功能配置参数和赋值的所述控制语句配置参数中的一个或多个,生成用于实现所述一组操作功能的机器可读程序代码。
在本方法的进一步实施例中,接收设备选择数据的步骤包括:(i)在显示界面内接收包括设备选择性用户输入的输入;(ii)在显示器上呈现基于所述设备选择性用户输入而选中的设备的视觉表示;(iii)接收与所述选中的设备相关联的功能块标识符数据和功能块类型数据;以及(iv)接收表示将由所述选中的设备来实现的一组操作功能的操作数据。
接收表示将由所述选中设备来实现的一组操作功能的操作数据的方法步骤可以包括:(i)通过显示可在所述选中的设备上执行的操作功能的列表,对接收到用户输入做出响应;(ii)通过另一用户输入接收从显示的操作功能的列表中对操作功能的选择;(iii)识别与选中的操作功能相关联的操作功能类型;(iv)检索与所识别的操作功能类型相关联的一组配置参数;以及(v)在显示界面内起动对所述选中的操作功能的显示。
在一个实施例中,对与所述一组操作功能内的一个或多个操作功能相对应的一个或多个操作功能配置参数赋值的方法步骤包括:(i)将一组选中的操作功能配置参数与选中的操作功能相关联;(ii)针对所述一组选中的操作功能配置参数内的一个或多个操作功能配置参数检索默认操作功能配置参数值;(iii)将所述默认操作功能配置参数值赋予与所述选中的操作功能相关联的相应操作功能配置参数;(iv)接收识别一个或多个用户指定参数值的用户输入,所述一个或多个用户指定参数值被赋给所述一组选中的操作功能配置参数内的一个或多个操作功能配置参数;以及(v)将所述一个或多个用户指定参数值赋予与选中的操作功能相对应的操作功能配置参数。
在具体实施例中,接收表示将在实施所述一组操作功能期间实现以用于过程流控制的一组控制语句的控制语句数据的方法步骤包括:(i)显示用于过程流控制的一个可选控制语句的列表,所述可选控制语句与将由所述选中的设备实施的一个或多个操作功能相对应;(ii)基于用户输入从所述可选择控制语句的列表中选择控制语句;(iii)检索与选中的控制语句相关联的一组配置参数;以及(iv)启动在所述显示界面内对选中的控制语句的显示。
在本发明发的另一个实施例中,对与所述一组控制语句内的一个或多个控制语句相对应的一个或多个控制语句配置参数赋值的步骤包括:(i)识别与所述一组控制语句内的控制语句相对应的一组控制语句配置参数;(ii)检索与所识别的一组控制语句配置参数内的一个或多个控制语句配置参数相对应的默认配置参数值;(iii)将所述默认配置参数值赋予相应的控制语句配置参数;(iv)接收识别一个或多个用户指定参数值的用户输入,所述一个或多个用户指定参数值被赋予一个或多个控制语句配置参数;以及(v)将所述一个或多个用户指定参数值赋予所述相应的控制语句配置参数。
在本方法的特定实施例中,生成用于实现一组操作功能的机器可读SEBOL程序代码的步骤包括:(i)检索一组机器代码生成规则,所述一组机器代码生成规则对应于:(a)为在所述选中的设备上实现而选择的一组操作功能,以及(b)为过程流控制而选择的一组控制语句,所述一组控制语句与所述一组操作功能中的一个或多个操作功能相对应;以及(ii)生成用于在所述选中设备上实现所述一组操作功能的机器可读程序代码,其中,所述生成的机器可读程序代码是基于:(a)检索到的一组机器代码生成规则,(b)一组操作功能和一个或多个操作功能配置参数值,所述一个或多个操作功能配置参数值被赋予给与所述一组操作功能相关联的一个或多个操作功能配置参数,(c)一组控制语句和一个或多个控制语句配置参数值,所述一个或多个控制语句配置参数值被赋予给与所述一组控制语句相关联的一个或多个控制语句配置参数,以及(d)与所述选中的设备相关联的功能块类型数据。
本发明额外提供用于在过程控制系统内生成用于过程控制的序列功能图内的程序代码的处理器实现的系统,所述系统包括:(i)存储器;以及(ii)处理器,其被配置用于:(a)接收表示用于实现序列流的选中的设备的设备选择数据;(b)接收表示将由所述选中的设备实施的一组操作功能的操作数据;(iii)对与一个或多个操作功能相对应的一个或多个操作功能配置参数赋值;(iv)接收表示将在实施所述一组操作功能期间实现以用于过程流控制的一组控制语句的控制语句数据;(v)对与所述一组控制语句内的一个或多个控制语句相对应的一个或多个控制语句配置参数赋值;以及(vi)基于接收的所述操作数据、接收的所述控制语句数据、赋值的所述操作功能配置参数和赋值的所述控制语句配置参数中的一个或多个,生成用于实现所述一组操作功能的机器可读程序代码。
所述系统可以被配置为使得接收设备选择数据的步骤包括:(i)在显示界面内接收包括设备选择性用户输入的输入;(ii)在显示器上呈现基于所述设备选择性用户输入而选中的设备的视觉表示;(iii)接收与所述选中的设备相关联的功能块标识符数据和功能块类型数据;以及(iv)接收表示将由所述选中的设备实施的一组操作功能的操作数据。
在一个实施例中,所述系统可以被配置为使得接收表示将由所述选中的设备实施的一组操作功能的操作数据的步骤包括:(i)通过显示可在所述选中的设备上执行的操作功能的列表,对接收到用户输入做出响应;(ii)通过另一用户输入接收从显示的操作功能的列表中对操作功能的选择;(iii)识别与选中的操作功能相关联的操作功能类型;(iv)检索与所识别的操作功能类型相关联的一组配置参数;以及(v)在显示界面内启动对所述选中的操作功能的显示。
在另一个实施例中,所述系统可以被配置成使得对与所述一组操作功能内的一个或多个操作功能相对应的一个或多个操作功能配置参数赋值的步骤包括:(i)将一组选中的操作功能配置参数与选中的操作功能相关联;(ii)针对所述一组选中的操作功能配置参数内的一个或多个操作功能配置参数检索默认操作功能配置参数值;(iii)将所述默认操作功能配置参数值赋予与所述选中的操作功能相关联的相应操作功能配置参数;(iv)接收识别一个或多个用户指定参数值的用户输入,所述一个或多个用户指定参数值被赋予所述一组选中的操作功能配置参数内的一个或多个操作功能配置参数;以及(v)将所述一个或多个用户指定参数值赋予与选中的操作功能相对应的操作功能配置参数。
在具体实施例中,所述系统可以被配置为使得接收表示将在实施所述一组操作功能期间实现以用于过程流控制的一组控制语句的控制语句数据的步骤包括:(i)显示用于过程流控制的一个可选控制语句的列表,所述可选控制语句与将由所述选中的设备实施的一个或多个操作功能相对应;(ii)基于用户输入从所述可选择控制语句的列表中选择控制语句;(iii)检索与选中的控制语句相关联的一组配置参数;以及(iv)启动在所述显示界面内对选中的控制语句的显示。
在本系统的进一步实施例中,对与所述一组控制语句中的一个或多个控制语句相对应的一个或多个控制语句配置参数赋值的步骤包括:(i)识别与所述一组控制语句内的控制语句相对应的一组控制语句配置参数;(ii)检索与识别的一组控制语句配置参数内的一个或多个控制语句配置参数相对应的默认配置参数值;(iii)将所述默认配置参数值赋予相应的控制语句配置参数;(iv)接收识别一个或多个用户指定参数值的用户输入,所述一个或多个用户指定参数值被赋予一个或多个控制语句配置参数;以及(v)将所述一个或多个用户指定参数值赋予所述相应的控制语句配置参数。
所述系统可以被配置为使得生成用于实现一组操作功能的机器可读SEBOL程序代码的步骤包括:(i)检索一组机器代码生成规则,所述一组机器代码生成规则对应于:(a)为在所述选中设备上实现而选择的一组操作功能,以及(b)为过程流控制选择的一组控制语句,所述一组控制语句与所述一组操作功能中的一个或多个操作功能相对应;以及(ii)生成用于在所述选中的设备上实现所述一组操作功能的机器可读程序代码,其中,所述生成的机器可读程序代码是基于:(a)检索到的一组机器代码生成规则,(b)一组操作功能和一个或多个操作功能配置参数值,所述一个或多个操作功能配置参数值被赋予给与所述一组操作功能相关联的一个或多个操作功能配置参数,(c)一组控制语句和一个或多个控制语句配置参数值,所述一个或多个控制语句配置参数值被赋予给与所述一组控制语句相关联的一个或多个控制语句配置参数,以及(d)与所述选中的设备相关联的功能块类型数据。
本发明还提供一种用于在过程控制系统内生成用于过程控制的序列功能图内的程序代码的计算机程序产品。所述计算机程序产品包括非暂时性计算机可用介质,所述非暂时性计算机可用介质中体现有计算机可读程序代码,所述计算机可读程序代码包括用于在基于处理器的计算系统内实现以下步骤的指令:(i)接收表示用于实现序列流的选中的设备的设备选择数据;(ii)接收表示将由所述选中的设备实施的一组操作功能的操作数据;(iii)对与一个或多个操作功能相对应的一个或多个操作功能配置参数赋值;(iv)接收表示将在实施所述一组操作功能期间实现以用于过程流控制的一组控制语句的控制语句数据;(v)与所述一组控制语句内的一个或多个控制语句相对应的一个或多个控制语句配置参数赋值;以及(vi)基于接收的所述操作数据、接收的所述控制语句数据、赋值的所述操作功能配置参数和赋值的所述控制语句配置参数中的一个或多个,生成用于实现所述一组操作功能的机器可读程序代码。
附图说明
图1示出了P&ID的示例。
图2示出了示例性序列功能图(sequential function chart,SFC)。
图3示出了示例性SFC和可链接到SFC的步骤的一类对应程序代码的表示。
图4示出了可被配置成使得能够生成SFC的一种SFC序列编辑器。
图5提供了一种SFC序列编辑器和基于链接文本的编辑器的表示。
图6示出了根据本发明的教导配置的用于生成SFC的系统。
图7示出了根据本发明的教导配置的SFC序列编辑器的显示界面。
图8是在根据本发明的教导配置的SFC序列编辑器生成的操作序列中使用的设备的示例性图示。
图9至图12示出了由根据本发明的教导配置的SFC序列编辑器实现的显示菜单。
图13至图19是表示根据本发明的教导的用于生成SFC的各种方法的流程图。
图20示出了可以实施本发明的各种实施例所依据的示例性计算机系统。
具体实施方式
本发明提供了方法、系统和计算机程序产品,其使得能够生成可执行序列功能图,以便由过程控制系统进行后续检索和实施。
图6示出了根据本发明的教导的被配置用于生成可执行序列功能图的系统600。系统600包括SFC序列编辑器控制器602、命令库604、操作功能库606、代码生成器控制器608和通过系统600的操作生成的程序代码610(例如,SEBOL代码)。下面将更详细地讨论系统600的配置和功能。
SFC序列编辑器控制器602可以包括由处理器实现的控制器,其被配置为生成和控制显示界面,该显示界面包括至少一个图面板、控制语句面板、命令面板和配置参数面板,该处理器实现的控制器的功能将在下面更详细地描述。
命令库604是基于非暂时性存储器的包括操作功能和控制语句的库,所述的操作功能和控制语句是用户依据特定SFC添加或选择的。存储在命令库604内的操作功能和控制语句的集合可以与相应的SFC相关联,用户已经为该相应的SFC添加或选择了所述操作功能和控制语句的集合。
操作功能库606包括基于非暂时性存储器的库,该库用于存储表示可用于与特定功能块类型相关的执行的操作功能的集合的信息。
为了本说明书的目的,“控制语句”应当被理解为定义过程流控制、使得能够设置控制路径和/或使得能够重复执行一个或多个过程步骤的语句或指令。
为了本说明书的目的,“操作功能”应当被理解为可以在设备或设备的组件上执行的动作,并且该动作导致设备或组件内的状态改变。“操作功能”的非限制性示例是可植入在设备或设备的组件上的“读取PV”动作、“写入PV”动作、“打开”动作、“关闭”动作、“运行”动作和“停止”动作。
为了本说明书的目的,“功能块”应当被理解为定义和实现输入变量和输出变量之间的功能的指令或代码的集合。
为了本说明书的目的,“功能块类型”应当被理解为功能块的类别,其中,与该类别有关的功能块共享一组公共属性、参数或性质。
将实现SFC的每个设备或相应的一个或多个组件具有一个或多个相应的功能块。相应的功能块能够控制、监视所述设备或组件或者与所述设备或组件接口。每个这样的功能块具有相应的功能块类型。此外,每个功能块类型具有与之相关联的一组相应的操作功能,使得这种功能块类型的每个功能块将承载一组相应的操作功能,所述操作功能可以结合该功能块来实现。标识可用于结合每个特定功能块类型实现的操作功能的信息被存储在操作功能库606中,并且可从操作功能库606中被检索。
代码生成器控制器608包括处理器实现的代码生成器控制器,代码生成器控制器被配置为通过解析、解释和编译操作函数和控制语句来生成句法上(syntactically)正确的程序代码(例如,SEBOL代码),其中,所述操作函数和所述控制语句已经由用户选择以结合SFC来实现并且可能已经从命令库604被检索。
图7示出了用于实现本发明的由SFC序列编辑器生成和控制的显示界面700。在一个实施例中,显示界面700可以由SFC序列编辑器控制器602产生。显示界面700可以被配置为包括多个界面子窗口,所述多个界面子窗口包括图面板702、控制语句面板704、命令面板706和配置参数面板708。
显示界面700或图面板702可被配置成能够生成、显示和编辑SFC内的操作序列中涉及的设备或组件的图形表示。例如,图面板702可以用于生成图形表示800(如图8所示),其中,用户可以从设备或设备的组件的可选图形表示的库或菜单中选择图内的设备或组件。在图形表示800中,虚线框内的设备或组件表示可由用户选择的设备或组件。每个选中的设备或组件可以与功能块标识符(例如,功能块名称)和功能块类型相关联。
在各种实施例中,显示界面700可以被配置成使得图面板702被配置成:(i)使用户能够在一个或多个操作序列中包括涉及的物理设备或组件的绘图、图示或视觉或图形表示,(ii)使用户能够从库或菜单中选择物理设备或组件的图示或视觉或图形表示,(iii)使用户能够将在图面板702内包括的设备或组件与相应的功能块标识符(例如,功能块名称)和/或功能块类型相关联,以及(iv)使得能够显示与设备或组件相关的操作,所述设备或组件已经包括在绘图、图示或视觉或图形表示中。
在一个实施例中,显示界面700可被配置成使得:接收对图面板702内所表示的设备或组件的用户指令(例如,来自鼠标或指针设备的右击)从而显示一个可在装置或组件上执行的操作功能的列表(例如,显示下拉菜单)。作为示例,与设备或一个或多个组件相关联的操作功能可以包括“打开”、“关闭”、“运行”或“停止”操作功能中的任何一个操作功能。
在图9所示的分级上下文菜单900中提供了该实施例的示例性实例。图9示出了以下方式:其中,通过选择图表800中的阀设备,用户可以选择调用命令来打开/关闭/运行/停止阀,或者读取/写入与所述阀设备相关联的功能块的属性(例如,其处理、操纵和设置参数值)。如从图9的分级上下文菜单900中将观察到的,选择对应于标签“01XV001”(其是阀设备)的设备导致了下拉菜单904提供可选择的“命令”、“读取”和“写入”选项。选择下拉菜单904中的“命令”选项进而显示提供“打开”、“关闭”、“运行”和“停止”操作功能的下拉子菜单906,而选择下拉菜单904中的“读取”或“写入”选项使下拉子菜单908提供“过程值(PV)”、“操作值(MV)”和“设定值(SV)”操作功能,可选择其中的任何一个来实现与选中装置有关的“读取”或“写入”指令。因此,显示界面700的图面板702使得能够配置用于选中设备或组件的各种操作功能和各种操作参数。
如图10中更详细地示出的,选择特定的操作功能(例如,图9中的阀装置的打开/关闭/运行/停止指令)将把选中的操作功能添加到显示界面700内的命令面板706、命令面板1010。
此外,如图10所示,显示界面700可以被配置成使得命令面板706、命令面板1010包括至少两列。第一列用于显示功能(即,一个选中操作功能的描述),第二列用于显示在程序代码(例如,SEBOL代码)中执行的操作语句,作为伪代码或者以类似于伪代码的方式或格式显示。
与设备或组件相关联的每个操作功能可以具有相应的操作功能类型,其中,操作功能类型包括表示操作功能所对应的类别的信息。换句话说,操作功能类型表示类似操作功能的逻辑分组。例如,(i)操作功能“打开”和“关闭”可以对应于操作功能类型“命令”,(ii)操作功能“读取PV”和“读取MV”可以对应于操作功能类型“读取”,以及(iii)操作功能“写入SV”和“写入PV”可以对应于操作功能类型“写入”。
与设备或组件相关联的每个操作功能类型(即,每个操作功能的类别)或为设备或组件选择的每个操作功能类型可以具有与该操作功能类型的操作功能相关联的不同的配置参数。换句话说,一个特定操作功能类型中的一个操作功能继承了与该操作功能类型相关联的配置参数。因此,对应于同一操作功能类型的多个操作功能通常会具有相同的配置参数。
如图11所示,显示界面700可以被配置成使得当操作功能被选择并且被添加到命令面板1102时,每个操作功能被赋予与操作功能类型相关联的配置参数1106。此外,每个配置参数可以被赋予有默认值。
显示界面700可以被配置成使得配置参数值(包括那些以上述方式赋予的默认值)可以由用户或控制工程师通过配置参数面板708进行修改。例如,如图10的配置面板1010示出的初始默认变量名称“var1”随后可通过用户输入的更适当的变量名称被替换。
除了操作功能之外,一个或多个控制语句也可以与设备或设备的一个或多个组件相关联。
每个控制语句可以具有与该控制语句相关联的不同配置参数。
如图11所示,命令面板1102内表示的每个控制语句可以被赋予与该控制语句相关联的配置参数1104和配置参数1108。配置参数1104和配置参数1108的每个这样的控制语句集可以被赋予默认值。
显示界面700可另外被配置成使控制语句能够通过控制语句面板704被添加。这样的控制语句(例如,for循环、while循环、if-else语句)使用户或操作者能够控制程序代码的顺序和流。如图12所示,可以在控制语句面板704内(从多个可用的模板控制语句中)选择一个或多个控制语句,并且因此可以将一个或多个控制语句添加到命令面板706、命令面板1010。显示界面700可以被配置成使得控制语句参数可以被初始赋予默认参数值,并且随后这些默认参数值可以通过配置参数面板708被修改。
在实施例中,显示界面700可被配置成使得控制语句面板704显示控制语句的列表,用户可以选择该控制语句的列表以便包括在程序代码中,其中,所述程序代码将与SFC链接或在SFC内实现,并显示界面700可被配置成基于用户输入来选择所显示的控制语句中的一个或多个,以便包括在程序代码内。
此外,显示界面700可被配置成使得命令面板706能够显示已被用户选择以便包含在程序代码中的控制语句和操作的列表,该程序代码将与SFC链接或在SFC内实现。
此外,显示界面700可被配置成使得配置参数面板708使用户能够修改已经被选中以便包括在程序代码内的操作功能和/或控制语句的配置参数,该程序代码将与SFC链接或在SFC内实现。
一旦已经在命令面板706内适当地填充和配置了所有所需的操作功能和控制语句,则执行代码生成器(例如,由图6的系统600的代码生成器控制器608实施的代码生成器),以将操作和控制语句转换成句法上正确的程序代码,例如,句法上正确的SEBOL程序,该句法上正确的SEBOL程序可链接到对应的SFC并直接用于实施相应的SFC。
图13示出了根据本发明的教导在SFC内产生程序代码的方法。在实施例中,图13的方法可以在图6的系统600内实现。
步骤1302包括:启动用于批处理的SFC的生成。SFC的生成可基于从用户接收的启动指令在SFC序列编辑器控制器602处被启动。
步骤1304包括:接收表示用于实现SFC的选中设备的设备选择数据。设备选择数据可以包括对已由用户选择以实现SFC内的操作功能的一个或多个设备或组件进行识别的数据。所述数据可以基于接收到的识别了由用户选择的设备或组件的用户输入。在实施例中,可通过显示界面700内的图面板702来接收用于选择设备或组件的(一个或多个)用户输入。接收设备选择数据可以另外包括以下步骤:接收或检索表示与每个选中设备或组件相关的功能块和/或功能块类型的数据。接收的设备选择数据可以以下方式被可检索地存储在系统600的命令库604内:将接收到的设备选择数据与存储在命令库604中的相应命令相关联。在一个实施例中,设备选择数据连同将所述设备选择数据与对应的SFC或SFC内的对应步骤或操作功能相关联的数据一起存储在命令库604内。
步骤1306包括:接收表示将由选中设备或组件实现的一组操作功能的操作数据。该操作数据可以表示与基于在步骤1304接收到的信息被识别出的选中设备或组件相对应的一个或多个操作功能。在实施例中,所述一组操作功能内的操作功能由一个或多个操作功能构成,所述一个或多个操作功能已经与和选中设备或组件相对应的功能块类型相关联。可通过在显示界面700内的图面板702内接收到的用户输入来接收步骤1306处的数据。
步骤1308包括:对与该组操作功能内的一个或多个操作功能相对应的一个或多个配置参数赋值。对于任何配置参数,赋予的值可以包括与所述配置参数相关联的定义值/默认值中的任一者,或者可以包括用户指定的值。在实施例中,可以基于通过显示界面700内的配置参数面板708接收到的用户输入,将一个或多个值赋予操作配置参数。
步骤1310包括:接收表示一组控制语句的控制语句数据,该组控制语句将在实施该组操作功能期间实现以用于过程流控制。控制语句数据可以表示与选中设备或组件对应的一个或多个控制语句,其中所述选中设备或组件是基于在步骤1304接收到的信息而被识别的。步骤1310处的控制语句可以通过在显示界面700内的控制语句面板704内接收到的用户输入被接收。
步骤1312包括:对与该组控制语句内的一个或多个控制语句相对应的一个或多个控制语句配置参数赋值。对于任何控制语句配置参数,赋予的值可以包括与该控制语句配置参数相关联的预定义值/默认值中的任一个,或者可以包括用户指定的值。在实施例中,可以基于通过显示界面700内的配置参数面板708接收到的用户输入,将一个或多个值赋予控制语句配置参数。
步骤1314包括:基于接收的操作数据、接收的控制语句数据、赋值的操作配置参数和赋值的控制语句配置参数中的一个或多个,来生成用于实现一组操作功能和控制语句的机器可读程序代码。在实施例中,机器可读代码可以由系统600的代码生成器控制器608生成。在优选实施例中,机器可读代码是SEBOL程序代码。
图14示出了根据图13的方法步骤1304接收设备选择数据的方法。在实施例中,可以通过在显示界面700内实现的图面板702来实现图14的方法。
步骤1402包括:在显示界面700的图面板702内接收包括设备选择性用户输入的输入。设备选择性用户输入可以包括:识别已由用户选择的一个或多个设备或组件以用于在SFC内实现操作的用户输入。可以通过显示界面700内的图面板702来接收用于选择设备或组件的用户输入。
步骤1404包括:在显示器上呈现基于在步骤1404接收到的设备选择性用户输入而被选中的设备或组件的视觉表示。
步骤1406包括:接收与选中的设备或组件相关联的功能块标识符数据(functionblock identifier data)和/或功能块类型数据(function block type data)。所述功能块标识符数据和/或功能块类型数据可以通过用户输入被接收,或者可以从P&ID被提取,或者可以从数据库中被检索。
图15示出了接收表示一组操作功能的操作数据的方法,该组操作功能将由根据图13的方法步骤1306的选中设备或组件来实现。在实施例中,可以通过如在显示界面700内实现的图面板702来实现图15的方法。
步骤1502包括:通过显示一个可在选中的设备或组件上执行的操作功能的列表,来对通过显示界面700(例如,通过图面板702)接收的用户输入做出响应。用户输入可以包括:与图面板702内表示的设备或组件相结合的通过用户界面设备(例如,来自鼠标或指针设备的右击)的任何输入。操作功能的列表可以以响应于用户输入而显示的下拉菜单或列表的形式被显示。响应于接收到用户输入来显示与设备或组件相关联的操作功能的列表的示例性实例在图9的分级上下文菜单900中被示出。在实施例中,与设备或组件相关联的操作功能的列表可以包括:与对应于该设备或组件的功能块类型相关联的操作功能的列表。
步骤1504包括:通过显示界面接收用户输入,其中,所述用户输入从显示的可执行的操作功能的列表中选择操作功能。同样,用户输入可以包括:通过用户界面设备对用户打算从显示的可执行操作功能的列表中选择的操作功能的任何输入(例如,鼠标或指针设备的左击)。
步骤1506包括:识别与选中操作功能相关联的操作功能类型。可以基于与在步骤1502显示的可执行操作功能的列表内的每个操作功能相关联的定义或存储的操作功能的类型信息,来识别操作功能的类型。在实施例中,可由SFC序列编辑器控制器602基于从操作功能库606检索的数据来识别操作功能类型。
步骤1508包括:检索与识别的操作功能类型相关联的一组配置参数。
此后,步骤1510包括:在显示界面700的命令面板706内启动选中操作功能的显示。在实施例中,在命令面板706中显示选中的操作功能包括:在命令面板706的第一列中显示选中的操作功能的描述,以及在命令面板的第二列中显示与选中的操作功能相对应的伪代码。
图16是示出了将配置参数赋予一组操作功能内的一个或多个操作功能的方法的流程图。在实施例中,为了实现图13的方法的步骤1308的目的而执行图16的方法。在实施例中,可以在SFC序列编辑器控制器602内实现图16的方法。
步骤1602包括:将选中的操作功能与一组选中的操作功能配置参数相关联。可以基于一个或多个用户输入来识别一组选中的操作功能配置参数,所述一个或多个用户输入选择或识别与选中的操作功能相关联的操作功能配置参数。在实施例中,可由通过显示界面700内的图面板702接收到的用户输入来选择操作功能配置参数。
在步骤1604,针对一组选中的操作功能配置参数内的一个或多个操作功能配置参数检索默认操作功能配置参数值。可从被配置成存储默认操作功能配置参数值的数据库检索默认操作功能配置参数值。在实施例中,可以从操作功能库606检索默认操作功能配置参数值。可由SFC序列编辑器控制器602实现默认操作功能配置参数值的检索。
步骤1606包括:将默认操作功能配置参数值赋予与选中的操作功能相关联的相应的操作功能配置参数。在实施例中,可以由SFC序列编辑器控制器602来实现赋值步骤。
步骤1608包括:通过显示界面700(例如,通过显示界面700内的配置参数面板708)接收用户输入,其中,接收的用户输入识别或指定用于赋予一组选中的操作功能配置参数内的一个或多个操作功能配置参数的一个或多个非默认(例如,用户指定的)参数值。
步骤1610包括:将非默认(即,用户指定的)参数值赋予与选中的操作功能相对应的操作功能配置参数。在实施例中,可由SFC序列编辑器控制器602实现赋值步骤1610。
图17是示出用于接收表示一组控制语句的控制语句数据的方法的流程图,该组控制语句将在实施一组操作期间实现以用于过程流控制。图17的方法可以实现以用于图13的方法步骤1308的目的。在实施例中,可以通过如在显示界面700内实现的控制语句面板704来实现图17的方法。
步骤1702包括:显示用于过程流控制的一个可选控制语句的列表,可选控制语句与将由选中的设备实施的一个或多个操作或操作功能或步骤相对应。
步骤1704包括:通过从可选控制语句的列表中选择控制语句,来对通过显示界面700(例如,通过控制语句面板704)接收到用户输入做出响应。用户输入可以包括:通过用户界面设备对控制语句面板704内显示的控制语句的任何输入(例如,来自鼠标或指示器设备的右击)。
步骤1706包括:检索与选中的控制语句相关联的一组配置参数。可由SFC序列编辑器控制器602从操作功能库606检索与选中的控制语句相关联的一组配置参数。在实施例中,可以基于所述一组配置参数与控制语句相关联的确定来检索所述一组配置参数。
步骤1708包括:启动在显示界面700的命令面板706内对选中的控制语句的显示。
图18是示出了将控制语句配置参数赋予一组控制语句内的一个或多个控制语句的方法的流程图。图18的方法可被执行以用于实现图13的方法的步骤1312的目的。在实施例中,可在SFC序列编辑器控制器602中实现图18的方法。
步骤1802包括:利用选中操作功能来识别一组选内的控制语句配置参数。可以基于一个或多个用户输入来识别一组选中控制语句配置参数,所述一个或多个用户输入选择或识别控制系统配置参数以与选中的操作功能相关联。在实施例中,可以通过用户输入经由显示界面700内的控制语句面板708来选择控制系统配置参数。
步骤1804包括:检索与一组选中的控制语句配置参数内的一个或多个控制语句配置参数相对应的默认配置参数值。可以从被配置为存储默认控制语句配置参数值的数据库检索默认控制语句配置参数值。在实施例中,可以从库或数据库(例如,未在附图中明确示出的控制语句库或数据库)检索默认控制语句配置参数值。可以由操作序列构建器控制器602来实现默认控制语句配置参数值的检索。
步骤1806包括:将默认配置参数值赋予与其相应的控制语句配置参数。在实施例中,可由SFC序列编辑器控制器602来实现赋值步骤。
步骤1808包括:通过显示界面700(例如,通过显示界面700内的配置参数面板708)接收输入,其中,接收的用户输入识别或指定了一个或多个非默认的(或用户指定的)参数值,以赋予一组选中的控制语句配置参数内的一个或多个控制语句配置参数。
步骤1810包括:将非默认的(或用户赋予的)参数值赋予与其相应的控制语句配置参数。在实施例中,可由SFC序列编辑器控制器602实现赋值步骤1610。
图19是示出基于接收的操作功能、接收的控制语句数据、赋值的操作功能配置参数和赋值的控制语句配置参数中的一个或多个,来生成机器可读代码以用于实现一组操作功能的方法的流程图。在实施例中,图19的方法被执行以实现图13的方法的步骤1314。可以由系统600内的处理器实现的代码生成器控制器608来实现图19的方法。在实施例中,图19的方法导致SEBOL程序代码的生成。
步骤1902包括:检索一组机器代码生成规则,所述一组机器代码生成规则对应于以下项中的一项或两项:(i)为在选中的设备或组件上实现而选择的一组操作功能;和(ii)为过程流控制选择的一组控制语句,所述一组控制语句与所述一组操作功能中的一个或多个操作功能相对应。
步骤1904包括:生成用于在选中的设备或组件上实现的一组操作功能的机器可读程序代码,其中,所述生成的机器可读程序代码是基于:(i)检索到的一组机器代码生成规则,(ii)一组操作功能和一个或多个操作功能配置参数值,所述一个或多个操作功能配置参数值被赋予给与所述一组操作功能相关联的一个或多个操作功能配置参数,(iii)一组控制语句和一个或多个控制语句配置参数值,所述一个或多个控制语句配置参数值被赋予给与所述一组控制语句组相关联的一个或多个控制语句配置参数,以及(iv)与选中的设备或组件相关联的功能块标识符数据和/或功能块类型数据。在实施例中,检索到的一组机器代码生成规则可以包括用于以指定编程语言来生成机器可读代码的一组句法规则和/或词法规则。在另一实施例中,检索到的一组机器代码生成规则是用于生成SEBOL程序代码的一组句法规则和/或词法规则。
图20示出了可以实现本发明的各种实施例所依据的示例性计算机系统。
系统2000包括计算机系统2002,计算机系统2002包括一个或多个处理器2004和至少一个存储器2006。处理器2004被配置为执行程序指令,并且可以是真实处理器或虚拟处理器。将理解,计算机系统2002不表明对所描述的实施例的使用范围或功能的任何限制。计算机系统2002可以包括但不限于,通用计算机、编程微处理器、微控制器、集成电路和能够实施构成本发明的方法的步骤的其它设备或设备布置中的一个或多个。根据本发明的计算机系统2002的示例性实施例可以包括一个或多个服务器、台式机、膝上型计算机、平板计算机、智能电话、移动电话、移动通信设备、平板计算机和个人数字助理。在本发明的实施例中,存储器2006可以存储用于实现本发明的各种实施例的软件。计算机系统2002可以具有附加的组件。例如,计算机系统2002可以包括一个或多个通信信道2008、一个或多个输入设备2010、一个或多个输出设备2012和存储装置2014。诸如总线、控制器或网络的互连机构(未示出)将计算机系统2002的各组件互连。在本发明的各种实施例中,操作系统软件(未示出)使用处理器2004为在计算机系统2002中执行的各种软件提供操作环境,并且管理计算机系统2002的组件的不同功能。
(一个或多个)通信信道2008允许通过通信介质与各种其它计算实体通信。通信介质提供诸如程序指令或通信介质中的其它数据的信息。通信介质包括但不限于,用电、光、RF、红外、声学、微波、蓝牙或其它传输介质实现的有线或无线方法。
输入设备2010可以包括但不限于,触摸屏、键盘、鼠标、笔、操纵杆、跟踪球、语音设备、扫描设备或能够向计算机系统2002提供输入的任何其它设备。在本发明的实施例中,(一个或多个)输入设备2010可以是声卡或接受模拟音频输入或数字音频输入的类似设备。(一个或多个)输出设备2012可以包括但不限于以下设备上的用户界面,这些设备包括CRT、LCD、LED显示器、或者与服务器、台式机、膝上型计算机、平板电脑、智能电话、移动电话、移动通信设备、平板电脑、平板手机和个人数字助理、打印机、扬声器、CD/DVD写入器、或从计算机系统2002提供输出的任何其它设备中的任何设备相关联的任何其它显示器。
存储装置2014可以包括但不限于,磁盘、磁带、CD-ROM、CD-RW、DVD、任何类型的计算机存储器、磁条、智能卡、印刷条形码或者可以用于存储信息并且可以由计算机系统2002访问的任何其它暂时性或非暂时性介质。在本发明的各种实施例中,存储装置2014可以包含用于实现任何所描述的实施例的程序指令。
在本发明的实施例中,计算机系统2002是分布式网络的一部分或一组可用云资源的一部分。
本发明可以以多种方式实施,包括作为系统、方法或计算机程序产品,诸如计算机可读存储介质或计算机网络,其中编程指令从远程位置传送。
本发明可以适当地实施为用于计算机系统2002的计算机程序产品。本文所述的方法通常被实施为计算机程序产品,包括由计算机系统2002或任何其它类似设备执行的一组程序指令。该组程序指令可以是存储在有形介质上的一系列计算机可读代码,所述有形介质诸如计算机可读存储介质(存储装置2014)(例如,磁盘、CD-ROM、ROM、闪存驱动器或硬盘),或者该组程序指令可经由调制解调器或其它接口设备通过有形介质(包括但不限于,光学或模拟通信信道2008)传输到计算机系统2002。作为计算机程序产品的本发明的实施方式可以是使用无线技术的无形形式,所述无线技术包括但不限于,微波、红外、蓝牙或其它传输技术。这些指令可以被预加载到系统中或记录在诸如CD-ROM的存储介质上,或者可以用于通过诸如因特网或移动电话网络的网络下载。该一系列计算机可读指令可以体现本文先前描述的功能的全部或部分。
基于上述内容,显然本发明提供了显著的优点。具体地,本发明使过程控制系统中为批处理生成一个或多个SFC的手动编码需求的量最小化。另外,本发明能够将P&ID的视觉表示(通过显示界面的图面板)集成到用户界面中,从而消除在P&ID和用户界面之间连续切换的需要。此外,本发明使得对过程控制系统特定编程语言(诸如,SEBOL)没有深入了解的用户仍然能够生成实施这样的编程语言的SFC。
虽然在此描述和示出了本发明的示例性实施例,但是应当理解,它们仅仅是说明性的。本领域技术人员应该理解,在不背离或违背由所附权利要求限定的本发明的精神和范围的情况下,可以在形式和细节上对其进行各种修改。另外,本文示例性公开的本发明可以在不存在本文未具体公开的任何元件的情况下适当地实施,并且在具体考虑的特定实施方案中,本发明旨在在不存在本文未具体公开的任何一个或多个元件的情况下实施。

Claims (15)

1.一种由处理器实现的用于在过程控制系统内生成用于过程控制的序列功能图内的程序代码的方法,该方法包括:
接收表示用于实现序列流的选中的设备的设备选择数据;
接收表示将由所述选中的设备实施的一组操作功能的操作数据;
对与所述一组操作功能内的一个或多个操作功能相对应的一个或多个操作功能配置参数赋值;
接收表示将在实施所述一组操作功能期间实现以用于过程流控制的一组控制语句的控制语句数据;
对与所述一组控制语句内的一个或多个控制语句相对应的一个或多个控制语句配置参数赋值;以及
基于接收的所述操作数据、接收的所述控制语句数据、赋值的所述操作功能配置参数和赋值的所述控制语句配置参数中的一个或多个,来生成用于实现所述一组操作功能的机器可读程序代码。
2.如权利要求1所述的方法,其中,接收设备选择数据的步骤包括:
在显示界面内接收包括设备选择性用户输入的输入;
在显示器上呈现基于所述设备选择性用户输入而选中的设备的视觉表示;
接收与所述选中的设备相关联的功能块标识符数据和功能块类型数据;以及
接收表示将由所述选中的设备实施的一组操作功能的操作数据。
3.如权利要求1所述的方法,其中接收表示将由所述选中的设备实施的一组操作功能的操作数据的步骤包括:
通过显示可在所述选中的设备上执行的操作功能的列表,对接收到的用户输入做出响应;
通过另一用户输入,接收从显示的操作功能的列表中对操作功能的选择;
识别与选中的操作功能相关联的操作功能类型;
检索与识别的操作功能类型相关联的一组配置参数;以及
在显示界面内启动对所述选中的操作功能的显示。
4.如权利要求1所述的方法,其中,对与所述一组操作功能内的一个或多个操作功能相对应的一个或多个操作功能配置参数赋值的步骤包括:
将一组选中的操作功能配置参数与选中的操作功能相关联;
针对所述一组选中的操作功能配置参数内的一个或多个操作功能配置参数,检索默认操作功能配置参数值;
将所述默认操作功能配置参数值赋予与所述选中的操作功能相关联的相应操作功能配置参数;
接收用于标识一个或多个用户指定参数值的用户输入,以将所述一个或多个用户指定参数值赋予所述一组选中的操作功能配置参数中的一个或多个操作功能配置参数;以及
将所述一个或多个用户指定参数值赋予与选中的操作功能相对应的操作功能配置参数。
5.如权利要求1所述的方法,其中,接收表示将在实施所述一组操作功能期间实现以用于过程流控制的一组控制语句的控制语句数据的步骤包括:
显示用于过程流控制的一个可选控制语句的列表,所述可选控制语句与将由所述选中的设备实施的一个或多个操作功能相对应;
基于用户输入,从所述可选择控制语句的列表中选择控制语句;
检索与选中的控制语句相关联的一组配置参数;以及
启动在所述显示界面内对选中的控制语句的显示。
6.如权利要求1所述的方法,其中,对与所述一组控制语句内的一个或多个控制语句相对应的一个或多个控制语句配置参数赋值的步骤包括:
识别与所述一组控制语句内的控制语句相对应的一组控制语句配置参数;
检索与识别的一组控制语句配置参数内的一个或多个控制语句配置参数相对应的默认配置参数值;
将所述默认配置参数值赋予相应的控制语句配置参数;
接收识别一个或多个用户指定参数值的用户输入,以将所述一个或多个用户指定参数值赋予一个或多个控制语句配置参数;以及
将所述一个或多个用户指定参数值赋予所述相应的控制语句配置参数。
7.如权利要求1所述的方法,其中,生成用于实现一组操作功能的机器可读程序代码的步骤包括:
检索一组机器代码生成规则,所述一组机器代码生成规则对应于:(i)为在所述选中的设备上实施而选择的一组操作功能,以及(ii)为过程流控制选择的一组控制语句,所述一组控制语句与所述一组操作功能中的一个或多个操作功能相对应;以及
生成用于在所述选中的设备上实现的所述一组操作功能的机器可读程序代码,其中,所述生成的机器可读程序代码是基于:(i)检索到的一组机器代码生成规则,(ii)一组操作功能和一个或多个操作功能配置参数值,其中所述一个或多个操作功能配置参数值被赋予给与所述一组操作功能相关联的一个或多个操作功能配置参数,(iii)一组控制语句和一个或多个控制语句配置参数值,其中所述一个或多个控制语句配置参数值被赋予给与所述一组控制语句相关联的一个或多个控制语句配置参数,以及(iv)与所述选中的设备相关联的功能块类型数据。
8.一种由处理器实现的系统,其用于在过程控制系统内生成用于过程控制的序列功能图内的程序代码,所述系统包括:
存储器;以及
处理器,其被配置用于:
接收表示用于实现序列流的选中的设备的设备选择数据;
接收表示将由所述选中的设备实施的一组操作功能的操作数据;
对与所述一组操作功能内的一个或多个操作功能相对应的一个或多个操作功能配置参数赋值;
接收表示将在实施所述一组操作功能期间实现以用于过程流控制的一组控制语句的控制语句数据;
对与所述一组控制语句内的一个或多个控制语句相对应的一个或多个控制语句配置参数赋值;以及
基于接收的所述操作数据、接收的所述控制语句数据、赋值的所述操作功能配置参数和赋值的所述控制语句配置参数中的一个或多个,来生成用于实现所述一组操作功能的机器可读程序代码。
9.如权利要求8所述的系统,被配置为使得接收设备选择数据的步骤,包括:
在显示界面内接收包括设备选择性用户输入的输入;
在显示器上呈现基于所述设备选择性用户输入而选中的设备的视觉表示;
接收与所述选中的设备相关联的功能块标识符数据和功能块类型数据;以及
接收表示将由所述选中的设备实施的一组操作功能的操作数据。
10.如权利要求8所述的系统,被配置为使得接收表示将由所述选中的设备实施的一组操作功能的操作数据的步骤,包括:
通过显示可在所述选中的设备上执行的操作功能的列表,对接收到用户输入做出响应;
通过另一用户输入,接收从显示的操作功能的列表中对操作功能的选择;
识别与选中的操作功能相关联的操作功能类型;
检索与所识别的操作功能类型相关联的一组配置参数;以及
在显示界面内启动对所述选中的操作功能的显示。
11.如权利要求8所述的系统,被配置成对与所述一组操作功能内的一个或多个操作功能相对应的一个或多个操作功能配置参数赋值的步骤,包括:
将一组选中的操作功能配置参数与选中的操作功能相关联;
针对所述一组选中的操作功能配置参数内的一个或多个操作功能配置参数,检索默认操作功能配置参数值;
将所述默认操作功能配置参数值赋予与所述选中的操作功能相关联的相应操作功能配置参数;
接收用于识别一个或多个用户指定参数值的用户输入,以将所述一个或多个用户指定参数值赋予所述一组选中的操作功能配置参数中的一个或多个操作功能配置参数;以及
将所述一个或多个用户指定参数值赋予与选中的操作功能相对应的操作功能配置参数。
12.如权利要求8所述的系统,被配置为使得接收表示将在实施所述一组操作功能期间实现以用于过程流控制的一组控制语句的控制语句数据的步骤,包括:
显示用于过程流控制的一个可选控制语句的列表,所述可选控制语句与将由所述选中的设备实施的一个或多个操作功能相对应;
基于用户输入,从所述可选择控制语句的列表中选择控制语句;
检索与选中的控制语句相关联的一组配置参数;以及
启动在所述显示界面内对选中的控制语句的显示。
13.如权利要求8所述的系统,被配置对与所述一组控制语句内的一个或多个控制语句相对应的一个或多个控制语句配置参数赋值的步骤,包括:
识别与所述一组控制语句内的控制语句相对应的一组控制语句配置参数;
检索与识别的一组控制语句配置参数内的一个或多个控制语句配置参数相对应的默认配置参数值;
将所述默认配置参数值赋予相应的控制语句配置参数;
接收识别一个或多个用户指定参数值的用户输入,以将所述一个或多个用户指定参数值赋予一个或多个控制语句配置参数;以及
将所述一个或多个用户指定参数值赋予所述相应的控制语句配置参数。
14.如权利要求8所述的系统,被配置为使得生成用于实现一组操作功能的机器可读程序代码的步骤,包括:
检索一组机器代码生成规则,所述一组机器代码生成规则对应于:(i)为在所述选中的设备上实施而选择的一组操作功能,以及(ii)为过程流控制而选择的一组控制语句,所述一组控制语句与所述一组操作功能中的一个或多个操作功能相对应;以及
生成用于在所述选中的设备上实现所述一组操作功能的机器可读程序代码,其中,所述生成的机器可读程序代码是基于:(i)检索到的一组机器代码生成规则,(ii)一组操作功能和一个或多个操作功能配置参数值,其中所述一个或多个操作功能配置参数值被赋予给与所述一组操作功能相关联的一个或多个操作功能配置参数,(iii)一组控制语句和一个或多个控制语句配置参数值,其中所述一个或多个控制语句配置参数值被赋予给与所述一组控制语句相关联的一个或多个控制语句配置参数,以及(iv)与所述选中的设备相关联的功能块类型数据。
15.一种计算机可读存储介质,其上存储有用于在过程控制系统内生成用于过程控制的序列功能图内的程序代码,所述程序代码包括用于在基于处理器的计算系统内实现以下步骤的指令:
接收表示用于实现序列流的选中的设备的设备选择数据;
接收表示将由所述选中的设备实施的一组操作功能的操作数据;
对与一个或多个操作功能相对应的一个或多个操作功能配置参数赋值;
接收表示将在实施所述一组操作功能期间实现以用于过程流控制的一组控制语句的控制语句数据;
对与所述一组控制语句内的一个或多个控制语句相对应的一个或多个控制语句配置参数赋值;以及
基于接收的所述操作数据、接收的所述控制语句数据、赋值的所述操作功能配置参数和赋值的所述控制语句配置参数中的一个或多个,来生成用于实现所述一组操作功能的机器可读程序代码。
CN202210133736.0A 2021-02-17 2022-02-14 用于为过程控制系统生成可实施的序列功能图代码的方法、系统和计算机程序产品 Pending CN114942616A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/177,707 US11307551B1 (en) 2021-02-17 2021-02-17 Methods, systems and computer program products for generating implementable sequential function charts codes for process control systems
US17/177,707 2021-02-17

Publications (1)

Publication Number Publication Date
CN114942616A true CN114942616A (zh) 2022-08-26

Family

ID=81187159

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210133736.0A Pending CN114942616A (zh) 2021-02-17 2022-02-14 用于为过程控制系统生成可实施的序列功能图代码的方法、系统和计算机程序产品

Country Status (3)

Country Link
US (1) US11307551B1 (zh)
JP (1) JP2022125962A (zh)
CN (1) CN114942616A (zh)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003006395A (ja) * 2001-06-18 2003-01-10 Hitachi Ltd 業務支援情報抽出プログラム及びそれを用いた業務支援情報抽出システム
US7290048B1 (en) * 2002-03-29 2007-10-30 Hyperformix, Inc. Method of semi-automatic data collection, data analysis, and model generation for the performance analysis of enterprise applications
JP2012213144A (ja) * 2011-03-18 2012-11-01 Ricoh Co Ltd 情報処理装置、情報処理システム、機器連携方法およびプログラム
US9742127B2 (en) * 2011-08-31 2017-08-22 Kimball P. Magee, Jr. Power strips
US10073764B1 (en) * 2015-03-05 2018-09-11 National Technology & Engineering Solutions Of Sandia, Llc Method for instruction sequence execution analysis and visualization
US11594307B2 (en) * 2017-12-31 2023-02-28 Laboratory Corporation Of America Holdings Automatic self-documentation in a mobile-native clinical trial operations system and service suite
US11119798B2 (en) * 2018-11-15 2021-09-14 Sternum Ltd. Applying control flow integrity verification in intermediate code files

Also Published As

Publication number Publication date
JP2022125962A (ja) 2022-08-29
US11307551B1 (en) 2022-04-19

Similar Documents

Publication Publication Date Title
JP6170212B2 (ja) プロセス制御システム内の操作者インターフェースディスプレイのためのアニメーションおよびイベントの構成
JP5295464B1 (ja) システム構築支援ツール及びシステム
JP7239248B2 (ja) 動的装置記述言語メニュー用装置及び方法
US10139812B2 (en) Dynamic user interface for configuring and managing a process control system
US11714394B2 (en) Bulk commissioning of field devices within a process plant
JP6751551B2 (ja) 汎用プロセスシステムライブラリに基づきプロセス制御システムを構成する方法および装置
US7152072B2 (en) Methods and apparatus for importing device data into a database system used in a process plant
EP2419824A2 (en) Utilizing spreadsheet user interfaces with flowsheets of a cpi simulation system
CN104503896B (zh) 用于批设备调试和解调试的系统和方法
CN103279088A (zh) 图形编程语言对象编辑及报告工具
EP1749270A2 (en) Methods and apparatus for modifying process control data
US10152041B2 (en) Method and apparatus for enabling model driven navigation
JP6805832B2 (ja) 複数ワークシートのエクスポートの生成
CN102890453A (zh) 用于功能块实例化的系统和方法
Bloch et al. Model-based engineering of CPPS in the process industries
US11307551B1 (en) Methods, systems and computer program products for generating implementable sequential function charts codes for process control systems
US20220253040A1 (en) Methods, systems and computer program products for generating and implementing engineering data within process control systems
US11815872B2 (en) Systems, methods and computer program products for automated revision comparison of engineering data in process control systems
US12025966B2 (en) Apparatus comprising a process control system and at least one process module, related method, computer program product, and data processing device
US20210165386A1 (en) Apparatus comprising a process control system and at least one process module, related method, computer program product, and data processing device
WO2022073981A1 (en) Data extraction in industrial automation systems

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination