一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

模块式自动化支持系统的制作方法

2023-02-19 09:04:30 来源:中国专利 TAG:


1.本发明涉及一种用于模块式工厂的模块式自动化支持系统。


背景技术:

2.模块式自动化系统领域的模块式类型封装(mtp)标准为模块与编排系统之间的互操作性创建了框架,从而允许在自动化工程阶段以模块式方式建造和设计工业工艺工厂,目标是简化自动化工程。这些优势是通过预制和经过良好测试的模块(称为pea(工艺装备组装))实现的,该模块可以很容易地以不同的组合放置在一起,从而实现不同的配方。
3.现有的系统可以在自动化工程阶段为工厂所有者提供支持。然而,这些可能并不总能全面解释真实工厂环境中发生的所有情况。此外,在控制工程阶段(即在工厂操作和生产计划期间)提供支持的解决方案很少。


技术实现要素:

4.因此需要更有效的用于模块式工厂的模块式自动化支持系统。这种需要通过如本文所描述和要求保护的模块式自动化支持系统来满足。从属权利要求阐述了可选特征。还提供了包括计算机实施方法的对应方法。
5.根据另一方面,提供一种包括处理器的计算设备,该计算设备被配置为执行如本文所描述的计算机实施方法。
6.根据另一方面,提供一种包括指令的计算机程序产品,该指令在由计算设备执行时使得计算设备执行如本文所描述的计算机实施方法。
7.根据又一方面,提供一种包括指令的计算机可读介质,该指令在由计算设备执行时使得计算设备执行如本文所描述的计算机实施方法。
8.还提供一种包括本文所描述系统中的任一系统的模块式工厂,以及一种模块式工厂的操作方法,包括执行本文所描述方法中的任一方法。
9.本发明可以包括单独或组合的一个或多个方面、示例或特征,无论是否以该组合或单独的方式具体公开。
10.本发明的这些和其他方面将自下文所描述的实施例显而易见且参考下文所描述的实施例来阐释。
附图说明
11.现将仅借助于示例参考附图给出详细描述,其中:
12.图1图示了根据本公开的模块式自动化支持系统;
13.图2图示了通过一系列互连的语义模块表示工业模块式工厂的物理流水线的语义流水线;
14.图3图示了用于将特定产物转化为给定产品的由流水线生成引擎自动生成的语义流水线;
15.图4图示了流水线生成引擎对自动生成的语义流水线的优化;
16.图5图示了工厂操作优化;
17.图6图示了流水线排序的学习;
18.图7图示了规则存储库的更新;以及
19.图8图示了可以根据本文公开的系统和方法使用的计算设备。
具体实施方式
20.模块式自动化支持系统
21.图1说明用于模块式工厂的模块式自动化支持系统10。模块式自动化支持系统10包括自动化工程支持系统100(用于向自动化工程师提供支持)和控制工程支持系统150(用于向控制工程师提供支持)中的一个或多个。模块式自动化支持系统10可以在软件、固件、硬件或其任何组合中实现,例如使用本文中参考图8描述的计算设备。模块式自动化支持系统10可以形成用于规划、配置、管理和/或操作模块式工厂的工程工具或仪表板的一部分或包括该工程工具或仪表板。
22.自动化工程支持系统
23.自动化工程支持系统100包括以下部件中的一个或多个:(i)模块库102,包括语义注释模块;(ii)流水线生成引擎104;(iii)流水线优化部件106;(iv)模拟部件108。
24.语义数据模型
25.如下文进一步描述,模块式自动化支持系统10实施语义数据模型以提供模块、模块流水线或模块式工厂的抽象表示。
26.模块库102包含存储在诸如数据库的存储库中的一个或多个语义模块。语义模块包括实例数据,该实例数据表示、描述或定义使用语义数据模型的模块式工厂的模块。语义模块也可以被描述为模块表示、模块描述或模块定义。在本公开的上下文中,术语“上下文中,术语,可以互换使用。模块库102可以进一步存储与语义模块相关的异构数据项(诸如说明符、注释、值、历史记录)。模块库102因此充当用于收集关于模块的全局和局部领域知识的场所(或知识表示系统)。模块库102可以使用涉及任何集中式或分布式数据存储的数据库来实施。例如,由自动化工程支持系统100、模块本身或模块式工厂的其他元件提供的一个或多个数据存储单元可以用于实施数据库。特别地,下文描述的数据存储装置808可以用于实施数据库。存储在模块库102中的语义模块可以表示真实的或虚拟的、拥有的(由工厂操作员拥有)或尚未拥有的(例如可购买的)、可用的(当前在工厂中使用的)或潜在可用的模块。因此提供了可以被描述为智能单元池的模块池或存储库。通过创建语义模块并将其存储并注册在模块库102中,有可能在以后搜索和发现语义模块并选择要组合成工艺流水线的模块。特别地,为了帮助工厂操作员定位合适的模块,模块库102可以提供搜索功能性。
27.如本文中所使用,术语“虚拟模块”是指模块的类型或类别,而术语“真实模块”是指特定类型的模块的实例。真实模块可以在软件、固件、硬件或其任何组合中实施。为硬件模块提供控制配置的软件模块可以被称为“功能模块”。对于虚拟模块,语义模块可以被实施为特定类型模块的模板,诸如加热模块、计量模块、混合模块等。模板可以包括保存对特定类型的所有模块有效的固定值的字段。模板还可以包括一个或多个占位符,用于可以为真实模块设置的值,和/或稍后可以更改的一个或多个预设值。对于真实模块,语义模块可
以包括相关模块类型的模板,但补充有表示真实模块的一个或多个值。通过这种方式,模板通过模板中的字段来容纳工艺知识或工程知识。
28.因此,使用符合语义数据模型的语义描述来描述模块。语义描述可以指定模块的任何一个或多个模块属性。模块属性(也可以称为注释、性质、特性、说明符或特征)可以包括描述模块的任何合适的数据。例如,语义描述可以根据包括以下一项或多项的模块属性来描述模块:输入/输出属性、模块功能性;模块部件;模块参数;模块使用;工艺参数;校准参数;模块输入、处理和输出的数据。语义描述提供了适用于语义web堆栈的通用接口(即restful api,可通过http访问等)。通过模块之间的语义描述匹配,可以手动或自动生成工艺流水线,如下文更详细描述。语义描述还可以包括与至少一个先前模块式工厂中的相应模块的配置相关的先前配置数据,先前配置数据可以用于配置模块以供在另一模块式工厂中使用。先前配置数据可以与加快重新使用模块的先前工程数据相关。
29.语义描述可以指定模块的输入与输出之间的关系。特别地,语义描述可以指定模块的一个或多个前置条件和一个或多个后置条件。前置条件和后置条件指定可以、应该或必须存在于模块的输入和输出的条件。可以根据输入属性或特性来描述前置条件,同时可以根据输出属性或特性来描述后置条件。前置条件和后置条件可以例如指定属性,诸如分别输入到模块和从模块输出的材料身份或材料状态。模块因此可以将至少一个前置条件转化为至少一个后置条件。例如,在材料加工中,前置条件可以是产物,后置条件可以是产品。“描述可是指将与至少一种其他产物反应以形成产品的任何物质、组合物或材料。因此,模块将产物转化为产品,即转化了材料性质。模块可以例如通过加热、搅拌、精炼等将一种材料状态转化为另一种材料状态。“指将与在本文中是指单一材料的任何性质、特性或条件,而不仅仅是聚集状态。语义描述可以进一步指定模块将前置条件转化为后置条件的一个或多个条件或约束。另外或备选地,前置条件和后置条件可以指定模块的输入和输出的形式、结构或连接方式中的一种或多种。
30.对于真实模块,语义描述还可以包括与模块式工厂中真实模块的先前使用相关的所收集使用数据。所收集使用数据可以包括表征先前模块性能、使用或配置的任何合适的数据。所收集使用数据可以例如包括以下任何一个或多个:先前工程数据;先前校准参数;频繁的工厂环境;进行的维护;加工的材料/介质;化学反应的应用目的和限制。所收集使用数据可以用于加快模块的配置以用于另一模块式工厂。例如,真实模块模板中的一个值可以标识最后加工的材料(例如坚果,这对于加工杂货但也希望为对坚果过敏的人生产杂货的工厂可能很重要)。另一值可以标识真实模块的非功能性服务(例如,对于烤箱模块为指示“service fanoven已损坏,但top&bottomplateheat baking仍然可能”的值)。
31.所收集的使用数据可以包括性能数据。例如,所收集使用数据可以包括一个或多个先前测量的关键绩效指标(kpi)。可以测量的kpi可以包括例如以下一项或多项:平均故障间隔时间;正常运行时间;服务和设备的使用;可用性时间表;维护周期/间隔。所述领域的技术人员将知道许多其他示例。如下文进一步描述,这样的性能数据可以用于优化流水线的模块选择。
32.如现在将描述,语义数据模型提供了用于描述模块、模块流水线和模块式工厂的通用或标准化词汇表或本体(将词汇表与预先存在的知识和规则联系起来)。语义数据模型也可以被描述为概念或抽象数据模型。语义数据模型使用为数据和数据中存在的关系增加
意义的语义信息以特定逻辑方式构造数据。
33.如本文中所使用,“语义数据所为抽象数据,该抽象数据可以表示模块、流水线、工厂或材料的任何属性,特别是用材料性质(例如输入/输出材料)或材料状态(例如原始状态或精炼状态的材料、冷却或加热液体或固体)表示的模块的输入/输出属性。语义数据可以表示不同抽象级别的实体。例如,在最高数据抽象级别,语义数据可以表示如下属性:功能性;材料;信号;能源;信息;模块规范等。在较低级别,语义数据可以表示如下属性:功率;容量;温度,例如最佳温度;材料标识符;材料特征;耐久性;热传递;输入管直径;罐容量;最大反应器压力;最大容量等。
34.语义数据的实例可以包括通过n维向量或条件向量编码的一个或多个属性。在一个示例中,具有特定超高耐久性的固态钢表示为:
[0035]-零维:属性类型:“材料类=0
[0036]-一维:材料:“钢料=76,
[0037]-二维:聚合状态:“固态状=3,
[0038]-三维:耐久性:“超高性=10,
[0039]
产生向量[0,76,3,10]。
[0040]
净化工艺模块可能需要钢作为输入。具体来说,它可能需要液态钢作为前置条件:[0,76,2,-],其中“2”表示聚合状态:三维中的“液体”和
“‑”
表示对耐久性属性没有要求。因此,可以容易地确定给定钢[0,76,3,10]不匹配模块的前置条件[0,76,2,-]。因此,工艺流水线将需要熔化固体材料的先前熔化模块,以将固态钢[0,76,3,10]转化为液态钢[0,76,2,10],以匹配纯化工艺模块的前置条件[0,76,2,-]。具体来说,熔化模块应具备前置条件:[0,-,3,-]和后置条件:[0,-,2,-]。在此示例中,仅指定了四个维度,但当然可以指定更多或更少的属性作为条件或限制,诸如输入管直径、流入液体的压力等。
[0041]
在包括蛋糕烘焙厂的另一示例中,可以加工白色和黑色面团(产物)以产生大理石蛋糕(产品)。此处,定量状态下的材料白色面团可以用[0,1,1,1]表示,其中0表示材料,1表示面团,1表示白色(面团),1表示定量状态,配给状态下的黑色面团可以用[0,1,2,1]表示,0表示材料,1表示面团,2表示黑色(面团),1表示配给状态。两者分别加工,得到搅拌的白色面团[0,1,1,2]和搅拌的黑色面团[0,1,2,2](其中值为2的最后一个分量表示面团的“最后一状态)。接着,将这两者一起合并烘烤,就产生了一个即食蛋糕[0,63,-,-,1,10],其中0表示材料,63编码“蛋糕材,两个空白破折号表示状态和颜色没有定义,1表示蛋糕的类型:“大理石蛋糕类,且10表示“示石蛋糕。
[0042]
类似地,化学或物理工艺(包括反应成分、温度或压力等附加条件等)可以完全通过抽象的条件向量来描述。
[0043]
由模块式自动化支持系统10实施的语义数据模型定义了n维向量中各个分量的含义以及分量出现的顺序,以提供语义数据的不同实例之间的一致性。在一个示例中,一维可以描述整体上下文,诸如:材料/功能/信息流/能源流。二维和以下维度可以根据其抽象级别和统计重要性包括另外属性。在一个示例中,可以按以下顺序指定属性。钢、加热、值传播、热传递。
[0044]
语义数据模型可以通过实施链接条件来扩展n维条件向量,例如通过(内或外)向量积或叉积。在将生热钢加工成精炼热钢的一个示例中,由于钢要保持高温,因此不仅材料
richtlinie 2776)中定义的。skampi带有15个基本操作(grundoperationen),其描述服务(例如均质化/“homogenisieren”、加热/“heizen”、计量/“dosieren”等)及其典型的工艺技术属性(例如压力、体积、电流、压力梯度、加热功率、精度、浓度等),用于工艺要求与fea/pea能力之间的比较和一致性。此外,这些基本操作的参数和设定点可能是相关的,以链接和检查一个模块中的基本操作相对于另一模块中的基本操作,例如参数、值、最小值-最大值等。这些可以用于描述更复杂的模块服务/功能性,例如,作为后续基本操作链。例如,高温混合模块可以表示为一系列加热和混合基础操作。
[0052]
在包括罐的模块的一个示例性语义描述中,mtp包含罐的输入/输出特征并根据其液体存储容量描述罐的功能性,而扩展语义描述涵盖其他方面,诸如压力限制、最低/最高温度、其他公差边界等。
[0053]
在包括反应器的模块的另一示例性语义描述中,mtp允许定义输入和输出,而扩展语义描述定义例如将在反应器中反应的两个输入h2和o2(例如2/3h2和1/3o2)的比,以及可选地所需/最佳反应温度和压力(以及潜在的临界值/阈值)。此外,语义描述可以进一步指定将此反应器连接到流水线中可能的其他先前或后续单元的管具有0.5米的直径,使得在连接单元具有直径只有0.25米的输入/输出管的情况下需要平移法兰。
[0054]
扩展语义描述可以区分连续工艺和分批工艺单元:例如,分批工艺模块每次执行可能处理100升液体,而连续工艺模块每小时处理100升液体,因此必须(连续)提供液体以避免停机。
[0055]
如将在下文更详细地描述,语义描述能够实现——除了其他可能性——语义模块到模块匹配(流水线生成)、对流水线生成有用的健全性检查、工厂工艺模拟(即提供初始输入并获得模拟最终输出以确定工厂是否按预期运行)、基于工厂和模块的优化以及校准和自动化(例如发现瓶颈,例如,如果将连接到模块2的模块1设置为产生更高的输出,使得模块2达到或超出其公差边界并进入临界状态)。
[0056]
模块库102帮助工厂操作员管理/处理他们现有模块的库存(例如12个计量单元和10个反应单元等)。一些模块目前可能在工厂中使用,而另一些则没有。对于正在使用的模块,可能会收集与其使用相关的数据(例如,处理什么材料),或者其部件性能(例如,正常运行时间、阀门材料的磨损)、其维护关键性能指标(kpi,例如模块生命周期)等,并不断添加到数据库中。当要建造新工厂或要重新配置现有工厂时,工厂操作员可以查看模块库102并参考包括所收集使用数据的语义描述来选择用于给定功能性的最佳模块。例如,工厂操作员可以简单地选择一个可用模块,该模块处理的材料与所寻找的模块预期处理的材料相同,并且在下一次计划维护之前具有最长的时间。
[0057]
使用模块库102,工厂操作员能够从池中选择和直接重新使用预定义(预配置)的现有模块,从而减少所需的工程工作量。通过这种方式,不仅有利于单个模块的重复使用,也有利于更大的功能块的重复使用,从而简化了模块工程和模块式工厂组装的任务。
[0058]
此外,在池中模块的真实版本尚不可用的情况下,系统100可以提供允许工厂操作员通过池中的虚拟模块确定是否可以为给定的新工厂组装特定流水线的功能。通过提供模块的语义描述,提供了一种机制,用于手动和/或自动为新规划的模块式工厂查找和推荐可行或最优的模块和流水线组合。这些推荐不仅可以基于通过语义描述确定的模块的兼容性,还可以基于特定的优化标准,如下文进一步解释。
[0059]
因此,特此提供基于模块的工厂工艺虚拟工程。模块库102因此为工厂操作员提供智能的、信息增强的单元池。这为提高工厂操作员使用软件工具的可用性和舒适度、减少工厂内单元设置的出错率和更优化的工厂性能奠定了基础。工厂环境内的所有信息都可以在模块库102中收集/聚合,为工厂环境中的整体信息提供一个访问点和一个统一接口,从而使信息可搜索并揭示优化潜力,同时提供其他基于ai的应用程序和算法(例如用于流水线生成或优化)可以操作的基础。
[0060]
应理解,本文给出的示例仅用于说明的目的,并且多种形式的语义描述是可能的,这取决于所描述的模块。在任何情况下,提供本文公开的扩展语义描述以涵盖此工程知识,包括对工厂操作员有用的任何或所有重要工程事实,以使单元在语义上完全可描述。
[0061]
如上所述,自动化工程支持系统100允许工厂操作员从模块库102中选择和组合单元以形成流水线。使用模块库102提供的模块的语义描述,工厂操作员能够根据各种模块属性确定模块的兼容性。例如,如图2中所示,工厂操作员根据其i/o兼容性选择语义模块202以形成语义流水线204(即物理流水线的表示)。
[0062]
流水线生成引擎
[0063]
然而,如上所述,通过语义描述和所收集使用数据,提供了一种用于自动查找和推荐(例如,一致的和最佳的)模块式工厂的模块和工艺流水线组合的机制。为此,再次参考图1,自动化工程支持系统100还可以包括模块流水线生成引擎104,其被配置为接收指示模块式工厂所需流水线的至少一个前置条件和至少一个后置条件的输入数据,以及生成一个或多个建议的模块流水线,包括能够将至少一个前置条件转化为至少一个后置条件的一个或多个模块。流水线生成引擎104也可以称为流水线组合引擎。流水线生成引擎104可以被配置为基于模块库102中的语义描述中包括的模块属性从模块库102中选择一个或多个语义模块以包含在模块流水线中。特别地,流水线生成引擎104可以被配置为访问模块库102,其中每个语义模块具有语义注释的前置条件和后置条件(例如,产物和产品),并确定是否可以通过通过模块组/链的渐进或增量处理从前置条件到后置条件找到/构建连接(即路径)。例如,每个模块将一个(或多个)输入作为前置条件,并将其转化为一个(或多个)输出作为后置条件,该后置条件又是下一模块的输入(即前置条件),又处理为下一输出(即后置条件),依此类推。流水线生成引擎104根据定义确保模块到模块并因此确保流水线兼容性,因为仅允许将根据其语义描述兼容的模块组合成一行。生成的所建议的流水线可以包括并联和/或顺序连接的子流水线。
[0064]
本公开设想了可以用于选择模块的各种模块属性。
[0065]
特别地,流水线生成引擎104可以被配置为基于语义模块的输入/输出属性确定一个或多个语义模块的序列,以形成模块流水线,其中序列中的第一个模块的输入属性匹配至少一个前置条件并且其中序列中最后一个模块的输出属性匹配至少一个后置条件。流水线生成引擎104可以被配置为使用从模块库102中选择的多个语义模块来生成模块流水线,以提供相应模块的模块间兼容性。流水线生成引擎104可以被配置为基于相应模块属性来确定模块间兼容性。指示模块间兼容性的模块属性可以包括所选语义模块的输入-输出属性。流水线生成引擎104因此可以被配置为基于相应模块的输入-输出兼容性来选择语义模块以包括在所建议的流水线中。在如此确定的模块序列中,因此选择模块使得模块的输出属性匹配任何后续模块的输入属性并且使得模块的输入属性匹配任何先前模块的输出属
性。匹配前置条件和后置条件以及模块间兼容性的确定优选地但不是本质上使用n维条件向量来执行,如上文参考语义数据模型所描述,可选地使用由模型实施的任何模式或优先级。
[0066]
另外或备选地,流水线生成引擎104可以被配置为基于池中模块的功能性属性确定一个或多个模块的序列以形成模块流水线,其功能性组合以将至少一个前置条件转化为至少一个后置条件。在这种情况下,指示模块间兼容性的属性可以包括定义模块的功能性的属性,并且其中模块流水线生成引擎被配置为基于所选模块之间的功能兼容性来生成所建议的流水线。例如,在一个模块在输入端需要最低温度的情况下,流水线生成引擎可以选择加热器模块作为所建议的流水线中的先前模块。同样,可以使用描述符合语义数据模型的那些属性的语义数据来比较和匹配定义模块功能性的属性。
[0067]
因此,流水线生成引擎104被配置为自动使用模块库102提供的模块的语义描述来生成所建议的流水线以提供给工厂操作员(否则他们将不得不手动选择、组合和组成模块)。
[0068]
流水线生成引擎104可以包括以下一项或多项:(1)图形生成和路径查找算法;(2)基于规则的算法。
[0069]
图形生成和路径查找算法(或图形构建算法)被配置为连接起始节点(例如,工厂工艺的产物)以连接到结束节点(例如,工厂工艺的产品)。图形及其节点表示通过表示模块到模块连接的边缘连接的模块。该算法可以单独使用或与其他算法结合使用,以通过限制要匹配的模块集来加速前置/后置条件匹配。通常,该算法可以被配置为使用前置条件和后置条件执行前向传播和/或反向传播。可以执行前向传播来构建图形(图形数据结构),其边缘和节点适合直接进一步处理,可能是合并为一个的并行子流水线,或者拆分为两个或更多个并行子流水线的一个流水线等等。算法可以包括用于存储经处理边缘的存储功能性,例如以便于在备选组合物中进行选择。可以支持无向图。
[0070]
基于规则的算法可以形成专家系统或被配置为实施专家规则的领域知识表示系统的一部分。如上文所描述,基于规则的算法可以使用如由语义数据模型定义的相同词汇/本体。规则可以根据语义数据模型来定义或使用语义数据。示例性规则包括需要上述输入-输出兼容性和功能兼容性的规则。其他规则可以描述工艺知识或工程技术知识(例如化学工艺知识,或管到模块法兰工程技术知识)。其他规则可以指定,例如某些工厂工艺总是需要精炼模块,这不一定会改变i/o材料,但需要更高质量的产品结果,以及特定的工艺技术规则(例如,分离器模块应通过蒸馏工艺来分离液体以及通过筛分工艺来分离固体)。其他规则可以描述最佳实践(例如,前工厂中运行良好的子流水线,前工厂中经过良好校准的模块等)。其他规则可以指示上下文相关性,例如,分批工艺中的分离器模块用筛子转化固体,而连续工艺中的分离器模块用蒸馏器转化液体。其他规则可以指示允许和不允许的子流水线组合,例如,一个规则可以规定在蛋糕烘焙流水线中的混合模块之前不使用烘焙模块。其他规则可以指示对顺序或并行处理的要求。例如,对于使用黑白面团制作大理石蛋糕的蛋糕烘焙流水线,一个规则可能指示在烘焙步骤之前需要分别制备黑白面团(即在并行的子流水线中)。流水线生成引擎104因此可以包括基于规则的、数据驱动的执行引擎。
[0071]
流水线生成引擎104可以被配置为执行支持模块流水线连接工艺的其他数据和知识驱动算法以及优化程序和排序算法,集成并处理kpi、模块特征和所有其他种类的可用有
用数据。
[0072]
图3示出了自动生成的所建议的语义流水线304,包括从此处为“产物a”和“产物b”的给定输入到所需输出“产品z”的一系列语义模块202。还示出了由模块库102提供的智能单元池300,可以从中选择语义模块202。如上文所描述,每个语义模块202可以基于由扩展语义描述以及可选的所收集使用数据包裹的相应模块的mtp。
[0073]
在此示例中,给定输入材料(产物a和产物b),工厂操作员希望获得输出材料(产品z)。因此,工厂操作员将输入材料和输出材料分别作为前置条件和后置条件输入到流水线生成引擎104中。用于将产物a和b转化为产品z的所建议的流水线304由流水线生成引擎104通过识别语义模块202的选择来生成,语义模块202按照所示的特定顺序将产物a转化为中间材料c,然后转化为中间材料d,与从产物b得到的中间材料e结合,得到中间体f,以此类推,直到得到产品z。所建议的流水线304基于语义表示的关于基础模块做什么的知识,即其接受什么输入以及其产生什么输出,或者其具有什么功能,如本文别处所解释。此示例中的流水线生成引擎104使用基于规则的、数据驱动的执行引擎,该引擎检查模块的兼容性(例如i/o兼容性),并且在确定下一模块的输入时运行通过流水线304,直到自动生成整个流水线以将给定输入材料处理为请求的输出材料。图3通过使用散列指示模块的不同i/o属性,进一步说明所建议的流水线304中的模块的i/o兼容性。通过这种方式,流水线生成引擎104简化了工厂的工程并减少了工程工作量。
[0074]
虽然上述示例中的模块根据i/o兼容性链接在流水线中,但应理解,流水线生成引擎104可以被配置为基于其他属性(诸如功能性、参数和其他属性)建议流水线,其可以在流水线中自动链接在一起,以及或者使用兼容的i/o处理链。通过利用语义描述,流水线生成引擎104被配置为基于任何类型的模块属性以及相应的前置条件和后置条件来构建流水线。
[0075]
如上所述,一个此示例性属性为功能性。因此,流水线生成引擎104可以根据功能序列生成流水线,以达到计划流水线的整体功能。在另一示例中,只有一种材料x将在新生成的工艺流水线内从初始原始状态处理为最终精炼状态(而材料的性质作为材料x基本保持不变)。流水线生成引擎104被配置为生成语义模块的流水线,其功能性建立在彼此之上:例如,首先是研磨模块,然后是加热模块,然后是搅拌模块,最后是冷却模块。第一个模块的前置条件是“配置为生成语义模块的流水线,其功能性建立在彼此之上:例如,首先是研磨模块,然后是加热模块,然后是搅拌模块,最后是冷却模块。第一个模块的前置条件是规则可以指示允许和不允许的子流水线组合,例如,一个规则可以规定在蛋糕烘焙流水线中的混合模块之前不使用烘焙模块。其他规则可以指示对顺序或并行处理的要求。例如,对于使用黑白面团制作大理石蛋糕的蛋糕烘焙流水线,一个规则可能指示在烘焙步骤之前需要分别制备黑白面团(即在并行的子流属性可以由流水线生成引擎104使用,从而基于模块功能性的前置条件和后置条件执行匹配和路径查找。
[0076]
由流水线生成引擎104选择用于包括在所建议的流水线中的语义模块可以对应于真实模块和/或虚拟模块。在所建议的流水线中包括至少一个真实模块的情况下,流水线生成引擎104可以起到防止该真实模块在另一个手动或自动生成的流水线中的重复使用(至少暂时)的作用。因此,流水线生成引擎104自动考虑共享的操作员活动,同时确保可以找到生成的流水线的全局最优解决方案(如下文更详细解释)。
[0077]
通过这些方式中的任一种方式,系统100为工厂操作员提供关于如何针对给定目的组成新流水线的合适/可行流水线建议的自动生成。
[0078]
尽管已经参考模块库102及其语义数据模型描述了流水线生成,但应了解,可以使用其他数据源和数据形式来定义模块以及其输入/输出和功能性。
[0079]
流水线优化部件
[0080]
再次参考图1,自动化工程支持系统100可以包括流水线优化部件106。流水线优化部件106被配置为:接收识别作为包括一个或多个模块的模块流水线的一部分组装到模块式工厂中的所需模块类型的数据;以及执行优化算法,以基于一个或多个预定优化标准从模块库102中具有所需模块类型的多个模块中选择一个模块以包括在模块流水线中。模块流水线生成引擎104可以被配置为根据一个或多个预定标准生成多个所建议的流水线用于比较。流水线优化部件106可以被配置为根据一个或多个预定标准比较或排序(使用例如排序部件)多个流水线(例如由流水线生成引擎104建议的流水线)。优化算法可以被配置为执行局部优化以仅优化所述模块流水线,或全局优化以选择所需类型的多个模块组装成模块式工厂中的相应模块流水线。预定优化标准可以包括以下一项或多项:产品质量;吞吐量;容量;资源/材料效率;能源效率;能源消耗;服务时间;正常运行时间;装备可用性;平均故障间隔时间;服务和装备的利用率;最大限度。特别地,在所收集使用数据包括先前测量的关键性能指标的情况下,这些可以用于确定用于在满足预定标准的同时将前置条件转化为后置条件的模块的最佳或优选选择和顺序。
[0081]
无论流水线是手动生成还是自动生成,模块库102可能包括若干特定类型的语义模块,可以从中选择哪一个或哪一个最适合给定目的。例如,这些可更换模块可能具有不同的特性,例如,一个模块可能更大,即在其可以蒸馏多少液体方面具有更大的容量,或者一个模块在投入使用之前可能剩余的运行时间更少。因此,在规划生产工艺时,会出现使用哪个模块的问题。为此,流水线优化部件106被配置为基于一个或多个预定标准来优化流水线(在多个单元选择可用的情况下)。如上所述,模块库102中的每个语义模块包括描述或表示基础模块的语义描述,由此基础模块富含以结构化方式在语义上映射的真实数据。流水线优化部件106被配置为使用语义描述中包含的模块属性来进行优化。
[0082]
本公开设想了可由优化算法使用的各种优化标准。优化标准可以对应于、涉及或基于上述语义描述的内容,可选地包括所收集使用数据。示例性优化标准包括:正常运行时间、容量、能源效率、能源消耗、维护间隔/周期、服务时间、单元中最近使用的材料或介质或其类型、装备可用性、单元可用性、单元时间表(何时可重复使用)、单元或其装备的平均故障间隔时间(mtbf)、服务和装备的利用率(例如阀门打开或关闭的频率)、资源/材料效率、模块使用的最小化或任何其他合适的kpi。自动化工程支持系统100还可以(例如,在同一数据库中)存储与先前使用的模块组合相关的数据,这些数据指示在模块式工厂的质量、吞吐量、效率或其他kpi方面的结果,以帮助评估特定组合中的模块是否成功地发挥了作用。优化部件106使用这些标准来对可使用或最适合待设计或组装的模块式工厂的模块进行智能和自动选择。例如,识别哪种介质流经模块的数据可以用于确定在模块可以用于另一工厂之前是否需要进行大范围清洁。所收集使用数据可以用于根据各自选择的优化标准为当前规划找到最佳可能模块。
[0083]
流水线优化部件106被配置为接收流水线,该流水线如上文所描述手动或自动生
成并且包括真实模块或虚拟模块或其类型的一个或多个表示。通过执行使用描述模块的不同特征和约束的语义数据的优化算法来相对于所选标准进行优化,从而在流水线中的一组模块上最小化/最大化所选的一个或多个优化标准。优化算法因此被配置为查找流水线的最佳模块组合。这可能涉及从流水线中完全排除接收(输入)流水线中的一个或多个模块,或者用备选的更合适的模块替换或交换这些模块。基于包括例如所收集使用数据(诸如kpi)的语义描述,优化算法找到导致例如产品质量最高、吞吐量最高、能源效率最高等的模块组合。
[0084]
优化算法可以使用机器学习模型来实施,该模型被训练为基于其语义描述以及可选地还基于指示模块组合在过去表现如何的数据(例如,过去哪些模块经常被选择共存,哪些模块很好地共存在一起)来选择模块。
[0085]
优化结果可以可视化给用户,可选地包括关于如何找到模块的最佳配置的指示。然后用户选择最终配置。
[0086]
如果不止一个标准被优化,结果可能是两个或更多个局部最优生成的流水线,这些流水线被建议给工厂操作员,以决定哪个标准被认为是全局最优的更重要。流水线优化部件106可以再次使用排序功能性(即排序部件)来根据选择的或预定的标准对两个或更多个流水线进行排序。
[0087]
优化可以是仅针对给定流水线的局部优化,或者是指示如何在多个流水线之间分配可用模块资源的全局优化。例如,在模块在服务之前剩余的运行时间较少的情况下,该运行时间对于计划的批量生产可能仍然足够长,因此,从全局优化的角度来看,最好使用此模块,以便剩余运行时间更多的其他类似模块仍可用于其他可能的分批生产过程。或者,情况可能为,一个模块是灵活的,理论上可以用于许多生产工艺,而另一个更专业的可交换模块将执行相同的功能,因此全局优化建议使用更专业的模块来为其他可能需要的工艺保存更灵活的模块。
[0088]
由流水线优化部件106选择的模块可以包括真实模块和/或虚拟模块。例如,虚拟流水线a可能优于虚拟流水线b,因为其总体上消耗的能源较少,而无需参考优化所需的真实模块数据。然而,为了考虑基于所收集使用数据的特定优化标准,例如确定真实模块是否在真实单元池中实际可用或者例如是否经受维护,可能会选择真实模块。
[0089]
图4说明使用流水线优化部件106优化语义模块的语义流水线404的一个示例。如图4中所示,模块库102管理的智能单元池包括虚拟单元池400和真实单元池402。虚拟单元池400包括语义功能模块(sfm)形式的虚拟单元。如上文所描述,在一个非限制性示例中,sfm可以由定义模块类型的模块类型封装(mtp)来表示。每个模块类型仅在虚拟单元池400中出现一次(图4中所示为模块类型sfm1-sfmn)。真实单元池402中的真实单元对应于在虚拟单元池400中找到的类型并且可以与所收集使用数据相关联。在此示例中,工厂操作员拥有不同类型的多个真实单元,这里有3个真实的计量单元,2个真实的反应单元。在第一步骤中,使用某些类型的虚拟单元手动或自动(如上文所描述)生成隐式流水线404,并且在第二步骤中,流水线优化部件106根据给定优化标准执行优化算法以用从真实单元池402中选择的给定类型的真实单元的表示来替换这些虚拟单元,以优先选择一个真实单元而不是另一个。显示优化结果以允许工厂操作员查看不同的工厂组成备选方案及其优缺点。在图4中所示的示例中,流水线优化部件106从真实模块池402中识别出(被选为流水线的第一个模块
的模块类型sfm1的)两个备选反应单元和(被选为流水线的第二单元的模块类型sfm4的)三个备选计量单元,其可以用于获得特定产品。在此示例中,流水线优化部件106基于存储在相应语义单元的语义描述中的所收集使用数据以及预定优化标准,为流水线404选择反应单元406和计量单元408。例如,在预定标准是最大化模块正常运行时间的情况下,优化算法可以选择单元406和408,因为那些单元具有比其他候选单元更长的mtbf,和/或直到下一次预定维护的时间更长。
[0090]
流水线优化部件106可以另外或备选地用于优化包括对应于真实模块的语义模块的流水线,例如由工程师输入的模块。在局部优化情景的另一示例中,其中工程师制定的初始生产计划的流水线包括尺寸太大并因此消耗太多能源的选定蒸馏模块,流水线优化部件106选择满足计划批量的备选的、较小的蒸馏模块。
[0091]
尽管上文参考包括所收集使用数据的语义描述的使用描述了流水线优化部件106,其在上文中描述为根据语义数据模型,但应了解,来自任何适当的其他源并且呈任何适当格式的数据可以用于优化。
[0092]
模拟部件
[0093]
再次参考图1,为了帮助工厂操作员验证模块/流水线的选择,自动化工程支持系统100可以包括模拟部件108或模拟工具,其被配置为提供模拟功能性以允许模拟模块流水线的操作,在模块式工厂中包括一个或多个模块(无论流水线是手动还是自动生成,以及无论是否自动优化),例如以识别可能的瓶颈和低效率,尝试备选模块以确定这是否优化了模拟,或者通常模拟

假设’情景。例如,计划可以从用户手动生成的流水线形式的初始工艺图开始,以表示模块以及模块如何连接,以定义用户想到的工艺类型。此流水线很可能不是最佳的。用户可以利用模拟部件108来模拟不同的假设情景以发现次优配置。例如,用户可以模拟如果使用替代蒸馏模块而不是当前选择的更大或具有更长服务时间的蒸馏模块会发生什么。模拟部件108可以被自动配置为模拟不同的假设情景(即备选配置/排列)并比较结果。情景的数量在实践中可能取决于例如计划者想要在模拟中投入的时间。
[0094]
反馈处理部件
[0095]
再次参考图1,自动化工程支持系统100还可以包括反馈处理部件110。反馈处理部件110可以被配置为基于用户反馈修改自动化工程支持系统100的一个或多个其他部件104-108的操作。用户可以是工厂所有者或工厂操作员、自动化工程师、维护人员、开发团队成员、服务团队成员等。
[0096]
反馈处理部件110可以被配置为接收由流水线优化部件106提供的关于模块或流水线排序的用户反馈,并且使用用户反馈来提供随后生成的改进的流水线的排序。如上所述,流水线优化部件106可以被配置为根据预定优化标准对多个候选模块或流水线进行排序。特别地,反馈处理部件110被配置为向机器学习模型提供用户反馈以及用户反馈所涉及的所生成的流水线作为训练数据、使用训练数据来训练模型、并且使用经训练的模型来生成改进的排序。在这种情况下,用户反馈可以包括例如对所生成的排序的修改或重新排序。
[0097]
图6说明反馈处理部件110用于训练机器学习模型以提供由流水线生成部件104生成的流水线建议的改进排序。在步骤1中,优化部件106根据一个或多个预定标准(在这种情况下为kpi能源成本(以焦耳为单元)和最小sfm寿命(以天为单位))生成所生成的流水线建议的排序。图6示出了两个所生成的流水线建议502、504,以这种方式获得了其排序。在步骤
2中,用户(在此示例中为三个模块式工厂的工厂所有者)提供关于排序的用户反馈506。在示例中,用户偏爱排序第二的流水线建议504并陈述偏爱的原因(理由以及相关性或关系或相关数据)。在步骤3中,流水线建议502、504连同用户反馈506由反馈处理部件110作为训练数据输入到机器学习模型,以训练模型以生成更好地满足用户偏好的排序。
[0098]
在训练模型的一个特定非限制性示例中,优化部件106根据给定/建议的优化标准、能源成本和最小sfm寿命或服务时间对一组用于化工厂的两条备选流水线进行排序,类似于以上示例。然而,优化部件106及其基础算法(包括排序算法)还没有包括(工厂所有者可能拥有的)专家知识,特别是对于化工厂的故障安全而言,模块并行性是非常可取的。因此,这些化工厂所有者反馈,以上示例中排序第二的流水线仍然是可取的(因为它包含两个相同类型和功能性相同的模块,这使得生产更可靠,更安全(即,两个模块中的一个可能会损坏,但另一个仍然可以工作并且可以保持进程处于活动状态,即使在较低的吞吐率下))。因此,此示例中的人类可理解的理由包括有关附加专家知识的信息,这些信息是关于针对此类型的所有工厂从现在开始考虑并在未来大力加权的特定工厂类型(化工厂)的重要的尚未提及的kpi。实施和执行此更新的排序行为所需的数据和标签(即训练数据)将包括先前获得的两个备选流水线建议502和504的初始排序,以及与这两个备选流水线相关的更新排序,但是,当然不仅是此示例,还有很多示例,使得ml部件可以识别“两个或更多个相同类型的并行模块总是优选用于化工厂”的模式。一旦被ml部件识别,其最终成为ml模型的一部分,即更新后的排序算法的一部分。
[0099]
反馈处理部件110可以被配置为使用可解释ai(x-ai)。在以上具体示例中,与上述机器学习/识别模式对应的人类可读语句“如果我们正在处理化工厂,那么模块并行性是可取的”,可以被提供为x-ai推理支持或可解释的ai理由。反馈处理部件110可以被配置为使用合适的已知x-ai方法获得此类解释。一个非限制性示例可以使用本质上可解释的决策树,因为树中的所有分叉都可以追溯到if-else-语句),但应理解,本公开设想了其他方法。
[0100]
通过这种方式,模型可以基于新接收到的用作训练数据的用户反馈不断更新。学习以这种方式对模块或流水线进行排序可以简化为模块式工厂生成流水线的工艺,减轻自动化工程师的任务,并允许提供透明和基于证据的排序建议,从而建立对系统100的信任。广义地说,优化部件106可以被配置为分析工厂中的模块或流水线性能,并且基于至少两类信息建议更好的流水线:也就是说,不仅包括包含明确理由的信息(诸如语句“如果我们正在处理化工厂,那么模块并行性是可取的”),而且还包括可以识别和推断模式的异构数据/证据(再次参考以上示例,对于同一个语句,这将是关于上述两个备选流水线建议的数据/标签)。
[0101]
在另一示例中,反馈处理部件110可以被配置为使用用户反馈,不是修改排序,而是提供例如以

