計算機輔助機械設計V帶輪設計_第1頁
計算機輔助機械設計V帶輪設計_第2頁
計算機輔助機械設計V帶輪設計_第3頁
計算機輔助機械設計V帶輪設計_第4頁
計算機輔助機械設計V帶輪設計_第5頁
已閱讀5頁,還剩134頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

5.1用戶需求

普通V帶傳動是工程中使用比較廣泛的一種機械傳動,主要用于兩軸之間距離較遠的動力傳遞。普通V帶傳動的參數化設計程序涉及到參數選擇、設計計算以及數表和線圖處理等問題。通過本章的學習,一方面,可提高機械設計數表與線圖的處理能力;另一方面,對計算機輔助機械設計軟件的開發(fā)全過程也可有初步的了解。普通V帶為無頭環(huán)形橡膠帶,由伸張層(頂膠)、強力層(抗拉體)、壓縮層(底膠)和包布層(膠帆布)組成。計算機輔助機械設計V帶輪設計全文共147頁,當前為第1頁。

普通V帶是標準件,按截面尺寸從小到大分為Y、Z、A、B、C、D、E七種型號。需要用戶提供的原始數據一般為:傳動用途、傳遞功率、主動輪轉速、從動輪轉速或傳動比、原動機種類、工作機載荷性質、傳動位置要求、外廓尺寸等。用戶的需求一般包括:確定普通V帶型號,帶的基準長度、根數,傳動中心距,帶輪材料、基準直徑、結構型式及尺寸,計算帶的初拉力、初拉力增量、作用在軸上的壓力,張緊裝置,繪制帶輪零件工作圖等。通常,用戶提供的原始數據是計算機程序的主要輸入參數,用戶的需求是計算機程序的主要輸出參數。普通V帶傳動參數化設計程序的主要輸入/輸出參數見表5-1。計算機輔助機械設計V帶輪設計全文共147頁,當前為第2頁。5.2系統(tǒng)結構設計5.2.1普通V帶傳動的手工設計過程

1.普通V帶傳動的手工設計過程普通V帶傳動的手工設計過程一般如圖5-1所示。計算機輔助機械設計V帶輪設計全文共147頁,當前為第3頁。圖5-1普通V帶傳動的手工設計過程計算機輔助機械設計V帶輪設計全文共147頁,當前為第4頁。

2.普通V帶傳動手工設計方法與步驟機械設計軟件的最基本功能之一是代替手工設計。因此,手工設計步驟與設計依據或公式,是軟件功能結構與算法設計的基本依據,計算機求解問題的過程基本是仿照手工設計的步驟與方法進行的。很難想象,軟件開發(fā)人員在不了解手工設計方法與步驟的情況下,能夠獨立開發(fā)出一套有實用價值的軟件。因此,回顧手工設計的方法與步驟是軟件設計之初必須進行的一項基礎工作。下面列出普通V帶傳動手工設計的方法與步驟(見表5-2),以便于讀者回顧機械設計的方法與步驟,也有助于閱讀理解本章附錄列出的普通V帶傳動設計源程序,有利于機械設計軟件開發(fā)思路的逐步形成。計算機輔助機械設計V帶輪設計全文共147頁,當前為第5頁。【例5-1】設計由電動機驅動的旋轉式水泵所用的普通V帶傳動。電動機型號為Y160M-4,其額定功率P=11kW,轉速n1=1460r/min,水泵軸轉速n2=400r/min,軸間距約為1500mm,每天工作8小時。設計過程見表5-3。計算機輔助機械設計V帶輪設計全文共147頁,當前為第6頁。5.2.2軟件結構設計軟件結構指軟件的各功能模塊及其相互間的調用關系。所謂功能模塊,就是實現一定功能的若干語句或函數序列。比如,VB6.0應用軟件中,sub過程(包括事件sub和一般sub過程)、function函數、獨立的bas模塊、form窗體都是一個功能模塊。bas模塊和form模塊一般可以包括多個sub和function模塊,是多個sub和function模塊的集合。同樣,在VF6.0中,procedure、function都是功能模塊。在VL中,一個用戶自定義函數就是一個功能模塊。計算機輔助機械設計V帶輪設計全文共147頁,當前為第7頁。

開發(fā)機械設計軟件時,為了處理問題方便,通常把處理某一個數表、某一個圖形的語句或函數序列放在一個模塊中,而接受用戶輸入的語句、輸出設計結果的語句或函數等,常放在對象的事件過程中。各種語言都有各自的模塊調用方法。比如VB6.0,用call語句實現sub過程之間的相互調用。但值得注意的是,在可視化語言中,用戶只能激發(fā)對象,引發(fā)對象的事件過程,比如鼠標單擊命令按鈕,引發(fā)該命令按鈕的click事件過程。設計軟件結構,就是劃分程序的功能模塊,確定相互之間的調用關系。如同寫文章要先列文章的提綱一樣,設計軟件要先設計軟件的結構。計算機輔助機械設計V帶輪設計全文共147頁,當前為第8頁。

