黃學良, 李 娜, 陳立平
(1. 中國工程物理研究院總體工程研究所,四川 綿陽 621900;2. 華中科技大學國家CAD支撐軟件工程技術研究中心,湖北 武漢 430074)
三維裝配幾何約束組合的分類求解策略
黃學良1, 李 娜1, 陳立平2
(1. 中國工程物理研究院總體工程研究所,四川 綿陽 621900;2. 華中科技大學國家CAD支撐軟件工程技術研究中心,湖北 武漢 430074)
針對兩個剛體之間的三維幾何約束求解問題,依據幾何約束的參數結構分析了角度約束和距離約束的解耦性,給出了角度約束和距離約束可解耦求解的條件;然后對兩個剛體之間的幾何約束進行組合分析,總結出約束度不小于2的幾何約束構成的組合只有幾十種,且均可采用幾何推理方法進行求解;最后闡述了附加方向約束、冗余約束和矛盾約束對數值求解的不利影響,提出了三維幾何約束組合的分類求解策略,并用實例驗證了該求解策略的有效性。
幾何約束;解耦性分析;冗余約束;幾何推理
幾何約束求解的基本思路是采用分而治之的方法將幾何約束系統分解為若干個規模較小的子系統,然后分別對各個子系統進行求解,最后用各個子系統的解組裝成整個幾何約束系統的解[1]。針對三維裝配幾何約束系統,文獻[2]提出的等價性分析方法可以將其分解為大量獨立邊子圖對應的兩個剛體之間的幾何約束系統和獨立閉環子圖、耦合閉環子圖對應的多個剛體之間的幾何約束閉環系統,文獻[3]提出的遞歸分解方法進一步將多個剛體之間的幾何約束閉環系統分解為一系列兩個剛體之間的幾何約束系統,這使得對兩個剛體之間幾何約束系統的高效穩定求解成為三維幾何約束求解的關鍵內容。目前,對于兩個剛體之間的幾何約束系統,除去穩定性不夠的數值方法和求解效率不足的符號方法,幾種具有代表性的求解方法分別是基于自由度分析的幾何推理方法[4-6]、基于位姿解耦的分步增量求解方法[7-9]和面向特定構型的解析求解方法[10],但這些方法均是針對兩個剛體之間的特定幾何約束問題的求解方法,缺乏對兩個剛體之間幾何約束問題的系統性分析和分類。為此,本文針對兩個剛體之間的幾何約束問題,分析角度約束和距離約束可解耦求解的條件,研究幾何約束組合的分類,并據此提出基于約束組合分類的混合求解策略。
由三維幾何約束的基本約束分量表達可知,兩個剛體上幾何實體之間的距離、角度、平行、垂直、相切和重合等三維幾何約束均可表達為若干個基本幾何約束的組合,且能夠歸為11類[11],分別是約束度為1的5種基本幾何約束(矢量角度約束、點點距離約束、點線距離約束、點面距離約束和線線距離約束),約束度為 2的矢量平行約束、線面距離約束和點線重合約束,約束度為3的點點重合約束和面面距離約束,約束度為4的線線重合約束。由于約束度大于1的幾何約束可用約束度等于 1的基本幾何約束的組合表示,而在這些基本幾何約束中,角度約束和距離約束在參數結構上存在差異,角度約束只與表示剛體姿態的歐拉參數有關,而距離約束則與表達剛體姿態的歐拉參數以及表示剛體位置的點坐標都有關,剛體姿態的變動會同時影響角度約束和距離約束的滿足,而剛體位置的變動則只會影響距離約束的滿足,即剛體的位置變量只由距離約束確定。如果可以首先單獨求解角度約束確定剛體的姿態,然后單獨求解距離約束確定剛體的位置,就能將剛體上幾何約束組合的整體求解轉換為角度約束和距離約束的先后單獨求解。
通過分析角度約束和距離約束的參數結構,可得到如下性質:
性質1:與動剛體U匹配的獨立角度約束的數量小于或等于3。
性質2:如果與動剛體U匹配的獨立角度約束的數量等于3,則角度約束和距離約束可解耦求解,首先求解角度約束和歐拉參數歸一化約束確定表示剛體姿態的歐拉參數,然后求解距離約束確定剛體的位置參數。
性質3:如果與動剛體U匹配的距離約束的數量等于1,則角度約束和距離約束可解耦求解,姿態參數和位置參數可先后確定。
性質4:假定與動剛體U匹配的距離約束的數量為 m,如果滿足條件 3<m≤6,則角度約束和距離約束一定不能解耦求解,姿態參數和位置參數必須同時進行求解。
依據上述性質,按剛體上角度約束和距離約束的數量進行分類,可以得到不同有效約束數量的約束組合的解耦求解特性如表1所示。其中,mDnA表示該約束組合有m個有效距離約束和n個有效角度約束組成,“√”指可解耦求解,“×”指不可解耦求解,“?”指解耦求解性不確定。在表1中有21種約束組合,其中9種約束組合可解耦求解,6種約束組合不可解耦求解,另外 6種約束組合能否解耦求解無法由性質1~4確定。對于這6種解耦性無法確定的約束組合,存在性質5。
性質5:如果基剛體B和動剛體U之間只有一個幾何約束,則該幾何約束中的角度約束分量和距離約束分量是可解耦求解的。
上述性質依據角度約束和距離約束的數量關系來判定幾何約束組合是否可解耦求解,其前提條件是幾何約束組合中不包含冗余約束,即依據角度約束和距離約束的數量關系來判斷之前必須先剔除冗余約束。
性質6:假定基剛體B和動剛體U之間只有點點重合約束、面面距離約束和線線重合約束這三類約束度≥3的幾何約束,則基剛體B和動剛體U之間幾何約束的數量≤3。
證明:如果剛體之間存在線線重合約束,由于線線重合的約束度為4,有4個基本約束分量,而剛體有6個自由度,由于每添加1個非冗余幾何約束都將至少增加1個有效的基本約束分量,此時至多還可添加2個幾何約束就能使剛體完全約束,那么基剛體B和動剛體U之間的幾何約束數量≤3。如果剛體之間不存在線線重合約束,根據組合理論,剛體之間必然存在2個面面距離約束或是2個點點重合約束;如果是2個面面距離約束,則此時動剛體U只有1個移動自由度;如果是2個點點重合約束,則此時動剛體U只有1個轉動自由度;顯然,再添加1個幾何約束必然使剛體完全約束,那么基剛體B和動剛體U之間的幾何約束的數量≤3。得證。
依據組合理論,從點點重合約束、面面距離約束和線線重合約束這3類約束中任選2個構成的欠約束組合的數量最多有6種,任選3個構成的完整約束組合的數量最多有10種。圖1所示為約束度≥3的幾何約束的組合分類,圖中RDOF(Residual Degree of Freedom)為受約束剛體的剩余自由度,RTDOF(Residual Translational Degree of Freedom)為受約束剛體的剩余移動自由度,RRDOF(Residual Rotational Degree of Freedom)為受約束剛體的剩余轉動自由度,nDmA表示剛體上約束組合中有n個有效的距離約束分量和m個有效的角度約束分量。用 ΦCLL、分別表示線線重合約束、面面距離約束和點點重合約束,根據約束的幾何分析,這16種約束組合中角度約束分量和距離約束分量可以解耦求解的約束組合實例有和角度約束和距離約束不能解耦求解的約束組合實例有和顯然,對于那些依據數量分析無法確定解耦性的約束組合,通過幾何分析可以確定其中的角度約束和距離約束是否可以解耦求解,比如約束組合)中的角度約束和距離約束可解耦求解。對于約束類型和約束數量均相同的幾何約束組合,約束關聯幾何實體的特征參數差異也會導致其有效幾何約束分量不盡相同,比如 2個線線重合約束構成的約束組合如果則剛體U只有沿直線的移動自由度,為實例否則,剛體 U 沒有剩余自由度,為實例

