黃心躍,劉 赟,張苗苗
(中國空氣動力研究與發展中心低速空氣動力研究所,四川綿陽 621000)
在風洞運動機構的設計和運行中,既要滿足試驗模型大角度范圍需求,具備模型旋轉中心與風洞中心位置保持不變[1]的能力,又要解決模型運動和機構補償過程中的安全隱患問題[2]。
多軸試驗裝置在風洞試驗中是支撐模型姿態變化的主力設備之一,具體方案及應用包括:利用支桿連接模型尾部以支撐模型并實現角度變化(尾撐),主從軸系之間涉及函數算法,具備聯動補償的能力,例如大迎角尾撐運動機構;負責協調前后、上下、左右3 個方向的線位移運動和俯仰、偏航、滾轉3 種角位移運動的一體化裝置,例如六自由度數控坐標移測架等。這類運動機構的特點是各個姿態角度控制相對獨立,軸系之間存在著位移補償機制[3]。
但單一的位移補償機制往往會限制和影響模型大角度的試驗進程,當出現大角度、長支桿、模型旋轉中心偏心等情況時,對運動軸的補償行程要求更高,甚至因補償行程不夠而限制模型角度變化,且極限位置還會出現活動端與固定端碰撞的可能。因此,優化此類設備的控制策略,合理規劃機構運動路徑,是非常有必要的。
此外,試驗模型在風洞中運動也存在風險,特別是因人為不慎或考慮不周產生的錯誤指令等情況,而傳統的防碰撞技術的實現方式主要是在機械結構上設計加裝限定位移的機械機構和傳感器裝置來保護容易發生碰撞事故的部件或部位,該方式不宜也不易于實現模型全空間、全方位的防碰撞保護。
國外將運動路徑規劃與防碰撞技術結合運用于風洞的研究材料較少。國內的林辰龍、褚衛華等[4-5]對4 m ×3 m 低速風洞大迎角支撐裝置多軸聯動速度和位置控制方法進行了深入研究。陽玲[6]在風洞大慣量設備同步控制方面提出一種綜合了主從式和耦合式控制模型的新同步控制策略并開展研究。崔靜[7]設計了基于多軸同步控制技術的信封機電氣控制系統。趙鑫[8]證明了混合碰撞檢測算法的有效性。董向陽[9]研究了基于定向包容盒(Oriented Bounding Bix,OBB)的碰撞檢測方法的理論價值和實際意義。郭海儒[10]提出了一種基于OBB層次包圍盒樹的實時碰撞檢測算法。本次研究首先需要優化機構軸系之間的耦合關系[11],采用動態定義電子凸輪曲線的方式,可根據需求靈活切換同步軸之間的運動軌跡,防止相互干涉;其次,設計碰撞識別功能,在程序中模擬出模型運動的目標位置并進行碰撞判斷和運動干預,降低模型運動中的安全風險。
選取具備代表性的4 m ×3 m風洞大迎角尾撐運動機構為研究對象,該運動機構所支撐的試驗模型在風洞運用中的坐標系定義如圖1 所示,其中α、β 在運動控制體系中作為主軸,代表模型的攻角和側滑角;X、Y、Z 作為從軸,代表模型在豎、縱、橫向上的線位移。

圖1 運動機構坐標系定義
大迎角尾撐機構硬件組成如圖2 所示,采用模塊化分層式疊裝結構,主要包括Z 向偏航機構(含Z 向隨動密封伺服驅動)、β 側滑角機構、Y 向升降機構、α攻角機構等,各機構相互獨立,實現4 個自由度的單獨運動。

