- 機電系統聯合仿真與集成優化案例解析
- 李劍峰等編著
- 755字
- 2018-12-29 16:02:32
3.3 機器人柔性臂分析實例
3.3.1 問題定義
在空間開發中,為了降低航天飛行的發射成本,通常選用輕質材料造機器人操作臂,這種操作臂不同于剛性很大的機器人操作臂,在作業過程中將不可避免地產生柔性變形,例如,建造宇宙空間站和抓取衛星的操作臂,一般具有手臂長、負載大等特點,其結構(其中主要是臂桿)帶有柔性。操作臂的柔性將引起彈性振動,振動對末端夾持器的性能產生不利的影響,使空間機器人的運動精度受到限制。
在自動化生產中,為了提高生產效率,大量使用輕質的機器人機械臂,這些機械臂的使用大大提高了操作速度,但同時由于構件的柔性,使機構發生彈性變形并引起振動,因此,必須盡可能準確地分析機器人在高速運行情況下的動力學特性,從而有效地抑制振動、提高其精度。
末端安裝了遠中心柔順(Remote Center Compliance,RCC)裝置的機械手能夠維持適當的方位,從而解決機械手在黑板上寫字之類的問題。通過應用具有低的橫向及旋轉剛度的抓取機構,能使軸孔裝配的作業易于實現,研究這種機構也需要考慮構件的柔性。
因此,考慮臂桿柔性的機器人動力學問題的研究是非常必要和重要的。柔性機器人的研究始于20世紀70年代末,現在被認為是機器人學五大專題之一。
考慮空間兩柔性構件組成的機械臂系統的動力學建模問題,如圖3.2所示。

圖3.2 假設模態法動力學模型
假設操作臂為均勻細長桿,其截面尺寸遠小于其長度,只考慮水平面內彈性變形的影響,不考慮重力。已知臂長分別為l1、l2,柔性構件線密度為ρ1、ρ2,關節處的驅動力矩為τ1,τ2。τ1繞z軸方向,τ2繞y軸方向。
雙連桿柔性機械臂數值仿真的有關參數如下:兩柔性桿均為勻質桿,橫截面積為圓形,半徑r1=r2=1.0mm,桿長分別為l1=l2=2.0m,材料選為鋼,選擇彈性模量E=207GPa,泊松比μ=0.29,密度ρ=7801kg/m3,關節作用力矩τ1=τ2=0.02N·m。
3.3.2 建立有限元模型
在ANSYS中有結構分析、熱分析等,這里只用其結構分析,因而將ANSYS設置為“結構分析”。ANSYS中的中性文件名默認與工程名相同,因此,生成中性文件時要注意對應于相應的構件。最后,ANSYS采用默認的國際單位(千克、米、秒)制,ADAMS默認長度單位是毫米,所以必須統一單位,否則將出現不可預知的錯誤。
在ANSYS軟件中,需要定義單元類型,確定界面形狀和參數,材料屬性(包括彈性模量和泊松比等),然后劃分單元,生成有限元模型。
1)定義單元類型(Element Type)
選用的單元類型是三節點三維等截面梁BEAM189,如圖3.3所示,每個梁單元由I, J,K三個節點組成。BEAM189是三維二次(三節點)梁單元,每個節點有6個或7個自由度,自由度個數取決于KEYOPT(1)的值。KEYOPT(1)=0(默認)時,每個節點有6個自由度,即節點坐標系的x、y、z方向的平動和繞x、y、z軸的轉動。KEYOPT(1)=1時,每個節點有7個自由度,這時引入了第7個自由度(橫截面的翹曲)。
在相同的劃分條件下,BEAM189的精度高于另兩種三維梁單元BEAM4和BEAM188,接近于SOLID45。而且BEAM189具有操作簡單、定位精確等優點。機器人動力學仿真中常用BEAM189,如圖3.3所示。

圖3.3 BEAM189單元示意圖
2)定義材料屬性(Material Properties)
材料屬性主要包括楊氏彈性模量、密度和剪切彈性模量等。常用的材料如鋼、銅、鋁,這里選的是鋼,彈性模量E=207MPa,密度ρ=7801kg/ 3m,泊松比μ=0.29,剪切彈性模量默認為E/2(1+μ。)
3)截面定義(Sections)
研究中經常用到圓形和方形,這里選用的是圓形,如圖3.4所示設置截面。