普通V帶傳動程序可設置以下功能模塊:(1)原始參數輸入主模塊(主窗體frmbelt.frm):它包括主要參數接收模塊(接收功率、轉速、傳動比),工況情況接收模塊(接收載荷情況、啟動情況、每天工作時間)。這兩個模塊接收的數據來自原始參數輸入窗口,見圖5-2。計算機輔助機械設計V帶輪設計全文共147頁,當前為第9頁。圖5-2普通V帶傳動設計的原始數據輸入窗口計算機輔助機械設計V帶輪設計全文共147頁,當前為第10頁。

(2)中間數據處理主模塊(窗體FrmOptionxhd1a.frm):它包括并行帶型號選擇模塊、帶輪基準直徑的試選模塊、中心距的試選模塊。這三個模塊接收的數據來自選擇帶型、小帶輪直徑、中心距窗口,見圖5-3。(3)基本數據處理模塊(一般sub過程、bas獨立模塊):包括工況系數查詢模塊、V帶型號及小帶輪直徑范圍查詢模塊、基準直徑查詢模塊、單根帶功率查詢模塊、功率增量查詢模塊、包角系數查詢模塊、長度系數查詢模塊、帶輪輪槽尺寸查詢模塊、帶輪結構與輻板厚度查詢模塊。計算機輔助機械設計V帶輪設計全文共147頁,當前為第11頁。圖5-3普通V帶傳動的帶型、直徑、中心距選擇窗口計算機輔助機械設計V帶輪設計全文共147頁,當前為第12頁。

(4)設計結果處理模塊(窗體frmbeltDisply.frm):它包括保存結果模塊、打印結果模塊、顯示帶輪結構與尺寸模塊、生成帶輪工作圖模塊。這些模塊處理的數據來自以上兩個主模塊執(zhí)行過程中生成的數據文件或處理結果。這些模塊的調用窗口見圖5-4。計算機輔助機械設計V帶輪設計全文共147頁,當前為第13頁。圖5-4普通V帶傳動設計結果處理窗口計算機輔助機械設計V帶輪設計全文共147頁,當前為第14頁。

如果用填以功能描述的方框表示功能模塊,用直線表示模塊的調用,則由方框與直線組成的圖形稱為功能模塊結構圖。下面給出普通V帶的功能模塊結構圖,供讀者參考。(1)窗體模塊結構圖設計:普通V帶傳動設計的窗體模塊結構圖由三個窗體模塊組成,見圖5-5。(2)功能模塊結構圖設計:普通V帶傳動設計的功能模塊結構圖由三個窗體即包含的sub過程、一個獨立的bas模塊及其包含的function函數(未列出,可參見本章附錄程序)所組成,見圖5-6。計算機輔助機械設計V帶輪設計全文共147頁,當前為第15頁。圖5-5V帶傳動參數化設計窗體模塊結構圖計算機輔助機械設計V帶輪設計全文共147頁,當前為第16頁。圖5-6V帶傳動設計功能模塊結構圖計算機輔助機械設計V帶輪設計全文共147頁,當前為第17頁。5.3數表的規(guī)則化5.3.1單根帶額定功率的查詢

對于該表中的“-”號應作0數值化處理,其理由是:V帶傳動能力隨著轉速的不斷提高,帶傳遞功率以從小到大,又從大到小的規(guī)律變化,當轉速達到一定值后,將出現明顯的“打滑”現象,傳遞功率幾乎減小到零。因此,將表中“-”號代之以“0”數值,造成的誤差是不大的,可以滿足工程要求。計算機輔助機械設計V帶輪設計全文共147頁,當前為第18頁。

插值處理可以有以下兩種方法:

(1)按三維函數表二次插值法查詢,此種方法見5.5節(jié)所附源程序中的PrivateSubpower1()過程。

(2)按二維函數表二次插值查詢。用多重判斷語句(如if…then…else或selectcase)先判斷輸入的V帶型號。對于每一個型號的功率查詢,按二維函數表二次插值方法進行。計算機輔助機械設計V帶輪設計全文共147頁,當前為第19頁。5.3.2V帶輪輪輻結構的查詢由2.1.2節(jié)可知,V帶輪輪輻結構表的數據規(guī)律性不太強、數據量多、代碼編寫量大,如果采用VF程序處理,則代碼量較少。下面介紹用VF程序處理的方法,供讀者參考。用VF程序處理時,首先將該表中的數據規(guī)則化,然后將其錄入數據表(如lunfuhoudu.dbf),然后編寫一個程序文件(如lunfuhoudu.prg),或編一個事件過程(如form1.chaxun.click),完成查詢任務。計算機輔助機械設計V帶輪設計全文共147頁,當前為第20頁。

下面是用VF程序查詢V帶輪輪輻結構的例子。為了重點說明方法,這里將原始表數據,按照帶型號拆分為六個數據表:Z型輪結構.dbf、A型輪結構.dbf、B型輪結構.dbf、C型輪結構.dbf、D型輪結構.dbf、E型輪結構.dbf。限于篇幅,這里以A型輪結構.dbf為例來說明其處理方法。A型輪結構.dbf見圖5-7,設計的數據庫窗體見圖5-8,運行結果見圖5-9。計算機輔助機械設計V帶輪設計全文共147頁,當前為第21頁。圖5-7A型輪結構.dbf計算機輔助機械設計V帶輪設計全文共147頁,當前為第22頁。圖5-8帶輪結構查詢窗體計算機輔助機械設計V帶輪設計全文共147頁,當前為第23頁。圖5-9帶輪結構查詢結果計算機輔助機械設計V帶輪設計全文共147頁,當前為第24頁?!安樵儭卑粹o的單擊事件過程的代碼,見代碼5-1。代碼5-1“查詢”按鈕的單擊事件過程代碼[thisform.cmdchaxun.click]