圖2 大迎角尾撐機構硬件組成
軸系之間的聯動關系是通過計算尾支桿長度,設為L尾支桿,構建三角函數模型,核心公式如下:
通過組合運動[12],實現縱、橫向位置補償能力,達到模型姿態變化時模型中心可始終保持在風洞軸線上的目的。
規劃路徑功能主要運用于涉及電子凸輪的多軸運動機構的大角度試驗中,其主要目的是當跟隨(補償)軸行程逼近極限位置時,其位置信息將被定義為停止補償點,此時軸系之間的耦合關系發生改變,跟隨軸停止繼續補償且保持不動,聯動形式調整為引導軸單動,從而繼續完成模型需求角度。這項工作主要依賴于動態定義下的電子凸輪曲線實現[13],電子凸輪數學函數計算公式為
式中:l為補償軸的直線位移;A0、A1、…、An為待定系數;x為引導軸值換算的比例;B0、B1、B2均為三角函數的系數。
2.1.1 動態定義凸輪曲線
由于多軸支撐系統的模型支桿或等效桿長(虛擬支桿)根據試驗不同而有所變化,坐標系偏移量等參數也會發生改變,此外,試驗過程中需要在涉及結構發生干涉的某個指定位置停止補償,且停止補償點由人為設定,因此,整條凸輪曲線需要由多個凸輪區段插補拼湊在一起,故采用在程序中對凸輪曲線進行實時修改的方式,以匹配設置的各項參數,這被稱為動態定義多項式。
2.1.2 凸輪區段的縮放與偏移
在可編程邏輯控制器(Programmable Logic Controller,PLC)計算過程中,當給定x =xmin時,視式中的x為0,當給定x =xmax時,視式中的x 為1,在實際計算中,將x縮放到(0,1)的區間來進行計算[14],而ymin、ymax則是將公式結果在y 方向上進行縮放。根據區段定義凸輪盤時,可以縮放到因子1 的標準形式提供各個凸輪區段,這意味著取值范圍和定義的范圍對應閉區間[0,1]。
將真實凸輪盤區段映射到縮放后的范圍如圖3 所示。

圖3 凸輪區段的縮放
在4 m ×3 m風洞大迎角尾撐運動機構縱向補償過程中,為防止機構縱向補償軸與風洞頂蓋固定端發生碰撞,設置停止補償點,并將其位置信息寫入YS(PLC系統內部寄存),設Lα為支桿在攻角方向上的等效桿長,α0為坐標系在模型攻角上的偏移量,α 為試驗模型的攻角角度,Y為跟隨軸需要補償的距離,則補償公式為
此時補償距離Y的區間由攻角運算得到,但是由于在指定位置Y =YS時,需要停止補償,涉及縱向聯動關系的凸輪曲線以停止補償點為中心劃分為兩個凸輪區段并拼湊在一起,其中設停止補償點的坐標為α停(攻角),由Y =YS提前計算得到:
設機構攻角范圍為-90° ~10°,則對應圖3 中坐標軸x的區間為(-90,10),但在機構實際運行中,其實際補償方向剛好相反,當攻角為-90°時,Y 需要為Lα,而在凸輪曲線公式中,攻角為-90°,定義域內視x為0,則y為0,映射到補償軸Y為0,顯然不符合要求,因此需要對(0,1)的曲線進行縮放與偏移[14],使之對應到區間(xmin,xmax)。
首先開展聯動補償段曲線對應關系的探討。
由補償公式(4)可確定攻角和補償軸分別在坐標系上x和y的最小值(xmin=-90°、ymin=YS),以及最大值()。
調用電子凸輪公式(3)的三角函數部分,進行方向取反設定(B0=-Lα),隨后需要將(0,1)的曲線縮放到定義域區段內,再整體偏移到(-90°,)區段內。故設定:
實際計算中存在定義域與閉區間[0,1]之間的映射關系,故電子凸輪公式中的變量x 是通過比例換算得到的。將上述擬合參數代入公式,通過實時讀取和更新,完成大迎角機構攻角角度在定義域(-90°,arcsin內與Y 軸(補償軸)的縱向聯動。
然后討論停止補償段部分。
xmin為前一段曲線的xmax,ymin、ymax恒為停止補償的點位,xmin則為10°,A0為跟隨軸斷開的常數,其余部分均為0。故攻角角度在定義域10°)內時,補償軸Y 始終作為一個設定值YS,故其關系為:xmin=-α0,xmax=10°,ymin=ymax=YS,A0=YS。
綜上,整條縱向補償曲線由兩個凸輪區段組成,以YS(根據需求,人為設定)作為“分水嶺”,實現聯動狀態與主軸單動之間的靈活切換。此外,由于攻角實際行程需要在-90° ~10°之間,若曲線只到-90°或10°,則會在到達該點后脫開曲線,為了避免該情況發生,應將曲線的端點值改為-90.001°與10.001°。
對于Z補償,其補償公式為
可見,Z的補償值與側滑角與攻角均相關,在控制過程中,由于不存在側滑角與攻角同時運行的情況,所以將Z的補償分為2 種情況,即定α動β或定β動α,在這2 種情況下,不運動的軸將被視為常數并作為參數存在于公式中,另一個軸則是公式中的變量x。Z向補償軸的正負方向也存在停止補償點ZS(PLC 系統內部寄存),具體參數根據實際情況設定,通過提前計算得到補償曲線中對應的側滑角角度。根據對稱原理,橫向補償曲線最終可分為3 個區段,前后兩段為正負向兩端停止補償段,中間段為基于橫向補償式(8)的聯動補償段,具體關系為
左側段為:xmin= β最大負角度,xmax= arcsin,ymax=ymin=-ZS。同理右側段為:xmin,xmax=β最大正角度,ymax=ymin=ZS。
2.1.3 運動路徑規劃功能測試
在風洞無風的情況下,設定大迎角尾撐運動機構縱向停止補償點YS為-109 mm,橫向停止補償點ZS為±750 mm,對聯動狀態下各方向上的引導軸在行程范圍內以一定的間隔進行多次或正反方向運動,測得對應補償軸(跟隨軸)實際位置并進行檢驗,以考核動態規劃補償曲線功能是否實現。
縱、橫向補償關系曲線分別如圖4、圖5 所示。由測試結果可得,機構運動過程中補償軸達到停止補償點后開始停止補償,規避了原有補償過程中的碰撞區段和超行程區段,也就表示軸系之間的補償不再是單一的耦合關系,引導軸不再受限于補償軸,可根據實際需求調整軸系之間的補償方式,從而滿足模型攻角-90° ~10°、側滑角-45° ~45°的完整試驗角度需求。

