劉振峰, 孫紹芹, 常 非, 郭為忠
(上海交通大學機械與動力工程學院,上海200240)
凸輪機構是機械設備中的常用機構[1]。凸輪機構及其動態特性測試[2]是機械設計課程的重要內容之一。凸輪機構運動類型多[3]、概念抽象、理解困難,現有凸輪機構運動教學資源有限,形式單一,缺乏交互性,一定程度上束縛了學生的理解力和創造力,而虛擬仿真實驗的設計與開發可以有效地解決這一難題。采用增強現實(Augmented Reality,AR)和虛擬現實(Virtual Reality,VR)技術[4],將煩冗復雜、枯燥冰冷的理論公式內容,以“游戲”場景呈現,實現教學過程的沉浸式、可視化、交互性等功能[5],讓學生產生身臨其境的實驗教學感官體驗,虛實結合,以虛促實,培養學生工程能力和綜合科研素養[6]。虛擬仿真實驗作為我國科技支撐計劃項目和國家金課的重要組成部分,已納入國家教育教學改革與實踐中來。
凸輪機構運動規律主要包含等速(直線);等加速、等減速;余弦加速度(簡諧);正弦加速度(擺線);拋物線、直線、拋物線組合運動;改進正弦加速度等運動規律。在凸輪機構運動角速度恒定的情況下,假設凸輪靜止,從動件運動,通過測量凸輪機構從動件運動參數,獲取凸輪運動曲線[7]。根據凸輪推程、回程運動規律的選擇及各相關參數的設定,利用公式計算出從動件的位移、速度、加速度[8]等數據,推程運動線圖原理如圖1所示。

圖1 推程運動線圖
以簡諧運動規律為例,推程運動方程:

回程運動方程:

式中:h為行程;φ為凸輪轉角;Φ為推程運動角;Φ′為回程運動角;s為從動件位移;v為從動件速度;α為從動件加速度;ω為凸輪轉速。
以直動滾子從動件盤形凸輪工作輪廓線設計為例,其設計原理如圖2所示。

圖2 直動滾子從動件盤形凸輪廓線
根據自行設定凸輪參數以及從動件運動規律,即可獲取凸輪的理論廓線,根據估值直徑等信息,求解出凸輪工作輪廓線。通過對基圓半徑r0、偏心距e、推程角Φ的修改即可瞬時生成相應的凸輪廓線及從動件的運動規律曲線。凸輪廓線由從動件的運動規律決定。在設計凸輪廓線時,不僅要保證從動件能夠按給定要求實現預期的運動規律,還應該保證凸輪機構具有合理的結構尺寸和良好的運動、力學性能[9]。基圓半徑、偏距和滾子半徑等基本尺寸參數的選擇是否恰當,會直接影響到凸輪機構的結構是否合理、運動是否失真以及受力狀況是否良好等問題。
分別對從動件運動規律參數位移(s)、速度(v)、加速度(a)、凸輪轉角(φ)與凸輪轉速(ω)之間的關系進行編碼與定義。將設計好的凸輪進行運動仿真,觀察凸輪形狀、從動件運動位移、速度、加速度、壓力角等變化規律[10],通過參數調整,優化設計出更合理的凸輪機構,同時觀察和記錄參數變化對工程應用產品性能的影響,總結設計、開發和實踐經驗,為工程問題解決及科學研究工作提供參考樣本。
虛擬實驗測試系統整體框架主要有設計成理論教學、仿真分析及自主設計模塊3部分,如圖3所示。

圖3 系統設計框架圖
在理論教學模塊中,將課堂教學PPT、課堂現場教學視頻及其他教學資料,嵌入理論教學模塊中,實現課堂教學與虛擬仿真實驗教學的無縫銜接。在仿真分析模塊中,將已設計好的多種凸輪機構應用實例模型嵌入實驗中,實現各類型凸輪機構的動態運動仿真功能[11]:凸輪廓線自動生成、運動曲線生成及自由交互分析等。完成上述模塊任務后,方可進入參數設計,即自主設計模塊。自行設定凸輪參數,自動生成對應凸輪機構,并對凸輪運動進行仿真分析與研究,分析凸輪廓線、凸輪運動參數等設定是否合理,可反復進行參數調整與設計,反復進行仿真分析,最后生成理想的、符合要求的凸輪機構。
設計與制定凸輪動態特性測試系統開發流程,如圖4所示。由圖4可見,該模塊設計開發了各種常用凸輪機構。選擇所要設計的凸輪機構類型,后臺通過交互頁面的選擇判斷所選凸輪機構類型,并顯示對應凸輪機構的設計頁面。輸入從動件行程、基圓半徑、凸輪轉速、運動規律等信息后,系統后臺自動進行信息的讀取與算法處理并同步實現凸輪的自由旋轉及從動件的仿真運動。同時對推程、遠休止、回程、近休止4個階段的位移、速度、加速度、輪廓曲線、壓力角等進行自動計算并存儲在系統后臺數據庫中[12]。通過后臺底層數學模型計算,以數據曲線的方式,進行各參數曲線的實時動態顯示,實現實驗可視化教學功能并提供給學生進行深入分析與探究。