thisform.lblxingshi.caption=""thisform.lblhoudu.caption=""thisform.lblshuliang.caption=""zuixiaokongjing=0zuidakongjing=0xinghao=alltrim(thisform.cboxinghao.value)kongjing=val(thisform.txtkongjing.value)zhijing=val(thisform.cbozhijing.value)DoCase&&控制孔徑輸入范圍計算機輔助機械設計V帶輪設計全文共147頁,當前為第25頁。Casexinghao="Z"Ifkongjing<12orkongjing>35zuixiaokongjing=12zuidakongjing=35EndIfCasexinghao="A"Ifkongjing<10Orkongjing>45zuixiaokongjing=10zuidakongjing=45EndIfCasexinghao="B"Ifkongjing<32Orkongjing>65zuixiaokongjing=32zuidakongjing=65EndIf計算機輔助機械設計V帶輪設計全文共147頁,當前為第26頁。Casexinghao="C"Ifkongjing<42Orkongjing>85zuixiaokongjing=42zuidakongjing=85EndIfCasexinghao="D"Ifkongjing<60Orkongjing>110zuixiaokongjing=60zuidakongjing=110EndIfCasexinghao="E"Ifkongjing<80Orkongjing>150zuixiaokongjing=80zuidakongjing=150EndIf計算機輔助機械設計V帶輪設計全文共147頁,當前為第27頁。EndCaseIfzuixiaokongjing<>0andzuidakongjing<>0messagebox("孔徑太小或太大,最小應為:"+alltrim(str(zuixiaokongjing))+-",最大應為"+alltrim(str(zuidakongjing))+",請重新輸入!",0,"查詢")ReturnEndIfbiao=xinghao+“型輪結構”

&&獲取表名

Select0use數據1!&biaoagainLocateForZhijing=基準直徑Andkongjing<=孔徑 &&查詢

Iffound()=(.t.) &&若查到合適結構

thisform.lblxingshi.caption=結構形式

thisform.lblhoudu.caption=輻板厚度

thisform.lblshuliang.caption=槽數計算機輔助機械設計V帶輪設計全文共147頁,當前為第28頁。Else &&若未查到合適結構

LocateForkongjing<=孔徑

biaozhunkongjing=孔徑 &&查找與輸入孔徑相近的標準孔徑(因為用戶輸入的孔徑可能不是標準孔徑):biaozhunkongjingLocateFor孔徑=biaozhunkongjingandisblank(結構形式)=(.f.)&&查找與標準孔徑biaozhunkongjing相對應的最小基準直徑

Iffound()=(.t.)zuixiao=基準直徑

EndIfdowhile孔徑=biaozhunkongjingandisblank(結構形式)=(.f.)&&查找與標準孔徑biaozhunkongjing相對應的最大基準直徑

skip1計算機輔助機械設計V帶輪設計全文共147頁,當前為第29頁。Enddoskip-1zuida=基準直徑

messagebox("基準直徑太小或太大,最小應為:"+alltrim(str(zuixiao))+-"最大應為:"+alltrim(str(zuida))+chr(13)+chr(10)+;",請重新輸入!",0,"查詢")returnthisform.lblxingshi.caption=""thisform.lblhoudu.caption=""thisform.lblshuliang.caption=""messagebox("無合適帶形式",0,"查詢")EndIf計算機輔助機械設計V帶輪設計全文共147頁,當前為第30頁。5.4選型圖的處理V帶選型圖的處理屬于區(qū)域處理的范疇,區(qū)域處理的一般方法在3.3節(jié)中已經介紹過了,此處V帶選型圖有一些具體情況,需要特別作一些處理。由V帶傳動能力可知,當轉速超過一定值后,將出現打滑現象,此時,轉速對功率的變化率較大(即轉速增加時,傳遞功率增加得很少)。對照選型圖來看,圖中的每條線都有一個轉折點,轉折點的以上部分的直線就反映了打滑現象。顯然,所有轉折點以上部分直線所包圍的區(qū)域是不可用來選型的。為了排除這部分區(qū)域,可作一條“增加線”,見圖5-10,有效的帶型從增加線下區(qū)域中選擇。計算機輔助機械設計V帶輪設計全文共147頁,當前為第31頁。圖5-10V帶選型圖的處理計算機輔助機械設計V帶輪設計全文共147頁,當前為第32頁。

圖中的增加線,由六段直線連接而成。對于增加線上的每段直線以及分型線(粗實線)、直徑范圍分界線(圖中的虛線),都可參照3.1.2節(jié)中所述方法求出其數學模型。求出了上述所有直線的數學模型,也就是建立了帶型有效區(qū)域的邊界線數學模型。接下來要做的事情,就是如何確定選型點,即確定由設計功率pd和小帶輪轉速n1所確定的坐標點d在有效區(qū)中的位置。下面以C型區(qū)為例,進一步說明選型思路與程序設計方法。計算機輔助機械設計V帶輪設計全文共147頁,當前為第33頁。

