運動學方程和動力學模型運動學方程是建立動力學模型的基礎。對并聯機床的定、動平臺形狀假定如所示,在上、下平臺上分別建立坐標系o′x′y′z′和oxyz,其中o′和o點分別為2個六邊形的質心,ox和o′x′軸取2個短邊A1A6和B1B6的垂線,oz和o′z′分別垂直于2個平臺,oy和o′y′的方向根據右手法則而定。
1并聯機床結構示意2上、下平臺的坐標系統設r1和r2分別為上、下平臺所對應的外接圓半徑,Α1和Α2分別為2個六邊形短邊所對應的中心角,{xoi′yoi′zoi′}為上平臺的第i個鉸點。在o′x′y′z′坐標中,由于o′點是活動的,故為相對坐標,{xi′yi′zi′}為上平臺的第i個鉸點在oxyz中的坐標,即絕對坐標,{xoi
yoi
zoi}為下平臺的第i個鉸點在oxyz中的坐標。則由坐標系o′x′y′z′到oxyz坐標系的方向余弦矩陣為=cosΑcosΒ-sinΑcosΒsinΒxPsinΑcosΧ+cosΑsinΒsinΧcosΑcosΧ-sinΑsinΒsinΧ-cosΒsinΧyPsinΑsinΧ-cosΑsinΒcosΧcosΑsinΧ+sinΑsinΒcosΧcosΒcosΧzP01{Vi}={Ui}(1)其中,{Vi}={xi′yi′zi′1},{Ui}={xoi′yoi′zoi′1}.
Α、Β、Χ為上平臺繞z、y、x軸旋轉的角度,xP、yP、zP為上平臺幾何中心點的絕對坐標,{Vi}、{Ui}可以由機床的幾何參數算出。當給定活動平臺的位置{xP
yPzPΑΒΧ}時,其平臺機構的位置反解方程為si=ViDi(2)其中,{Di}={xoiyoizoi1},由此可求得各分支的長度。因為si=f(xPyPzPΑΒΧ),對si求一次導數得到并聯機床的速度反解關系式。Matlab在動力學模型計算中的應用Matlab提供了一個人機交互的數學系統環境,并以矩陣作為基本數據結構。在VC平臺上實現符號運算并非容易,但Matlab提供了基本符號運算和擴展符號運算2個子工具箱。在這2個子工具箱的輔助下,可以編寫自己的M文件和M函數,且很方便地建立起動力學模型中的各個符號變量及其相互關系,程序一目了然,便于修改。Matlab不但提供用于創建符號方程的命令,且還提供用于求解線性和非線性方程組的命令,節省了純VC編程的時間。
?。?)參數輸入模塊負責接受機構的結構參數、初始條件等必要參數,然后打開Matlab引擎,將參數傳遞給Matlab.
?。?)調用模型運算模塊進行運動學和動力學模型的符號推導、數值計算和繪。這一模塊以帶參數的M函數表示,它是整個編程的核心部分,從M函數可輸出符號表達的轉換矩陣、影響系統矩陣、動力學正問題和動力學逆問題。
?。?)運行信息顯示模塊顯示模型計算的文結果、提示錯誤和警告信息等。由Matlab引擎返回到應用程序的可視化仿真結果,便于與實測結果進行對照分析,找出影響并聯機床系統動態特性因素。
?。?)軌跡規劃模塊對設計的運動軌跡進行優化處理,使其在工作空間內不出現奇異位置,然后與轉換矩陣及影響系數矩陣聯立求解運動學問題,運動學方程和動力學正問題可以用來進行動力學控制。這些模塊中涉及的矩陣運算、符號推導、解線性或非線性微分方程組等復雜運算均可在Matlab中實現,而界面、參數輸入和運算信息顯示可在VC平臺上完成。
結束語(1)通過VC和Matlab接口的引擎方法在VC應用程序中調用Matlab的函數或命令,可充分利用Matlab強大的矩陣計算、符號推導和方便的繪功能,完成并聯機床動力學模型的運算和仿真,減輕純VC編程的工作量和調試困難,保證計算的可靠性和準確性。
(2)VC和Matlab的接口技術使程序繼承了良好的用戶界面,可直接輸入參數,得到所需要的文結果,便于與儀器測量結果比較分析。
?。?)引入影響系數法給編程帶來方便,上述框中的各個模塊可以獨立編程,在各個模塊之間建立相應的數據接口,這些接口可以通過界面交互式進行,由此體現了C語言的面向對象編程特點和模塊化設計的好處。