CN115668200A - 用于将硬件约束结合到设计中的ai推荐器 - Google Patents

用于将硬件约束结合到设计中的ai推荐器 Download PDF

Info

Publication number
CN115668200A
CN115668200A CN202080101336.0A CN202080101336A CN115668200A CN 115668200 A CN115668200 A CN 115668200A CN 202080101336 A CN202080101336 A CN 202080101336A CN 115668200 A CN115668200 A CN 115668200A
Authority
CN
China
Prior art keywords
project
design
module
knowledge graph
hardware
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
CN202080101336.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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Publication of CN115668200A publication Critical patent/CN115668200A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种用于计算机辅助设计的系统和方法,包括通过当前项目的工程软件工具来构建包括多个硬件元件的工业系统的电路或子系统的设计。针对当前项目构建项目知识图,该项目知识图表示一组元件的本体和元件关系,其中该组元件包括多个硬件元件。特征提取模块提取与多个硬件元件相关的项目知识图的特征。基于AI的推荐器在当前项目期间与工程工具集成运行,并向一个或多个参考知识图查询由特征提取模块提取的共同特征,并且响应于识别与硬件约束相关的附加信息,生成并向用户显示用于设计的推荐。

Description

用于将硬件约束结合到设计中的AI推荐器
技术领域
本申请涉及计算机辅助设计(CAD)。更具体地,本申请涉及使用人工智能推荐器来增强CAD,用于将硬件约束结合到设计中。
背景技术
当设计工业系统时,工程师依赖于CAD领域中的各种工程工具,包括为行业的一个或多个学科或领域(诸如电气、机械、自动化等)定制的各种软件包和应用。使用此类CAD工具的一个显著缺点是,在设计过程期间,缺乏与目标设备的物理和硬件限制有关的信息以指导用户。如果所设计的操作区域实际上超过设备的物理限制,这可导致在目标设备部署时产生其意外行为或操作的设计,这可能会损坏或破坏设备,并且可能会损坏电气域中的共享电路内或机械域中的系统环路内的周围部件。
硬件限制和约束的主要资源是制造商数据表,但是从手动提取和计算机视觉技术的角度看,这些数据表的格式通常较复杂,阻碍了设计过程。仅依赖于数据表的另一个潜在缺陷是,所提供的规格可能不足以揭示由动态操作引起的限制,诸如瞬态条件。因此,数据表通常是所需信息的不完整且不充分的资源。
用于学习硬件约束的另一来源可以是通过与熟悉目标设备的专家协商而获得的专家知识。然而,直接咨询非常低效并且由于缺少将此类信息进行一致存储或建模,或者由于其通常的误处理,信息经常随时间丢失。由于专家咨询通常以范围狭窄的孤岛出现且出现在局部的工作组内,因此对于当前普通用户和未来用户来说,往往不能广泛地得到综合的专家知识。此类专家知识的不一致可用性是工业系统关于硬件约束的安全和有效设计的一个重要缺点。
虽然基于人工智能(AI)的工具可用于帮助软件用户,诸如用于编写方法的BAYOU和用于代码完成的Codota,但是没有一种常规的解决方案结合硬件约束的知识,也没有将它们扩展到基于图形的环境。
发明内容
公开了一种软件解决方案,其结合了基于人工智能的推荐器功能,以在特定硬件限制被违反或者设备性能可能与预期不同的情况下通知基于CAD的工程工具用户。基于AI智能的推荐器可以生成并显示对设计的推荐,诸如不同的目标设计单元或附加的设计单元,以确保安全操作。
一方面,提供了一种用于计算机辅助设计的系统,该系统包括处理器和存储器,该存储器上存储有由处理器执行的模块,诸如工程软件工具,该工程软件工具被配置为构建用于当前项目的具有多个硬件元件的工业系统的电路或子系统的图形设计。该工程软件工具还显示设计的渲染。知识图生成器模块从图形设计中提取数据,并构建用于当前项目的项目知识图,该项目知识图具有表示一组硬件元件的本体以及元件关系的节点和边缘。特征提取模块提取与多个硬件元件相关的项目知识图的特征。人工智能(AI)模块在当前项目期间与工程软件工具集成,并且向一个或多个参考知识图查询由特征提取模块提取的共同特征。参考知识图被存储在先前项目的存档数据的库中,包括与硬件约束相关的附加信息,该硬件约束与提取特征相关联。AI模块响应于识别与硬件约束相关的附加信息,渲染设计的显示上生成用于设计的推荐。AI模块与基于服务器的AI模块通信,该基于服务器的AI模块包括基于机器学习的网络,使用训练数据来训练该基于机器学习的网络以从知识图分析识别硬件约束。
附图说明
参考以下附图描述当前实施例中的非限制性和非穷举性实施例,其中除非另有说明,在所有附图中,相同的标号表示相同的元件。
图1是根据本发明的实施例的用于将硬件约束结合到工程设计中的基于AI的推荐器系统的实例的框图。
图2示出了根据本发明的实施例的用于将硬件约束结合到设计中的基于AI的推荐器过程的实例的流程图。
图3示出了根据本发明的实施例的用于在设计项目中实现基于AI的推荐器的方法的实例。
图4示出了根据本发明的实施例应用的知识图的实例。
图5示出了根据本发明的实施例的与工程工具集成的经渲染的基于AI的推荐器序列的实例。
图6示出了可在其中实现本发明的实施例的计算环境的实例。
具体实施方式
公开了用于提供AI辅助设计工具的方法和系统,该AI辅助设计工具将硬件约束结合到设计元件中。在项目(诸如工程设计项目)期间,软件应用(例如,用于在2D或3D中渲染电路或系统设计的基于工程CAD的工具)的用户可以将元件一个接一个地添加到工业系统或子系统(诸如自动化系统)的电路或系统回路中。为了解决上述对根据项目设计部署的硬件造成损坏的风险的技术问题,基于AI的推荐器的特征可以在后台运行,在设计阶段期间与设计软件应用集成以向用户提供推荐。例如,软件应用可以与由工程工具实时渲染的设计项目的图形表示同时在显示屏上显示来自基于AI的推荐器的通知。作为一个实例,可以从候选元件的显示中选择电路元件,并将其放置到当前设计的电路中,并且作为响应,基于AI的推荐器可以认识到先前项目中的类似设计包括附加的保护元件以防止对新元件的损坏,诸如将工作电压控制在安全工作范围内的限制器元件。本发明中提出的解决方案包括AI模块,该AI模块被训练成从参考知识图学习,该参考知识图由项目档案、专家知识、内部标准和/或工业标准规则及规范构建。
图1是根据本发明的实施例用于将硬件约束结合到工程设计中的基于AI的推荐器系统的实例的框图。计算设备110包括处理器131、存储器141和图形用户界面(GUI)151,用户(例如工程师)在该图形用户界面上从事与工业自动化系统170相关的项目。在一个实施例中,应用软件112被部署在计算设备110上、存储在存储器141上并由处理器131执行,用于项目中的各种设计任务。应用软件112可以包括一个或多个专用于建模、模拟或其它工程工具的程序。知识图生成器150提取由应用软件112执行的当前设计项目的特征,以生成设计的本体,包括互连的硬件元件。用户接口模块114提供从应用软件112到GUI 151的接口,允许用户与应用软件112连接并查看设计元件在显示上的渲染。应用软件112可以执行项目设计的模拟,并如图所示作为模拟数据145存储于外部、本地存储在存储器141中或二者的组合。
在应用软件112构建和测试设计项目期间,可以部分或全部部署工业系统170。例如,设计项目可以涉及多学科设计,其中各个学科的工程师各自执行使用为各个学科配置的工程软件工具的计算机辅助设计。自动化工程师可以贡献工业系统170的自动化系统设计方面,该工业系统可以包括处于不同部署阶段的输送机、铣床和机器人,包括辅助和控制系统,诸如传感器和电驱动器电路。类似地,可以由电气工程师使用电气工程软件工具来设计工业系统170的电气子系统,以构建电路和相关控制系统的设计。机械工程师可以使用机械工程软件工具来设计工业系统170的机械子系统。对于各个工程学科中的每一个,根据本发明的实施例,可以将工业系统170的硬件约束结合到设计项目中。
在一个实施例中,应用软件112的工程软件工具被配置为执行用于工业系统170的项目设计,包括构建子系统的图形设计,诸如电路,其中图形设计包括硬件元件,并且将设计进行渲染以显示给用户。
在一个实施例中,知识图生成器150被配置为从图形设计中提取数据,并由提取数据来构建用于当前项目的项目知识图,该项目知识图包括表示一组元件的本体以及元件关系的节点和边缘。该一组元件包括多个硬件元件。例如,一个或多个设计项目可以使用应用软件112并发地运行,并且可以为每个项目生成项目知识图,并将其存储在项目知识图库155中。计算设备110、模拟数据145和工业系统170可通过网络130访问一个或多个项目知识图155。知识图是将工业系统设计的元件表示为节点的本体,边缘表示节点之间的关系。随着时间的推移,本体随着更新而演变,以实时地捕获由应用软件112的项目导出功能所提供的对设计的改变。
硬件约束信息可被存储在参考知识图156中的数据本体中,包括先前项目的存档数据。例如,在内部标准和/或工业标准规则及规范中发现的信息可被编译并添加到历史数据中,诸如来自先前项目的电路和系统环路设计,其可以包括模拟数据145,该模拟数据具有由模拟应用软件112在先前项目中执行的模拟结果。可通过在先前项目期间累积的工程反馈、注释和专家知识以及制造商数据165来进一步增强参考知识图156。
用户可以操作计算设备110,以通过调用类似于当前项目的先前项目来开始项目,诸如设计工业自动化系统170的特定部分。例如,使用诸如TIA门户工程工具之类的应用软件112,GUI 151可以显示菜单,用户可以从该菜单选择各种部件类型,诸如要连接到机器人的机器人传感器。当使用应用软件112的工程软件工具选择和安排当前项目的元件时,这些元件被映射到一个或多个项目知识图155。一方面,几个项目可以并行并发地运行,每个项目具有各自的项目知识图155,可以通过增加、改变或移除元件来更新该项目知识图155,由此可以通过连接的边缘来增加、移除或重新排列一个或多个节点和边缘。
如图1所示,AI模块125经由网络130可用于计算设备110。例如,AI模块25可以实现为服务器,计算设备110可经由网络130访问该服务器,该网络可以是专用网络或因特网。当应用软件112的一个或多个工程软件工具同时运行时,可以由AI模块125执行基于AI的推荐器特征,以帮助用户,从而在用户界面151上提供关于硬件约束的推荐。一方面,本地AI模块120可以存储在存储器141中,以与AI模块125一起工作,允许在后台运行的应用软件112(例如,使计算设备110中的客户端能够与基于服务器的AI模块125对接的应用插件)中嵌入基于AI的推荐器特征。在一个实施例中,响应于一个新的元件被添加到该设计中,可以向用户显示关于新元件的硬件约束的推荐,而不必离开运行的工程工具。为了提供此类帮助,AI模块125在学习阶段从一个或多个知识源学习,然后在项目工程阶段期间继续学习。在一个实施例中,AI模块125包括基于机器学习的网络,该基于机器学习的网络被配置为基于从制造商数据165(例如,存储在数据库中的制造商数据表数据)提取的信息来学习与设计元件相关联的用户选择,诸如与硬件约束相关的元件的组合。在一个实施例中,AI模块125可以从使用应用软件112进行模拟的先前项目中执行的先前模拟期间累积的模拟数据145中学习硬件约束。在一些实施例中,AI模块125可以实现为贝叶斯网络,该贝叶斯网络基于参考知识图156的本体从先前的项目中学习,然后基于对元件组合的预测、元件选择和/或所选元件的参数设置,在项目期间向用户提供推荐。此类基于规则的系统实现了从本体或其它数据表示理解到当前设计项目涉及对安全操作具有一个或多个约束的硬件元件。在另一个实施例中,AI模块125将参考知识图156与当前项目的新项目知识图155进行比较,以检测差异。基于差异,AI模块125可以应用推理算法来生成推荐,并且可以向用户发送通知作为辅助功能,指示设计元件关于超过制造商操作限制或其它潜在原因的潜在风险以进行报警。
特征提取模块135被配置为在项目工程阶段从开发环境(例如Matlab、Simulink、NI Labview等)中提取设计的相关特征。在一个实施例中,当用户使用应用软件112开发项目时,特征提取模块135读取设计的元件,并且AI模块125对照现有的参考知识图156查询提取的元件。在一个实施例中,特征提取模块135可以从项目知识图155中提取项目设计的特征。例如,当应用软件112将新的元件添加到设计中时,知识图生成器150可以将该元件的信息编码到存储在库155中的项目知识图中,特征提取模块135从该库中提取新的特征。特征提取模块135可以被远程部署和经由网络130访问,或者可以被部署在本地存储器141中。
图2示出了根据本发明的实施例的用于将硬件约束结合到设计中的基于AI的推荐器过程的实例的流程图。AI模块225被示出为在学习阶段和工程阶段中操作。在学习阶段,使用训练数据来训练AI模块225以识别来自知识图分析的硬件约束。可以使用受监督或非受监督的训练方法将训练数据应用于基于机器学习的网络,该基于机器学习的网络使用来自项目档案的先前工程经验和专家知识、内部标准(例如,作为所设计的工业系统设施的拥有者和操作者的公司的标准和策略)、工业标准规则及规范。例如,这些信息源可以被存储为参考知识图256。受监督学习的实例包括某些特征将与数据相关联的情况。可以使用基于自然语言处理(NLP)的技术从记录在先前项目或制造商数据表中的工程师注释中提取硬件限制,然后将其存储在参考知识图256中。例如,制造数据表含有与容易解释的标签(例如最大额定电压)相关联的关键信息表。在这些情况下,自动NLP算法提取该信息相对容易。另一方面,可能存在NLP能够从被认为过于复杂而无法手动提取的数据表中提取相关信息的情况。然而,在一些情况下,专家可以提供数据表的相关部件,诸如不能执行数据表的自动NLP的情况。在一个实施例中,受监督的训练涉及当前项目到先前项目的映射,其中使用硬件部件的两个项目可以被分类为相似的,并且硬件部件被用作确定相似度的特征。关于无监督的方法,可以使用各种文档或代码嵌入技术(例如,code2vec)来确定两个项目的相似性,诸如根据相似的代码。
在一个实施例中,参考知识图256可以包括通过来自工程师的反馈而获得的信息,该信息可以来自存储工程工具212的先前使用的项目档案。例如,反馈可以与用户对先前基于AI的推荐器推荐的响应相关,诸如工程师拒绝推荐,然后由基于AI的推荐器记录为“无用”。在此类情况下,AI模块225将知道推荐没有意义。工程师反馈也可以被应用为AI模块225的受监督训练数据,其中工程师输入已知的模式或解决方案。可替代地,AI模块225可以检测先前项目的状态,例如,如果应用软件生成的编码能够成功地构建或编译。基于该检测到的状态,当遇到类似状态时,AI模块225可以在项目开发期间的工程阶段自动提供推荐。先前项目状态的其它实例包括硬件配置、编译器设置、模拟参数或其它元数据,其可用作AI模块225推荐用户的信息。
在工程阶段,知识图生成器250构建由AI模块225使用的项目知识图255,以提供关于由工程师在工程工具212内编写的参数或软件代码的反馈277。反馈可以采取几种形式中的任何一种,包括用于选择当前正被添加到设计中的目标元件的变化的推荐、用于保护目标元件的操作范围的辅助元件的推荐、用于在电路或系统环路中的元件之间进行对接的推荐、和/或批准推荐的请求。反馈277可以出现在工程工具212正在其上运行的显示屏的一部分中。在一个实施例中,工程工具212执行一个或多个应用软件程序来构建项目知识图255。例如,工程工具212可以使用模拟软件应用来执行模拟,结果被存储为模拟数据245。在一个实施例中,AI模块225的推荐功能不仅包括基于静态规则的评估,诸如对模拟数据245作出反应,该模拟数据可以包括操作的动态瞬时水平或环境条件(例如可变电压、电流、功率、流体流量、温度、控制信号等)。例如,当比较从模拟数据245中提取的特征时,AI模块225可以从参考知识图256中识别瞬态属性。特征提取模块235可以响应于工程工具212的动作,或者通过设计的周期性扫描,来提取设计的相关特征。可以从项目知识图255和/或由工程工具212实现的用户的开发环境(例如Matlab、Simulink或NI LabView)中获得该提取。例如,特征可以包括诸如正在使用的硬件板或在设计中使用的不同功能块(例如,比例积分微分(PID)控制器块或脉宽调制(PWM)模块)之类的方面。相关提取的特征还可以包括由模拟数据245揭示的瞬态属性。提取的特征可以被发送到AI模块225,然后AI模块可以针对参考知识图256查询特征,参考知识图含有如上所描述的参考知识图156的数据本体。项目知识图生成器250对来自AI模块225查询的关于硬件限制271的信息进行编码并将该信息结合到项目知识图255中。项目知识图生成器250还可以使用来自由工程工具212执行的图形设计的实时数据输入273、来自由工程工具212执行的模拟的模拟数据275、或它们二者,来构建项目知识图255。AI模块225对照查询结果评估项目设计的当前状态,诸如对照参考知识图256的模式匹配项目知识图255的本体模式。基于对查询的评估,AI模块225生成推荐,并将反馈信号277中的通知在集成工程工具212内以语句和/或问题的形式发送给用户。可替代地,推荐可以是图形形式,诸如根据推荐覆盖提议的元件,其中向用户呈现接受或拒绝推荐元件的选项。用户可以接受或拒绝推荐,这可以触发项目导出以将决定记录到知识图255中。
图3示出了根据本发明的实施例的用于在设计项目中实现基于AI的推荐器的方法的实例。在301,工程工具212构建具有多个硬件元件的设计。工程工具212可以根据期望的操作条件在303执行项目设计的模拟。可以在305用当前项目设计的元件,包括硬件元件,来构建一个或多个项目知识图。当使用工程工具212添加设计的每个元件时,知识图生成器根据相关元件的本体通过项目导出将一个或多个节点添加到知识图中。在一个实施例中,项目知识图可以包括与模拟303相关的元件。
在307,特征提取模块235从在用户开发环境中运行的应用软件(诸如工程工具212)中和/或从项目知识图255中,提取与设计的硬件元件相关的特征。在303执行模拟的情况下,特征提取模块235从模拟中提取与参考知识图中反映的先前项目的模拟相关的特征。模拟数据可以揭示设计元件的瞬时状态,模拟数据可以是与硬件约束相关的有用信息,并且可以是从先前设计中学习的特征或其它参考知识图信息。在一个实施例中,项目档案的模拟数据可以指示意外的结果,其可以是AI模块向用户推荐用于保护设计中的目标硬件元件的候选推荐的动态触发器。例如,用于电路设计项目的模拟可以模拟电路的各种操作条件,并且可以揭示正被超过的电流上限。在309,已被训练以从如上所描述各种信息源学习硬件约束的AI模块225可以在后台运行,在项目设计期间与工程工具212集成。在311,AI模块225向参考知识图256查询与所提取的特征共同的特征,用于根据项目知识图256发现不存在于当前项目的特征中的附属于共同特征的相关特性,诸如硬件约束数据。AI模块255还可以分析从参考知识图中提取的不利的模拟结果,其与从项目知识图255中提取的模拟数据相对应,并且作为响应,触发推荐通知,作为对用户关于潜在的违反硬件约束的警告或推荐。在313,AI模块225响应于所发现的硬件约束,生成并向用户显示推荐。
图4示出了根据本发明的实施例应用的知识图的实例。示出第一知识图410以表示正在进行的项目的当前设计的实时本体。例如,知识图410中的对象节点411、413、415、417表示具有输入、算术运算、脉宽调制元件和输出的电路。对象节点具有表示相应节点的各种相关特性或属性的标签节点T。例如,输入节点411可以包括名称标签和值标签。算术运算节点413可以具有指示算术运算类型(例如,和)的运算标签和表示值限制的饱和标签。PWM节点415表示具有标签节点用于切换频率值和死区时间值的脉宽调制器元件。如图4所示,第二知识图420表示存储为来自先前项目的知识库的许多参考知识图中的一个。在一个实施例中,由于具有类似配置的类似对象,此类参考知识图可以被检索作为对当前项目的参考。在这种情况下,除了占空比限制器节点413的附加对象之外,知识图420在对象节点和互连布置方面类似于知识图410。占空比限制器节点426可以具有用于最大占空比值和最小占空比值的标签。响应于将占空比限制器对象节点426识别为与第一知识图410不一致,AI模块225可以向用户生成文本或图形通知,推荐该占空比限制器用于设计中的当前电路。实际上,第一知识图410和第二知识图420可以表示具有数百个节点以采集与当前项目相关的许多不同元件和相关标签的本体。其它项目可包括其它工程学科或领域,诸如用于具有机械系统或自动化系统的设计项目,其可类似地使用知识图本体来表示,然后根据本发明的实施例来分析硬件限制。
一方面,项目知识图155、255可以构建在数据库之上,以基于上下文以有意义的方式链接数据集。为了服务于本发明的应用,知识图允许有效地执行对存储信息的查询。例如,数据可以被编码为主谓宾语句的三元组。
图5示出了根据本发明的实施例的与工程工具集成的经渲染的基于AI的推荐器序列的实例。作为项目设计的具体实例,图5示出了表示所需功能的框图的时间进程。例如,在幻灯片501中,使用工程软件工具来构建电路功能块,该电路功能块被渲染在图形用户界面上,该图形用户界面示出为电路511,该电路包括输入512、算术运算器513。响应于将电路元件515添加到电路功能块511以在输出引脚517处生成PWM波形的动作,特征提取模块135对设计变化作出反应,并从开发环境中提取这个新的PWM特征,并将其发送到AI模块125,AI模块评估PWM周围的连接元件的模式,并向参考知识图查询任何匹配特征。如果从查询中检测到任何违犯,(即,根据先前项目的成功设计,在当前设计和预期设计之间存在差异),AI模块125可以生成通知,并且还可以提出一种解决方案,可以通过AI模块120在后台与工程软件工具112一起运行所实现的基于AI的推荐器特征来显示该解决方案。如幻灯片502所示,此类通知通过基于AI的推荐器特征作为新元件521上的文本块覆盖522显示在电路的图形表示上。例如,AI模块225可以从参考知识图中识别附属于匹配特征的硬件约束信息,并发送文本消息,诸如“考虑到您的目标硬件,推荐将占空比限制在10%-90%之间。您想要包含该功能吗?”在幻灯片503,响应于用户接受AI模块225的推荐功能的推荐,工程工具自动将限制器设备元件531添加到电路中。例如,AI模块查询的结果可以识别参考知识库中的共同PWM特征,并通过模式匹配识别一个或多个先前项目(例如,大多数具有PWM的类似设计)中的特征,限制器设备元件531被包括在电路中,目的是将工作范围限制在10-90%之间。如上所述,在图4中示出了此类实例,即揭示限制器426的知识图410和420之间的差异。基于该查询,AI模块生成对此效果的通知,并且也可以与工程工具212一起工作以在用户批准时自动将推荐的元件531添加到设计中。因此,可以使用基于AI的推荐器发现潜在的硬件约束并将其结合到项目设计中。
所公开的实施例的优点包括将有关硬件设计的现有经验、知识和已知限制直接结合到软件设计包中的能力。通过将硬件约束信息自动结合到设计过程中,可以大大减少开发时间和成本。相比,一旦设计被上载到目标设备,如果以期望的方式执行设计,用于硬件设计的传统基于软件的解决方案提供最小的反馈。
图6示出了可在其中实现本发明的实施例的计算环境的实例。计算环境600包括计算机系统610,计算机系统可以包括诸如系统总线621的通信机制或用于在计算机系统610内传送信息的其它通信机制。计算机系统610还包括与系统总线621联接的一个或多个处理器620,用于处理信息。在一个实施例中,计算环境600对应于用于基于AI的推荐器的系统,以将硬件约束结合到项目设计中以确保安全操作,其中计算机系统610涉及下面更详细描述的计算机。
处理器620可包括一个或多个中央处理单元(CPU)、图形处理单元(GPU)或本领域已知的任何其它处理器。更一般地,本文所述的处理器是用于执行存储在计算机可读介质上的机器可读指令以执行任务的设备,并且可以包括硬件和固件中的任何一种或其组合。处理器还可以包括存储器,其存储机器可读指令用于执行任务。处理器通过操作、分析、修改、转换或发送由可执行过程或信息设备使用的信息,和/或通过将信息路由到输出设备以作用于信息。例如,处理器可以使用或包括计算机、控制器或微处理器的能力,例如可以使用可执行指令来调节以执行不由通用计算机执行的专用功能。处理器可以包括任何类型的合适的处理单元,但不限于中央处理单元、微处理器、精简指令集计算机(RISC)微处理器、复杂指令集计算机(CIS)微处理器、微控制器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、片上系统(SoC)、数字信号处理器(DSP)等。此外,处理器620可以具有任何适当的微体系结构设计,其包括任何数量的组成部件,诸如,例如寄存器、多路复用器、算术逻辑单元、用于控制对高速缓冲存储器的读/写操作的高速缓冲存储器控制器、分支预测器等。处理器的微体系结构设计能够支持各种指令集中的任何指令集。处理器可以与能够在其间进行交互和/或通信的任何其它处理器联接(电气地和/或包括可执行部件)。用户界面处理器或生成器是已知的元件,包括用于生成显示图像或其部分的电子电路或软件或二者的组合。用户界面包括一个或多个显示图像,使得能够与处理器或其它设备进行用户交互。
系统总线621可以包括系统总线、存储器总线、地址总线或消息总线中的至少一种,并且可以允许在计算机系统610的各个部件之间交换信息(例如,数据(包括计算机可执行代码),信令等)。系统总线621可以包括但不限于存储器总线或存储器控制器、外围总线、加速图形端口等。系统总线621可以与任何合适的总线体系结构相关联,包括但不限于工业标准体系结构(ISA)、微通道结构(MCA)、增强ISA(EISA)、视频电子标准协会(VESA)体系结构、加速图形端口(AGP)体系结构、外围部件互连(PCI)体系结构、PCI-Express体系结构、个人计算机存储卡国际协会(PCMCIA)体系结构、通用串行总线(USB)体系结构等。
继续参考图6,计算机系统610还可以包括联接到系统总线621的系统存储器630,用于存储要由处理器620执行的信息和指令。系统存储器630可以包括易失性和/或非易失性存储器形式的计算机可读存储介质,诸如只读存储器(ROM)631和/或随机存取存储器(RAM)632。RAM 632可以包括其它动态存储设备(例如动态RAM、静态RAM和同步DRAM)。ROM631可以包括其它静态存储设备(例如可编程ROM、可擦除PROM和电可擦除PROM)。此外,系统存储器630可用于在处理器620执行指令期间存储临时变量或其它中间信息。基本输入/输出系统633(BIOS)可以存储在ROM 631中,该基本输入/输出系统含有帮助在计算机系统610内的元件之间传送信息的基本例程,诸如在启动期间。RAM 632可含有处理器620可立即访问和/或当前正在运行的数据和/或程序模块。系统存储器630可另外包括例如操作系统634、应用模块635和其它程序模块636。应用模块635可以包括对于图1或图2所述的上述模块,还可以包括用于开发应用程序的用户门户,允许根据需要输入和修改输入参数。
操作系统634可以被加载到存储器630中,并且可以提供在计算机系统610上执行的其它应用软件和计算机系统610的硬件资源之间的接口。更具体地,操作系统634可以包括一组计算机可执行指令,用于管理计算机系统610的硬件资源和向其它应用程序提供共同服务(例如,管理各种应用程序之间的存储器分配)。在某些示例性实施例中,操作系统634可以控制被描述为存储在数据存储设备640中的一个或多个程序模块的执行。操作系统634可包括现在已知的或将来可开发的任何操作系统,包括但不限于任何服务器操作系统、任何主机操作系统、或者任何其它专有或非专有操作系统。
计算机系统610还可以包括磁盘/介质控制器643,其联接到系统总线621以控制一个或多个存储设备以存储信息和指令,诸如磁性硬盘641和/或可移动介质驱动器642(例如软盘驱动器、光盘驱动器、磁带驱动器闪存驱动器和/或固态驱动器)。可以使用适当的设备接口(例如小型计算机系统接口(SCSI)、集成设备电子设备(IDE)、通用串行总线(USB)或FireWire)将存储设备640添加到计算机系统610。存储设备641、642可以位于计算机系统610的外部。
计算机系统610可以包括用户输入接口或图形用户界面(GUI)661,其可包括一个或多个输入设备,诸如键盘、触摸屏、写字板和/或点击设备,用于与计算机用户交互并向处理器620提供信息。
计算机系统610可以响应于处理器620执行包括在诸如系统存储器630的存储器中的一个或多个指令的一个或多个序列,执行本发明实施例的一部分或全部处理步骤。此类指令可以从存储设备640的另一个计算机可读介质(诸如磁性硬盘641或可移动介质驱动器642)读入到系统存储器630中。磁性硬盘641和/或可移动介质驱动器642可以含有由本发明的实施例使用的一个或多个数据存储和数据文件。数据存储设备640可以包括但不限于数据库(例如关系型、面向对象型等)、文件系统、平面文件,其中数据存储在计算机网络的一个以上节点上的分布式数据存储、对等网络数据存储等。数据存储内容和数据文件可以被加密以提高安全性。处理器620也可以在多处理装置中使用,以执行系统存储器630中含有的一个或多个指令序列。在另一个实施例中,可以使用硬连线电路来代替软件指令或者与软件指令结合使用。因此,实施例不限于硬件电路和软件的任何特定组合。
如上所述,计算机系统610可包括至少一个计算机可读介质或存储器,用于保存根据本发明实施例编程的指令,并用于包含本文所描述的数据结构、表格、记录或其它数据。本文所用的术语“计算机可读介质”是指参与向处理器620提供指令以供执行的任何介质。计算机可读介质可以采取许多形式,包括但不限于非暂时性、非易失性介质、易失性介质和传输介质。非易失性介质的非限制性实例包括光盘、固态驱动器、磁盘和磁光盘,诸如磁性硬盘641或可移动介质驱动器642。易失性介质的非限制性实例包括动态存储器,诸如系统存储器630。传输介质的非限制性实例包括同轴电缆、铜线和光纤,包括构成系统总线621的线。传输介质也可以采用声波或光波的形式,诸如在无线电波和红外数据通信期间产生的那些。
用于执行本发明的操作的计算机可读介质指令可以是汇编器指令、指令集体系结构(ISA)指令、机器指令、机器相关指令、微码、固件指令、状态设置数据、或者用一种或多种编程语言(包括面向对象编程语言,诸如Smalltalk、C++等)和常规过程编程语言(诸如C编程语言或类似编程语言)的任意组合来编写的源代码或目标代码。可以完全在用户的计算机上、部分在用户的计算机上、作为独立的软件包、部分在用户的计算机上且部分在远程计算机上、或全部在远程计算机或服务器上执行计算机可读程序指令。在后一种情况下,远程计算机可以通过包括局域网(LAN)或广域网(WAN)的任何类型的网络连接到用户的计算机,或者可以实现到外部计算机的连接(例如,通过使用互联网服务提供商的互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)的电子电路可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令,以使电子电路个性化,从而执行本发明的各个方面。
根据本发明的实施例,本文参考方法、装置(系统)和计算机程序产品的流程图和/或框图来描述本公开的各个方面。可以理解,可以通过计算机可读介质指令来实现流程图说明和/或框图的每个框、以及流程图说明和/或框图中的框的组合。
计算环境600还可以包括计算机系统610,该计算机系统使用到一个或多个远程计算机(诸如远程计算设备673)的逻辑连接在联网环境中操作。网络接口670可支持例如经由网络671与其它远程设备673或系统和/或存储设备641、642的通信。远程计算设备673可以是个人计算机(膝上型计算机或桌面)、移动设备、服务器、路由器、网络PC、对等设备或其它共同网络节点,并且通常包括上述关于计算机系统610的许多或所有元件。当在联网环境中使用时,计算机系统610可以包括调制解调器672,用于在诸如因特网的网络671上建立通信。调制解调器672可以经由用户网络接口670或经由另一个适当的机制连接到系统总线621。
网络671可以是本领域公知的任何网络或系统,包括因特网、内联网、局域网(LAN)、广域网(WAN)、城域网(MAN)、直接连接或一系列连接、蜂窝电话网络、或能够促进计算机系统610和其它计算机(例如,远程计算设备673)之间通信的任何其它网络或介质。网络671可以是有线的、无线的或其组合。可以使用以太网、通用串行总线(USB)、RJ-6或本领域公知的任何其它有线连接来实现有线连接。可以使用Wi-Fi、WiMAX和蓝牙、红外、蜂窝网络、卫星或本领域公知的任何其它无线连接方法来实现无线连接。此外,几种网络可以单独工作或相互通信,以便于网络671中的通信。
应当理解,图6中所示的存储在系统存储器630中的程序模块、应用、计算机可执行指令、代码等仅仅是说明性的而不是穷举性的,并且被描述为由任何特定模块支持的处理可以可替代地分布在多个模块之间或者由不同的模块执行。此外,各种程序模块、脚本、插件、应用编程接口(API)或者在计算机系统610上本地托管的任何其它合适的计算机可执行代码、远程设备673和/或托管在可经由一个或多个网络671访问的其它计算设备上,可以被提供来支持由图6中所示的程序模块、应用或计算机可执行代码提供的功能和/或附加或替代功能。此外,可以不同地模块化功能,使得在被描述为由图6中所示程序模块集合共同支持的处理可以由较少或较多数量的模块执行,或者被描述为由任何特定模块支持的功能可以至少部分地由另一模块支持。此外,支持本文描述的功能的程序模块可以形成一个或多个应用程序的一部分,该一个或多个应用程序可以根据任何适当的计算模型(诸如,例如客户端-服务器模型、对等模型等)在任何数量的系统或设备上执行。此外,被描述为由图6中所示任何程序模块支持的任何功能可以至少部分地在硬件和/或固件中跨越任何数量的设备得以实现。
还应当理解,计算机系统610可以包括除所描述或所描绘之外不脱离本发明的范围的替代和/或附加的硬件、软件或固件部件。更具体地,应当理解,被描述为形成计算机系统610的一部分的软件、固件或硬件部件仅仅是示例性的,并且在各种实施例中可能不存在某些部件或者可以提供附加部件。虽然已经将各种说明性的程序模块描绘和描述为存储在系统存储器630中的软件模块,但是应当理解,被描述为由程序模块支持的功能可以通过硬件、软件和/或固件的任何组合来支持。还应当理解,在各种实施例中,上述模块中的每一个可以表示所支持的功能的逻辑分区。该逻辑分区被描述为便于解释该功能,并且可能不代表用于实现该功能的软件、硬件和/或固件的结构。因此,应当理解,在各种实施例中,被描述为由特定模块提供的功能可以至少部分地由一个或多个其它模块提供。此外,在某些实施例中可能不存在一个或多个所示模块,而在其它实施例中,可能存在未示出的附加模块,并且可能支持所述功能和/或附加功能的至少一部分。此外,虽然某些模块可以被描绘和描述为另一模块的子模块,但是在某些实施例中,这些模块可以被提供为独立模块或其它模块的子模块。
虽然已经描述了本发明的具体实施例,但是本领域的普通技术人员将认识到,许多其它修改和替代实施例都在本发明的范围之内。例如,关于特定设备或组件所描述的任何功能和/或处理能力可以由任何其它设备或组件来执行。此外,虽然已经根据本发明的实施例描述了各种说明性的实现和体系结构,本领域的普通技术人员将认识到,对本文所述的示例性实现和体系结构的许多其它修改也在本发明的范围之内。此外,应当理解,本文描述为基于另一操作、元件、部件、数据等的任何操作、元件、部件、数据等可以另外基于一个或多个其它操作、元件、部件、数据等。因此,短语“基于”或其变体应解释为“至少部分基于”。
图中的流程图和框图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的体系结构、功能和操作。在这点上,流程图或框图中的每个框可以表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些替代实现方式中,在框中指出的功能可能发生在图中指出的顺序之外。例如,实际上,连续示出的两个框可能基本上同时执行,或者有时可以根据所涉及的功能以相反的顺序执行这些框。还将注意到,框图和/或流程图说明的每个框、以及框图和/或流程图说明中的框的组合,可以由执行指定功能或动作或者执行专用硬件和计算机指令的组合的基于专用硬件的系统来实现。

