周少甫
(武漢理工大學(xué),湖北 武漢 430000)
由于凸輪輪廓不是簡(jiǎn)單地由多段圓弧和直線組成,而是一段比較復(fù)雜的曲線方程。工業(yè)上一般用專業(yè)設(shè)備測(cè)量得到離散點(diǎn)數(shù)據(jù),然后再按各種數(shù)控機(jī)床的不同需求(功能指令代碼和程序格式及插補(bǔ)方式等)進(jìn)行后續(xù)處理,編出加工程序。這種方法編程困難,工作量大,精度低,效率低下。
針對(duì)以上問題,筆者用Matlab軟件擬合工具箱中的polyfit函數(shù),可以方便快捷地進(jìn)行凸輪軸升程曲線擬合,并開發(fā)了GUI界面,方便用戶調(diào)用、操作,解決了企業(yè)加工輪廓困難的問題。
凸輪軸升程型線主要是由緩沖段、上升段、下降段等組成。下面介紹具體的設(shè)計(jì)方法。
(1)緩沖段參數(shù)。緩沖段參數(shù)主要有緩沖段高度、緩沖段速度、緩沖段包角等,具體參考值如表1所示。
表1 凸輪升程緩沖段主要參數(shù)
式中:φC為緩沖段任意時(shí)刻的包角,0≤φC≤φ0;h0為緩沖段任用時(shí)刻的高度[1]。
高次方多項(xiàng)式凸輪軸型線。一般凸輪型線的設(shè)計(jì)都是先設(shè)計(jì)上升段,然后再通過對(duì)稱得到下降段。筆者采用六項(xiàng)式型線方程來擬合上升段:
式中:x為凸輪軸轉(zhuǎn)角,0≤x≤θ;y為對(duì)應(yīng)凸輪轉(zhuǎn)角x的平 底挺 柱升程;C0、C2、Cp、Cq、Cr、Cs為方程各項(xiàng)的系數(shù);θ為凸輪的工作段半包角;p、q、r、s是冪指數(shù),按升冪排列,可以是任意實(shí)數(shù),是設(shè)計(jì)變量,由設(shè)計(jì)者在設(shè)計(jì)時(shí)調(diào)節(jié)以得到理想的設(shè)計(jì)結(jié)果[2]。
文章通過Matlab的GUIDE用戶開發(fā)界面編寫子程序M文件來定義約束函數(shù),并以回調(diào)函數(shù)方式進(jìn)行調(diào)用[3]。GUI初始界面如圖1所示。此界面支持兩種邊界條件的擬合,一是“默認(rèn)參數(shù)”選項(xiàng),選擇此按鈕后,Matlab會(huì)從后臺(tái)直接調(diào)取系統(tǒng)默認(rèn)的參數(shù)進(jìn)行擬合,得到默認(rèn)的凸輪軸升程曲線。二是用戶根據(jù)實(shí)驗(yàn)或計(jì)算得到的數(shù)據(jù),點(diǎn)擊“打開文件夾”按鈕,使數(shù)據(jù)加載到GUI界面,點(diǎn)擊“預(yù)處理”按鈕,得到速度與加速度曲線圖,判定起始、末尾分段點(diǎn)及包角大小,將數(shù)值分別輸入到“半包角”“升程”“起始分段點(diǎn)角度”“末尾分段點(diǎn)角度”按鈕框中,然后點(diǎn)擊“曲線擬合”按鈕即可獲得最終結(jié)果。完成擬合后,點(diǎn)擊“另存為”按鈕,程序開始以EXCEL的格式保存擬合后的數(shù)據(jù)。通過“退出”按鈕即可恢復(fù)原始界面狀態(tài)。
圖1 凸輪升程型線擬合的GUI界面
根據(jù)前文論述,在AVL的TD(Time Driving)模塊中,找到多項(xiàng)動(dòng)力擬合凸輪型線的例子,再次用其邊界條件。已知p=26q=34r=56s=60(p,q,r,s均為多項(xiàng)動(dòng)力的冪指數(shù)),thita(半包角)=65°,v0(緩沖段末點(diǎn)速度)=0.016667mm/(°),Hmax(凸輪最大升程)=9.5mm,H0(緩沖段高度)=0.35mm。fay1(凸輪工作段的角度)=33°。編程運(yùn)行后得到的圖像就是GUI界面中“默認(rèn)參數(shù)”所編寫程序得到的圖像,如圖2所示。
圖2 由邊界條件得到的凸輪升程
工業(yè)上用專業(yè)設(shè)備測(cè)得的離散點(diǎn)數(shù)據(jù),保存成數(shù)據(jù)表。先點(diǎn)擊“打開文件夾”按鈕,導(dǎo)入要擬合的數(shù)據(jù)表,然后點(diǎn)擊“預(yù)處理”按鈕,得到它們的速度和加速度曲線圖,如圖3所示(圖中曲線變化幅度大的為速度曲線,另一個(gè)為加速度曲線)。
由速度和加速度找到分段點(diǎn),圖形發(fā)生突變的點(diǎn)即為分段點(diǎn)。由圖3可知分段點(diǎn)為115°和245°。這樣就知道了緩沖段和工作段的包角。
圖3 數(shù)據(jù)的速度和加速度
由最小二乘法[4-6]的指導(dǎo)原則:
即在數(shù)據(jù)點(diǎn)上的擬合值與數(shù)據(jù)值之差的平方和最小。工作段用polyfit(x,y,n)擬合,編程計(jì)算得到n=24時(shí),s最小。緩沖段用余弦型函數(shù)擬合,得到擬合后的圖像如圖4所示。
圖4 擬合得到的凸輪升程型線
通過GUI界面調(diào)用程序擬合后,得到的擬合曲線基本與理論曲線重合,說明程序運(yùn)行沒有問題。另外還開發(fā)了GUI進(jìn)度條,使得用戶隨時(shí)把握程序運(yùn)算的進(jìn)度。GUI控件的應(yīng)用,使得編寫Callback(回調(diào)函數(shù))的程序可以隱藏,使得界面更加人性化和友好。由于編程語言簡(jiǎn)單,從而可以快速方便地進(jìn)行繪圖和計(jì)算,特別是矩陣的計(jì)算,相比手工插值擬合,大大提高了準(zhǔn)確率并減少了工作量,這對(duì)于產(chǎn)品精準(zhǔn)加工具有重要的意義。