圖1 約束度≥3的幾何約束的組合分類
下面具體分析約束關聯幾何實體的特征參數的差異對幾何約束組合中有效幾何約束分量的影響。對于約束組合)的兩個線線重合約束如果,則剛體U只有沿直線的移動自由度,為實例;否則,剛體U沒有剩余自由度,為實例對于約束組合)的線線重合約束 CoiLL和面面距離約束 DisFF如果則剛體U只有繞直線的旋轉自由度,為實例如果則剛體 U只有沿直線的移動自由度,為實例否則,剛體U沒有剩余自由度,為實例對于約束組合)的線線重合約束 CoiLL和點點重合約束 CoiPP,如果點在直線上,則剛體U只有繞直線的旋轉自由度,為實例否則,剛體U沒有剩余自由度,為實例對于約束組合)的線線重合約束面面距離約束和CoiPP,如果則為實例如果則為實例由上述分析可知,任選兩個約束度≥3的幾何約束構成的約束組合,其有效約束度≥5;因此,有性質7。
性質7:如果基剛體B和動剛體U之間有兩個幾何約束屬于線線重合約束、面面距離約束和點點重合約束這三類,則基剛體B和動剛體U之間幾何約束的數量≤3。
根據性質7可知,如果剛體之間存在3個幾何約束,且其中只有2個幾何約束的約束度≥3,則另外1個幾何約束可能是約束度等于2或約束度等于1的幾何約束。約束度為2的幾何約束有3種,則由2個約束度≥3的幾何約束和1個約束度等于 2的幾何約束構成的約束組合至多有6×3=18種;約束度等于1的幾何約束有5種,則由2個約束度≥3的幾何約束和1個約束度等于 1的幾何約束構成的約束組合至多有 6×5=30種。由于角度約束分量只能與剛體的姿態變量匹配,剛體之間角度約束分量的數量必須滿足性質1,故這兩類約束組合的最大數量分別為 16和28。另外,受2個約束度≥3的幾何約束的動剛體U至多有1個剩余移動自由度或1個剩余旋轉自由度,如果將2個約束度≥3的幾何約束構成的約束組合分為剩余移動自由度的約束組合和剩余旋轉自由度的約束組合,則由2個約束度≥3的幾何約束和1個約束度任意的幾何約束構成的約束組合的數量為12+10=22;在這22種組合中,只有部分組合的角度約束和距離約束可解耦求解,但全部可以采用幾何推理方法進行求解。
性質8:如果基剛體B和動剛體U之間存在1個線線重合約束,則基剛體B和動剛體U之間幾何約束的數量≤3。如果基剛體B和動剛體U之間存在1個點點重合約束或面面距離約束,則基體B和動剛體U之間幾何約束的數量≤4。
根據性質8給出的數量上界分析1個線線重合約束和2個約束度等于2的幾何約束的組合分類、1個點點重合約束和3個約束度等于2的幾何約束的組合分類以及1個面面距離約束和3個約束度等于2的幾何約束的組合分類,發現三者總共有 33種約束組合,其中有大約一半的約束組合不可解耦求解,但可以采用幾何推理方法進行求解。
3.1 附加方向約束對數值求解的影響
如圖2(a)所示兩個剛體B1和B2,平面F1和圓柱面F2在剛體B1上,平面F3和圓柱面F4在剛體B2上。欲獲得如圖2(c)所示的裝配結果,可在剛體 B1和 B2之間添加反向共面約束CoiFF(F1,F3,-1 )和反向共軸約束 CoiLL(F2,F4,-1),這2個幾何約束的基本約束表達分別為:


