王巖,董洪康,衛健
(1.北京航空航天大學交通科學與工程學院,北京100191; 2.航空機電系統綜合航空科技重點實驗室,江蘇南京211106)
AMESim軟件已用于車輛、越野設備、船舶、航空航天以及重型設備工業等多學科領域,成為包括流體、機械、熱分析、電氣、電磁以及控制等復雜系統建模和仿真的優選平臺。文獻[1]以AMESim為平臺,采用模塊化的設計方法,分別建立航空發動機、傳感器、燃油系統、電子控制器和執行機構數學模型;文獻[2]建立了行程敏感減振器的數學模型,并采用AMESim和MATLAB/Simulink的接口技術對模型進行仿真研究;文獻[3]利用AMESim仿真軟件對雙壓力液壓系統進行了建模與仿真;文獻[4]運用MATLAB/Simulink和機械液壓仿真軟件AMESim搭建了SAS+EPS的集成控制模型,并進行了聯合仿真;文獻[5]利用AMESim仿真平臺,對某全地域越野車氣制動感載比例閥進行仿真分析,得到了該閥的輸入、輸出壓力特性曲線。
然而伴隨模型的復雜化和精細化,尤其是對于復雜的液壓系統仿真來說,其運行速度緩慢成為一個亟待解決的問題。以三柱塞泵初始模型為例,假設PC的工作頻率為2.8 GHz,進行0.6 s的仿真需要花費的計算時間約為35 min[6]。這僅僅是單個元件的仿真,對于更為復雜的系統仿真而言,仿真速度不可接受。
在AMESim中,可以加快模型仿真速度的方法包括:(1)參數修改;(2)模型簡化或修改;(3)并行處理;(4)分區處理。下面分別介紹。
很多情況下,模型的參數設置不當會嚴重影響仿真的速度。這里的參數設置不當體現在兩個方面:一方面是模型參數設置不當,另一方面是運行參數設置不合理。
在修改參數之前,首先要定位到參數設置不當的元件。AMESim軟件提供了以下3種工具:
1.1.1 狀態統計
在AMESim中模型仿真運行完畢后,在運行模式下打開狀態數窗口,如圖1所示。

圖1 運行模式下狀態數窗口
如果根據“Controlled”這一項對其進行排列的話,就很容易看得出哪些狀態變量使得仿真的速度變慢。通常來說,問題可能會出在那些相關子模型中,但是也有可能出現在與其相鄰的子模型中。檢查這些子模型變量的值是否正常 (調取其結果圖),如果發現有不正常的結果,再調整相應的參數設置。
下面是幾種導致運行速度變慢的典型情況:
(1)非常小的容積腔模型與較大容量的管道相連接;
(2)大的孔口與小直徑管道相連接;
(3)質量非常小的物塊受到較大的作用力。
1.1.2 運行記錄
運行過程中出現間斷的情況也會大大降低仿真速度。查看運行記錄中是不是有過多的不連續,如果有的話,可能是一些模型參數的設置不當引起的。例如,一個固定位移的質量模型,且其停止點是彈性的,這種情況下,如果剛度和阻尼等參數設置不當就會引起反彈,進而導致不連續情況的出現,那么修改這些參數的設置可能會解決仿真速度慢的問題。也可以用理想停止點的質量模型MAS21代替原來的質量子模型。
1.1.3 線性分析
線性分析的一個很重要的作用就是計算特征值。如果仿真運行得很慢,一般可以通過分析特征值來確定原因。最壞的情況就是特征值的頻率非常高但阻尼卻非常低,這種情況肯定會降低仿真的運行速度。一般來說,在不對系統整體性能有較大影響的情況下,可以通過調整某些參數來改變特別大的特征值,比如:減小一個強力彈簧的剛度,增大一個小液壓腔的容積,增加一個小慣性體的慣性質量或慣性矩。
1.2.1 查看運行統計
信號控制庫中的“RSTAT”子模型可以給出運行過程中的很多信息。當仿真占用大量CPU時間的時候,這一子模型可以對如何優化運行參數提供依據。
RSTAT可提供的信息如圖2所示,概括來講有如下3點:
(1)積分步長。當步長設置比較小時,模型較難收斂,從而使得仿真速度變慢;
(2)間斷點。能夠顯示出系統運行過程中在哪一區域出現間斷;
(3)ADAMS法 (線性多步法)步驟和BDF法(向后微分公式法)步驟。

