盤形凸輪廓形曲線計算機輔助設計
盤形凸輪廓形曲線計算機輔助設計,凸輪,曲線,計算機輔助設計
摘 要
凸輪機構通常是由凸輪、從動件和機架三個構件所組成的,由于凸輪機構結構簡單并且能夠實現(xiàn)較為復雜的運動要求,因此凸輪被廣泛的應用于各類機械裝置中。一般,凸輪按外形可分為三類,即盤形凸輪,移動凸輪和圓柱凸輪。其中盤形凸輪應用最為廣泛,因此研究盤形凸輪具有一定的應用價值和實用價值。
本文對盤形凸輪的推桿運動形式、凸輪輪廓曲線進行了分析和設計,并且通過Visual Basic語言對其進行參數(shù)化設計。本次設計的軟件提供了3種從動件形狀、2種推桿類型以及推程和回程各5種推桿運動形式供用戶對150種組合進行選擇。該軟件對用戶輸入的數(shù)據(jù)進行接收,以所接收的數(shù)據(jù)作為基礎,對凸輪的廓形曲線、推桿的位移曲線、推桿的速度曲線以及推桿的加速度曲線進行設計,并繪制出四種曲線,得出盤形凸輪廓形曲線各點的坐標值數(shù)據(jù)表。本次設計主要運用了參數(shù)化設計、功能模塊化設計、數(shù)據(jù)的輸出與傳遞、圖形處理、數(shù)據(jù)庫的傳遞與存儲等方法來對盤形凸輪廓形曲線進行設計。
該軟件具有良好的人機交互界面,運行可靠,設計合理,操作簡單,極大的減少了設計人員的計算量。
關鍵詞:盤形凸輪;輪廓曲線;計算機輔助設計
I
ABSTRACT
The cam mechanism is usually composed of cam, follower and frame three components, because the cam mechanism is simple and can achieve more complex movement requirements, so the cam is widely used in various types of mechanical devices. In general, the cam can be divided into three types according to the shape, namely disc cam, moving cam and cylindrical cam. Which is the most widely used disc cam, so the study of disc cam has a certain value and practical value.
In this paper, the pendulum motion pattern and the cam profile curve of the disc cam are analyzed and designed, and the parametric design is carried out by Visual Basic language. The design of the software provides three kinds of follower shape, two kinds of push rod type and the deduction and return of the five kinds of putter movement for the choice of 150 kinds of combinations of users. The software is used to receive the data input by the user. Based on the received data, the profile curve of the cam, the displacement curve of the putter, the velocity curve of the putter and the acceleration curve of the putter are designed and the four Curve, the disk shape of the cam profile curve points of the coordinates of the data table. The design of the design of the main use of the parametric design, functional modular design, data output and delivery, graphics processing, database transfer and storage methods to discoid cam profile curve design.
The software has a good human-computer interaction interface, reliable operation, reasonable design, simple operation, greatly reducing the calculation of the design staff.
Key Words:disc cam; contour curve; computer aided design
I
目 錄
摘 要 I
1 緒論 1
1.1 凸輪廓形曲線概述 1
1.2 研究凸輪機構的意義和應用價值 2
1.3 凸輪機構目前研究的概況和發(fā)展趨勢 4
2 凸輪從動件運動規(guī)律 5
2.1 等速運動規(guī)律 5
2.2 等加(減)速運動規(guī)律 5
2.3 五次多項式運動規(guī)律 7
2.4 正弦加速度運動規(guī)律 7
2.5 余弦加速度運動規(guī)律 8
3 盤形凸輪輪廓曲線的設計 9
3.1 反轉法原理 9
3.2 尖頂直動推桿盤形凸輪廓形曲線設計 9
3.3 滾子直動推桿盤形凸輪廓形曲線設計 10
3.4 平底直動推桿盤形凸輪廓形曲線設計 11
3.5 尖頂擺動推桿盤形凸輪廓形曲線設計 11
3.6 滾子擺動推桿盤形凸輪廓形曲線設計 12
3.7 平底擺動推桿盤形凸輪廓形曲線設計 13
4 盤形凸輪廓形曲線參數(shù)化設計及系統(tǒng)開發(fā) 14
4.1功能框圖: 14
4.2算法框圖: 15
4.3窗體設計: 16
5 軟件設計及操作說明 19
5.1 盤形凸輪直動從動件凸輪廓形曲線軟件設計 19
5.2 盤形凸輪擺動從動件凸輪廓形曲線軟件設計 29
6 結 論 35
參 考 文 獻 36
附錄1:外文翻譯 37
附錄2:外文原文 50
致 謝 57
盤形凸輪廓形曲線計算機輔助設計
1 緒論
1.1 凸輪廓形曲線概述
1.1.1 凸輪機構概述
凸輪機構通常是由凸輪、從動件和機架三個構件所組成的,由于凸輪機構結構簡單且能夠實現(xiàn)比較復雜的運動要求,因此凸輪廣泛的存在于各類機械裝置中。
凸輪是一個具有曲面或曲槽的機件。凸輪在推程時期是利用自身的回轉運動來帶動從動件執(zhí)行預先設定的運動的,而在回程中時期,有的時候依靠的是從動件本身的重量,但有些機構為獲得更準確的運動,通常依靠彈簧回彈的力量,還有些機構利用導槽,從而使從動件在特定的路徑上運動。
凸輪機構的主要作用是使從動件完成各種工作所需的復雜運動,包括直線運動、擺線運動、余弦加速度運動、五次多項式運動、等加(減)速運動、正弦加速度運動、等速運動等。
1.1.2 凸輪的分類
(1) 按凸輪外形分類:
按凸輪的外形可分為3類,包括盤形凸輪、移動凸輪、圓柱凸輪。盤形凸輪相對于其他兩種凸輪來說應用更為廣泛。盤形凸輪的從動件在垂直于凸輪軸線的平面內運動,推桿行程不宜過大,過大則會導致凸輪的徑向尺寸太大,從而使凸輪機構的力學性能變差。
圖1.1盤形凸輪示意圖
(2) 按從動件的運動形式分類:
圖1.2直動從動件示意圖 圖1.3擺動從動件示意圖
按從動件運動形式凸輪可分為直動從動(做直線往復運動)件和擺動從動件(做擺動運動)
(3) 按從動件的形狀分類:
① 頂尖式從動件:頂尖式推桿與其它兩種從動件相比較為簡單,但容易磨損,因此通常被用于作用力較小或者速度較低的場合(如儀表等機構)。
② 滾子式從動件:由于滾子與凸輪之間的摩擦方式是磨損較小的滾動摩擦,所以可用來傳遞較大的力,應用廣泛。
③ 平底式從動件:凸輪與平底相接觸接的平面之間容易形成可以潤滑的油膜,所以在高速傳動之中被廣泛的應用。
圖1.4頂尖式從動件示意圖 圖1.5滾子式從動件示意圖 圖1.6平底式從動件示意圖
1.1.3 凸輪的優(yōu)缺點
(1) 凸輪機構的優(yōu)點:
凸輪機構只要能夠設計出正確的輪廓曲線,從動件就可以根據(jù)凸輪的形狀達到預期的運動效果。由于凸輪的設計相對于達到同等效果的其他機構較為簡單的特性,凸輪結構被廣泛的應用在各類產品中。
(2) 凸輪機構的缺點:
由于凸輪與從動件之間的接觸處方式是點(線)接觸,容易受到磨損,因此通常用于傳動力不大的場合。從動件是通過凸輪的廓形曲線來達到預期運動的,因此需要使用數(shù)控機床加工凸輪來達到需求的凸輪輪廓的精度。從動件的行程不能過大,否則會使凸輪的性能變差。
1.2 研究凸輪機構的意義和應用價值
凸輪在結構上具有簡單、緊湊、工作可靠等特點,在功能上具有控制、導向、傳動等作用。凸輪在很多高效、精密、價廉的機械中具有無可替代的作用。
中盤形凸輪結構雖然應用廣泛。但是實際上設計過程還是比較復雜的,對設計人員也有較高的要求,其主要原因在于從動件是通過凸輪廓形曲線來進行運動的,因此為了達到預期的運動效果,需要嚴格的控制凸輪輪廓的精度。
目前凸輪的廓形曲線最常用的兩種設計方法分別是作圖法和解析法,這兩種方法使用的基本理念都是反轉法,但是各有各的特點。用幾何法來設計,設計起來較為簡便,得到的圖形更為直觀,但這種設計效率極低,設計誤差也比較大,很難得到凸輪所需要曲線上各點的精確坐標。因此用幾何法設計得到的數(shù)據(jù),只能用來加工精度要求不高的凸輪(即用于低速或不重要的場合的凸輪)。要想得到精度要求較高的凸輪,就必須用解析法進行設計。所謂解析法,就是通過分析從動件的運動規(guī)律和凸輪已知的基本參數(shù),建立凸輪的理論廓線、實際廓線以及加工時刀具中心軌跡的數(shù)學模型,然后再經過計算獲得凸輪廓形曲線、刀具運動軌跡等曲線的各點坐標,進而繪制出所要計算的各種曲線,以供在數(shù)控機床上使用。在計算凸輪廓形曲線時,采用解析法會使結果有相對較小的誤差,但同時會導致計算量過大。目前,用解析法設計輪廓曲線時可采用包絡法、速度瞬心法、共扼曲面法、相對速度法和等距曲面法等方法。
在初期技術人員經常使用作圖法來設計凸輪廓形曲線,但應用此種方法設計不僅計算的效率較低而且很難計算出精確的輪廓曲線、壓力角、曲率半徑等設計參數(shù)。
雖然設計人員開發(fā)出了CAD,但使用CAD進行設計時,也僅僅是使工程人員擺脫了手工繪圖而已,但是凸輪中一旦有某一個基礎參數(shù)改變了,便會導致凸輪的整體廓形曲線的變化,這時技術人員就需要重新對廓形曲線進行設計。因此,用CAD來設計凸輪廓形曲線的工作量并沒有得到明顯的減少。
在當代科技發(fā)展迅猛之際,有更多的專業(yè)設計人員接觸到計算機。其中,計算機在數(shù)值計算、邏輯判斷和圖形繪制等計算中的作用非常顯著。在其他相關軟件的輔助下,要想設計出凸輪機構的各個部分并不難。用計算機設計凸輪機構,不僅在設計精度、設計速度和設計自動化程度上有顯著提高,而且可以采用動態(tài)仿真和三維造型等一系列先進技術對凸輪機構的工作情況進行模擬,不僅如此,還可以利用計算出的數(shù)據(jù)生成數(shù)控加工程序,進而直接傳輸給數(shù)控制造系統(tǒng),從而實現(xiàn)計算機輔助設計(CAD)和計算機輔助制造(CAM)一體化,不僅提高了產品的生產質量,而且縮短了更新周期。
用計算機針對凸輪廓形曲線進行參數(shù)化設計,不僅能夠快速、準確的獲得各種目標數(shù)據(jù),而且設計者通過輸入相關的參數(shù),就可以使計算機自動輸出有關的數(shù)據(jù)。雖然目前有許多關于凸輪計算機輔助設計的論文,但文中對于精度和實用性等方面還是略有不足。
1.3 凸輪機構目前研究的概況和發(fā)展趨勢
我國很早之前就已經開始對凸輪機構進行研究了,有關凸輪機構各個方面的論文也有很多。但是與一些發(fā)達國家相比,我國在對凸輪機構的設計和制造等方面技術還不是很成熟,尤其是在制造方面,由于國外凸輪研究的特別好的公司也不是特別多,而且技術還對外保密,因此比較成熟的技術文件很難找到,這樣就很大程度上限制了我國在凸輪設計方面的發(fā)展,只能靠自己來慢慢探索,某些產品需要的凸輪對于精度和速度要求較高,但由于我們技術不到位生產不出來,所以只能依賴于進口。
我國現(xiàn)階段仍然在對與凸輪機構有關的各個項目進行更深入的研究與開發(fā),1983年統(tǒng)計時我國只有8篇有關于凸輪機構的論文;到了1988年增加到了20篇;到了1990年增加了CAD/CAM;近幾年,對凸輪機構的研究越來越深入,方向也越來越廣,現(xiàn)在我國生產的凸輪機構已經在很多領域都得到了廣泛的應用。但是與發(fā)達國家相比,我國在凸輪領域的研究還有很長一段路要走。
從動件的運動規(guī)律取決于凸輪廓形曲線的形狀,因此凸輪廓形曲線的設計是凸輪機構設計中至關重要的一環(huán)。凸輪機構設計中最主要的任務就是對凸輪廓形曲線的設計。
凸輪的廓形曲線可以用作圖法和解析法兩種設計方法來設計,兩者的設計理念基本相同。幾何法較為簡便、直觀,但設計效率低,繪出的凸輪輪廓誤差較大,很難得到凸輪廓形曲線上各點的精確坐標。因此用通過幾何法設計得到的輪廓的數(shù)據(jù)加工出來的凸輪只能用于低速或不重要的場合。要想得到高速凸輪或精確度要求較高的凸輪,就必須用解析法進行設計。所謂用解析法設計凸輪廓形曲線,實際上就是根據(jù)工作上需要的從動件的運動規(guī)律和已知的基本參數(shù),建立凸輪理論廓線、實際廓線以及加工刀具中心軌跡的數(shù)學模型,并精確的計算出凸輪廓形或刀具運動軌跡等曲線上各點的坐標,從而擬合成所需要的各種曲線,以供在數(shù)控機床上加工使用。用解析法得到的凸輪廓形曲線誤差相對較小,但計算量很大。目前能精確設計輪廓的方法有包絡法、等距曲面法、共扼曲面法、速度瞬心法和相對速度法等。
隨著CAD/CAM技術的發(fā)展,在機械領域對于CAD/CAM技術的使用也日趨成熟,有越來越多關于CAD/CAM技術與凸輪機構相結合的論文被發(fā)表,CAD/CAM技術在實際中也越來越多的被應用,實現(xiàn)了計算機設計與加工的一體化,極大的提高了CAD/CAM技術在凸輪領域的可用性。但是凸輪和CAD/CAM系統(tǒng)相結合的核心技術并沒有以商品軟件的形式出現(xiàn)在市場上,這些技術僅被某些企業(yè)所擁有,并沒有被普及。
CAD技術在先進制造技術中占有重要的地位,CAD技術具有優(yōu)化設計方案、提高設計效率、縮短設計周期、減少設計勞動量、使設計標準化等作用。本課題在CAD理論研究的基礎上,開發(fā)出了一個具有反復利用性、可開發(fā)性和可維護性的良好系統(tǒng)。并在CAD技術理論及其軟件的基礎上,完成具有實際價值的工作。
2 凸輪從動件運動規(guī)律
2.1 等速運動規(guī)律
如圖2.1、2.2所示,推桿做等速運動(一次多項式運動)時其加速度曲線趨于無窮大,因此會產生一種被稱為剛性沖擊的沖擊力。這種規(guī)律通常被用于低速輕載的狀況。表達式為
推程階段方程 : (2.1) 回程階段方程: (2.2)
其中s-位移,v-速度,a-加速度,h-升程,w-角速度,-反轉角,-推程角
圖2.1等速運動推程位移、速度、加速度曲線 圖2.2等速運動回程位移、速度、加速度曲線
2.2 等加(減)速運動規(guī)律
等加(減)速運動規(guī)律(二次多項式運動規(guī)律)是由兩段運動組成的,在一個運動行程中,從動件的前半段、后半段運動分別采用等加速、等減速運動規(guī)律。如圖2.3到圖2.6所示,其位移曲線都是由兩段反向的拋物線光滑連接的,但其加速度曲線是由兩段突變值為有限值的不連續(xù)直線構成的,因此產生被稱為柔性沖擊的沖擊力。這種運動規(guī)律通常在高速中載的情況下使用
前半段:推程階段方程 : (2.3)
回程階段方程: (2.4)
圖2.3等加(減)速運動前半段推程曲線 圖2.4等加(減)速運動前半段回程曲線
后半段:推程階段方程 : (2.5)
回程階段方程: (2.6)
圖2.5等加(減)速運動后半段推程曲線 圖2.6等加(減)速運動后半段回程曲線
2.3 五次多項式運動規(guī)律
如圖2.7、2.8所示,五次多項式運動規(guī)律的速度、加速度曲線均為光滑的連續(xù)曲線,推桿在使用這種運動規(guī)律時,不會產生任何沖擊,因此這種規(guī)律通常在高速中載的情況下使用。
推程階段方程: (2.7)
回程階段方程: (2.8)
圖2.7五次多項式運動曲線 圖2.8五次多項式運動曲線
2.4 正弦加速度運動規(guī)律
如圖2.9、2.10所示,正弦加速度運動(擺線運動)規(guī)律的速度曲線、加速度曲線均為光滑連續(xù)曲線,不會產生任何沖擊,因此這種規(guī)律通常在高速輕載的情況下使用。
推程階段方程: (2.9)
回程階段方程: (2.10)
圖2.9正弦加速度運動曲線 圖2.10正弦加速度運動曲線
2.5 余弦加速度運動規(guī)律
余弦加速度運動(簡諧運動)規(guī)律運動曲線如圖2.11、2.12所示,其加速度曲線的首尾兩點會產生突變值,因此這種運動規(guī)律只產生柔性沖擊。這種規(guī)律通常在中速中載的情況下使用。
推程階段方程: (2.11)
回程階段方程: (2.12)
圖2.11余弦加速度運動曲線 圖2.12余弦加速度運動曲線
3 盤形凸輪輪廓曲線的設計
3.1 反轉法原理
在設計凸輪廓形曲線時,解析法和作圖法都需要用反轉法來作為其設計的理論基礎,所謂反轉法就是先假設凸輪是靜止的,然后讓推桿做預期運動的反向運動,這時推桿的運動軌跡即為凸輪的廓形曲線。
3.2 尖頂直動推桿盤形凸輪廓形曲線設計
尖頂直動推桿盤形凸輪廓形曲線的設計方法如下:
① 選擇適當?shù)谋壤?,以為半徑畫出凸輪的基圓,并做出位移曲線圖。
② 等分位移曲線圖。
③ 反向等分凸輪的每段運動角。
④ 根據(jù)所畫出的各個等分點來確定反轉后從動件相應的位置。
⑤ 確定反轉后尖頂從動件的尖端運動到每個等分點時的位置。
⑥ 將所確定的尖端位置的坐標點相連形成的光滑曲線就是所求凸輪的廓形曲線。
圖3.1尖頂直動推桿盤形凸輪廓形曲線
其表達式為: (3.1)
其中x,y-尖頂直動推桿盤形凸輪廓形曲線上點的坐標值,s-推桿的位移,-凸輪轉角(反轉角),e-偏心距,-基圓半徑。
3.3 滾子直動推桿盤形凸輪廓形曲線設計
滾子直動推桿凸輪廓形曲線的設計方法與尖頂直動推桿凸輪廓形曲線的設計方法基本相同,不同點在于滾子直動推桿盤形凸輪廓形曲線的設計是以滾子中心為參考點進行設計的,并且需要畫出滾子及其包絡線,而尖頂直動推桿盤形凸輪廓形曲線的設計是以尖頂推桿的頂尖作為參考點進行設計的,沒有包絡線。
圖3.2滾子直動推桿盤形凸輪廓形曲線
其理論輪廓曲線的表達式為: (3.2)
其實際輪廓曲線的表達式為: (3.3)
其中-滾子半徑,-滾子中心所在法線與x軸夾角,x,y-滾子直動推桿盤形凸輪理論廓形曲線上點的坐標值,,-滾子直動推桿盤形凸輪實際廓形曲線上點的坐標值。
3.4 平底直動推桿盤形凸輪廓形曲線設計
平底直動推桿凸輪廓形曲線的設計方法也與尖頂直動推桿凸輪廓形曲線的設計方法基本相同,只是參考點不同,平底直動推桿盤形凸輪廓形曲線設計時選擇平底推桿的底面與凸輪相切的點作為參考點。
圖3.3平底直動推桿盤形凸輪廓形曲線
其表達式為: (3.4)
其中x,y-平底直動推桿盤形凸輪廓形曲線上點的坐標值,-推桿的位移公式對反轉角求導。
3.5 尖頂擺動推桿盤形凸輪廓形曲線設計
尖頂直動推桿盤形凸輪廓形曲線的設計方法如下:
① 選擇適當?shù)谋壤?,以為半徑畫出凸輪的基圓,并做出位移曲線圖。
② 將位移曲線圖的x軸等分為若干份,與尖頂直動推桿盤形凸輪設計從不同的是這里的縱坐標用擺角來表示。
③ 反向等分凸輪的每段運動角。
④ 根據(jù)所畫出的各個等分點來確定反轉后從動件相應的位置。
⑤ 確定反轉后尖頂從動件的尖端運動到每個等分點時的位置。
圖3.4尖頂擺動推桿盤形凸輪廓形曲線
⑥ 將所確定的尖端位置的坐標點相連形成的光滑曲線就是所求凸輪的廓形曲線。
其公式為: (3.5)
其中x,y-尖頂擺動推桿盤形凸輪廓形曲線上點的坐標值,-從動件擺角,-從動件起始擺角。
3.6 滾子擺動推桿盤形凸輪廓形曲線設計
滾子擺動推桿盤形凸輪廓形曲線的設計方法也是基于反轉法,凸輪的轉角(反轉角)轉過時,其從動件的擺角擺過。根據(jù)反轉法原理將凸輪反轉即可得到凸輪廓形曲線。滾子擺動推桿凸輪廓形曲線的設計方法與尖頂擺動推桿凸輪廓形曲線的設計方法基本相同,不同點在于滾子擺動推桿盤形凸輪廓形曲線的設計是以滾子中心為參考點進行設計的,并且需要畫出滾子及其包絡線,而尖頂擺動推桿盤形凸輪廓形曲線的設計是以尖頂推桿的頂尖作為參考點進行設計的,沒有包絡線。
其理論輪廓線公式為: (3.6)
其實際輪廓線公式為: (3.7)
圖3.5滾子擺動推桿盤形凸輪廓形曲線
其中x,y-滾子擺動推桿盤形凸輪理論廓形曲線上點的坐標值,,-滾子擺動推桿盤形凸輪實際廓形曲線上點的坐標值。
3.7 平底擺動推桿盤形凸輪廓形曲線設計
平底擺動推桿凸輪廓形曲線的設計方法也與尖頂擺動推桿凸輪廓形曲線的設計方法基本相同,只是參考點不同,平底擺動推桿盤形凸輪廓形曲線設計時選擇平底推桿的底面與凸輪相切的點作為參考點。
其輪廓曲線公式為: (3.8)
其中x,y-平底擺動推桿盤形凸輪廓形曲線上點的坐標值。
圖3.6平底擺動推桿盤形凸輪廓形曲線
4 盤形凸輪廓形曲線參數(shù)化設計及系統(tǒng)開發(fā)
4.1功能框圖:
圖4.1功能框圖
如圖5.1所示,本次設計的軟件提供了2種從動件、3種推桿、2段運動、5種推桿運動方式可供用戶選擇,并輸出四種曲線,即可選擇60種運動方式,可輸出240種曲線。
4.2算法框圖:
圖4.2總體算法框圖
后面程序參數(shù)都是以漢語拼音形式定義的。
如圖5.2所示:首先需要對用戶輸入的數(shù)據(jù)進行讀取:
如jiyuanbanjing = Val(Text1.Text)-讀取數(shù)據(jù)
If Option1 = True Then
jiaosudu = Val(Text4.Text)
Else
jiaosudu = -Val(Text4.Text)
End If-選擇需要讀取的數(shù)據(jù)
然后需要對輸入數(shù)據(jù)的正確性進行判斷:
如baijiao = Val(Text10.Text)
If tuichengduan + jinxiuzhijiao + huichengduan + yuanxiuzhijiao <> 360 Then
result = MsgBox("角度之和不等于360請重新輸入", 0 + 48, "警告")
Exit Sub
四種曲線設計參見第5章
4.3窗體設計:
(1) 方案一:
如圖5.3所示,方案一所有需要選擇填入的基本信息都在一個界面內,上面一排:第一個框是從動件兩種運動形式的復選框,第二個框是從動件3種形狀的復選框,第三個框是2種凸輪轉向的復選框;下面一排:第一個框為推程和回程的5種推桿運動規(guī)律的復選框,第二個是凸輪基本尺寸的輸入框,包括基圓半徑,升程,偏心距等參數(shù);界面的右板面是四種曲線的輸出界面,點擊圖片框上面的輸出按鈕即可出現(xiàn)所求曲線。
按方案一設計的優(yōu)點是:界面簡單明了,沒有其他的按鈕,用戶輸入數(shù)據(jù)后只需點擊輸出按鈕,操作簡單。缺點是:可實現(xiàn)的功能少,界面較亂,選項較多。
圖4.3方案一軟件界面
(2) 方案二:
軟件運行起始界面如圖5.4所示,菜單欄里包括文件、查看、三種從動件形狀以及幫助,每個主菜單都有子菜單,如圖中選擇的為滾子從動件,點開后就能看到2種從動件運動形式的下拉列表,選擇直動或者擺動從動件后,就能看到5種從動件運動規(guī)律的下拉列表,如若選擇的為滾子直動等速運動則出現(xiàn)圖5.5,也可直接使用快捷鍵,使用鍵盤ctrl+u可出現(xiàn)盤形滾子擺動等速運動凸輪廓形曲線的設計窗體,圖5.5的窗體左半面為用戶需要輸入的基本參數(shù),右半面為四種輸出的曲線。
按方案二設計的優(yōu)點為:分類更加明了,界面更加簡潔,實現(xiàn)的功能更多。其缺點為:在推程和回程運動中只能選擇同一種運動形式。
圖4.4方案二軟件主界面
圖4.5方案二盤形滾子直動等速運動凸輪廓形曲線設計窗體
(3) 方案三:
方案三的主界面如圖5.6所示,與方案二的主界面類似,但是在主界面中只能選擇從動件形狀及運動形式不能選擇從動件的運動規(guī)律,同樣可以用快捷鍵來選擇,如圖所示選擇滾子直動從動件即可出現(xiàn)圖5.7的設計窗體左半面為參數(shù)的輸入界面,與方案二不同的是在方案三中凸輪的推程和回程可以選擇不同的運動如圖5.8,右半面同樣是四種曲線輸出框及命令按鈕,但比方案二多了一個凸輪轉向的復選框及輸出數(shù)據(jù)按鈕(輸出廓形曲線各點的坐標值)。
圖4.6方案三軟件主界面
圖4.7第三次軟件設計
圖4.8運動方式的選擇
綜上所述,本次設計選擇方案三作為本次設計最終的軟件。
5 軟件設計及操作說明
5.1 盤形凸輪直動從動件凸輪廓形曲線軟件設計
開始運行軟件,主界面如圖5.1所示,菜單欄一共有6項內容,如點擊平底從動件就會出現(xiàn)從動件2種運動形式的下拉菜單,點擊直動從動件(或者在主界面時直接用快捷鍵ctrl+j),就會出現(xiàn)如圖5.2的設計界面,在此界面內需要用戶輸入升程,角速度,基圓半徑等基本參數(shù),且需要選擇推程段及回升段的運動規(guī)律(如等速運動,正弦加速度,等加減速運動等),選擇凸輪的旋轉方向。里面有默認數(shù)據(jù),只需按照需要修改即可。(注:程序中x-凸輪廓線x軸坐標,y-凸輪廓線y軸坐標,fai-反轉角,r0-基圓半徑,rr滾子半徑,s-位移,v-速度,a-加速度,aa-中心距,dsbidfai-位移對轉角求導,l-擺桿長,fai0-推程角,fai0a-回程角,fai01-遠休止角,fai02-近休止角,w-角速度,k-自定義的一個函數(shù),bigfai-起始角,baijiao-擺角,后面打開另存為文件時參數(shù)都是用漢語拼音定義的)。
圖5.1盤形凸輪廓形曲線設計軟件主界
圖5.2盤形平底直動凸輪廓形曲線設計界面
(1) 點擊平底直動從動件(或快捷鍵ctrl+j)出現(xiàn)相對應的設計窗體,程序如下:
Private Sub 直動從動件2_Click(Index As Integer)
Form6.Show
Unload Form1
End Sub
圖5.2界面的右半面為輸出界面:
(2) 點擊返回主界面即可返回圖5.1的界面,程序如下:
Private Sub Command1_Click()
Form1.Show
Unload Form6
End Sub
(3) 點擊輸出即可輸出4種曲線,如圖5.3所示,其中藍色段為推程運動段,紅色段為遠休止段,黃色為回程段,綠色為近休止段,算法框圖及其重點程序解讀如下:
圖5.3盤形平底直動凸輪廓形曲線設計輸出界面
① 設置圖形線寬,程序如下:
Paicture1.DrawWidth = 1
② 畫x,y坐標軸程序:
Paicture1.Line (0, 0)-(2 * pi + 1, 0)
Paicture1.Line (0, -750)-(0, 750)
③ 用for循環(huán)畫x軸刻度線,程序如下:
For lin = 1 To 2 Step 1
lin1 = lin1 + pi
Picture1.Line (lin1, 0)-(lin1, 50)
k1 = printk1(lin1 - 1, -20, Str(lin) + "π")
Picture2.Line (lin1, 0)-(lin1, 50)
Next lin
④ 畫0點,程序如下:
Paicture4.CurrentX = -5: Paicture4.CurrentY = -3
Paicture4.Print "0"
⑤ 畫圓,程序如下:
For fai = 0 To 360
If (fai <> 0) Then
Picture4.Line (r0 * Cos((fai - 1) * pi / 180), r0 * Sin((fai - 1) * pi / 180))-(r0 * Cos(fai * pi / 180), r0 * Sin(fai * pi / 180)), vbBlack
End If
Next fai
Picture4.DrawWidth = 1.5
圖中的lin為程序中的changdu既坐標軸長度
圖5.4畫坐標軸的算法框圖
⑥ 求在第一段運動時/的值,程序如下:
For fai = 0 To fai0
fai1 = fai * pi / 180
dsbidfai1 = h / bigfai1 - h / bigfai1 * Cos((2 * pi / bigfai1) * fai1)
dxbidfai1 = (s0 + s(fai)) * Cos(fai1) - e * Sin(fai1) + dsbidfai1 * Sin(fai1)
dybidfai1 = -(s0 + s(fai)) * Sin(fai1) - e * Cos(fai1) + dsbidfai1 * Cos(fai1)
圖5.5畫平底直動推桿位移,速度,加速度,及凸輪廓形曲線的算法框圖
⑦ Next fai在第一段運動時,對5種推桿運動規(guī)律的速度、位移、加速度曲線坐標進行計算,程序如下:
For fai = fai0 / 2 To fai0 Step 1 / 300
fai1 = fai * pi / 180
If Combo1 = Combo1.List(0) Then
s(fai) = h * fai1 / bigfai1
v(fai) = h * w / bigfai1
a(fai) = 0 '等速
ElseIf Combo1 = Combo1.List(1) Then
s(fai) = h - 2 * h * ((bigfai1 - fai1) ^ 2) / bigfai1 / bigfai1
v(fai) = 4 * h * w * (bigfai1 - fai1) / bigfai1 / bigfai1
a(fai) = -4 * h * w * w / bigfai1 / bigfai1 '等加減
ElseIf Combo1 = Combo1.List(2) Then
s(fai) = h * (10 * ((fai1 / bigfai1) ^ 3) - 15 * ((fai1 / bigfai1) ^ 4) + 6 * ((fai1 / bigfai1) ^ 5))
v(fai) = h * w * (30 * ((fai1 / bigfai1) ^ 2) - 60 * ((fai1 / bigfai1) ^ 3) + 30 * ((fai1 / bigfai1) ^ 4)) / bigfai1
a(fai) = h * w * w * (60 * (fai1 / bigfai1) - 180 * ((fai1 / bigfai1) ^ 2) + 120 * ((fai1 / bigfai1) ^ 3)) / bigfai1 / bigfai1 '五次
ElseIf Combo1 = Combo1.List(3) Then
s(fai) = h / bigfai1 * fai1 - h / 2 / pi * Sin((2 * pi) / bigfai1 * (fai1))
v(fai) = (h * w / bigfai1) * (1 - Cos(((2 * pi) / bigfai1) * fai1))
a(fai) = (2 * pi * h * w ^ 2) / (bigfai1 ^ 2) * Sin((2 * pi) / bigfai1 * (fai1)) '正弦
ElseIf Combo1 = Combo1.List(4) Then
s(fai) = h / 2 * (1 - Cos(pi * fai1 / bigfai1))
v(fai) = pi * h * w / 2 / bigfai1 * Sin(pi * fai1 / bigfai1)
a(fai) = pi * pi * h * w * w / 2 / bigfai1 / bigfai1 * Cos(pi * fai1 / bigfai1) '余弦
End If
⑧ 在第一段運動時,對平底直動凸輪廓形曲線的坐標值進行計算,程序如下:
x1(fai) = (r0 + s(fai)) * Sin(fai1) + dsbidfai1 * Cos(fai1)
y1(fai) = (r0 + s(fai)) * Cos(fai1) - dsbidfai1 * Sin(fai1)
Next fai
⑨ 用藍色畫出所求的四段曲線,程序如下:
Picture1.PSet (fai1, s(fai)), vbBlue
Picture2.PSet (fai1, v(fai)), vbBlue
Picture3.PSet (fai1, a(fai)), vbBlue
Picture4.PSet (x1(fai), y1(fai)), vbBlue
⑩ 繪制從動件,程序如下:
Paicture4.DrawWidth = 1
Paicture4.Line (x (0), y (0))-(x (0), y (0) + 60), vbBlack
Paicture4.Line (x (0) + 20, y (0))-(x (0), y (0)), vbBlack
Paicture4.Line (x (0) - 20, y (0))-(x (0), y (0)), vbBlack
(4) 點擊重置即可清除所有圖片對參數(shù)進行重新設置,即從圖5.3變?yōu)閳D5.2。
Paicture1.Cls'清除圖片
(5) 點擊保存即可出現(xiàn)圖5.6界面,輸入文件名后點擊保存即可。算法框圖及其程序如下:
圖5.6盤形平底直動凸輪廓形曲線設計保存界面
CommonDialog2.DialogTitle = "另存為"
CommonDialog2.InitDir = "C:\Users\Administrator\Desktop\畢設新- 副本"
CommonDialog2.Filter = "文本文件(*.txt)|*.txt|word文檔(*.doc)|*.doc|所有文件(*.*)|*.*"
CommonDialog2.FilterIndex = 2
CommonDialog2.DefaultExt = "*.txt"
CommonDialog2.ShowSave
Open CommonDialog2.FileName For Output As #1
Print #1, Text1.Text
Print #1, Text2.Text
Print #1, Text3.Text
Print #1, Text4.Text
Print #1, Text5.Text
Print #1, Text6.Text
Print #1, Combo1.Text
Print #1, Text7.Text
Print #1, Text8.Text
Print #1, Combo3.Text
Print #1, Text9.Text
圖5.7保存文件算法框圖
(6) 點擊打開即可出現(xiàn)圖5.8界面,選擇文件后點擊打開即可,算法框圖及其程序如下:
圖5.8盤形平底直動凸輪廓形曲線設計打開界面
圖5.9保存文件算法框圖
Private Sub Command6_Click()
On Error Resume Next
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
Text6.Text = ""
Text7.Text = ""
Text8.Text = ""
Text9.Text = ""
Combo1.Text = ""
Combo3.Text = ""
CommonDialog1.DialogTitle = "打開"
CommonDialog1.InitDir = "C:\Users\Administrator\Desktop\畢設新- 副本"
CommonDialog1.Filter = "文本文件(*.txt)|*.txt|word文檔(*.doc)|*.doc|所有文件(*.*)|*.*"
CommonDialog1.FilterIndex = 2
CommonDialog1.ShowOpen
Open CommonDialog1.FileName For Input As #1
Line Input #1, jiyuanbanjing
Line Input #1, gunzibanjing
Line Input #1, pianxinju
Line Input #1, jiaosudu
Line Input #1, shengcheng
Line Input #1, tuichengjiao
Line Input #1, tuichengfangcheng
Line Input #1, huichengjiao
Line Input #1, huichengfangcheng
Line Input #1, jinxiuzhijiao
Line Input #1, yuanxiuzhijiao
Close #1
Text1.Text = jiyuanbanjing
Text2.Text = gunzibanjing
Text3.Text = pianxinju
Text4.Text = jiaosudu
Text5.Text = shengcheng
Text6.Text = tuichengjiao
Combo1.Text = tuichengfangcheng
Text7.Text = huichengjiao
Combo3.Text = huichengfangcheng
Text8.Text = jinxiuzhijiao
Text9.Text = yuanxiuzhijiao
End Sub
(7) 點擊輸出數(shù)據(jù)即可彈出圖5.10界面,可以查看盤形平底直動凸輪廓形曲線各點的坐標值,程序如下:
圖5.10盤形平底直動凸輪廓形曲線各點的坐標值
Open "C:\Users\Administrator\Desktop\畢設新- 副本\bb\數(shù)據(jù).txt" For Output As #1
For zhuanjiao = 0 To 360 Step 20
If zhuanjiao = 0 Then
Print #1, "zhuanjiao", "xzuobiao(zhuanjiao)", "yzuobiao(zhuanjiao)"
End If
Print #1, zhuanjiao, Format(xzuobiao(zhuanjiao), "0.00"), Format(yzuobiao(zhuanjiao), "0.00")
Next zhuanjiao
Close #1
Private Sub Command5_Click()
Shell "Notepad C:\Users\Administrator\Desktop\畢設新- 副本\bb\數(shù)據(jù).txt", vbNormalFocus
End Sub
5.2 盤形凸輪擺動從動件凸輪廓形曲線軟件設計
開始運行軟件,主界面如圖5.11所示,與直動從動件相同,點擊滾子擺動從動件(或者在主界面時直接用快捷鍵ctrl+i),就會出現(xiàn)如圖5.12的設計界面,用戶需要輸入基圓半徑,角速度,滾子半徑等基本參數(shù),且需要選擇推程段及回升段的運動規(guī)律(如等速運動,正弦加速度,等加減速運動等),選擇凸輪的旋轉方向。里面有默認數(shù)據(jù),只需按照需要修改即可。
圖5.11盤形凸輪廓形曲線設計軟件主界
(1) 點擊平底直動從動件(或快捷鍵ctrl+r)出現(xiàn)相對應的設計窗體,程序如下:
Private Sub 直動從動件2_Click(Index As Integer)
Form5.Show
Unload Form1
End Sub
圖5.12界面的右半面為輸出界面:
(2) 點擊返回主界面即可返回圖5.11的界面,程序如下:
Private Sub Command1_Click()
Form1.Show
Unload Form5
End Sub
圖5.12盤形滾子擺動凸輪廓形曲線設計界面
(3) 點擊輸出即可輸出4種曲線,如圖5.13所示,其中藍色段為推程運動段,紅色段為遠休止段,黃色為回程段,綠色為近休止段,算法框圖及其重點程序解讀如下:
圖5.13盤形滾子擺動凸輪廓形曲線設計輸出界面
計算坐標軸的算法框圖與圖5.4基本一致
① 設置圖形線寬,程序如下:
Paicture3.DrawWidth = 1
② 畫x,y坐標軸程序:
Paicture1.Line (0, 0)-(2 * pi + 1, 0)
Paicture1.Line (0, -750)-(0, 750)
③ 用for循環(huán)畫x軸刻度線,程序如下:
For lin = 1 To 2 Step 1
lin1 = lin1 + pi
Picture1.Line (lin1, 0)-(lin1, 50)
k1 = printk1(lin1 - 1, -20, Str(lin) + "π")
Next lin
④ 畫0點,程序如下:
Paicture4.CurrentX = -5: Paicture4.CurrentY = -3
Paicture4.Print "0"
⑤ 畫圓,程序如下:
For fai = 0 To 360
If (fai <> 0) Then
Picture4.Line (r0 * Cos((fai - 1) * pi / 180), r0 * Sin((fai - 1) * pi / 180))-(r0 * Cos(fai * pi / 180), r0 * Sin(fai * pi / 180)), vbBlack
End If
Next fai
Picture4.DrawWidth = 1.5
⑥ 在第一段運動時,對5種推桿運動規(guī)律的速度、位移、加速度曲線坐標進行計算,程序如下:
For fai = 0 To fai0 / 2 Step 1 / 300
fai1 = fai * pi / 180
If Combo1 = Combo1.List(0) Then
s(fai) = h * fai1 / bigfai1
v(fai) = h * w / bigfai1
a(fai) = 0 '等速
ElseIf Combo1 = Combo1.List(1) Then
s(fai) = 2 * h * fai1 * fai1 / bigfai1 / bigfai1
v(fai) = 4 * h * w * fai1 / bigfai1 / bigfai1
a(fai) = 4 * h * w * w / bigfai1 / bigfai1 '等加減
ElseIf Combo1 = Combo1.List(2) Then
s(fai) = h * (10 * ((fai1 / bigfai1) ^ 3) - 15 * ((fai1 / bigfai1) ^ 4) + 6 * ((fai1 / bigfai1) ^ 5))
v(fai) = h * w * (30 * ((fai1 / bigfai1) ^ 2) - 60 * ((fai1 / bigfai1) ^ 3) + 30 * ((fai1 / bigfai1) ^ 4)) / bigfai1
a(fai) = h * w * w * (60 * (fai1 / bigfai1) - 180 * ((fai1 / bigfai1) ^ 2) + 120 * ((fai1 / bigfai1) ^ 3)) / bigfai1 / bigfai1 '五次
ElseIf Combo1 = Combo1.List(3) Then
s(fai) = h / bigfai1 * fai1 - h / 2 / pi * Sin((2 * pi) / bigfai1 * (fai1))
v(fai) = (h * w / bigfai1) * (1 - Cos(((2 * pi) / bigfai1) * fai1))
a(fai) = (2 * pi * h * w ^ 2) / (bigfai1 ^ 2) * Sin((2 * pi) / bigfai1 * (fai1)) '正弦
ElseIf Combo1 = Combo1.List(4) Then
s(fai) = h / 2 * (1 - Cos(pi * fai1 / bigfai1))
v(fai) = pi * h * w / 2 / bigfai1 * Sin(pi * fai1 / bigfai1)
a(fai) = pi * pi * h * w * w / 2 / bigfai1 / bigfai1 * Cos(pi * fai1 / bigfai1) '余弦
End If
Next fai
⑦ 在第一段運動時,對滾子擺動凸輪理論廓形曲線的坐標值進行計算,程序如下:
x1(fai) = aa * Sin(fai1) - l * Sin(fai1 + s0 + s(fai))
收藏