Claims (15)

1.一种用于计算机辅助设计的系统,包括:
处理器;以及
存储器,在所述存储器上存储有由所述处理器执行的模块,所述模块包括:
工程软件工具,被配置为构建用于当前项目的工业系统的电路或子系统的图形设计,所述图形设计包括多个硬件元件,所述工程软件工具还被配置为显示所述设计的渲染;
知识图生成器,被配置为从所述图形设计中提取数据并构建用于当前项目的项目知识图,所述项目知识图包括表示来自所提取的数据的一组元件的本体和元件关系的节点和边缘,其中,所述一组元件包括多个硬件元件;
特征提取模块,被配置为提取与所述多个硬件元件相关的所述项目知识图的特征;
人工智能(AI)模块,所述人工智能模块在当前项目期间与所述工程软件工具集成,并且被配置为:
向一个或多个参考知识图查询由所述特征提取模块提取的共同特征,其中,所述参考知识图被存储在先前项目的存档数据的库中,所述存档数据包括与硬件约束相关的附加信息,所述硬件约束与所提取的特征相关联;以及
响应于识别与硬件约束相关的所述附加信息,在渲染设计的显示上生成和显示用于所述设计的推荐;
其中,所述AI模块与基于服务器的AI模块通信,所述基于服务器的AI模块包括基于机器学习的网络,使用训练数据来训练所述基于机器学习的网络以从知识图分析来识别硬件约束。
2.根据权利要求1所述的系统,其中,所述一个或多个参考知识图还包括专家知识、内部标准或工业标准规则及规范中的至少一种。
3.根据权利要求1所述的系统,还包括:
由所述工程软件工具在期望的操作条件下执行所述电路或所述子系统的模拟;
其中,所述项目知识图包括基于所述模拟的所述硬件元件的特性。
4.根据权利要求3所述的系统,其中,还包括:
由所述特征提取模块来提取与由所述模拟生成的操作条件或环境条件相关的瞬态属性;
其中,所述推荐还基于所述瞬态属性。
5.根据权利要求1所述的系统,其中,AI模块训练数据包括工程师注释,所述工程师注释记录自由自然语言处理提取的先前项目。
6.根据权利要求1所述的系统,其中,AI模块训练数据包括硬件约束数据,所述硬件约束数据来自由自然语言处理提取的制造商数据表。
7.根据权利要求1所述的系统,其中,AI模块训练数据包括工程反馈,所述工程反馈提取自与用户对AI推荐的响应相关的项目档案。
8.根据权利要求1所述的系统,其中,AI模块训练数据包括检测的编码状态,所述检测的编码状态由能够成功构建或编译的所述工程软件工具生成。
9.一种用于计算机辅助设计的方法,包括:
由工程软件工具构建用于当前项目的工业系统的电路或子系统的图形设计,所述图形设计包括多个硬件元件;
基于从所述图形设计中提取的数据构建用于所述当前项目的项目知识图,所述项目知识图包括分别表示一组元件的本体以及元件关系的节点和边缘,其中,所述一组元件包括所述多个硬件元件;
由特征提取模块提取与所述多个硬件元件相关的所述项目知识图的特征;
在当前项目期间运行与所述工程软件工具集成的人工智能(AI)模块,包括:
向一个或多个参考知识图查询由所述特征提取模块提取的共同特征,其中,所述参考知识图被存储在先前项目的存档数据的库中,所述库包括先前项目的存档数据,所述存档数据包括与硬件约束相关的附加信息,所述硬件约束与所提取的特征相关联;以及
响应于识别与硬件约束相关的所述附加信息,在所述图形设计的渲染的显示上生成和显示用于所述设计的推荐;
其中,所述AI模块与基于服务器的AI模块通信,所述基于服务器的AI模块包括基于机器学习的网络,使用训练数据来训练所述基于机器学习的网络以从知识图分析来识别硬件约束。
10.根据权利要求9所述的方法,还包括:
由工程工具在期望的操作条件下执行所述电路或所述子系统的模拟;
其中,所述项目知识图包括基于所述模拟的所述硬件元件的特性。
11.根据权利要求10所述的方法,还包括:
由所述特征提取模块提取与由所述模拟生成的操作条件或环境条件相关的瞬态属性;
其中,所述推荐还基于所述瞬态属性。
12.根据权利要求9所述的方法,其中,AI模块训练数据包括工程师注释,所述工程师注释记录自由自然语言处理提取的先前项目。
13.根据权利要求9所述的方法,其中,AI模块训练数据包括硬件约束数据,所述硬件约束数据来自由自然语言处理提取的制造商数据表。
14.根据权利要求9所述的方法,其中,AI模块训练数据包括工程反馈,所述工程反馈提取自与用户对AI推荐的响应相关的项目档案。
15.根据权利要求9所述的方法,其中,AI模块训练数据包括检测的编码状态,所述检测的编码状态由能够成功构建或编译的所述工程软件工具生成。
CN202080101336.0A 2020-05-29 2020-05-29 用于将硬件约束结合到设计中的ai推荐器 Pending CN115668200A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2020/035227 WO2021242256A1 (en) 2020-05-29 2020-05-29 Ai advisor for incorporation of hardware constraints into design