圖2 RSTAT狀態變量顯示窗口
1.2.2 調整運行設置
如果在運行統計中發現不合適的數據,那么下一步就是如何來調整這些運行設置。在運行設置中,對仿真速度可能會產生影響的設置有:容許誤差、間斷點打印輸出、最小間斷處理等。
容許誤差。容許誤差的設定值越小,仿真的速度就會越慢。因此,在保證結果的精確度能夠接受的情況下,增大容許誤差的設定值可以加快仿真速度。
間斷點打印輸出。在AMESim中,當仿真過程中出現間斷的時候,處理器會暫停并將這些間斷點進行保存,隨后再重新啟動。這樣雖然能夠獲得較為精確的結果,但卻給仿真的速度帶來了影響。如圖3所示,激活Discontinuities printout選項,就可以在仿真記錄中顯示出運行過程中間斷點的情況 (前提是General列表中的Monitor time必須選中)。
圖4給出了在仿真三柱塞泵模型時出現的間斷點的情況,不僅可以看出在哪一時刻出現了間斷點,也能看出是哪一子模型導致間斷點的出現。

圖3 運行參數設置窗口

圖4 三柱塞泵模型中的間斷點
以下6種情況往往會產生間斷點:(1)采用經驗數據 (比如ASCII表格)進行線性插值的子模型; (2)任何形式的反彈;(3)有摩擦產生的黏滑運動; (4)開啟性能與關閉性能完全不同的閥門,比如單向閥;(5)任何形式的回滯;(6)在一個工作周期內包含多個階段或者斜坡式增長。
最小間斷處理。該功能可以將那些不太重要的間斷忽略掉,這里的不太重要指的是對狀態變量不會產生影響。在默認設置的情況下,該功能是關閉的。因此,在多數情況下建議保持其默認設置。激活這一選項后,AMESim會忽略掉所有比較嚴重的間斷。如果仿真速度明顯加快,并且對仿真結果沒有太大要求的話,可以將其激活。
還有一些諸如活性指數計算、時間間隔之類的設置也會對仿真時間產生影響。這些設置將在后面的板塊中逐個介紹。
活性指數工具是一個基于系統子模型中能量轉換的強大的分析工具。通過活性指數的計算,可以確定一個系統中能量最活躍的和最惰性的元件,它可以用來簡化復雜的模型[6]。在可能的情況下,可以通過消除最惰性的元件來實現。對于每一個系統,子模型有時會降低模型的復雜度,但仍然可以保持仿真有足夠的精度。可以通過激活運行參數設置中的Activity index calculations來實現這一功能。
需要注意的是,該功能在默認狀態下是關閉的,一旦激活后會對CPU時間產生輕微影響,因此如果不需要的話,最好將其關閉。
狀態數對于仿真速度有直接的影響。對于一個簡單模型(應用ADAMS法),進行的是粗略的線性計算,而復雜系統 (應用BDF法),需要對一個Jacobian矩陣進行估計。Jacobian矩陣的大小等于系統中狀態數的平方。因此,應盡可能地減少該數目。比如可用一個慣量代替系統中多個慣量。
該方法僅適用于涉及液壓系統的仿真。過于復雜的管道子模型會減緩仿真的速度,而采用這種管道往往是沒必要的。AMESim液壓庫元件使用手冊[7]對如何選用最優的管道子模型有詳細的描述。
有時仿真速度慢是由于結果文件寫入的過程中硬盤存儲困難,尤其是當模型保存在另外一個計算機的硬盤上時,因為這種情況下數據的寫入是要經過網絡的傳輸。因此要確保變量的保存數盡可能地少,并且減小結果文檔的大小。最簡單的方法是運用Ctrl+A將模型全部選中,然后右鍵單擊,在彈出的菜單欄中選擇Save no variables一項,如圖5所示。接下來,可以根據需要選擇對自己有用的變量進行保存,如圖6所示。