圖4 凸輪機構系統開發流程圖
通過搭建“教學模式+分析模式+設計模式”3種不同階段、不同深度、不同要求的學習層次功能模塊,如圖5所示。

圖5 虛擬實驗內容功能模塊設計
教學模塊與課堂教學完美銜接,教師可將知識能力點以文字、圖片及音頻等方式在模塊中進行師生交互;分析模塊對凸輪機構知識點進行匯總分類,劃塊分區,結合仿真,分別展示各類凸輪機構運動的運動曲線并進行分析;設計模塊是學生以參數設計的方式,自主進行凸輪機構的設計,即可以考查學生對所學知識的掌握程度,又可以發揮學生的想象力,進行設計,實現從理論學習、設計分析到設計的完整教學過程。
根據事先編制好的凸輪機構及其動態性能測試虛擬實驗開發腳本,使用專業Maya建模軟件進行建模與運動設計;利用原型設計工具axure對人機交互、操作邏輯、系統線框圖、流程圖、原型等進行定義與創建;利用C#語言編寫凸輪機構信息、三維運動、虛擬裝配等功能程序;利用底層數學建模工具algdersigner,根據凸輪機構運動原理及計算公式,編寫相應算法模塊[13],實現后臺參數的實時調整、動態計算及運動可視化功能;利用數據庫技術,實現參數調整與三維場景運動曲線的同步顯現。利用可交互的unity3D技術實現虛擬實驗內容的發布與使用。
構建常用凸輪機構運動模型庫并完成各類型凸輪機構運動規律分析。以直動尖底推桿凸輪機構為例,凸輪旋轉一周依次由0°~120°推程段、120°~180°休止段、180°~300°回程段及300°~360°休止段共4階段組成,如圖6所示。

圖6 直動尖底推桿凸輪機構4階段運動過程
通過數學建模將凸輪機構運動特性計算公式轉化為底層運算代碼,為算法提供支撐[14],實現運動特性參數全過程自動化計算功能,其主要代碼編寫與建模過程如下所示。


以擺動平底從動件平面凸輪等加速-等減速規律運動位移、速度、加速度和壓力角計算為例,設置參數行程為20 mm,基圓半徑為100 mm,轉速為60 r/min,偏距為0,推程為120°,遠休止角為60°,回程為120°,近休止角為60°,凸輪寬度為20 mm。分別使用凸輪虛擬實驗平臺進行虛擬仿真實驗,使用Matlab對凸輪運動進行仿真分析,實驗結果分別如圖7、8所示。

圖7 動態特性測試虛擬實驗曲線圖
由此可見使用凸輪虛擬實驗平臺進行虛擬仿真實驗結果與使用Matlab對凸輪運動進行仿真分析的實驗結果高度吻合。利用Matlab可以輸出凸輪理論廓線和廓線的形狀及大小[15],利用虛擬仿真平臺中的設計模式和分析模式可以對凸輪運動模式進行仿真,得出對應變量之間的關系,從虛擬仿真結果中可以較為直觀地感受到基圓半徑的調整對凸輪大致形狀的影響程度。凸輪機構運動虛擬仿真具有設計靈活、適應性強、結構緊湊、運動特性好以及可以實現從動件復雜運動規律要求等諸多優點。

圖8 Matlab仿真曲線圖
凸輪機構與動態特性測試虛擬仿真提供了開放的交互式實驗平臺。從“被動看”向“主動做”進行演變,學生可按照自己設想的運動規律,在凸輪參數列表中對基圓半徑、推程、轉動速度等參數進行相應選擇與設定,以得到不同參數下的凸輪機構,通過對實時顯示的凸輪機構壓力角、速度、加速度、位移曲線變化的分析與研究,進而探究各種不同參數情況下凸輪機構運動的實際意義,為工程設計、應用與開發提供參考依據。