圖2 在兩個剛體之間添加1個共軸約束和1個共面約束
3.2 冗余約束和矛盾約束對數值求解的影響
如圖3(a)所示,在剛體B1和B2之間依次添加3個共點約束CoiPP(p1, p4)、CoiPP(p2, p5)和CoiPP(p3, p6),這3個共點約束的基本約束表達分別為:


假定首先添加CoiPP(p1, p4),約束滿足后剛體B2的位姿如圖3(b)所示。然后添加CoiPP(p2, p5),此時剛體 B2的位姿滿足和( p.z, p.z)= 0,而冗余性分析必然認定2 5 CoiPP(p2, p5)的3個基本約束方程中存在1個冗余約束方程;如果將( p.y,p .y)= 0視為冗
2 5果如圖3(c)所示,最后添加CoiPP(p3, p6),此時剛體 B2的位姿滿足基本約束方程( p.x,p .x) = 0和 ΦEY(p .y,p .y)= 0,而
3 632 3 6冗余性分析必然認定CoiPP(p3, p6)的3個基本約束方程中有 2 個是冗余的,如果將( p.z, p.z)= 0視為冗余的,則求解結果依
3 6然如圖3(c)所示,而滿足CoiPP(p3, p6)的正確結果應該是如圖3(d)所示??梢姡s束方程數值求解的正確性有賴于冗余約束判定的正確性。此外,如果將共點約束CoiPP(p3, p6)改為CoiPP(p6, p7),由于共點約束CoiPP(p6, p7)與CoiPP(p1, p4)、CoiPP(p2, p5)是相互矛盾的,數值求解必然失敗。但是,與冗余約束不同,數值求解失敗并不能斷定共點約束CoiPP(p6, p7)是矛盾約束,因為數值求解失敗也可能源于數值算法的內在缺陷??梢?,冗余約束和矛盾約束的存在增加了數值方法求解幾何約束問題的復雜性。

