姚文莉,李貞靖,李 凱
(青島理工大學 理學院,山東 青島 266520)
理論力學是學生接觸工程實際問題的第一門力學基礎課,是建筑工程、機械工程、航空航天等專業的力學理論基礎,其重要性不言而喻。理論力學的理論體系嚴謹,邏輯性很強,解決問題的方法靈活多樣,而目前的理論力學課堂教學主要側重于瞬時解而非運動過程的整體解,因此無法對力學模型進行運動學及動力學的多視角的深入分析,從而使得該課程成為尚未建立起工程概念的低年級學生十分頭疼的一門課程[1-3]。筆者引入計算機輔助教學,利用Simulink的功能,使學生通過基本的力學原理和方法,編制簡單的M文件,通過運行程序,看到整個過程而非瞬時的運動規律,可以加深學生對模型的理解,提高學習的積極性,從而更好地掌握理論力學的課程知識,培養力學思維。
Simulink是MATLAB最重要的組件之一,用來提供一個動態系統建模、仿真和綜合分析的工作平臺,能夠描述線性系統、非線性系統,并可以對連續系統、離散系統或者混合系統建模和仿真,仿真的結果以數值和圖像等形象化方式具現出來[4]。MATLAB自身所帶的所有應用工具箱,同樣適用于Simulink。雖然Simulink沒有單獨的語言,但是它提供了S-函數。S-函數可以是一個M文件、C語言或C++語言程序等。S-函數使Simulink更加充實,具有更強大的處理能力[5]。通過M文件可以建立運動學與動力學的MATLAB方程函數,簡化理論力學中的數值計算。隨著研究問題的深入,模型會越來越復雜,傳統的數學求解已經不能滿足工程的需要,掌握Simulink動力學仿真分析軟件對工科學生是十分必要的。理論力學為Simulink的應用提供平臺,同樣Simulink作為工具使理論力學更加生動形象,兩者相輔相成可以共同提高教學質量。下面以曲柄滑塊機構為例進行進一步的說明。
1.問題描述及力學分析。曲柄連桿滑塊機構如圖1所示,曲柄OA以勻角速度ω轉動,要求對該機構進行運動學及動力學的過程分析。對于運動學關系明確的前提下,求系統的受力,包括主動力及約束力的問題屬于已知運動求力的動力學第一類問題,因此可以依據傳動的方向,分別選取各個構件為研究對象,進行受力分析,列出平面運動微分方程。通過數值求解,得到主動力矩及機構間約束力與時間的變化關系。

圖1 曲柄滑塊機構力學模型
2.建立Simulink仿真模型。依據第一類動力學問題的求解思路,編寫根據給定的曲柄OA的初始位置、角速度及機構的幾何參數計算AB桿的角速度、質心加速度、角加速度、滑塊B的速度及加速度的函數文件以及計算主動力矩M1及各個約束力的力函數文件,分別命名為function[x]=jiaosudu(u),function x=jiaojiasudu(u)及function x=force(u)。Simulink仿真模型如圖2所示,把上述編寫的M文件函數分別嵌入對應的MATLAB FCU模塊中,并對輸入對應的初始值,運行仿真模型便可以得到各個運動學及動力學的仿真曲線。圖3中給出了鉸A處的約束力隨時間的變化關系。

圖2 曲柄滑塊機構運動學與動力學Simulink仿真模型

圖3 機構中約束力隨時間的變化
以曲柄滑塊機構的運動學與動力學問題為例,本文通過建立機構的運動學方程、質心加速度方程和剛體的平面運動微分方程,編寫了Simulink所認可的MATLAB函數,建立Simulink對機構的仿真模型,得到仿真結果,展示了將Simulink應用于理論力學教學中的過程。上述過程也可由學生自己來實現,使學生依據基本的力學原理和方法,編制簡單的M文件,通過運行程序,看到整個過程而非瞬時的運動規律,可以加深學生對模型的理解,提高學習的積極性,同時熟悉計算機動力學軟件的編制過程,從而在掌握理論力學課程知識的同時,提高計算機的應用能力。