如圖5-11所示,有效選型區(qū)為B—C—D—E—B包圍的區(qū)域,這個區(qū)域再被直線C—F分為兩個分區(qū):C1分區(qū)(B—C—F—E—B圍成的區(qū)域)和C2分區(qū)(C—D—F—C圍成的區(qū)域)。若事先確定各條直線的數學模型如下:計算機輔助機械設計V帶輪設計全文共147頁,當前為第34頁。圖5-11V帶選型圖處理方法計算機輔助機械設計V帶輪設計全文共147頁,當前為第35頁。B—C線的數學模型為

n1BC=29.44249×pd^1.162165(5-1)D—E線的數學模型為

n1DE=7.63971×pd^1.21196(5-2)C—D線的數學模型為

n1CD=3905.5×pd^-0.5078 (5-3)其中,交點C的橫坐標為20kW;交點D的橫坐標為42kW。設設計功率為spd(kW),小帶輪轉速為sn1(轉/分)。計算機輔助機械設計V帶輪設計全文共147頁,當前為第36頁。

程序執(zhí)行式(5-1)、(5-2)、(5-3),分別計算出n1BC、n1DE、n1CD(相對應的坐標點見圖中M1、M2、M3),可得以下判斷:

(1)如果n1DE≤sn1≤n1BC且spd≤20,則選型點d一定落在C1區(qū)內;

(2)如果n1DE≤sn1≤n1CD且20≤spd≤42,則選型點d一定落在C2區(qū)內。計算機輔助機械設計V帶輪設計全文共147頁,當前為第37頁。在程序中,判斷語句可表述為:ifsn1>=n1DEandsn1<=n1BCandspd<=20orsn1>=n1DEandsn1<=n1CD-andspd>=20andspd<=42thenxh="C“

型號為“C”型

dd1="200--315" ’

直徑范圍為“200--315”

endif計算機輔助機械設計V帶輪設計全文共147頁,當前為第38頁。附錄普通V帶傳動計算機輔助設計VB6.0源程序1.frmbelt.frm窗體

frmbelt.frm窗體設計見圖5-2,其全部代碼見代碼5-2。代碼5-2窗體frmbelt.frm的全部代碼OptionExplicitOptionBase1Privateworktime(1To7)AsString ’存儲工作時間的數組

Privateworkcondition(1To5)AsString ’存儲工作情況的數組

Privatekabelt(1To5,1To10)AsSingle ’存儲工況系數的數組

PublicsworktimeAsString ’輸入的每天工作時間

PublicsworkconditionAsString ’輸入的工作情況計算機輔助機械設計V帶輪設計全文共147頁,當前為第39頁。PrivateSubbeltKA(sworktime,sworkcondition,ka,startcondition)’

功能:查詢KADimiAsInteger ’

循環(huán)變量

DimjAsInteger ’

循環(huán)變量

OpenApp.Path+"\B10-10.dat"ForInputAs#1’B10-10.dat文件保存有文獻19

中表6(工況系數表)的數據

Fori=1To4Input#1,workcondition(i)NextiFori=1To3Input#1,worktime(i)NextiFori=1To4Forj=1To3計算機輔助機械設計V帶輪設計全文共147頁,當前為第40頁。Input#1,kabelt(i,j)NextjNextiFori=1To4Forj=4To6Input#1,kabelt(i,j)NextjNextiCloseFori=1To4Ifsworkcondition=workcondition(i)ThenExitForNextiForj=1To3Ifsworktime=worktime(j)ThenExitForNextj計算機輔助機械設計V帶輪設計全文共147頁,當前為第41頁。Ifstartcondition="輕、空載啟動"Thenka=kabelt(i,j)EndIfIfstartcondition="重載啟動"Thenka=kabelt(i,j+3)EndIfEndSub

PrivateSublstHeavyClick() ’

功能:輸入每天工作時間

sworktime=Lstheavy.TextEndSub

PrivateSublstLight-Click() ’

功能:輸入每天工作時間

sworktime=Lstlight.TextEndSub計算機輔助機械設計V帶輪設計全文共147頁,當前為第42頁。PrivateSubCmdend_Click() ’

功能:終止程序

EndEndSub

PrivateSubCmdgoonClick() ’

功能:接收輸入、計算、窗體交替

DimxAsInteger ’

定義臨時變量

spower=Val(txtpower.Text)’

接收輸入功率

n1=Val(Txtn1) ’

接收小帶輪轉速

sn2=Val(TxtN2.Text) ’

接收大帶輪轉速

si=Val(TxtI.Text) ’

接收傳動比

Ifspower<=0Andn1<=0Then’

以下為判斷輸入是否適當;如不當,則退出過程