透明建议’形式的伴随排序的补充信息。透明建议可以包括除了关于该排序或类似排序的先前用户反馈之外的排序。更具体地说,透明建议可以采取诸如“我们将自动生成的流水线排序如下
……
但其他自动化工程师或工厂所有者此时确实使用了xyz模块
……
并获得了甚至更高排序的流水线”的形式。参考上面关于图6给出的相同示例,透明建议旨在揭示和揭露已识别的模式(即语句“如果我们正在处理化工厂,那么模块并行性是可取的”)。因此,在此非限制性示例中的透明建议,透明建议可以如下所示:-[0102]“我们将根据您(即工厂所有者)的优化标准(即此处为能源成本和最小sfm寿命/
服务时间)对自动生成的流水线进行排序1和排序2。但其他自动化工程师或工厂所有者在这一点上遵循

如果我们正在处理化工厂,那么模块并行性是可取的’的模式,因此增强/改进的基于证据的排序将是:

排序2的流水线是甚至更高的排序流水线
’”

[0103]
反馈处理部件110可以被配置为基于用户反馈来调整流水线生成引擎104用来生成所建议的流水线的算法。如上所述,流水线生成引擎104可以使用基于规则的算法来操作,该算法被配置为实施用于生成流水线的专家规则。反馈处理部件110可以被配置为允许基于用户反馈来调整基于规则的算法。例如,反馈处理部件110可以被配置为促进新规则的添加、现有规则的修改或规则的删除(在规则列表中或在规则存储库112中)。规则存储库112中的规则可以包括形式化的依赖关系以及可以通过相同方式编辑的规则。图7说明基于用户反馈更新的规则存储库112。在所示示例中,反馈处理部件110接收来自一个用户的反馈,该用户请求将规则y添加到规则存储库112。另一用户请求将规则x修改为规则x”。可以添加或修改的规则的示例例如包括:使用相似/相同的公称压力或罐尺寸或i/o连接/端口;或首先计量,然后混合并加热,之后存储和冷却;或者,如果反应器模块有两个相同的输入端子/连接,那么它需要两个相同的计量模块用于两个产物。
[0104]
可以基于请求所述动作的直接用户反馈来调整基于规则的算法。例如,可以从诸如管理员、开发人员、供应商之类的用户接收用户建议。此类建议可以由建议用户自己、由其他用户、由存储库112的人工管理员或由反馈处理部件110自动批准、验证、排序和/或加权。另外或备选地,可以基于用户对所生成的流水线所做的修改来推断对基于规则的算法的调整。此类调整可以由管理员、开发人员、供应商等分析所述修改手动推断,或者由反馈处理部件110自动推断。
[0105]
反馈处理部件110可以被配置为仅响应于接收到调整确认来调整基于规则的算法。确认可以是手动和/或自动的。例如,反馈处理部件110可以被配置为提示用户(例如存储库112的管理员)手动地基于其专家/领域知识来确认所建议的调整。另外或备选地,反馈处理部件110可以被配置为通过在处理请求之前等待预定数量的用户提供相同建议或类似建议来自动确认调整。例如,新规则可能会在5个或更多用户请求添加时自动添加。类似地,现有规则只能在手动确认调整(例如,基于我们的专家/领域知识,包括确定规则定义中尚未包括哪个特征)或响应于多个独立用户请求相同修改时自动修改。
[0106]
在反馈处理部件110被配置为基于用户建议(例如,新规则或对规则的修改)来调整基于规则的算法的情况下,反馈处理部件110可以进一步被配置为在调整基于规则的算法之前处理一个或多个反建议。“反建议”是指与第一个建议至少部分不一致的第二个建议。例如,反建议可以包括对基于规则的算法的与第一个建议所建议的相反或不同的修改。因此,反馈处理部件110可以进一步被配置为确定在存在对那些调整的一个或多个建议的反建议的情况下要进行哪些调整。该确定可以手动或自动进行。例如,反馈处理部件110可以被配置为提示用户(例如存储库112的管理员)手动地基于其专家/领域知识响应于接收所述调整的建议的一个或多个反建议来确认所建议的调整。为了允许有时间接收反建议,反馈处理部件110可以被配置为将基于用户建议的调整延迟预定时间段。另外或备选地,反馈处理部件110可以被配置为通过采用加权机制来自动确认调整。例如,加权机制可以被配置为对相同或相似建议的数量和反建议的数量进行计数,并且仅当相同或相似建议的数量超过反建议的数量预定因子(例如5左右)时才相应地调整基于规则的算法,以验证/批准调
整。一个或多个相似性度量可以用于确定或识别建议何时与其他建议相同或相似。
[0107]
用户以这种方式修改规则允许生成不断改进的流水线建议,其中考虑到影响工厂的限制,诸如一般流水线的可行性和实用性、易用性、惯例等。在以上示例的一些变体中,可以在生产期间对基于规则的算法进行调整,或者仅响应于手动确认对被视为关键的规则进行调整。
[0108]
反馈处理部件110可以被配置为基于用户反馈,促进对语义数据模型的修改。特别地,反馈处理部件110可以基于用户反馈来促进对语义数据模型的扩展。用户反馈可以包括将一个或多个元素添加到语义数据模型的建议。反馈处理部件110可以被配置为促进对语义数据模型的修改或扩展,以包括所建议的元素。可以添加如本文所描述的语义数据模型的任何元素,包括例如关系(例如在输入与输出之间,或者在功能性与经处理材料之间)、模块特征、kpi、类别、标签。允许以这种方式修改语义数据模型使其具有可扩展性,使其能够(通过相应权重和重要性排序)反映更广泛的领域专业知识和对真实、实际工厂环境的理解。
[0109]
可以通过将所建议的元素添加到相同类型的现有元素列表中来扩展模型。例如,可以通过添加用户建议的kpi来扩展语义数据模型的kpi目录。另外或备选地,可以通过引入新类型的元素来扩展语义数据模型。例如,如果语义数据模型仅涵盖能源值和管连接,则可以将其扩展为包括工艺技术、程序经验值或经验值。这可能是例如从模块到另一后续模块的正向压力,或者例如阀门只能逐步打开,即使前一个模块为其提供输入材料,也不能促进直接打开/关闭状态,或者例如反应器的体积-温度-压力-关系正式允许x-y-z值,但在实践中,最好并建议仅将其用于90%的工作负载/利用率。
[0110]
反馈处理部件110可以被配置为允许用户编辑(例如,添加或修改)由本文所描述的流水线优化和/或排序算法使用的特征。自动化工程支持系统100可以为此目的维护优化标准或kpi的列表、数据库或目录。反馈处理部件110可以被配置为允许用户编辑此标准目录。可以基于用户的kpi重要性选择使用特征权重。在一个非限制性示例中,如果用户想要关注能源效率,他们可以指示排序算法将更高的权重附加到与能源成本相关的所有kpi。在另一非限制性示例中,例如,用户可以建议添加/包括kpi以关注“关注一非限制可处理性性非限制性示例中,例如包含“脚轮上的模块”的流水线。此处,“便利性”可以是要添加到标准目录的kpi,然后当用户命令排序算法重点关注kpi“pi当用户命令排序算法重点关注“脚轮上的模块”的流水线。此处,“便利的流水线。在另一非限制性示例中,用户可以建议kpi描绘几个程序将适用于预期的工艺(例如,不同行业部门的不同焦点),但尚未在语义数据模型中描绘/定义差异。例如,如上文提到的示例,这可以用于将模块并行性表示为流水线的可取特征(基于可靠性-kpi或模块-并行性-kpi)。在其他非限制性示例中,用户可以将特定于行业或特定于用例的元素或元素类型添加到语义数据模型。例如,石油和天然气行业用户可能会添加kpi以专注于持续运行或维护,而例如制药行业用户可以添加kpi以关注精度(例如分批工艺没有变化或异常值),例如能源密集型行业用户可以添加kpi以关注能源成本/能源效率,例如,这样就不会出现峰值电流。
[0111]
在反馈处理部件110全局或次全局操作的情况下,语义数据模型可以仅响应于建议相同修改的预定最小数量的用户而被修改,例如,新特征或kpi可以仅在由5个或更多个独立用户(例如客户、自动化工程师、工厂所有者等)建议时集成,因此可以确保修改很重
要,而不是异常值或很少或特殊的愿望。
[0112]
在一个示例中,反馈处理部件110可以按照以工厂为中心的方式操作,即,针对各个工厂所有者进行个性化。在其他示例中,反馈处理部件110可以跨多个工厂全局地操作或跨特定领域中的工厂(例如,化工厂、采矿作业)的次全局地操作以更广泛地覆盖最佳实践。
[0113]
总之,反馈处理部件110提供自动化工程支持系统100的其他部件104-108的环绕,从而促进可扩展的、学习的、不断改进的自动化流水线生成和优化系统,该系统响应于用户对其输出的评估不断适应实际用例和应用领域。
[0114]
应用
[0115]
可以提供如本文所描述的自动化工程支持系统100:-[0116]
o作为提供给多个工厂操作员的中央单元池。中央池包括与工厂操作员先前使用的模块相对应的语义模块的集合,并且包括语义描述以及从委托工厂收集的使用数据。因此,不仅促进了以单元为中心的局部优化,而且促进了全局的、以单元为中心的流水线上下文优化。此解决方案可能基于云、可扩展且易于访问。
[0117]
o作为由工厂操作员处理的私人单元池。私有单元池允许工厂操作员处理和管理与工厂操作员拥有的真实模块相对应的语义模块的集合。参数、kpi和其他收集的使用数据(最佳实践、校准参数组合、维护间隔、mtbf、上次维护完成、上次使用的材料、清洁与否、活动/可用/未使用等)从真实模块收集并上传到数据库以允许应用系统的流水线生成引擎和优化部件。根据工厂操作员的愿望/要求,本地实施和基于云的解决方案都是可能的。
[0118]
o作为内部产品以降低工厂操作员的成本,或者作为向客户提供以降低其自身成本的提议。
[0119]
本文所描述的主题可以在基于模块的生产和资源规划中找到特定应用。尤其是在小批量的药品批量生产中,模块资源在不同批次之间频繁交换。在计划新批次时,或在重新设计现有批量生产的模块设置时(例如,因为生产负载已经改变,现有模块的选择似乎会造成一些瓶颈),本文所描述的主题将允许规划师来识别和选择正确的(即最适合的)模块。
[0120]
本文所描述的主题可以在模块维护计划中找到其他应用。模块需要不时维护,并具有诸如“服务时间”之类的特性,表明距离下一次计划的检查服务还有多少运行时间。此处,优化和假设模拟可以帮助确定模块的最佳维护计划。例如,在指定在不久的将来如何使用不同模块的已知生产计划的帮助下,示例优化情景将比计划更早地对模块进行维护,因为那时它没有被使用,结果证明具有最终更好的利用和过程输出。
[0121]
因此,本文中所描述的自动化工程支持系统100提供的益处包括——除其他外——(1)模块的重新使用和通过可搜索模块池相应地减少工程工作量;(2)简化或自动生成可行的流水线,该流水线(i)通过语义检查和控制直接兼容,并且(ii)能够针对诸如正常运行时间、维护间隔、可用性等其他标准进行优化。
[0122]
控制工程支持系统
[0123]
尽管自动化工程支持系统100专注于支持自动化工程师(在自动化工程或调试阶段),但控制工程支持系统150专注于支持控制工程师(即,在操作阶段的操作员或生产计划员)。返回参考图1,控制工程支持系统150包括以下一项或多项:执行和控制引擎152;工厂优化部件154;质量控制部件156;认证部件158。
[0124]
执行和控制引擎
[0125]
控制和执行引擎152提供自动化语义流水线执行功能,以使得系统可以调整、控制和/或执行自身。执行和控制引擎152被配置为使用与自动化工程支持系统100相同的语义数据模型进行操作,因此可以使用如本文所描述的语义流水线和语义数据进行操作。执行和控制引擎152还可以访问来自模块式工厂中委托流水线中的真实模块(例如功能模块)实例的数据。为此,控制和执行引擎152可以被配置为从基于工厂的监控基础设施(包括例如传感器和其他报告设备)接收数据,因此可以实时监控工厂流水线执行并将数据馈送到基于软件的控制和执行引擎152。控制和执行引擎152可以被配置为将其从监控基础设施接收的数据翻译或解释成符合语义数据模型的数据。控制和执行引擎152被配置为运行可能已经或可能没有以上述方式生成并且随后被委托的流水线。控制和执行引擎152可以执行制造执行系统(mes)的一些或全部功能,因此可以被配置为实时执行功能,包括例如调度和资源分配、生产订单的调度和执行、收集生产数据和生产分析,以监督、执行和/或控制从产物到产品的转化。控制和执行引擎152可以被配置为跟踪和记录过程以记录捕获的数据、过程和过程的结果。控制和执行152使用符合语义数据模型的数据来执行这些功能。
[0126]
再次参考涉及带有服务“purify”的净化工艺模块的上述示例,该服务需要钢水作为输入,此前置条件可以通过描述所需输入属性的四维条件向量[0,76,2,-]在语义数据模型下表示。此处,零维到三维的属性分别表示属性的类型(0=材料)、材料(76=钢)、聚合状态(2=液体)和耐久性(-=无条件适用)。控制和执行引擎152被配置为响应于由向量[0,76,2,-]描述的输入材料在模块的输入管处存在或检测到而立即启动模块服务“purify”。在其中第一个模块需要来自第二个和第三个(可能不同或并行)模块(例如如图5中所示)的两个(可能不同)输入的另一非限制性示例中,控制和执行引擎152可以命令第一个模块仅在第二个和第三个模块都提供与第一个模块的输入前置条件对应的输出之后(但尽快)执行。
[0127]
n维条件向量中的其他说明符可以用于表示模块公开的服务,从而提供这些服务的语义描述。n维条件向量的说明符可以用于区分“量的说明符可以用于区分于区分模块公开的服务的服xce运行”行e说明符可以用于区分于区分模块公开的服务的服务一或不对应)“服务运行”或因此(不对应)“状态模型运行”的情况。描述模块服务的信息可以在需要时从状态模型(包括例如因果矩阵)中收集。还可以使用其他说明符来区分服务的并行执行和顺序执行。例如,提供使n个服务并行运行的功能性的模块可能具有说明符“支持的服务级别的并行性”,并且可并行化的服务可以获得相应的标志或注释,指示其可以与哪些其他服务并行运行。一些模块可能允许服务的并行执行,而另一些则不允许。例如,packml每个单元只允许一项服务或一个有限状态机/自动机。其他说明符可以用于表示服务之间的相互依赖性。这些说明符可以建立在xce矩阵上,或者也可以使用其他形式描述技术。例如,在katharina gohr等人于2014年1月2日的atp版“technik-kommunikation leicht gemacht:cause-and-effect-diagramm als”中描述了xce。这在顺序性或并行性或并发性的情况下可能很有用。
[0128]
控制和执行引擎152可以被配置为响应于从人类操作员接收到的启动命令或批准(例如通过点击“运行”按钮502,如图5中所示)运行流水线,或者其可以被配置为自执行,从各个输入可用、维护间隔满足或根据自动检查的其他优化标准开始。例如,这也可以安排或准时生产例如药品或易腐产品,其中最终的例如反应模块中的反应过程应该尽可能晚,但
物流要及时。
[0129]
控制和执行引擎152因此有助于控制工程、操作和生产计划。控制和执行152因此提供支持或替代人工操作员和生产计划员的自主或半自主工厂流水线操作。这减少了对生产调度特征的需求,并允许在更高的自动化级别上实现更简单的生产调度功能性。它减轻或消除了对mes和调度操作的需求。
[0130]
工厂操作优化部件
[0131]
工厂操作优化部件154被配置为使用从模块式工厂(例如,从传感器504,如图5中所示)收集的数据或其他kpi来执行实时、多因素、工厂特定优化,以进一步优化其执行。收集到的数据和kpi再次符合语义数据模型。可以优化的kpi包括例如成本、能源/资源和维护时间。在根据能源成本优化工厂操作的一个示例中,工厂操作优化部件154知道将通过特定流水线y生产一定量的产品x,流水线y生产产品需要例如20分钟,并且交货日期是明天,工厂操作优化部件154可以指示控制和执行引擎152等到夜间,此时能源成本较低。当使用多个因素时,可以接收用户指定的相对重要性指示并将其用于优化。例如,工厂所有者可以通过提供kpi/因素的加权列表来指定相对重要性,工厂操作优化部件154被配置为相应地计算流水线备选方案的总成本以及其计划执行的总成本。对于语义数据模型,流水线的成本可以计算为
[0132][0133]
其中k=1

