CN105960641A - 使用耦接约束的模拟 - Google Patents

使用耦接约束的模拟 Download PDF

Info

Publication number
CN105960641A
CN105960641A CN201580007013.4A CN201580007013A CN105960641A CN 105960641 A CN105960641 A CN 105960641A CN 201580007013 A CN201580007013 A CN 201580007013A CN 105960641 A CN105960641 A CN 105960641A
Authority
CN
China
Prior art keywords
slave
master
motor
accessory
joint
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.)
Granted
Application number
CN201580007013.4A
Other languages
English (en)
Other versions
CN105960641B (zh
Inventor
R.G.麦克丹尼尔
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 Industry Software NV
Original Assignee
Siemens Product Lifecycle Management Software Inc
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 Product Lifecycle Management Software Inc filed Critical Siemens Product Lifecycle Management Software Inc
Publication of CN105960641A publication Critical patent/CN105960641A/zh
Application granted granted Critical
Publication of CN105960641B publication Critical patent/CN105960641B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/17Mechanical parametric or variational design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/04Constraint-based CAD
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/80Technologies aiming to reduce greenhouse gasses emissions common to all road transportation technologies
    • Y02T10/82Elements for improving aerodynamics

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • General Physics & Mathematics (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)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

用于模型模拟的方法及相应系统(100)和计算机可读介质(126)。一种方法包括接收(505)模拟模型(300),该模拟模型包括通过耦接件(314)连接到至少一个从属接头(318)的至少一个主接头(312),该主接头具有刚性体主附件(308),并且该从属接头具有刚性体从属附件(302)。该方法包括识别(510)主附件的主轴(320)和从属附件的从属轴(322)。该方法包括做出关于主轴或从属轴是否具有马达(316)的马达确定(520)并做出交叉底座确定(525)。本方法包括做出其主体要基于马达确定和交叉基础确定进行约束的约束确定(530),根据约束确定来存储约束(535),并且根据约束确定来执行模拟模型(540)。

Description

使用耦接约束的模拟
技术领域
本公开一般地针对计算机辅助设计、可视化以及制造系统、产品生命周期管理(“PLM”)系统以及类似系统,其管理用于产品及其它项目的数据(共同地称为“CAD系统”)。
背景技术
CAD系统使得能够实现产品可视化和模拟。改进的系统是值得期望的。
发明内容
各种公开实施例包括用于模型模拟的方法及相应系统和计算机可读介质。一种方法包括在数据处理系统中接收模拟模型,该模拟模型包括通过耦接件连接到至少一个从属接头的至少一个主接头,该主接头具有刚性体主附件,并且该从属接头具有刚性体从属附件。该方法包括基于耦接件来识别主附件的主轴和从属附件的从属轴。该方法包括做出关于主轴是否具有马达或从属轴是否具有马达的马达确定,并且做出对应于主附件和从属附件的交叉底座确定。本方法包括做出其主体要基于马达确定和交叉底座确定进行约束的约束确定,根据约束确定来存储约束,并且根据约束确定来执行模拟模型。
前文已经相当宽泛地概述了本公开的特征和技术优点,使得本领域的技术人员可更好地理解随后的详细描述。下面将描述形成权利要求的主题的本公开的附加特征和优点。本领域的技术人员将认识到其可以很容易地使用公开的概念和特定实施例作为用于修改或设计用于执行本公开的相同目的的其它结构的基础。本领域的技术人员还将认识到此类等价构造在其最宽泛形式中并不脱离本公开的精神和范围。
在进行以下具体实施方式之前,陈述遍及本专利文献使用的某些单词或短语的定义可能是有利的:术语“包括”和“包含”以及其派生词意指在没有限制的情况下的包括;术语“或”是包括性的,意指和/或;短语“与...相关联”和“与之相关联”以及其派生词可意指将包括、被包括在内、与...互连、包含、被包含在内、连接到或与...相连、耦接到或与...耦接、可与...通信、与...合作、交错、并列、接近于、绑定至或与...绑定、具有、具有...的性质等;并且术语“控制器”意指控制至少一个操作的任何设备、系统或其部分,无论此类设备是用硬件、固件、软件还是其中的至少两个的某种组合实现的。应注意的是与任何特定控制器相关联的功能可以是集中式或分布式的,无论是本地还是远程地。遍及本专利文献提供了用于某些单词和短语的定义,并且本领域的技术人员将理解的是此类定义在许多(如果不是大多数的话)情况下应用于此类定义单词和短语的在先以及未来使用。虽然某些术语可包括各种各样的实施例,但所附权利要求可使这些术语明确地局限于特定实施例。
附图说明
为了更全面地理解本公开及其优点,现在对结合附图进行的以下描述进行参考,其中,相同的数字指定相同对象,并且在所述附图中:
图1描绘了其中可以实现实施例的数据处理系统的框图;
图2和3图示出根据公开实施例的耦接约束的示例;
图4A-4E图示出根据公开实施例的耦接约束接头和刚性主体的某些可能配置的示例;
图5描绘了根据公开实施例的过程的流程图;
图6图示出根据公开实施例的其中共享对象被锁定到背景的耦接件的示例;
图7图示出其中末端对象被夹紧到背景的耦接件的示例;以及
图8图示出根据公开实施例的链轮与杆齿轮之间的不同的移动可能性。
具体实施方式
下面讨论的图1至8以及用来在本专利文献中描述本公开的原理的各种实施例仅仅是以举例说明的方式且不应以任何方式理解成限制本公开的范围。本领域的技术人员将理解的是可在任何适当布置的设备中实现本公开的原理。将参考示例性非限制性实施例来描述本申请的许多创新教导。
公开实施例包括用于准确地且高效地模拟移动零件之间的耦接约束的系统和方法,包括在齿轮和凸轮约束中允许反射运动和固定轴控制。
运动轴是工业机器的关键方面。这些自由度确定对象在其被操作时如何相对于彼此移动。在过去运动轴之间的关系是使用诸如齿轮或凸轮之类的物理耦接构造的。物理齿轮和凸轮在现代仍被使用,还有电气等价物,其使用软件或其它电子影响来引起轴相对于彼此进行有目的的移动。
在模拟中,可以用算法和数学对象来表示机器并求解以确定各种零件随时间推移的预期运动。在3D刚性体模拟中,将移动的物理元件表示为刚性体对象,并且对象之间的关系约束其模拟运动,使得其以与物理设备将工作的方式类似的方式运转。使用各种约束来表示不同种类的物理附接,诸如旋转铰链接头、线性滑动接头、球接头等。这些允许在关键方向上移动的自由度并限制在其它方向上的移动。旋转接头例如允许两个刚性体之间的在单个圆形方向上的移动,但是约束所有其它移动,诸如从一边到另一边的移动或远离旋转轴倾斜(tips away from the rotary axis)的旋转。
存在用于表示这些系统内的模拟的多种模拟系统和手段。本文中的公开包括但不限于四种模拟对象:刚性体、接头、耦接件和马达。所述刚性体表示模拟中的移动实体。其可以具有针对位置、取向、速度、质量及其它属性的性质。
接头被定义为两个刚性体之间的限制其运动的连接。旋转接头限制运动,使得在两个对象之间只能发生旋转;线性接头限制运动,使得只能发生线性维度的运动。针对旋转和线性接头两者,定义用于运动轴的矢量方向以及提供刚性体之间的距离测量的当前位置。
耦接件被定义为两个轴接头之间的关系,使得两个接头上的移动被控制,使得其位置始终通过某个函数而相关。在齿轮耦接件中,位置作为比而相关,针对凸轮耦接件,位置可以通过连续函数相关。
最后,使用马达来产生一个或多个刚性体上的移动。马达被应用于单个轴接头,并且将在关联主体上施加扭矩以创建速度或位置的变化。模拟系统也可以定义具有不同布置和性质的其它类型的对象,并且将可能以不同的方式定义这些常见对象。公开的技术还可以应用于这些系统中的具有与所述对象类似功能的对象。
公开实施例包括允许刚性体模拟中的被约束轴的更准确且稳定的求解的系统和方法。在齿轮或凸轮约束中,实现在一维轴上移动的两对刚性体之间的函数关系。由于涉及到四个主体,所以可以使用调整来使用四个主体中的仅两个对该约束求解。公开实施例描述了可以如何选择主体和可以用来执行模拟的关系表达式。
图1描绘了其中可以将实施例实现为例如特别地被用软件或其它方式配置成执行如本文所述的过程的CAD系统且特别是作为如本文所述的多个互连和通信系统中的每一个的数据处理系统的框图。所描绘的数据处理系统包括被连接到又被连接到本地系统总线106的二级高速缓存器/桥接器104的处理器102。本地系统总线106可以是例如外部设备互连(PCI)架构总线。在所描绘的示例中被连接到本地系统总线的还有主存储器108和图形适配器110。图形适配器110可被连接到显示器111。
还可将量其它外围设备(诸如局域网(LAN)/广域网/无线(例如WiFi)适配器112)连接到本地系统总线106。扩展总线接口114将本地系统总线106连接到输入/输出(I/O)总线116。I/O总线116被连接到键盘/鼠标适配器118、磁盘控制器120以及I/O适配器122。磁盘控制器120可以被连接到储存器126,其可以是任何适当的机器可用或机器可读存储介质,包括但不限于非易失性硬编码类型的介质,诸如只读存储器(ROM)或电可擦可编程只读存储器(EEPROM)、磁带存储器以及用户可记录型介质,诸如软盘、硬盘驱动器和致密盘只读存储器(CD-ROM)或数字多功能磁盘(DVD)以及其他已知的光、电或磁存储设备。
在所示的示例中被连接到I/O总线116的还有音频适配器124,扬声器(未示出)可被连接到该音频适配器124以用于播放声音。键盘/鼠标适配器118为诸如鼠标、轨迹球、轨迹指示器、触摸屏、触控板等定点设备(未示出)提供连接。
本领域普通技术人员将认识到的是图1中所描绘的硬件对于特定实施方式而言可不同。例如,除所描绘的硬件之外或者作为其替代,还可使用其它外围设备,诸如光盘驱动器等。提供所描绘的示例仅仅是出于解释的目的且并不意图暗示对于本公开的架构限制。
根据本公开的实施例的数据处理系统包括采用图形用户界面的操作系统。该操作系统允许同时地在图形用户界面中呈现多个显示窗口,每个显示窗口提供到不同应用程序或者到同一应用程序的不同实例的界面。可由用户通过定点设备来操纵图形用户界面中的光标。光标的位置可改变和/或生成诸如点击鼠标按钮之类的事件以驱动期望的响应。
如果经过适当修改,可采用诸如位于华盛顿雷德蒙德的微软公司的产品Microsoft Windows™的版本之类的各种商用操作系统中的一个。该操作系统被如所述的那样根据本公开进行修改或创建。
LAN/WAN/无线适配器112可以被连接到网络130(其不是数据处理系统100的一部分),其可以是如本领域的技术人员已知的任何公共或私用数据处理系统网络或网络的组合,包括因特网。数据处理系统100可以通过网络130与服务器系统140通信,该服务器系统140不是数据处理系统100的一部分,但是可以实现为例如单独的数据处理系统100。在以下讨论中,“系统”指代一个或多个数据处理系统。
图2图示出耦接件约束的示例,并且可以用作如何可以配置如公开的模拟系统的示例。设备200包括许多零件,其具有被安装在杆204上的穿梭机构。梭子及其外壳202可以沿着杆移动,并被马达206驱动。马达206被连接到与杆齿轮210啮合的圆形链轮208。使链轮208旋转引起逆着杆210的机械力,其沿着线性方向驱动设备200梭子组件。
图3图示出对应于设备200的模拟模型300的示例,包括模拟实心对象和相应逻辑实体,诸如主体、耦接件、接头、马达等。为了创建此设备的模拟,图3中的对象可以由系统定义。可以使用不同的形状来表示不同的模拟对象类型。在本示例中,圆形是刚性体,菱形是接头,六边形是耦接件,并且梯形是马达。由于在本示例中存在两个移动对象,所以在模拟中存在两个刚性体对象:用于梭子外壳202连同附接马达206的刚性体梭子302,以及用于齿轮链轮208的刚性体链轮308。梭子在实际设备中被杆举起,但是由于杆不移动,所以不需要将其建模为刚性体。同样地,不需要用刚性体对杆齿轮进行建模。可以将这些对象视为不移动背景的一部分。
可以用线性接头对梭子202的侧向线性运动进行建模。在称为附件和底座的一对刚性体对象之间指定接头。接头的主体参数中的每一个可用给定刚性体对象来设定或者可留为空的。用于附件和底座对象的定义不需要是对称的。如果附件参数被留为空的,则可认为接头将被断开连接,但是如果底座刚性体移动,其位置将移动。如果底座参数被留为空的,则可认为接头将被附接到充当不移动的一种看不见主体的背景。在图3中,用“A”来标记附件参数,并且用“B”来标记底座。用于线性接头的底座被留为空的,这意味着梭子被附接到背景。梭子将沿着接头的线性轴来回移动且不会落下。
本示例中的齿轮链轮使用旋转接头312连接到梭子外壳。在这种情况下,链轮和外壳被附接且相对于彼此移动。为了对此进行建模,旋转接头的附件被设定成刚性体链轮308,并且底座被设定成刚性体梭子302。
用于本示例的运动轴在图3中被示为点线320和322;可以将轴参数存储在接头对象或刚性体对象中。链轮的旋转将引起梭子在杆上移动,因此施加在轴上发生的运动之间的关系。该关系可以在两个方向上操作;梭子的移动还会引起链轮转动。为了对此关系进行建模,使用耦接件对象,在这种情况下为齿轮耦接件314。耦接件将两个轴配对:主轴320(在耦接件314上由“主”M指定指示为主轴)和从属轴322(在耦接件314上用“从属”S指定指示为从属轴)。同样地,耦接件对象定义旋转接头312是主接头,并且线性接头318是从属接头。由于该耦接件定义主/从属接头和因此的主/从属轴,所以可以根据该耦接件来确定轴。如果耦接件尚未定义主/从属关系,则系统或用户可以根据模拟对象的功能来分配主/从属角色。使用函数来确定在一个轴上的移动将如何影响在另一轴上的运动。主轴的位置充当函数的域,并且从属轴位置充当范围。在这种情况下,可使用齿轮耦接件,其中函数被指定为每个轴上的移动的比。链轮的全幅转动例如可能引起梭子在线性方向上移动一定长度,例如30厘米。
完成该模拟,马达对象316被应用于旋转接头312。马达可被添加到任何轴接头,并且可以用来改变连接到该接头的主体的速度或位置。在这种情况下,由于旋转接头被连接在梭子外壳与链轮之间,所以马达将修改这些对象之间的相对速度和/或位置。
公开的实施例可以实现模拟约束解算器。为了运行模拟,模拟对象被翻译成可以被模拟引擎的约束解算器求解的原语。存在用于对约束求解的多种系统。
可以将物理引擎视为一种等式解算器,其中,等式将应用于由模拟对象确定的变量的物理定律公式化。通过以离散的时间步幅对等式求解而获得结果。可以以许多方式来观察变量的值,诸如通过将图表制成表格,或者通过将值应用于图形对象,使得其看起来移动。
用于物理引擎等式的形式通常是有限的。某些解算器提供比其它解算器更多的选项,但是一般地,该等式是基于各对主体之间的速度的关系。三维(3D)刚性体具有六个自由度;三个线性的和三个旋转的。当未应用约束等式时,主体可以在没有限制的情况下在全部的六个自由度上移动。在一对刚性主体之间,也存在六个自由度,其基于两个对象的相对位置来测量自由度。
约束(例如旋转轴接头)对自由度施加限制,使得某些运动被锁定。旋转轴接头例如迫使失去五个自由度。全部的三个线性自由度被去除,并且只留下围绕旋转轴的单个旋转自由度。为了像旋转接头一样限制五个自由度,一个人在约束中指定五个等式。各种公开实施例将主体视为被约束的对象,并且将接头视为独立于耦接件约束的一种约束。
用于约束等式(单个约束维度)的一般形式是
其中,符号v和ω表示刚性体的线速度和角速度。下标示出速度来自哪个刚性体。变量A、B以及c表示用于矢量A和B及修正值c的导出值,或者可以由实现物理库以定义对象之间的相互作用的个体指定。该·表示矢量点积。实现者还可选择哪两个刚性体被约束。然而,可以使用的主体的数目和等式的结构正常地是固定的。
可以将A和B矢量视为用于各刚性体的运动轴,并且可将变量c视为修正因数。例如,如果一个人希望约束x轴上的两个主体的线性移动,则一个人将把A1设定为[1,0,0]并把A2设定为[ -1,0,0]。B矢量被设定成[0,0,0]且c是0。结果将是说明主体一的x线速度等于主体二的x线速度的等式。请注意,这是关于速度而不是主体的位置的约束。一般地,如果主体始终以相同的速度移动,则其位置也将保持相同。如果主体的位置不再对准,但一个人使用c变量来向速度添加小的修正,使得一个主体可以赶上另一个而在下一时间步幅内更接近于正确位置。
公开实施例可以对耦接件约束进行建模。使用标准形式的约束等式来实现耦接件对象受到每次仅使两个刚性体相关的能力的妨碍。由于耦接件将使轴接头对象配对,并且接头使一个或两个刚性体相关,所以可以存在与单个耦接件相关联的两个、三个或四个刚性体。
图4A-4E图示出耦接件约束、接头以及刚性体的某些可能配置的示例。并非刚性体、接头以及耦接件的所有配置都需要考虑。例如,其附件为空的接头不做任何事,因此其实际上可以被视为不存在;使用该接头的耦接件将同样地是空的。在这些图中,M指定主,S指定从属,A指定附件,并且B指定底座。
在图4A中图示出最简单的耦接件配置。在这种情况下,刚性体相互独立,并且被耦接件406接合的两个接头402和404在背景中作为基础。主接头402具有可以称为刚性体主附件的附件403。从属接头404具有可以称为刚性体从属附件的附件405。接头的空底座是重要的,因为这允许直接地使用刚性体的速度。轴速度正常地是附件与底座对象之间的相对速度,但是背景对象速度始终是零。某些模拟系统针对这种配置提供耦接件实施方式,因为其在标准约束等式中表示起来直截了当。
然而,如果接头底座对象中的一个或多个不是空的,则简单的双刚性体约束等式变得不完美。在图4B中,耦接件408被连接在每个具有两个底座对象的主接头410和从属接头412之间。在这种情况下,全部的四个刚性体都可以促进约束,并且更适当的约束等式将如下,作为使耦接件中的四个刚性体相关的一般等式:
其中,符号v和ω再次地表示各刚性体a、b、c和d的线速度和角速度。在此已修改等式中,随着每个接头相关联的每对主体的速度差代替单个刚性体的速度而虑及全部的四个刚性体。一个人还可以将轴矢量A1、B1、A2以及B2分解成针对每个刚性体的速度的单独轴。将这种等式实现成约束解算器将对问题求解,但是超过了当前物理引擎的能力。具有多达四个刚性体参考的约束等式在当前物理引擎中一般地不可用。
公开的实施例可以解决其中使用仅成对约束等式对多个耦接刚性体进行建模的模型。为了使用仅成对约束等式来实现耦接件,公开实施例包括用于选择要约束哪些主体的特定技术,并且执行适合于针对多种情况对耦接件求解的过程。
为了选择被约束主体,给定耦接件的主和从属接头,公开实施例做出关于这些对象的配置和接头参考的刚性体对象的确定。本方法选择耦接件约束将对其进行操作的一个或两个刚性体,或者判定耦接件约束不能运行。
图5图示出根据公开实施例的用于总体对象选择和模拟过程的流程图;下面描述各种附件和计算的示例。此类过程可以由一个或多个数据处理系统(下面一般地称为“系统”。)执行。
系统接收模拟模型(505)。如本文所使用的“接收”可以包括从存储器加载、从另一设备或过程接收、经由与用户的交互接收或以其他方式接收。模拟模型可以包括多个模拟对象,包括被耦接到至少一个从属接头的至少一个主接头,每个接头具有关联刚性体附件;主接头的附件称为主附件,并且从属接头的附件称为从属附件。每个接头还可具有关联刚性体底座。在各种实施例中,将主接头和从属接头建模为被耦接件连接。每个刚性体可以具有线速度或角速度。
系统基于耦接件来识别主附件的主轴和从属附件的从属轴(510)。这个动作可以包括确定主轴和从属轴的轴类型,诸如每个接头是旋转接头、线性接头还是固定接头。
系统确定耦接是否可以被模拟(515),并且如果不能,则可以停止该过程。例如,如果主附件为NULL,如果从属附件为NULL,如果主附件和从属附件是相同的,或者如果主轴和从属轴两者具有马达,则系统可确定不能模拟该耦接。
系统做出关于主轴是否具有马达或从属轴是否具有马达的马达确定(520)。在某些情况下,可以与过程515同时地执行过程520,并且主轴和从属轴两者都具有马达的马达确定可以指示该耦接不能被模拟。
系统做出交叉底座确定(525)。交叉底座确定可以包括确定从属附件是否是主接头的底座并确定主附件是否是从属接头的底座。
系统基于马达确定和交叉底座确定来做出要约束哪些主体的约束确定(530)。在这种情况下,当主轴和从属轴两者都不具有马达时,根据马达确定,然后约束确定可以是主附件和从属附件两者被约束。
当主轴具有马达且从属轴不具有马达时,根据马达确定,则如果从属附件是主接头的底座,则约束确定可以是从属附件被约束到背景且主附件未被约束。否则,如果主附件和从属附件并未共享刚性体,则约束确定可以是主附件和从属附件被约束。
当从属轴具有马达且主轴不具有马达时,根据马达确定,则如果主附件是从属接头的底座,则约束确定可以是主附件被约束到背景且从属附件未被约束。否则,如果主附件和从属件并未共享刚性体,则约束确定可以是主附件和从属附件被约束。
系统根据约束确定而存储约束(535)。
系统基于约束确定来执行模拟模型(540)。可以使用下述计算来执行模拟,并且该模拟可以基于主轴和从属轴的轴类型。
根据各种实施例,使用仅成对约束等式,每次只有两个刚性体被用于建模,即使当正在对超过两个刚性体进行建模时。为实现这一点,选择过程使用接头对象的方向性来选择适当的刚性体。预期用户或系统将创建接头,使得意图要耦接的成对对象处于附加性质中。
例如,在图4C中,示出了针对底座共享刚性体420的两个接头416和418之间的耦接件414。在这种情况下,耦接的成对主体是刚性体A 422和刚性体C 424。这是重要的,因为模拟中的其它因素可去除关键的自由度。
图6图示出其中共享对象被锁定到背景的耦接件的示例,并且可以用图4C中的对象来表示。如果主体B 602被夹紧到背景(这可在固定接头应用于主体B 602的情况下发生),则一个人将预期主体A 604与C 606之间的耦接约束将正常地运行。在这种情况下,夹紧主体B 602将等价于图4A中的情况。
但是还可能的是用户可能将主体C 606夹紧到背景。图7图示出其中末端对象被夹紧到背景的耦接件的示例。原则上,主体A 604和B 602仍将自由地移动,并且应允许齿轮运行。然而,主体A 604与主体C 606之间的约束将不运行,因为C未移动。用户可以通过使图4C中的接头S 408的方向反向来补救这种情况,使得附件是主体B且底座是主体C,如图4E的配置所图示。在那种情况下,在主体A 604和B 602之间创建耦接约束,并且将主体C 606夹紧到背景是很好的。
图4D图示出诸如用于图3中所图示的链轮和梭子的情况的示例。请注意,这类似于图7中的情况,其中,主体C 606被固定到背景。在梭子和链轮情况中,固定主体是线性杆,并且将其表示为背景。由于存在仅两个主体,所以主体A 426可以表示链轮,并且主体B 428可以表示梭子。然而,这些对象之间的约束将不会始终都足够,因为主体B 428在两个接头430和432之间被共享。
在图3的梭子和链轮示例中,例如,在旋转接头上存在马达。可以将马达实现为如许多其它模拟对象一样的约束,并且该约束将是在被接头连接的相同的两个主体之间。
接头上的马达有效地如固定接头一样起作用。例如,马达的速度可能被设置成零,在这种情况下,其将被精确地像固定接头一样建模,但是即使马达的速度不是零,马达的状态完全确定两个主体的位置。诸如耦接件之类的这两个主体之间的附加约束将仅对系统进行过度约束(over-constrain)。梭子与链轮之间的约束不能是马达和齿轮两者。根据公开实施例,系统可以通过简单地在耦接件中总共忽视刚性体中的一个来解决此问题。作为将耦接件创建为主体A 426与主体B 428之间的约束的替代,在主体B 428与背景对象(没有东西)之间做出约束。这是有效的,因为如果轴中的一个由马达确定,则另一轴也有效地被机动化。该耦接约束将第一马达的运动传递至自由轴的定位。用户将仅使耦接件中的两个轴中的一个机动化。无论如何,将马达放置在两个轴上将使得该耦接件不相关,并且约束被超定(over-determined)。
由于主体成对约束等式并未提供用以针对超过两个主体求解的能力,所以公开实施例利用由系统或用户定义的耦接件和接头定义,其被布置成使得被约束的两个主体将导致工作模拟。虽然可以分析由所有接头和马达提供的自由度以选择哪两个对象应被耦接件约束,但其一般地是不切实际的,因为自由度在对象移动到不同的取向时可能潜在地改变,并且可被模拟内的程序明确地改变。例如,两个主体可独立地自由移动而开始模拟,但在稍后,其变得被用户的动作胶合在一起,并且充当单个刚性体。
在图5中所示的过程中,捕捉到这些不同的可能性。首先,检索主接头与从属接头之间的附件主体。如果这些主体是NULL或者主件和从属件两者使用同一主体上的附件,则耦接是无效的。给定两个刚性体,本方法然后考虑马达连接。当正在使用马达来控制接头时,将可以通过反向指针来确定。如果两个接头都被马达控制,则耦接是无效的,但是如果存在马达,则发生特殊考虑。
当在接头上存在马达时,必须检查在图4D和4E中示出的对象的某个配置;这在上文中称为交叉底座确定。请注意,图4E看起来类似于图4C,但是从属接头B 434上的附件和底座的方向是相反的。该附件方向有差别。在图4C的情况下,附件对象仍是独立的。其共享公共的底座,但是由于其连接,假设刚性体A 422和刚性体B 420独立地移动(诸如图7中的齿轮)。
然而,图4D和图4E中的配置被堆叠在一起,使得一个主体(在另一个的底座处的那个)的移动预期将影响另一个的运动。耦接预期将在刚性体A和B之间发生。连接A和B的马达因此将不允许A和B之间的耦接件约束运行。替代地,在图4E的示例中,在刚性体B 436与背景之间进行耦接。公开的实施例使用背景,无论堆叠中的下接头的底座是否被设置成另一刚性体。本方法针对耦接件以相同的方式工作,其中,从属接头具有马达,并且从属件的底座是与主件的附件相同的对象。
各种实施例可以使用如上文公开的耦接约束等式:
其中,符号v和ω表示刚性体的线速度和角速度。下标示出速度来自哪个刚性体。变量A、B和c表示用户指定值。
公开实施例应用上述约束等式来实现耦接约束。根据各种实施例,使用A参数来控制线性接头,并且使用B参数来控制角接头。例如,在图3的示例中,主接头312是旋转式的,并且从属接头318是线性的,因此本方法使用B1和A2来使主件的角速度与从属件的线速度相关,留下A1和B2为零矢量。然而,此配置忽视了其中接头被马达固定的情况。
当轴不是相同类型的或者是相同类型但未对准时,则可以用被耦接主体的运动来补偿一个刚性体的运动。在本示例中,齿轮208的旋转可以引起杆204在图2中线性地移动,但是其也可以引起其本身即齿轮208在相反方向上线性地移动。不那么显而易见地,绿色齿轮可以静止不动,并且杆可以线性地移动并在齿轮将转动的相反方向上旋转。
图8图示出链轮808与杆齿轮810之间的不同移动可能性。本图图示出主体的耦接运动可以被相互的运动补偿。在这些示例性情况下,相同的运动量被施加于耦接的旋转和线性轴。
作为依赖于被约束对象独立地自由移动的替代,在公开实施例中,相对轴的潜在移动被编码到每个轴的移动中。下面描述得到的等式种类的示例。
针对混合轴情况,其中,一个轴是旋转的且另一个是线性的,系统可以使用:
在这种情况下,主轴是线性的,并在A1的方向上移动,并且从属轴是旋转的,并且在轴B2上旋转。针对其中主轴是旋转的且从属轴是线性的情况,索引号被交换。调整矢量A1和B2的长度,使得其长度的比对应于施加于每个轴的速度的反比。例如,如果旋转轴针对线性轴行进的每个单位长度转动两次,则由A1的长度除以B2的长度的比将是4π。
当耦接约束使用相同种类的轴时,两者都是线性的或者两者都是旋转的,系统可以使用以下等式来将混合轴组合:
其中
在本示例中,等式建立线性-线性约束。针对旋转-旋转约束,可以对角速度值使用B矢量,但是总体等式将是类似的。在这里,A1是用于主件的轴,并且A2是用于从属件的轴。类似于先前的等式,轴的长度被设定成使得其比是期望速度的比的倒数。请注意,当A1和A2是平行的时,A2到A1上的投影仅仅是A2,并且A1到A2上的投影仅仅是A1,使得等式简化成朴素(naive)等式,
使用这些等式,在主体被与马达锁定在一起时系统对约束耦接给予移动的灵活性。否则,当主体被锁定时,无法使任一主体在由相对的轴指定的方向上移动。接头变得完全锁住。用内置的替换方向,图5中所图示的主体选择过程允许自由主体在两个轴允许的任一方向上抵靠着背景移动。这样,自由主体的运动可以补偿被马达锁住的主体。
由于底座对象速度在上述多轴等式中被忽视,所以计算仍仅仅是近似的。修正量c在等式中被用来补偿当底座速度是非零时引发的误差。此过程一般地起作用,但仍具有缺点,即不能直接地指定耦接中的全部四个对象的速度之间的关系。该问题在底座对象的速度变得取决于附件中的一个或多个时发生。在实践中,这很少成为问题,因为常常通过本质上固定或者是不移动背景对象的不同的一组约束来设定底座速度。
当然,本领域的技术人员将认识到的是除非操作序列具体地指出或要求,上文所述过程中的某些步骤可被省略、同时地或连续地执行或者按照不同顺序执行。
公开实施例提供了刚性体模拟中的耦接约束的鲁棒处理。用于实现这些约束的标准技术在用户通常想要处理的情况下失效。
如在本文中公开的主体选择方法允许在标准等式物理引擎约束等式中使用一对主体。这些主体反映可以被用户理解以提供正确的一对并防止从被锁定到背景的主体中的一个或多个引起的问题的语义。公开实施例还提供了用以处理由马达或耦接主体之间的类似种类的约束引起的主体之间的锁定的手段。
如在本文中公开的约束等式允许在另一主体的运动中反映耦接中的每个主体的移动。具有混合类型的耦接或者其轴未对准的耦接可以受益于这种方法,因为其即使当主体被与马达锁定在一起时也允许执行移动。
本领域的技术人员将认识到为了简单和明了起见,在本文中未描绘或描述适合于随着本公开使用的所有数据处理系统的完整结构和操作。替代地,仅描绘和描述了为本公开所独有或者是理解本公开所必需的那么多的数据处理系统。数据处理系统100的构造和操作的其余部分可符合本领域中已知的各种当前实施方式和实践中的任何一个。
重要的是请注意虽然本公开包括在全功能系统的背景下的描述,但本领域的技术人员将认识到本公开的机制的至少各部分能够以被包含在采取多种形式中的任何一个的机器可用、计算机可用或计算机可读介质内的指令的形式分发,并且无论被用来实际上执行该分发的指令或信号承载介质或存储介质的特定类型如何,本公开都同样地应用。机器可用/可读或计算机可用/可读介质的示例包括:非易失性、硬编码型介质,诸如只读存储器(ROM)或电可擦可编程只读存储器(EEPROM),以及用户可记录型介质,诸如软盘、硬盘驱动器和致密盘只读存储器(CD-ROM)或数字多功能磁盘(DVD)。
虽然已详细地描述了本公开的示例性实施例,但本领域的技术人员将理解的是在不脱离本公开的精神和范围的情况下,可以其最宽泛形式做出在本文中公开的各种改变、替代、变型和改进。
注意本申请的描述不应被理解为暗示任何特定的元件、步骤或功能是必须被包含在请求保护范围内的必要元素:请求获得专利的主题的范围仅由所提出的权利要求书来限定。此外,这些权利要求均未打算援引35 USC§112第6款,除非确切的单词“用于...的装置”后面跟随有分词形式。

Claims (20)

1.一种用于模型模拟的方法,该方法由数据处理系统(100)执行,并且包括:
在数据处理系统中接收(505)模拟模型(300),该模拟模型包括通过耦接件(314)连接到至少一个从属接头(318)的至少一个主接头(312),该主接头具有刚性体主附件(308),并且该从属接头具有刚性体从属附件(302);
基于所述耦接件来识别(510)主附件的主轴(320)和从属附件的从属轴(322);
做出关于主轴是否具有马达(316)或从属轴是否具有马达的马达确定(520);
做出对应于主附件和从属附件的交叉底座确定(525);
基于马达确定和交叉底座确定来做出要约束哪些主体的约束确定(530);
根据约束确定来存储(535)约束;以及
根据约束确定来执行(540)模拟模型。
2.根据权利要求1所述的方法,其中,所述数据处理系统还通过确定主附件是否是NULL、从属附件是否是NULL、主附件和从属附件是否相同或者主轴和从属轴两者是否都具有马达来确定是否可以模拟耦接件。
3.根据权利要求1所述的方法,其中,做出交叉底座确定包括确定从属附件(428)是否是主接头的底座,并确定主附件是否是从属接头的底座。
4.根据权利要求1所述的方法,其中,执行模拟模型是基于主轴的轴类型和从属轴的轴类型。
5.根据权利要求1所述的方法,其中,当主轴和从属轴两者都不具有马达时,根据马达确定,然后约束确定是主附件和从属附件两者被约束。
6.根据权利要求1所述的方法,其中,当主轴具有马达且从属轴不具有马达时,根据马达确定,则当从属附件是主接头的底座时,则约束确定是从属附件被约束到背景且主附件未被约束。
7.根据权利要求1所述的方法,其中,所述数据处理系统还确定主轴和从属轴的轴类型,并且当主轴和从属轴是线性轴时,则系统还存储以下约束:
其中
,A1是表示主轴的矢量,A2是表示从属轴的矢量,v1表示主附件的线速度,v2表示从属附件的线速度,并且c表示修正因数。
8.一种数据处理系统(100),包括:
处理器(102);以及
可访问的存储器(108),所述数据处理系统特别地被配置成在数据处理系统中接收(505)模拟模型(300),该模拟模型包括通过耦接件(314)连接到至少一个从属接头(318)的至少一个主接头(312),该主接头具有刚性体主附件(308),并且该从属接头具有刚性体从属附件(302);
基于所述耦接件来识别(510)主附件的主轴(320)和从属附件的从属轴(322);
做出关于主轴是否具有马达(316)或从属轴是否具有马达的马达确定(520);
做出对应于主附件和从属附件的交叉底座确定(525);
基于马达确定和交叉底座确定来做出要约束哪些主体的约束确定(530);
根据约束确定来存储(535)约束;以及
根据约束确定来执行(540)模拟模型。
9.根据权利要求8所述的数据处理系统,其中,所述数据处理系统还通过确定主附件是否是NULL、从属附件是否是NULL、主附件和从属附件是否相同或者主轴和从属轴两者是否都具有马达来确定是否可以模拟耦接件。
10.根据权利要求8所述的数据处理系统,其中,做出交叉底座确定包括确定从属附件(428)是否是主接头的底座,并确定主附件是否是从属接头的底座。
11.根据权利要求8所述的数据处理系统,其中,执行模拟模型是基于主轴的轴类型和从属轴的轴类型。
12.根据权利要求8所述的数据处理系统,其中,当主轴和从属轴两者都不具有马达时,根据马达确定,然后约束确定是主附件和从属附件两者被约束。
13.根据权利要求8所述的数据处理系统,其中,当主轴具有马达且从属轴不具有马达时,根据马达确定,则当从属附件是主接头的底座时,则约束确定是从属附件被约束到背景且主附件未被约束。
14.根据权利要求8所述的数据处理系统,其中,所述数据处理系统还确定主轴和从属轴的轴类型,并且当主轴和从属轴是线性轴时,则系统还存储以下约束:
其中
,A1是表示主轴的矢量,A2是表示从属轴的矢量,v1表示主附件的线速度,v2表示从属附件的线速度,并且c表示修正因数。
15.一种用可执行指令编码的非临时机器可读介质(126),所述可执行指令在被执行时引起数据处理系统(100):
在数据处理系统中接收(505)模拟模型(300),该模拟模型包括通过耦接件(314)连接到至少一个从属接头(318)的至少一个主接头(312),该主接头具有刚性体主附件(308),并且该从属接头具有刚性体从属附件(302);
基于所述耦接件来识别(510)主附件的主轴(320)和从属附件的从属轴(322);
做出关于主轴是否具有马达(316)或从属轴是否具有马达的马达确定(520);
做出对应于主附件和从属附件的交叉底座确定(525);
基于马达确定和交叉底座确定来做出要约束哪些主体的约束确定(530);
根据约束确定来存储(535)约束;以及
根据约束确定来执行(540)模拟模型。
16.根据权利要求15所述的机器可读介质,其中,所述数据处理系统还通过确定主附件是否是NULL、从属附件是否是NULL、主附件和从属附件是否相同或者主轴和从属轴两者是否都具有马达来确定是否可以模拟耦接件。
17.根据权利要求15所述的机器可读介质,其中,做出交叉底座确定包括确定从属附件(428)是否是主接头的底座,并确定主附件是否是从属接头的底座。
18.根据权利要求15所述的机器可读介质,其中,执行模拟模型是基于主轴的轴类型和从属轴的轴类型。
19.根据权利要求15所述的机器可读介质,其中,当主轴和从属轴两者都不具有马达时,根据马达确定,然后约束确定是主附件和从属附件两者被约束,以及
其中,当主轴具有马达且从属轴不具有马达时,根据马达确定,则当从属附件是主接头的底座时,则约束确定是从属附件被约束到背景且主附件未被约束。
20.根据权利要求15所述的机器可读介质,其中,所述数据处理系统还确定主轴和从属轴的轴类型,并且当主轴和从属轴是线性轴时,则系统还存储以下约束:
其中,
,A1是表示主轴的矢量,A2是表示从属轴的矢量,v1表示主附件的线速度,v2表示从属附件的线速度,并且c表示修正因数。
CN201580007013.4A 2014-02-03 2015-01-30 使用耦接约束的模拟 Active CN105960641B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/170753 2014-02-03
US14/170,753 US9424378B2 (en) 2014-02-03 2014-02-03 Simulation using coupling constraints
PCT/US2015/013641 WO2015116878A1 (en) 2014-02-03 2015-01-30 Simulation using coupling constraints

Publications (2)

Publication Number Publication Date
CN105960641A true CN105960641A (zh) 2016-09-21
CN105960641B CN105960641B (zh) 2019-04-12

Family

ID=53755048

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580007013.4A Active CN105960641B (zh) 2014-02-03 2015-01-30 使用耦接约束的模拟

Country Status (5)

Country Link
US (1) US9424378B2 (zh)
EP (1) EP3103042A4 (zh)
JP (1) JP6279753B2 (zh)
CN (1) CN105960641B (zh)
WO (1) WO2015116878A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3613545A1 (en) * 2018-08-24 2020-02-26 Siemens Aktiengesellschaft Simulation assisted planning of motions to lift heavy objects
US11037354B1 (en) 2019-02-14 2021-06-15 Apple Inc. Character joint representation

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020123812A1 (en) * 1998-12-23 2002-09-05 Washington State University Research Foundation. Virtual assembly design environment (VADE)
CN1612167A (zh) * 2003-10-29 2005-05-04 Snecma发动机公司 在虚拟环境中移动虚拟链接对象同时避免链接对象的链接元件之间的内部碰撞
US20070287992A1 (en) * 2006-06-13 2007-12-13 Intuitive Surgical, Inc. Control system configured to compensate for non-ideal actuator-to-joint linkage characteristics in a medical robotic system
US20120078598A1 (en) * 2010-09-27 2012-03-29 Siemens Corporation Custom Physics Simulation Joints
CN103218015A (zh) * 2011-12-06 2013-07-24 微软公司 电子补偿的枢转控制

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6766950B2 (en) * 1997-12-16 2004-07-27 Donald R. Hall Modular architecture sensing and computing platform
JP3643504B2 (ja) * 1998-08-25 2005-04-27 株式会社東芝 アセンブリモデル作成方法およびアセンブリモデル作成処理プログラムを記録した記録媒体
SE0001312D0 (sv) * 2000-04-10 2000-04-10 Abb Ab Industrirobot
US8010180B2 (en) * 2002-03-06 2011-08-30 Mako Surgical Corp. Haptic guidance system and method
SE0301531L (sv) * 2003-05-22 2004-11-23 Abb Ab A Control method for a robot
US8571840B2 (en) 2007-03-28 2013-10-29 Autodesk, Inc. Constraint reduction for dynamic simulation
US9122821B2 (en) 2010-05-25 2015-09-01 Siemens Products Lifecycle Management Software Inc. Method and system for simulation of automated processes
US9259289B2 (en) * 2011-05-13 2016-02-16 Intuitive Surgical Operations, Inc. Estimation of a position and orientation of a frame used in controlling movement of a tool

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020123812A1 (en) * 1998-12-23 2002-09-05 Washington State University Research Foundation. Virtual assembly design environment (VADE)
CN1612167A (zh) * 2003-10-29 2005-05-04 Snecma发动机公司 在虚拟环境中移动虚拟链接对象同时避免链接对象的链接元件之间的内部碰撞
US20070287992A1 (en) * 2006-06-13 2007-12-13 Intuitive Surgical, Inc. Control system configured to compensate for non-ideal actuator-to-joint linkage characteristics in a medical robotic system
US20120078598A1 (en) * 2010-09-27 2012-03-29 Siemens Corporation Custom Physics Simulation Joints
CN103218015A (zh) * 2011-12-06 2013-07-24 微软公司 电子补偿的枢转控制

Also Published As

Publication number Publication date
WO2015116878A1 (en) 2015-08-06
EP3103042A1 (en) 2016-12-14
JP2017509058A (ja) 2017-03-30
CN105960641B (zh) 2019-04-12
US9424378B2 (en) 2016-08-23
JP6279753B2 (ja) 2018-02-14
EP3103042A4 (en) 2017-09-06
US20150220666A1 (en) 2015-08-06

Similar Documents

Publication Publication Date Title
Tornincasa et al. The future and the evolution of CAD
US8248407B2 (en) System and method of computer-aided design of a 3D object modeled by geometries
CN105740497B (zh) 对工件的加工进行仿真
CN105389412B (zh) 顺序更新的执行
GB2555605A (en) Animating a virtual object in a virtual world
CN108983705A (zh) 一种基于轴不变量的多轴机器人系统正运动学建模与解算方法
Beccari et al. A fast interactive reverse-engineering system
CN109079784A (zh) 一种基于轴不变量的多轴机器人系统建模与控制方法
CN105389413B (zh) 按序更新的准则
CN104772773A (zh) 一种机械臂运动学形式化分析方法
Fang et al. Distributed cognition based localization for AR-aided collaborative assembly in industrial environments
CN105960641B (zh) 使用耦接约束的模拟
CN114926547A (zh) 一种相机与imu的标定方法、电子设备及系统
CN103049266A (zh) Delta3D三维场景漫游的鼠标操作方法
Bai et al. Review study of using Euler angles and Euler parameters in multibody modeling of spatial holonomic and non-holonomic systems
CN113051674A (zh) 设计机构
US11580286B2 (en) Electronic generation of three-dimensional quantum circuit diagrams
Hou et al. Six degree-of-freedom haptic rendering for biomolecular docking
Boa et al. Evolving lego: Prototyping requirements for a customizable construction kit
JP6246339B2 (ja) 図面ビューにスケッチ寸法を規定する方法、装置及びコンピュータプログラム
US10780642B2 (en) System and method for computing surfaces in a multi-layer part
WO2018014449A1 (zh) 改善相对位置传感器性能的方法、装置及计算机存储介质
EP3152689A1 (en) Aerospace joggle on multiple adjacent web faces with intersecting runouts
Tang et al. Collaborative virtual environment for feature based modeling
Cripps et al. Constructing 3D motions from curvature and torsion profiles

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: American Texas

Patentee after: SIEMENS INDUSTRY SOFTWARE N.V.

Address before: American Texas

Patentee before: SIEMENS PRODUCT LIFECYCLE MANAGEMENT SOFTWARE Inc.

CP01 Change in the name or title of a patent holder