圖3 在兩個剛體之間添加3個共點約束
3.3 幾何約束組合的分類求解策略
對于包含線線重合約束、面面距離約束和點點重合約束的幾何約束組合,直接采用幾何推理方法進行解析求解。對于不包含線線重合約束、面面距離約束和點點重合約束的幾何約束組合,首先剔除約束組合中的冗余約束,然后分析角度約束分量和距離約束分量的數量;若能解耦求解,則先求解角度約束,后求解距離約束;若不能解耦求解,則采用數值方法進行求解;如果不能確定是否能解耦求解,則先假設角度約束和距離約束可解耦求解,先求解角度約束,后求解距離約束,若求解距離約束失敗,則可確定該約束組合不能解耦求解,重新采用數值方法進行求解,數值求解時考慮冗余約束和附加方向約束。
如圖4(a)所示的變速箱三維裝配幾何模型,其裝配幾何約束圖經等價性分析處理后如圖4(b)所示。由性質 6~8及其分析可知,在所有的 36個剛體之間,只有 3種類型的約束組合,其中類型的約束組合有 28個,類型的約束組合有 5個,類型的約束組合有1個,若是考慮裝配設計過程中增量添加幾何約束的方式,則除上述3種類型的約束組合外,還有4種類型的約束組合,分別為和