圖3.4 截面設置界面
4)創建實體模型(Modeling)
生成幾何模型,在此用的是自底向上法創建實體模型,首先創建兩個關鍵點來決定梁的幾何位置。一般來說,BEAM189三節點二次梁單元還需要給出方向節點,生成梁單元中性層,通常,中性層垂直于兩端點和定向節點所在的平面。由于ADAMS將利用ANSYS中的位置作為初始位置,故在ANSYS中應當設置好彈性構件的關鍵節點的具體位置,防止在ADAMS中進行動力學仿真時出錯。
5)劃分單元(Meshing)
在ANSYS中可以通過三種方式設置單元大小,分別是自適應網格劃分、設定單元長度和設定單元數。自適應網格劃分使用方便,由于這里的柔性構件模型較簡單,只要保證單元長度適中,通常20~30 mm,就可以保證精度,單元數再多了,對精度提高不大,但計算速度會很慢。這里選用單元數來設定單元大小,2 m的柔性構件劃分為8個單元。
3.3.3 ANSYS/ADAMS接口文件生成
在ADAMS/Flex模塊中進行柔性體動力學分析,需要將柔性體有限元模型在ANSYS中進行特定的有限元分析后,將結果轉換成模態中性文件(MNF),才能導入ADAMS中。模態中性文件是一個獨立于操作平臺的二進制文件,它包含下列信息:
● 模型的幾何信息(節點位置及其連接);
● 模型節點質量和慣量;
● 模態;
● 模態質量和模態剛度。
生成模態中性文件時,需注意以下幾點:
(1)用有限元模型生成模態中性文件時對節點數的數量是沒有限制的,但它的多少會影響數據的存儲空間大小。
(2)將一個柔性體引入ADAMS模型后,需要建立起它與模型中其他元件的關系,例如,施加約束或作用力。在ADAMS/Flex中,這些邊界條件可以施加在界面點上。界面點是保留了6個自由度的單元節點,對應于每個自由度都有一個約束模態,即在該自由度上施加單位位移而其他界面點自由度位移均為零時物體的靜態變形。
(3)在生成模態中性文件時,必須為有限元分析指定單位,這個單位將保存在模態中性文件中。有限元分析使用的單位不必與ADAMS仿真時使用的單位一致,只要在模態中性文件中設好了單位,ADAMS會正確進行轉換。
ANSYS 5.3以上版本都提供了ADAMS宏命令,該命令可以自動計算出所需階數的固定界面主模態和界面點的約束模態,并輸出模態中性文件,其過程如下:
設置單位,從命令窗口中輸入
/units, <name>
其中,<name>可以是以下5種單位制中的一種,文中用的是國際單位制(SI)。
● SI——International system(m,kg,s,K);
● CGS——CGS system(cm,g,s,℃);
● MPA——MPA system(mm, mg, s, ℃);
● BFT——British system using feet(ft, slug, s, ℉);
● BIN——British system using inches(in, lbm, s,℉)。
建立界面節點選擇集,一般使用NESL命令,如果是關鍵點,可以用KSEL和NSLK命令,文中界面節點取的是和大地(Ground)固接的左端點和關節處的關節點。
運行ADAMS宏命令,具體格式是ADAMS,nModes,kStress
nModes是要計算的固定界面的主模態數。
kStress是單元應力輸出選項,為零(默認)時,不計算單元應力和應變,為1時,則要計算單元應力和應變等。這樣,就可以生成模態中性(*.MNF)文件了。
也可以采取菜單操作,如圖3.5所示,單擊求解計算菜單中的導出至ADAMS子菜單,彈出界面點選擇對話框,連續選中桿的左右端點處的兩個節點作為界面點,確定后將彈出中性文件導出對話框,如圖3.6所示。
其中System of Model Units項為單位設置欄,可以在下拉列表中選擇,也可以自行定義,這里選擇國際單位制,Eigenmodes確定選取模態的階數,模態數越多,計算就越準確,但耗費的時間也越長。Element Results指定單元上是否包含應力等結果。Shell Element Results Output Control指定殼單元結果輸出。在文件名一欄中指定輸出的路徑及文件名稱,單擊Solve and create export file to ADAMS后,開始計算,當計算結束后將生成*.mnf文件。

圖3.5 中性文件導出菜單