MsgBox"功率、小帶輪轉速必須大于零"計算機輔助機械設計V帶輪設計全文共147頁,當前為第43頁。ElseIfspower<=0ThenMsgBox"功率必須大于零"ElseIfn1<=0ThenMsgBox"小帶輪轉速必須大于零"EndIfIfsn2=0Andsi=0ThenMsgBox"從動輪轉速和傳動比不能同時為零"ExitSubEndIfIfsworkcondition=""ThenMsgBox"工作情況不能為空":ExitSubIfsworktime=""ThenMsgBox"工作時間不能為空":ExitSubIfspower<>0Andn1<>0Andsn2<>0Andsworktime<>""And-計算機輔助機械設計V帶輪設計全文共147頁,當前為第44頁。sworkcondition<>""Orspower<>0Andn1<>0Andsi<>0And-sworktime<>""Andsworkcondition<>""Then’

如輸入適當

Ifsi=0Then’

傳動比為0si=n1/sn2’

計算傳動比

EndIfIfsn2=0Then’

大帶輪轉速為0sn2=n1/si’

計算大帶輪轉速

EndIfCallbeltKA(sworktime,sworkcondition,ka,startcondition) ’調用beltKA過程, ’查工況系數kapd=spower*ka ’為計算功率pd賦值,以便調用beltxh Callbeltxh(Pd,n1,xh(),d1()) ’調用beltxh過程,確定兩種帶 ’型XH()和兩種小帶輪直徑范圍計算機輔助機械設計V帶輪設計全文共147頁,當前為第45頁。 Ifxh(1)=“NIL”Then ’

若數組xh(1)(存儲有帶型號)值為空,說 ’明沒有合適型號,給出提示信息,并退 ’出過程

MsgBox("無合適帶型!可能是轉速N1太高或功率P太大,請重新確定N1;P!"):ExitSubEndIfElseMsgBox"輸入數據不正常,請重新輸入":ExitSubEndIfCallzhoujingFrmOptionxhd1a.lblxh1.Caption=xh(1)’

為下一個窗體FrmOptionxhd1a的控件lblxh1的’標題Caption賦值,以顯示第一個帶型號xh(1)計算機輔助機械設計V帶輪設計全文共147頁,當前為第46頁。FrmOptionxhd1a.lblxh2.Caption=xh(2)’

為下一個窗體FrmOptionxhd1a的控件lblxh2的標題Caption賦值,以顯示第二個帶型號xh(2)FrmOptionxhd1a.Visible=True’

使下一個窗體FrmOptionxhd1a可見

FrmOptionxhd1a.Picd1a.Visible=False’

使下一個窗體FrmOptionxhd1a的控件picd1a不可見

FrmBelt.Visible=False ’

使本窗體frmbelt不可見

FrmOptionxhd1a.optionxh=0 ’

為下一個窗體FrmOptionxhd1a的窗體變量optionxh初始化

EndSub計算機輔助機械設計V帶輪設計全文共147頁,當前為第47頁。PrivateSubFormLoad()’

功能:窗體加載,使其上對象初始化

TxtI.Visible=FalseTxtN2.Visible=FalseLstlight.Visible=FalseLstheavy.Visible=FalseLbLtime1.Visible=FalseLbLtime2.Visible=FalseEndSub

PrivateSubOptcondition1Click()’

功能:輸入工作情況1sworkcondition=Optcondition1.CaptionEndSub計算機輔助機械設計V帶輪設計全文共147頁,當前為第48頁。PrivateSubOptcondition2Click() ’

功能:輸入工作情況2sworkcondition=Optcondition2.CaptionEndSub

PrivateSubOptcondition3Click() ’

功能:輸入工作情況3sworkcondition=Optcondition3.CaptionEndSub

PrivateSubOptcondition4-Click() ’

功能:輸入工作情況4sworkcondition=Optcondition4.CaptionEndSub計算機輔助機械設計V帶輪設計全文共147頁,當前為第49頁。PrivateSubOptn2Click() ’

功能:用戶決定輸入從動輪轉速n2TxtI.Visible=False ’

使文本框txtI不可見

TxtN2.Visible=True ’

使文體框txtN2可見

TxtI.Text="" ’

并清空文本框TxtIEndSub

PrivateSubOptiClick() ’

功能:用戶決定輸入傳動比iTxtN2.Visible=False ’

使文本框TxtN2不可見

TxtI.Visible=True ’

使文本框TxtI可見

TxtN2.Text="" ’

并清空文本框TxtN2EndSub計算機輔助機械設計V帶輪設計全文共147頁,當前為第50頁。PrivateSubOptlightClick()’

用戶決定選擇輕、空載啟動

Lstheavy.Visible=False’

使單選鈕控件Lstheavy不可見

Lstlight.Visible=True’

使單選鈕控件Lstlight可見

LbLtime1.Visible=True’

使列表框控件LbLtime1可見

LbLtime2.Visible=False’

使列表框控件LbLtime2不可見

startcondition=Optlight.Caption’

變量startcondition取控件Optlight的CaptionEndSub計算機輔助機械設計V帶輪設計全文共147頁,當前為第51頁。PrivateSubOptheavy_Click() ’

用戶決定選擇重載啟動

Lstlight.Visible=False ’

使單選鈕控件Lstlight不可見

Lstheavy.Visible=True ’

使單選鈕控件Lstheavy可見

LbLtime2.Visible=True ’

使列表框控件LbLtime2可見

LbLtime1.Visible=False ’

使列表框控件LbLtime1不可見startcondition=Optheavy.Caption’