n涵盖各个流水线中的所有sfm,j=1

m涵盖所有类型的成本(例如,能源、下一次维护到期日或co2排放),并且i涵盖所有流水线替代方案,以使得c乘以v描述了sfm相对于材料的加工量或体积v的成本c,由相应的成本kpi重要性μ加权,由此工厂所有者可以具体权衡和排序kpi相对于彼此的重要性和强度。另外,可以选择惩罚因子pi》1(默认情况下pi=1)例如基于本体中的知识来惩罚流水线,以例如解释某些地区对环境不友好或法律禁止的程序。最佳流水线被认为是所有潜在可行流水线替代方案中总成本最低的一个(相对于给定的kpi权重)。一些参数可能是时间的函数,而另一些可能是常数。例如,全天不同的电价可能意味着能源成本可能是函数c=f(t),这可能类似于白天价格高而夜间价格较低的升高的正弦函数。因此,成本(pipei)也可能取决于时间,总体最小值不仅取决于所选流水线,还取决于各自的执行时间。
[0134]
优化可以是全球性的、行业特定或领域特定的(例如,仅适用于石油和天然气工厂,但不适用于制药厂)或工厂特定的。
[0135]
质量控制部件
[0136]
质量控制部件156用作自动化语义质量控制系统,其可以自动评估或监控从流水线获得的语义结果及其质量,例如以保证中间产品或最终产品的质量落在预定公差内或满足一定的阈值。例如,质量控制部件156可以被配置为检查产品x的ph值在某个公差内是否正确。ph值由符合语义数据模型的n维条件向量中的说明符表示。在一个非限制性示例中,酸性液体材料可以使用条件向量[0,32,2,-,1.87( /-0.5)]在语义上表示,其中零维到四维中的属性分别表示属性类型(0=材料)、材料(32=硫酸)、聚合状态(2=液体)、耐久性(-=无条件适用)和ph值(ph值=1.85,公差为 /-0.5,表示从1.35到2.35)。
[0137]
认证部件
[0138]
认证部件158充当自动化语义质量控制认证系统,该系统可以创建自动化质量控制的认证或协议。图5示出了由认证部件158产生的语义质量控制认证。假设这是正确的,可以直接从模块/sfm的设置中获得质量控制认证。换句话说,如果sfm设置和校准正确,即其i/o前置/后置条件例如关于ph值、耐久性、温度、压力等是正确的,那么最终结果产品将是确切已知的,因为流水线执行和控制部件152将准确地执行已被指定为具有相应模块的流水线的内容。
[0139]
控制工程支持系统150因此使用语义数据模型和基于证据的反应算法提供自动化和控制工程支持的高透明度,并且可以用于以使得支持自动化工程师和控制工程师的方式补充自动化工程支持系统。当然,应了解,这两个系统也可以独立存在。
[0140]
现在参考图8,说明可以根据本文所公开的系统和方法使用的示例性计算设备800的高级图示。特别地,计算设备800可以用于实施上述模块式自动化支持系统10。计算设备800包括至少一个处理器802,该处理器执行存储在存储器804中的指令。例如,指令可以是用于实施描述为由上述一个或多个部件执行的功能性的指令或用于实施上述方法中的一个或多个方法的指令。处理器802可以通过系统总线806访问存储器804。除了存储可执行指令之外,存储器804还可以存储会话输入、分配给会话输入的分数等。
[0141]
计算设备800另外包括可由处理器802通过系统总线806访问的数据存储808。数据存储808可以包括可执行指令、日志数据等。数据存储808可以用于实施上述模块库102及其数据库。
[0142]
计算设备800还包括允许外部设备与计算设备800通信的输入接口810。例如,输入接口810可以用于从外部计算机设备、用户等接收指令。计算设备800还包括使计算设备800与一个或多个外部设备介接的输出接口812。例如,计算设备800可以通过输出接口812显示文本、图像等。设想通过输入接口810和输出接口812与计算设备800通信的外部设备可以包括在提供用户可以与之交互的基本上任何类型的用户接口的环境中。用户接口类型的示例包括图形用户接口、自然用户接口等。例如,图形用户接口可以接受来自使用诸如键盘、鼠标、遥控器等输入设备的用户的输入,并在诸如显示器的输出设备上提供输出。此外,自然用户接口可以使用户能够以不受诸如键盘、鼠标、遥控器等输入设备施加的约束的方式与计算设备800交互。相反,自然用户接口可以依赖于语音识别、触摸和触控笔识别、屏幕上和屏幕附近的手势识别、空中手势、头部和眼睛跟踪、话音和语音、视觉、触摸、手势、机器智能等等。
[0143]
另外,虽然被示为单个系统,但应理解计算设备800可以是分布式系统。因此,例如,若干设备可以通过网络连接进行通信并且可以共同执行描述为由计算设备800执行的任务。
[0144]
本文中所描述的各种功能可以在硬件、软件或其任何组合中实施。如果在软件中实施,则这些功能可以作为一个或多个指令或代码在计算机可读介质上存储或传输。计算机可读介质包括计算机可读存储介质。计算机可读存储介质可以是计算机可以访问的任何可用存储介质。借助于示例且非限制,此计算机可读存储介质可以包括ram、rom、eeprom、cd-rom或其他光盘存储装置、磁盘存储装置或其他磁性存储设备或者能够用于存储呈指令或数据结构形式的所需程序代码和能够被计算机存取的任何其他介质。如本文中所使用,磁盘和光盘包括压缩光盘(cd)、激光光盘、光学光盘、数字多功能光盘(dvd)、软盘和蓝光光
盘(bd),其中磁盘通常磁性地再现数据,且光盘通常光学地与激光再现数据。此外,传播的信号不包括在计算机可读存储介质的范围内。计算机可读介质还包括通信介质,包括有助于将计算机程序从一个地方转移到另一个地方的任何介质。例如,连接可以是通信介质。例如,如果使用同轴电缆、光纤电缆、双绞线、数字用户线(dsl)或诸如红外线、无线电和微波等无线技术从站点、服务器或其他远程源传输软件,那么在通信介质的定义中包括同轴电缆、光纤电缆、双绞线、dsl或诸如红外线、无线电和微波等无线技术。以上组合还应包括在计算机可读介质的范围内。
[0145]
备选地或另外,可以至少部分地通过一个或多个硬件逻辑部件执行本文中描述的功能性。例如且不限制,可以使用的硬件逻辑部件的说明类型包括场可编程门阵列(fpga)、程序专用集成电路(asic)、程序专用标准产品(assp)、系统芯片系统(soc)、复杂可编程逻辑设备(cpld)等。
[0146]
尽管以上描述是在mtp标准的上下文中提供的,但应理解,本公开不限于在定义单元中使用mtp,并且可以使用其他标准化模块描述。
[0147]
申请人特此单独公开本文中所描述的每个单独的特征以及两个或更多个此类特征的任何组合,以使此类特征或组合能够基于本说明书作为一个整体按照所属领域的技术人员公知的知识来实施,无论此类特征或特征的组合是否解决了本文所公开的任何问题,并且不限于权利要求的范围。申请人指出,本发明的方面可以由任何此类单独特征或特征组合组成。
[0148]
尽管已在附图和前述描述中详细地说明和描述本发明,但此说明和描述被视为示例性的而非限制性的。本发明不限于所公开实施例。通过研究附图、公开内容和随附权利要求,所属领域的技术人员可以理解和实现所公开实施例的其他变化。
[0149]
在权利要求中,词语“语利要不排除其他元件或步骤,并且不定冠词“冠词不排除多个。单个处理器或其他单元可以实现权利要求中列举的若干项的功能。在相互不同的从属权利要求中列举了某些措施这一事实并不表明不能有利地使用这些措施的组合。计算机程序可以在合适的介质(诸如与其他硬件一起提供或作为其他硬件的部分提供的光学存储介质或固态介质)上存储/分配,但也可以其他形式分配,诸如通过互联网或其他有线或无线电信系统。
[0150]
权利要求中的任何参考标记不应被解释为限制范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献