圖3.6 中性文件導出對話框
3.3.4 在ADAMS中讀入模態中性文件
在ADAMS中讀入模態中性文件,具體步驟是從Build主菜單的下拉菜單中選擇Flexible Bodies,接著選擇ADAMS/Flex,一個創建柔性體的對話框就會出現;在“Flexible Body Name”一欄中,輸入要創建的柔性體的名字,在“Modal Neutral File Name”一欄中,輸入要導入的模態中性文件名,也可以通過瀏覽找到需要的模態中性文件,將光標放在“Modal Neutral File Name”的文字輸入框中按鼠標右鍵,從出現的下拉菜單中選擇“Browse”,然后在“文件選擇”對話窗中選擇已經生成的模態中性文件,單擊OK按鈕即可;在“Damping Ratio”一欄中,輸入要加在所有模態上的阻尼率,或選擇默認值;最后,單擊OK按鈕,即可以在ADAMS中生成柔性體。由于在ANSYS中已經定義了柔性構件的起始、終止位置,通常不需要移動柔性體。因為在移動中,容易改變柔性體的屬性,出現仿真錯誤。本例因為兩桿相同,因此導入兩次即可,導入第一桿時,置于原點,導入第二桿時置于第一桿右端點,即(2,0,0)處。
3.3.5 在ADAMS中建立Flex體模型
1)創建虛剛體
在ADAMS環境中的兩個柔性構件沒有任何關系,并且也沒有和外界發生任何作用,必須運用ADAMS/View提供的運動副約束或柔性連接將它與其他零件連接起來,但是與ADAMS中Flex體發生聯系必須通過建立虛剛體,因為諸如移動副或平面內運動虛約束這樣的約束不能直接加在柔性體上,必須創建虛剛體將零件連接起來,然后將約束施加在虛剛體上,并且運動激勵也不能直接加在柔性體上,也應該通過虛剛體。
虛剛體就是無質量的連接物體(或稱作啞物體),是質量和慣性為零或非常微小的物體。它不是模型中的零件,但卻可以間接地將物體連接起來。要建立一個無質量連接的物體,只需去掉物體的幾何體即可,默認情況下ADAMS/View是根據物體的幾何體確定其質量的。如果還想保留物體的幾何體,可以修改該物體,將其質量和轉動慣量設為零,具體為創建球形連接物體,進入物體修改Modify Rigid Body對話框,選擇User Input,然后將Mass和Moments of inertia項改為零,最后確定即可。無質量連接物體不能為模型添加任何自由度,故必須與其他有質量物體固接在一起。
建立無質量連接物體的過程為:首先,在兩個Flex體的節點1(NODE1)和節點2 (NODE2)創建標識(MARKER);然后,在這些MARKER上創建虛剛體;最后,分別用固定關節(Fixed Joint)連接Flex體和虛剛體。在ADAMS環境中建好的模型如圖3.7所示。

圖3.7 在ADAMS中的柔性體模型
2)創建關節與施加作用力
關節和電動機的創建應當注意,與關節連接的是虛剛體而不是Flex體,并將關節的中心定在更靠近基座的虛剛體的MARKER上。在ADAMS/View中的柔性體上施加作用力時,要保證只有當柔性體是主動物體時,能在其上施加力或力矩向量,如果柔性體是被動物體(被加載),也需要在柔性體上附加一個虛剛體。
3)設置仿真參數
在仿真中將分析類型設置為動力學分析,仿真時間設定為3 s,仿真步數為100步。
4)進行仿真分析
在時間為3 s時,兩柔性構件的位置及變形如圖3.8所示。

圖3.8 柔性體仿真
3.3.6 后處理結果輸出
在ADAMS中的后處理程序(Post Processor)中輸出數據文件或表單。
利用ANSYS和ADAMS軟件仿真此模型,得到第二構件末端的位移在x,y,z軸的投影隨時間的變化曲線和另外一種分析方法李群李代數計算分析結果的對比。如圖3.9、圖3.10、圖3.11所示。

圖3.9 第二構件末端點x向位移隨時間的變化

圖3.10 第二構件末端點y向位移隨時間的變化

圖3.11 第二構件末端點z向位移隨時間的變化
可見ANSYS/ADAMS軟件聯合仿真與李群李代數分析結果第二構件末端點x向位移變化趨勢一致,隨著時間的增加,位移越來越小,而且在起步階段,位移變化很慢;第二構件末端點y向位移變化趨勢基本一致,開始有抖動,出現位移正負變化現象,以后將隨著時間的增加,y向位移將越來越大;第二構件末端點z向位移變化趨勢也一致,只是由于z向位移的產生主要來源于第二構件關節處所受的關節力,故第二構件末端點z向位移變化較快,隨著時間的增加,z向位移也增大。
3.3.7 簡單誤差分析
從圖3.9~圖3.11可以看出,第二構件末端點x,y,z向位移隨時間變化趨勢相同,但是兩條曲線在同一時間,位移值有差異,對此進行簡單誤差分析。
1)柔性變形假設方式
ADAMS/Flex模塊進行柔性構件動力學分析采用模態分析綜合法,該方法采用模態向量及相應的模態坐標來描述在空間隨時間變化的變形,uf=Φqη,式中Φ=[Φ1 Φ2 ... Φn]為模態向量矩陣,qη=q(ηt)為模態坐標,n為模態向量數,通常選取n?N,N為物體的自由度數,缺點是難以獲得比較精確的模態參數。
2)微分方程組解法
柔性多體系統動力學方程組是非線性的、時變的、強耦合的微分方程組,求解這樣的方程組,由于方法不同,結果也不完全相同。
ADAMS中采用ABAM(Adams-Bashforth and Adams-Moulton)積分程序,采用坐標分離算法,將微分方程減縮為獨立廣義坐標表示的純微分方程,然后用ABAM程序進行數值積分,并用Gear預估-校正算法求解微分方程,根據當前時刻的系統狀態向量值,用泰勒級數預估下一時刻的狀態向量值。
另外,由ADAMS/Flex模塊分析柔性體動力學的基本原理可知,柔性構件的任意一點的速度是由節點速度給出的,是一種近似計算。