圖4 變速箱三維裝配模型及其幾何約束圖
本文通過分析角度約束和距離約束的結構參數特點,給出了兩個剛體之間的幾何約束系統中角度約束和距離約束的可解耦求解條件,揭示了大量常見幾何約束組合是不可解耦求解的。基于約束度不小于2的三維幾何約束只有6種的事實,對兩個剛體之間的幾何約束組合進行分析,總結出約束度不小于2的幾何約束構成的組合只有幾十種,且可采用幾何推理方法進行求解。通過闡明附加方向約束、冗余約束和矛盾約束對數值求解的不利影響,指出采用幾何推理方法解析求解兩個剛體之間的幾何約束系統具有突出的優勢,并據此給出了基于約束組合分類的混合求解策略。由于對幾何約束組合進行了系統性的分類,針對不同的問題采用特定的求解方法,該求解策略可以獲得更高的求解效率和穩定性。
[1] 高小山, 蔣 鯤. 幾何約束求解研究綜述[J]. 計算機輔助設計與圖形學學報, 2004, 16(4): 385-396.
[2] 黃學良, 王波興, 陳立平, 黃正東. 三維幾何約束系統的等價性分析[J]. 軟件學報, 2011, 22(5): 1106-1120.
[3] 黃學良, 李 娜, 陳立平. 三維裝配幾何約束閉環系統的遞歸分解方法[J]. 計算機輔助設計與圖形學學報, 2013, 25(9): 1296-1303.
[4] Kramer G. Using degrees of freedom analysis to solve geometric constraint system [C]//Proceedings of the First ACM Symposium on Solid Modeling Foundations and CAD/CAM Applications. New York: ACM Press, 1991: 371-378.
[5] 喬 雨, 王波興, 向 文. 基于自由度分析的三維幾何約束推理求解[J]. 計算機輔助設計與圖形學學報, 2002, 14(6): 557-561.
[6] 姜 勇, 王波興, 陳立平. 三維幾何約束求解的自由度歸約算法[J]. 計算機輔助設計與圖形學學報, 2003, 15(9): 1128-1133.
[7] Kumar A V, Yu Lichao. Sequential constraint imposition for dimension-driven solid models [J]. Computer-Aided Design, 2001, 33(6): 475-486.
[8] 石志良, 陳立平, 王小剛. 三維裝配約束推理的球面幾何和球面機構法[J]. 計算機輔助設計與圖形學學報, 2006, 18(7): 942-947.
[9] 石志良, 陳立平. 裝配位置約束建模及求解[J]. 計算機輔助設計與圖形學學報, 2007, 19(5): 553-557.
[10] Kim J, Kim K, Chio K, Lee J Y. Solving 3D geometric constraints for assembly modeling [J]. The International Journal of Advanced Manufacturing Technology, 2000, 16(11): 843-849.
[11] 黃學良, 陳立平, 王波興, 黃運保. 面向集成變量化設計的三維幾何約束求解方法[J]. 計算機輔助設計與圖形學學報, 2010, 22(1): 30-36.
Classification and Solution of 3D Assembly Geometric Constraint System Between Two Rigid Bodies
Huang Xueliang1, Li Na1, Chen Liping2
(1. Institute of Systems Engineering, CAEP, Mianyang Sichuan 621900, China; 2. National CAD Support Software Engineering Research Center, Huazhong University of Science and Technology, Wuhan Hubei 430074, China)
It is a key problem to solve the geometric constraint system between two rigid bodies(GCSBTRD) efficiently and stably when 3D geometric constraint system has been decomposed into a series of GCSBTRDs using equivalent constraint substitution method. In this paper, the decoupling conditions to separately solve angle constraints and distance constraints of GCSBTRDs are presented after analyzing the parametric structure of angle constraints and distance constraints. Then, with the geometric analysis of GCSBTRDs, it is found that the GCSBTRDs consisting of the geometric constraints with more than one constraint degrees can be divided into dozens of patterns, which can all be solved analytically by geometric reasoning method. Subsequently, the adverse impact on numerical solution of GCSBTRDs from additional direction constraint, redundant constraint and contradictory constraint is addressed to demonstrate the advantage of geometric reasoning method. Finally, a hybrid solving strategy based on the classification of constraint combinations is proposed to solve GCSBTRDs, whose effectiveness has been validated by a practical example.
geometric constraint; decoupling analysis; redundant constraint; geometric reasoning
TP 391
A
2095-302X (2014)02-0236-07
2013-06-13;定稿日期:2013-09-13
國家自然科學基金資助項目(51375185);中國工程物理研究院總體工程研究所創新與發展基金資助項目(13cxj19)
黃學良(1983-),男,江西崇仁人,工程師,博士。主要研究方向為幾何約束求解、變量化直接建模、虛擬樣機和 CAD/CAE集成。E-mail:xueliang.huang@qq.com
陳立平(1964-),男,湖北武漢人,教授,博士,博士生導師。主要研究方向為幾何約束求解、參數化設計、多體系統動力學、多領域建模與仿真。E-mail:chenlp@hustcad.com