變量startcondition取控件Optheavy的CaptionEndSubPrivateSubbeltxh(PdAsSingle,n1AsSingle,xh()AsString,d1()AsString)

功能:查普通V帶型號及小帶輪直徑范圍

Rem輸入參數:計算功率Pd(kW)Rem輸入參數:小帶輪轉速n1(轉/分)計算機輔助機械設計V帶輪設計全文共147頁,當前為第52頁。Rem輸出參數:帶型xh(1),xh(2)Rem輸出參數:小帶輪直徑d1(1),d1(2)Rem字符型數組xh()的值按工程規(guī)定必須用英文大寫

Dimnze1AsSingle,nze2AsSingle,nze3AsSingle,nze4AsSingleDimnze5AsSingle,nze6AsSingle,nze7AsSingle,nze8AsSingleDimnze9AsSingle ’nze1~nze9,選型圖中的九條分型界線

Dimnk1AsSingle,nk2AsSingle,nk3AsSingle,nk4AsSingleDimnk5AsSingle,nk6AsSingle’nk1~nk6,增加線的六段直線

nze1=787.5327*Pd^1.07nze2=458.2745*Pd^1.095nze3=237.9256*Pd^1.035nze4=120*Pd^1.05324計算機輔助機械設計V帶輪設計全文共147頁,當前為第53頁。nze5=52.8337*Pd^1.160658nze6=29.44249*Pd^1.162165nze7=7.63971*Pd^1.21196nze8=2.614477*Pd^1.175764nze9=0.7456016*Pd^1.252225nk1=7066.3*Pd^-0.6456+200nk2=8182.6*Pd^-0.7368+200nk3=11090.4*Pd^-0.8689+200nk4=3905.5*Pd^-0.5078+150nk5=732.57*Pd^-0.0541+150nk6=550+100Ifn1>=nze2+50AndPd<=3.5Orn1>=nze2+50Andn1<=nk1AndPd<=4.5Then計算機輔助機械設計V帶輪設計全文共147頁,當前為第54頁。 xh(1)="Z":xh(2)="Z"’Z型區(qū)

d1(1)="50--71" d1(2)="80--100"ElseIfn1<=nze2+50Andn1>=nze2AndPd<=3.5Orn1>=nze2Andn1<=nk1-AndPd<=5Then ’Z_A型交界區(qū)。注意:VB規(guī)定,一個語句要接行寫,應加一個空格和下劃線

xh(1)="Z":xh(2)="A"d1(1)="80--100":d1(2)=d1(1)ElseIfn1<=nze2Andn1>=nze2-50AndPd<=5Orn1>=nze2-50And_n1<=nk2AndPd<=6Then’A-Z型交界區(qū)

xh(1)="A":xh(2)="Z"d1(1)="80--100":d1(2)=d1(1)計算機輔助機械設計V帶輪設計全文共147頁,當前為第55頁。ElseIfn1<=nze2-50Andn1>=nze4+50AndPd<=5Orn1>=nze4+50And_n1<=nk2AndPd<=10Then ’A型區(qū)

xh(1)="A":xh(2)=xh(1)d1(1)="80--100":d1(2)="112--140"ElseIfn1<=nze4+50Andn1>=nze4AndPd<=5Orn1>=nze4Andn1<=nk2_AndPd<=10Then ’A-B型交界區(qū)

xh(1)="A":xh(2)="B"d1(1)="112--140":d1(2)="125--140"ElseIfn1<=nze4Andn1>=nze4-50AndPd<=5Orn1>=nze4-50And_n1<=nk2AndPd<=10Then ’B-A型交界區(qū)

xh(1)="B":xh(2)="A"d1(1)="125--140":d1(2)="112--140"計算機輔助機械設計V帶輪設計全文共147頁,當前為第56頁。ElseIfn1<=nze4-50Andn1>=nze6+50AndPd<=10Orn1>=nze6+50_Andn1<=nk3AndPd<=18Then ’B型區(qū)

xh(1)="B":xh(2)=xh(1)d1(1)="125--140":d1(2)="160--200"ElseIfn1<=nze6+50Andn1>nze6AndPd<=10Orn1>=nze6Andn1<=nk3_AndPd<=18Then ’B-C型交界區(qū)

xh(1)="B":xh(2)="C"d1(1)="160--200":d1(2)="200--315"ElseIfn1<=nze6Andn1>=nze6-30AndPd<=10Orn1>=nze6-30And_n1<=nk3AndPd<=18Then ’C-B型交界區(qū)

xh(1)="C":xh(2)="B"d1(1)="200--315":d1(2)="160--200"ElseIfn1<=nze6-30Andn1>=nze7+30AndPd<=18Orn1>=nze7+30_ Andn1<=nk4AndPd<=40Then ’C型區(qū)計算機輔助機械設計V帶輪設計全文共147頁,當前為第57頁。xh(1)="C":xh(2)=xh(1)d1(1)="200--315":d1(2)=d1(1)ElseIfn1<=nze7+30Andn1>=nze7AndPd<=18Orn1>=nze7Andn1<=nk4_AndPd<=40Then ’C-D型交界區(qū)