圖4 縱向補償關系曲線

圖5 橫向補償關系曲線
多軸運動路徑規劃功能可以根據試驗需求的角度和試驗現場的條件靈活運用,利用停止補償點提前計算和動態定義多項式的方式規劃運動軌跡,實現聯動補償狀態和主軸單動模式之間的切換,解決軸系之間相互干涉的問題,避免極限位置補償引起的安全隱患,有效提升風洞試驗裝備的能力水平。
在試驗開展前期,設計人員就會考慮模型在風洞中變化姿態時的碰撞情況,當模型能夠保持旋轉中心且系統正常運行時不會發生碰撞。防碰撞設計更多是為當動態規劃路徑功能滿足模型極限角度需求或避開風險位置時,造成模型整體出現旋轉中心偏移的情況和人為錯誤指令而服務的。
為了在兼容路徑規劃功能的同時解決模型運動過程中可能存在的安全隱患問題,提出基于包圍盒的構建策略和更新方法,并將其與實體模型結構條件相結合,模擬出模型運動的目標位置并進行碰撞判斷和運動干預,實現碰撞識別功能。
2.2.1 碰撞檢測基本原理
碰撞檢測就是檢測虛擬場景中不同對象之間是否發生了碰撞。從幾何角度講,碰撞檢測表現為2 個多面體的求交測試問題[15];所處的空間按對象可分為二維平面碰撞檢測和三維空間碰撞檢測。對于剛體運動來說,運動分為平移和旋轉兩類。當對象進行平移運動時,可以對其包圍盒進行同樣的平移轉換,即可得到新位置處的包圍盒[16]。當對象發生旋轉時,其新位置處的包圍盒不能通過簡單的旋轉得到,不同類型的包圍盒可以采用不同的更新方法。但是一個對象的OBB完全是由它自身的幾何屬性決定的,不受外界因素影響,因此基于OBB 的碰撞檢測算法用于活動剛體[17]對象的處理時非常簡單。
2.2.2 空間OBB距離碰撞計算
設三維包圍盒長方體A的中心坐標系為OA,Ax、Ay、Az為長方體A 坐標系的單位向量,LA、WA、HA為長方體A的長、寬、高的一半;d為長方體A坐標系OA到墻體B表面OB的垂直距離
三維包圍盒長方體A和墻體B計算示意圖如圖6所示。
三維長方體包圍盒核心公式計算如下:
|Proj(d)|>|Proj(WAAx)|+|Proj(HAAy)|+|Proj(LAAz)|
式中:Proj為投影對象在直線軸上的投影計算。當公式成立時,長方體A與墻體B不發生碰撞。
2.2.3 OBB更新策略
只須根據當前活動對象的運動對其進行同樣的運動,就可以得到當前活動對象的最新OBB,通常,對象的運動類型可以分為旋轉和平移兩類,即對OBB的基底乘以一個旋轉矩陣,并加一個平移向量即可,OBB在各個基底方向上的大小保持不變。故設x 軸、y 軸和z軸的平移向量為T =(x,y,z)T基底,繞x 軸、y 軸和z軸的旋轉參數為θ、φ、ψ,由此可得出對應的變化矩陣為
那么合成的旋轉矩陣為
通過N新→R總N +T就可以完成包圍盒旋轉平移更新得到的新包圍盒[18]。
2.2.4 基于OBB的模型防碰撞設計
在防碰撞設計中,主要組成參數分為兩類,一類由模型自身的條件、結構形狀來確定,以模型的旋轉中心作為分割點,并依據試驗規范,定義各參數在坐標上的方向,作為模型初始狀態的給定參數(如圖8 所示);另一類是由攻角α和側滑角β 作為系數的旋轉矩陣。基于包圍盒的模型參數給定界面如圖7 所示。