Publications (1)

Publication Number Publication Date
CN115668200A true CN115668200A (zh) 2023-01-31

Family

ID=72179173

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080101336.0A Pending CN115668200A (zh) 2020-05-29 2020-05-29 用于将硬件约束结合到设计中的ai推荐器

Country Status (4)

Country Link
US (1) US20240012953A1 (zh)
EP (1) EP4139826A1 (zh)
CN (1) CN115668200A (zh)
WO (1) WO2021242256A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4328683A1 (en) * 2022-08-22 2024-02-28 Siemens Aktiengesellschaft Method and system for generating user recommendations to aid generation of an engineering project

Also Published As

Publication number Publication date
EP4139826A1 (en) 2023-03-01
WO2021242256A1 (en) 2021-12-02
US20240012953A1 (en) 2024-01-11

Similar Documents

Publication Publication Date Title
US11640566B2 (en) Industrial programming development with a converted industrial control program
US11669309B2 (en) Extensible integrated development environment (IDE) platform with open application programming interfaces (APIs)
US11947943B2 (en) Industrial automation smart object inheritance
BR112019025269A2 (pt) microprocessador incluindo um modelo corporativo
US20230281486A1 (en) Automatic functionality clustering of design project data with compliance verification
Luo et al. A modeling approach to support safety assurance in the automotive domain
Nasiri et al. From user stories to UML diagrams driven by ontological and production model
CN115668200A (zh) 用于将硬件约束结合到设计中的ai推荐器
Hafidi et al. Semantic web and machine learning techniques addressing semantic interoperability in Industry 4.0
US20230152790A1 (en) System model smart object configuration
EP4158499B1 (en) System and method for facilitating engineering of an industrial system
US20220292457A1 (en) Industrial automation smart object inheritance break and singleton creation
Bobek et al. Framework for benchmarking rule-based inference engines
Price et al. Applying semantic web technology to the life cycle support of complex engineering assets
Kluza et al. Integration of business processes with visual decision modeling. presentation of the hades toolchain
WO2020056107A1 (en) Automated simulation pipeline for fast simulation driven computer aided design
EP4369187A1 (en) Method and system for implementing a virtual assistant for automatic configuration of engineering objects
Pavlov et al. The Application of the Knowledge-Based Systems Development Platform for Creating Scenario Analysis Support Tools
de Ocaña et al. Model Simplification: Addressing Digital Twin Challenges and Requirements in Manufacturing
US20230091963A1 (en) Industrial automation project design telemetry
US20230237249A1 (en) Method and system for generating an automation engineering project in a technical installation using multidisciplinary approach
US11835941B2 (en) Industrial automation smart object parent/child data collection propagation
EP4345677A1 (en) System and method for managing simulation artifacts
EP4328683A1 (en) Method and system for generating user recommendations to aid generation of an engineering project
US20240046041A1 (en) Self-learning analytical solution core

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