xh(1)="C":xh(2)="D"d1(1)="200--315":d1(2)="355--400"ElseIfn1<=nze7Andn1>=nze7-30AndPd<=18Orn1>=nze7-30And_n1<=nk4AndPd<=40Then ’D-C型交界區(qū)

xh(1)="D":xh(2)="C"d1(1)="355--400":d1(2)="200--315“ElseIfn1<=nze7-30Andn1>=nze9+30AndPd<=40Orn1>=nze9+30-Andn1<=nk5AndPd<=200Then ’D型區(qū)

xh(1)="D":xh(2)=xh(1)d1(1)="355--400":d1(2)="450--500"計算機輔助機械設計V帶輪設計全文共147頁,當前為第58頁。ElseIfn1<=nze9+30Andn1>=nze9AndPd<=40Orn1>=nze9And=n1<=nk5AndPd<=200Then’D-E型交界區(qū)

xh(1)="D":xh(2)="E"d1(1)="450--500":d1(2)="500--800"ElseIfn1<=nze9Andn1>=nze9-30AndPd<=40Orn1>=nze9-30And_n1<=nk5AndPd<=200Then’E-D型交界區(qū)

xh(1)="E":xh(2)="D"d1(1)="500--800":d1(2)="450--500"ElseIfn1<=nze9-30Andn1>0AndPd<=200Orn1>0Andn1<=500_ AndPd<=250Then’E型區(qū)

xh(1)="E":xh(2)=xh(1)d1(1)="500--800":d1(2)=d1(1)Elsexh(1)=“NIL”:xh(2)=xh(1)’

選型點落在可選區(qū)域之外,即沒有合適 ’帶型,此時令xh(1),xh(2)為″NIL″計算機輔助機械設計V帶輪設計全文共147頁,當前為第59頁。d1(1)="NIL":d1(2)=d1(1)EndIfEndSub

PrivateSubvsbxuyongyingli-Change()’

功能:改變軸材料的許用應力 的值

txtxuyongyingli=vsbxuyongyingli.ValueEndSub

PrivateSubzhoujing()’

功能:計算軸頸的直徑

DimxuyongyingliAsSinglezhoucailiao=Trim(txtzhoucailiao.Text)Iftxtzhoucailiao.Text=""OrVal(txtzhoucailiao.Text)=0ThenMsgBox("請輸入軸材料代號")EndEndIf計算機輔助機械設計V帶輪設計全文共147頁,當前為第60頁。xuyongyingli=Val(txtxuyongyingli.Text)dailunkongjing(1)=(9550!*1000!*Pd/n1*16/3.14/xuyongyingli)^(1/3)dailunkongjing(2)=(9550!*1000!*Pd/sn2*16/3.14/xuyongyingli)^(1/3)IfInt(dailunkongjing(1)/5)<dailunkongjing(1)/5Thendailunkongjing(1)=5*Int(dailunkongjing(1)/5)+5EndIfIfInt(dailunkongjing(2)/5)<dailunkongjing(2)/5Thendailunkongjing(2)=5*Int(dailunkongjing(2)/5)+5EndIfEndSubPrivateSubForm-KeyPress(KeyAsciiAsInteger)’

用回車鍵代替單擊事件

IfKeyAscii=13ThenCallCmdgoon_Click ’13是回車鍵的KeyAscii碼

EndSub計算機輔助機械設計V帶輪設計全文共147頁,當前為第61頁。2.FrmOptionxhd1a.frm窗體窗體FrmOptionxhd1a.frm的設計見圖5-3,其全部代碼見代碼5-3。代碼5-3窗體FrmOptionxhd1a.frm的全部代碼OptionExplicitOptionBase1PublicoptionxhAsInteger’optionxh=1或optionxh=2說明用戶選擇了型號, ’optionxh=0說明未選擇型號

PrivateSubcmdContinue-Click()’該過程實現:查詢標準帶輪直徑、單根帶基本功率、功率增量、長度系數、包角系數等

Dima0AsSingle ’定義幾個臨時變量

Dimdf0AsSingleIfoptionxh<>1Andoptionxh<>2ThenMsgBox“請選擇型號!”:ExitSub計算機輔助機械設計V帶輪設計全文共147頁,當前為第62頁。dd1=Val(txtd1.Text)’

接收用戶輸入的小帶輪直徑(初值)

a0=Val(txta.Text)’

接收用戶輸入的中心距(初值)

Ifdd1<hsbd1.MinOrdd1>(hsbd1.Max)*1.5Orxh1=""ThenMsgBox ("小帶輪直徑選擇不正確,請重新選擇"):ExitSubIfa0<hsba.MinThenMsgBox"中心距選擇不合適,請重新選擇":ExitSubCallbeltd(dd1)’

調用beltd過程,確定小帶輪標準直徑

dd2=si*dd1Callbeltd(dd2)’

調用beltd過程,確定大帶輪標準直徑

sis=dd2/dd1’

計算實際傳動比

sis=Int(sis*100)/100dlti=Str$(Int((sis-si)/si*100))&“%”’計算傳動比誤差(百分數)

Callpower1 ’調用power1過程,查詢單根帶基本額定功率p1CallbeltkL(a0) ’調用beltkL過程,查普通V帶長度系數KL計算機輔助機械設計V帶輪設計全文共147頁,當前為第63頁。Callkalf1 ’