圖5 取消所有變量的保存
除此之外,減小時間間隔也能使得保存結果變小。這一項可在運行參數里面進行設置。

圖6 選擇變量保存
并行處理是AMESim的一個附帶功能。當進行批量運行或者是設計探索的時候,運用該功能可以實現并行仿真。也就是說,可以利用單臺計算機多核的優勢,或者在同一局域網內進行多臺計算機的并行計算。這樣一來,仿真時間顯然會大大縮短。AMESim軟件的在線幫助文檔[8]詳細介紹了并行處理的設置步驟。
該方法也是僅適用于涉及液壓系統的仿真。運用該方法可將一個復雜液壓系統 (含有Godunov或者Lax-Wendroff)分割成幾個簡單的系統,如圖7所示。

圖7 分區處理
每一個子系統可獨立運行,因此可以與并行處理的方法相結合,利用計算機多核的優勢,或者分配給不同的幾臺計算機運行,同樣可以節省大量的CPU時間。例如,1個復雜系統包含180個狀態變量,若將其分割成3個均包含60個狀態變量的子系統的話,就會有3個602(3 600)大小的Jacobian矩陣,從而代替了原有的1個1802(32 400)大小的Jacobian矩陣。可參考液壓元件使用手冊獲得詳細的介紹[7]。
介紹了AMESim軟件的特點,并引出用戶在使用時存在的仿真速度慢的問題,根據軟件自帶幫助文檔及作者本人的使用經驗給出了如下4個方面的優化措施:
(1)參數修改。分為修改模型參數和運行參數兩部分。對于修改模型參數,可用狀態數、運行統計和線性分析等工具進行相關子模型的定位。用戶可在運行統計里查看模型運行過程中的一些信息,然后在運行設置里對容許公差、間斷點打印輸出、最小間斷點處理等選項進行相應的修改。
(2)簡化或修改模型。用戶可將活性指數作為簡化或修改模型的依據,并在建模的過程中盡可能地減少狀態數。除此之外,對于液壓系統仿真而言,選擇合適的液壓管道也能優化仿真速度。
(3)并行處理。利用計算機雙核或多核的優勢,或者在同一局域網內進行多臺計算機的并行計算。
(4)分區處理。將一個復雜的液壓系統分割成多個簡單的子系統,對每個子系統獨立運行。
【1】任新宇,王建禮,趙小龍.基于AMESim的渦扇發動機控制系統綜合仿真[J].航空動力學報,2010,25(12): 2816-2820.
【2】徐中明,李仕生,張玉峰,等.行程敏感減振器阻尼特性仿真與試驗[J].兵工學報,2011,32(9):1077-1082.
【3】盧寧,付永領,孫新學.基于AMESim的雙壓力柱塞泵的數字建模與熱分析[J].北京航空航天大學學報,2006,32(9):1055-1058,1086.
【4】陳龍,牛禮民,江浩斌,等.AMESim在懸架轉向集成模型中的應用[J].浙江大學學報:工學版,2007,41(10): 1763-1767.
【5】李以農,王意寶,羅志前,等.氣制動感載比例閥的AMESim仿真及試驗[J].重慶大學學報,2009,32(7): 766-769.
【6】付永領,齊海濤.LMS Imagine Lab AMESim系統建模和仿真實例教程[M].北京:北京航空航天大學出版社,2004.
【7】LMS Imagine S.A.AMESim 7 Hydraulic Library User Manual[M],2007.
【8】LMS Imagine S.A.AMESim 9 Reference:Parallel processing[M],2009.