圖7 基于包圍盒的模型參數給定界面

圖8 試驗模型無偏心的運動狀態
數據處理的具體流程是,由α和β分別作為R(z,ψ)、R(y,φ)旋轉矩陣的系數,按照其中對應的算法順序,寫入矩陣A。對模型自身的對應參數進行組合,形成多組數組,再轉化為多組矩陣,設其中一組為矩陣B,則算法如下:設A =[aij]矩陣,B =[bij]矩陣,則矩陣A與矩陣B的乘積是矩陣C =[cij],公式為
以L1(模型X 向前端距離旋轉中心距離)、H1(模型X向前端上半厚度)、W2(模型X 向前端Z 負向寬度)組成三維體為例:
可得矩陣C,經過轉置后,取Y軸、Z軸方向相關值,分別為
將該組值疊加在相關軸系的初始值之上,取絕對值后,與試驗段實際行程距離作比較,同理,各組計算后的多組結果數據經過一系列疊加、處理后,模擬出機構運動至下一個點的多組實際距離,對各組中對應元素與風洞高度、寬度的實際尺寸進行比較、判斷并干預其運動,暫停執行并提示操作人員。
具體表現為:當啟用運動路徑規劃功能時,機構運動越過停止補償點后引導軸繼續滿足模型角度,補償軸放棄補償且處于靜默狀態,此時,模型旋轉中心會發生偏移,系統補償算法出現偏移量,其包圍盒縱、橫向更新策略分別為Proj(dy)=Proj(dy)+Ty、Proj(dz)=Proj(dz)+Tz,其中位移T通過共享變量的方式調用系統實際偏移量,從而更新包圍盒中模型旋轉平移后的實際姿態,對模型發生偏心后的運動進行判斷和干預。
2.2.5 防碰撞功能測試
為驗證包圍盒更新策略,利用CATIA軟件對試驗模型和風洞進行三維實體建模,監測和觀察模型在風洞中的運動狀態,試驗模型無偏心和發生偏心的運動狀態分別如圖8、圖9 所示。結合運動仿真生成軌跡曲線,測試模型旋轉中心橫向偏離風洞中心0 mm、±500 mm、±1 000 mm、±1 500 mm 情況下在側滑角-45° ~45°變化過程中的碰撞區間,對比有無碰撞識別系統下的模型運動軌跡,如圖10、圖11 所示。

圖9 試驗模型發生偏心的運動狀態

圖10 無碰撞識別系統的模型運動軌跡仿真

圖11 含碰撞識別系統的模型運動軌跡仿真
由數據結果可以得出結論:碰撞識別系統可根據實際需求劃分模型可運動區域,有效避免模型與洞壁發生碰撞。
首先對風洞中常見的同步運動機構進行了分析,針對運動控制中存在的安全隱患,提出基于停止補償點的運動路徑規劃和空間包圍盒防碰撞檢測算法,實現機構運動軌跡可規劃功能,降低機構和模型在試驗過程中的安全風險。
①基于電子凸輪技術的多軸運動路徑規劃。利用耦合式同步控制模型,著重對電子凸輪的運用進行研究,提出采用停止補償點提前計算和動態定義多項式的方式規劃運動軌跡,從而改進同步運動控制策略,并將該方法運用到多軸機構的橫向和縱向補償曲線上,實現運動軌跡可規劃功能。
②研究包圍盒碰撞檢測方法。簡要地對包圍盒技術的基本原理和實現方法進行了討論,對基本幾何圖元的相交測試做出分析,主要闡述了基于OBB層次包圍盒的構建策略和更新方法,并將其與實體模型結構條件相結合,模擬出模型運動的目標位置并進行碰撞判斷和運動干預,實現碰撞識別功能。
該設計已運用于4 m ×3 m風洞大迎角尾撐運動機構,成功完成了數項科研試驗,氣動數據良好且規律性合理,關鍵技術在機構補償和模型運動中得到了充分應用。