調用kalf1過程,查包角系數kalfv1=n1*dd1*3.1415/60/1000’

計算線速度

v1=Int(v1*100)/100Callbeltdp1’

調用beltdp1過程,查單根V帶的額定功率值的增量dp1Callbeltsize(df0)’

調用beltsize過程,查帶的截面尺寸和帶初拉力增量df0z=Pd/(p1+dp1)/kalf/kL’

計算帶根數

f0=500*(2.5-kalf)*Pd/kalf/z/v1+q*v1^2’

計算初拉力f0f0=Int(f0*100)/100fz=2*z*f0*Sin(X1/2*3.14159/180)’

計算壓軸力fzfz=Int(fz*100)/100g=(f0+df0)/16 ’

計算初拉力的測定值gg=Int(g*100)/100frmbeltDisply.Visible=True’

使下一個窗體“frmbeltDisply”可見’用下一個窗體上的控件顯示各參數值。各被顯示的參數必須在本窗體或在bas模塊中用public聲明計算機輔助機械設計V帶輪設計全文共147頁,當前為第64頁。frmbeltDisply.Lbldisply(0).Caption=xh1frmbeltDisply.Lbldisply(1).Caption=zfrmbeltDisply.Lbldisply(2).Caption=LdfrmbeltDisply.Lbldisply(3).Caption=dd1frmbeltDisply.Lbldisply(4).Caption=dd2frmbeltDisply.Lbldisply(5).Caption=afrmbeltDisply.Lbl2(0).Caption=sisfrmbeltDisply.Lbl2(1).Caption=v1frmbeltDisply.Lbl2(2).Caption=X1frmbeltDisply.Lbl2(3).Caption=kLfrmbeltDisply.Lbl2(4).Caption=kalffrmbeltDisply.Lbl2(5).Caption=ka計算機輔助機械設計V帶輪設計全文共147頁,當前為第65頁。frmbeltDisply.Lbl4(0).Caption=f0frmbeltDisply.Lbl4(1).Caption=fzfrmbeltDisply.Lbl4(2).Caption=p1frmbeltDisply.Lbl4(3).Caption=dp1frmbeltDisply.Lbl4(4).Caption=gfrmbeltDisply.Lbl4(5).Caption=dltifrmbeltDisply.Label1(1).Caption=spowerfrmbeltDisply.Label1(3).Caption=PdfrmbeltDisply.Label1(5).Caption=n1CallFrmbeltDisply.cmddisplysize_Click’

調用下一個窗體 “frmbeltDisply”的“cmddisply’size_click”過程

FrmOptionxhd1a.Visible=False’

使本窗體FrmOptionxhd1a不可見EndSub計算機輔助機械設計V帶輪設計全文共147頁,當前為第66頁。PrivateSubCmdend-Click() ’

功能:結束程序運行

EndEndSubPrivateSubCmdReturn_Click()’

功能:返回到上一個窗體frmbeltfrmbelt.Visible=TruefrmOptionxhd1a.Visible=Falselblxh1.BackColor=&H8000000Blblxh2.BackColor=&H8000000BEndSub計算機輔助機械設計V帶輪設計全文共147頁,當前為第67頁。PrivateSubForm_KeyPress(KeyAsciiAsInteger)’

功能:用回車鍵代替單擊事件

IfKeyAscii=13ThenCallcmdContinue_Click’13是回車鍵的KeyAscii碼EndSub

PrivateSublblxh1_Click() ’功能:為對象賦值

Picd1a.Visible=True ’Picd1a是圖片框,其上安裝有多個控件:hsbd1,txtd1,-lbld1,hsba,txta,lblaoptionxh=1 ’此賦值語句的作用是:用戶已經選擇了帶型號

xh1=lblxh1.Caption ’為帶型號變量xh1賦值

lblxh1.BackColor=vbWhite’使對象lblxh1的背景色變?yōu)榘咨?/p>

lblxh2.BackColor=&H8000000B’使對象lblxh2的背景色變?yōu)樗{色

hsbd1.Min=Val(Left(d1(1),3))’為水平滾動條hsbd1賦最小值

hsbd1.Max=Val(Right(d1(1),3))’為水平滾動條hsbd1賦最大值計算機輔助機械設計V帶輪設計全文共147頁,當前為第68頁。hsbd1.LargeChange=10 ’為滾動條hsbd1賦最大變化量

hsbd1.SmallChange=1 ’為滾動條hsbd1賦最小變化量

hsbd1.Value=Int((hsbd1.Min+hsbd1.Max)/2)’為滾動條hsbd1賦當前值

lbld1.Caption="小帶輪直徑范圍:"&Str$(hsbd1.Min)&"--"&Str$(hsbd1.Max)’為標簽框lbld1賦標題

lbla.Caption="推薦中心距范圍:"&Str$(Int((hsbd1.Min+hsbd1.Max)/-2*(1+si)*0.7))&"--"&Str$(Int((hsbd1.Min+hsbd1.Max)/=2*(1+si)*2))hsba.Min=Int((hsbd1.Min+hsbd1.Max)/2*(1+si)*0.7)’

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論