諧波齒輪機(jī)構(gòu)的設(shè)計含開題及10張CAD圖
諧波齒輪機(jī)構(gòu)的設(shè)計含開題及10張CAD圖,諧波,齒輪,機(jī)構(gòu),設(shè)計,開題,10,cad
摘 要
諧波傳動是一種比較新型的傳動。從諧波傳動的發(fā)明到現(xiàn)在已經(jīng)經(jīng)歷了幾十年。新的運動轉(zhuǎn)換原理、新的嚙合特性,具有撓性構(gòu)件乃是開發(fā)這種傳動需要專門理論的原因。它與一般齒輪傳動相比,具有傳動比大、體積小、重量輕、精度高、噪音小等優(yōu)點。由于諧波齒輪傳動中存在著能產(chǎn)生可控波動變形的柔輪,因而使之在嚙合理論、幾何算術(shù)、強(qiáng)度計算、結(jié)構(gòu)設(shè)計方面,與傳統(tǒng)的剛性構(gòu)件齒輪傳動在本質(zhì)上有很大的區(qū)別。
Microsoft Visual FoxPro 6.0關(guān)系數(shù)據(jù)庫系統(tǒng)是新一代小型數(shù)據(jù)庫管理系統(tǒng)的杰出代表,它以強(qiáng)大的性能、完整而又豐富的工具、極高的處理速度、友好的界面以及完備的兼容性等特點,備受廣大用戶的歡迎。它具有強(qiáng)大的性能、無與匹敵的速度、完整而豐富的工具、極其友好的圖形用戶界面、簡單的數(shù)據(jù)存取方式、良好的兼容性、獨一無二的跨平臺特性及真正的可編譯性,使系統(tǒng)成為目前最快、最完美的數(shù)據(jù)庫系統(tǒng)。
關(guān)鍵詞:諧波齒輪、齒輪傳動、Visual FoxPro。
目 錄
第1章 諧波齒輪概述 .....................................................1
1.1 概述....................................................................1
1.1.1諧波齒輪技術(shù)的發(fā)展概況............................................ 1
1.1.2諧波齒輪機(jī)構(gòu)的結(jié)構(gòu)組成............................................ 1 1.2 諧波齒輪機(jī)構(gòu)的主要特點..................................................2
1.3 諧波齒輪機(jī)構(gòu)的傳動原理..................................................3
1.4 諧波齒輪傳動的結(jié)構(gòu)分類..................................................6
1.4.1 按變形波數(shù)分類................................................... 6
1.4.2 按波發(fā)生器相對于柔輪的配置分類................................... 6
1.4.3按輪齒的嚙合類型分類.............................................. 6
1.4.4 按傳動級數(shù)分類................................................... 6
1.5 諧波齒輪傳動各部分的結(jié)構(gòu)形式........................................... 7
1.5.1柔輪的結(jié)構(gòu)形式.................................................... 7
1.5.2 剛輪的結(jié)構(gòu)形式................................................... 7
1.5.3 波發(fā)生器的結(jié)構(gòu)形式............................................... 7
第2章 程序設(shè)計.......................................................... 7
2.1 步驟................................................................... 7
2.2 程序流程圖............................................................. 8
2.3 程序................................................................... 9
2.4 VFP編程說明............................................................20
2.4.1 函數(shù)............................................................ 20
2.4.2 程序結(jié)構(gòu)設(shè)計.....................................................21
小結(jié).......................................................................24
謝辭.......................................................................25
參考文獻(xiàn)...................................................................26
第1章 諧波齒輪概述
1.1 概述
1.1.1 諧波齒輪技術(shù)的發(fā)展概況
諧波齒輪傳動的傳動原理與普通齒輪傳動不同,它是利用控制柔性齒輪的彈性變形來實現(xiàn)傳遞運動和動力的。諧波齒輪傳動一般有波發(fā)生器、柔性齒輪和剛性齒輪三個基本構(gòu)件。因為,由波發(fā)生器的作用迫使柔性齒輪所產(chǎn)生的變形波是一個基本對稱的簡諧波,故稱這種機(jī)械傳動形式為諧波傳動。
諧波齒輪傳動是諧波傳動中的一種主要結(jié)構(gòu)類型;它是以齒輪作為基本元件的諧波傳動形式。此外,諧波齒輪還包括:諧波摩擦傳動、諧波螺旋傳動和諧波無級變速傳動等結(jié)構(gòu)類型。
我過于60年代中期,國內(nèi)有關(guān)的研究機(jī)構(gòu)開始引進(jìn)了諧波傳動這項新技術(shù),并開展了該項目的研究工作。70年代末,我國許多的工業(yè)部門、機(jī)械研究所和有關(guān)的工科院校都先后對諧波齒輪傳動進(jìn)行了理論和試驗研究以及設(shè)計試制等工作,研制出了一些性能較好的諧波齒輪減速器。自1980年起,我國也開始了諧波齒輪的標(biāo)準(zhǔn)化和系列化工作。經(jīng)過約5年時間的研究試制,于1985年制訂了中小功率的通用諧波齒輪減速器的標(biāo)準(zhǔn)系列。從而,使我國成為世界上具有通用諧波齒輪減速器標(biāo)準(zhǔn)的第四個國家。
1.1.2 諧波齒輪機(jī)構(gòu)的結(jié)構(gòu)組成
諧波齒輪機(jī)構(gòu)通常由波發(fā)生器H、柔輪g和剛輪b(采用具有剛性齒輪的行星機(jī)構(gòu)相類似的符號來表示)三個基本構(gòu)件所組成。如下圖所示:
1-波發(fā)生器 2-柔輪 3-剛輪
在諧波傳動中,波發(fā)生器H旋轉(zhuǎn)一圈,柔輪上某一點變形的循環(huán)次數(shù),叫做柔輪的變形波數(shù),用符號u表示;即變形波數(shù)u應(yīng)按柔輪g與剛輪b同時嚙合的區(qū)域數(shù)目來確定。在一般情況下,可以采用單波(u=1)、雙波(u=2)、三波(u=3)、四波(u=4)傳動。但由于受到柔輪g材料許用應(yīng)力的限制,通常大都采用的是雙波(u=2)和三波(u=3)傳動;目前,應(yīng)用較廣泛的仍然是雙波(u=2)傳動。而剛輪b和柔輪g的齒數(shù)差,一般應(yīng)取為柔輪g的變形波數(shù)u,即Z- Z=u;或者在某寫情況下取成u的倍數(shù)。
柔輪的變形波數(shù)u和剛輪b與柔輪g的齒數(shù)差Z=Z-Z的選擇應(yīng)按柔輪的強(qiáng)度條件和傳動比的大小確定。對于傳動比i>80的剛制柔輪g,采用變形波數(shù)u=2和齒數(shù)差Z=︱Z-Z︱=2較為合理。對于傳動比i>120的情況,當(dāng)齒數(shù)差Z=︱Z-Z︱=3時,則了采用柔輪的變形波數(shù)u=3。
當(dāng)變形波數(shù)u=2,而齒數(shù)差Z=Z-Z=0 (零齒差)時,這種零齒差的齒輪副嚙合也是完全可以實現(xiàn)的.在這種情況下,諧波齒輪減速器便轉(zhuǎn)化為諧波齒輪連軸器;即成為柔輪g與輸出剛輪b的輪齒相互嚙合的連接方式。
1.2 諧波齒輪機(jī)構(gòu)的主要特點
由于諧波齒輪傳動中具有一個柔性構(gòu)件(柔輪g),所以,與具有剛性構(gòu)件的行星齒輪傳動相比較,諧波齒輪機(jī)構(gòu)具有以下幾個主要特點:
a. 結(jié)構(gòu)簡單,重量輕,體積小.由于諧波齒輪機(jī)構(gòu)的零件數(shù)目較少,其主要零件只有剛輪b、柔輪g和波發(fā)生器H三個。所以,在相同的工作條件下,諧波齒輪傳動的體積約為普通齒輪傳動體積的1/3~1/2左右。零件數(shù)約少一半,結(jié)構(gòu)簡單、重量也減少了許多。
b. 單級傳動比大,且傳動比范圍寬。一般單級諧波齒輪機(jī)構(gòu)的傳動比為i=60~100。當(dāng)采用行星式波發(fā)生器H時,其傳動比為150~4000;而采用雙級或復(fù)波諧波傳動時,則其傳動比i可達(dá)106。
c. 同時參與嚙合的齒數(shù)多。在承受載荷情況下,雙波傳動同時嚙合齒數(shù)可達(dá)總齒數(shù)的30%~50%;采用三波傳動則更多。而普通圓柱齒輪同時嚙合齒數(shù)一般為兩對左右,即重合度ε=1~2。不過,應(yīng)該指出:諧波齒輪機(jī)構(gòu)工作時同時嚙合的齒輪與其所選用的波發(fā)生器的結(jié)構(gòu)形式、嚙合參數(shù)和所轉(zhuǎn)矩的大小有關(guān),故不能一概而論。由于諧波齒輪傳動同時參與嚙合的輪齒數(shù)目多,即可承受載荷的輪齒數(shù)目也多,故其傳動平穩(wěn),承載能力大。
d. 傳動精度高。由于諧波機(jī)構(gòu)同時嚙合的齒數(shù)較多,其輪齒誤差能相互補償一部分。一般情況下,諧波齒輪傳動與相同精度等級的普通齒輪傳動相比,其傳動精度較高,有的精度可達(dá)4倍左右。
e. 齒面磨損小而且均勻。當(dāng)正確選擇嚙合參數(shù)時,柔輪的輪齒相對于剛輪的輪齒將沿著一條滑動路徑很短的軌跡移動。此時,輪齒間的相對滑動速度要比剛性齒輪傳動小許多倍。另外,兩輪齒的嚙合接近于面接觸。因此,在諧波機(jī)構(gòu)的傳動過程中,輪齒工作面磨損小,而且均勻。
f. 傳動效率高。諧波齒輪機(jī)構(gòu)的傳動效率與其結(jié)構(gòu)、加工精度、表面粗糙度和潤滑有關(guān)。當(dāng)傳動比|i|=80~300時,其單級的傳動效率約為η=0.7~0.9。一般,諧波機(jī)構(gòu)本身是不能自鎖的,故它既可作為減速器,又可作為增速器。
g. 空回量小,并可實現(xiàn)無側(cè)隙傳動。在諧波齒輪機(jī)構(gòu)的傳動過程中,由于輪齒的相互摩擦而致使其產(chǎn)生空回量。但其空回量的大小可借助于調(diào)整波發(fā)生器的尺寸(比如凸輪的長、短軸)來進(jìn)行調(diào)整;甚至可以調(diào)整輪齒間的側(cè)隙為零,以保證獲得無側(cè)隙傳動。
h. 運動平穩(wěn),無沖擊。由于同時參與嚙合的齒數(shù)多,兩輪齒的嚙合接近于面接觸。而且,柔輪的嚙入和嚙出是隨著其本身的變形而逐漸進(jìn)入和退出剛輪齒槽間的,因此,其運動平穩(wěn),無沖擊現(xiàn)象。
i. 傳動的同軸性好。由于諧波機(jī)構(gòu)中的輸入軸與輸出軸大都位于同一軸線上,所以,該傳動的同軸性能良好。
j. 可實現(xiàn)向密封空間傳遞運動或動力。由于柔輪被固定后,它既可用作為封閉傳動裝置的殼體,又可以產(chǎn)生彈性變形,即完成錯齒運動,從而達(dá)到傳遞運動或動力的目的。因此,它可用在操縱高溫、高壓的管道,以及用來驅(qū)動在高真空、有原子輻射或其他有害介質(zhì)空間的傳動機(jī)構(gòu)。這是現(xiàn)有的其它傳動機(jī)構(gòu)所不能及的。
盡管諧波齒輪機(jī)構(gòu)具有上述的優(yōu)點,但也存在著一些缺點。它的缺點如下:
a. 諧波齒輪傳動的傳動比下限值較高,當(dāng)采用剛制柔輪時,其單級傳動比不得小于60。目前,雖然也可能見到傳動比為35~60的諧波齒輪機(jī)構(gòu),但它們?nèi)捎冒嘿F的特種鋼制造的。因為,其傳動比的下限值受到柔輪工作時的最大應(yīng)力σ的限制。一般情況是:傳動比i值越大,采用諧波齒輪機(jī)構(gòu)的傳動效果越好。但是,其單級傳動比的上限值又受到嚙合輪齒的最小模數(shù)值和輪齒嚙入深度的限制,故其傳動比的上限值為:350~400。
b. 柔輪和撥發(fā)生器的制造較復(fù)雜,需要專門的設(shè)備,這樣就給單件生產(chǎn)和修理工作帶來了困難,因而使其制造成本較高。但是,在專業(yè)化的工廠中,進(jìn)行大批量的生產(chǎn)時,由于采用專門的工裝夾具和新的工藝,則可使諧波齒輪機(jī)構(gòu)的制造成本比行星齒輪機(jī)構(gòu)的制造成本低。
c. 諧波齒輪機(jī)構(gòu)一般做成相交軸的傳動結(jié)構(gòu)。
由上述可見,諧波齒輪傳動與普通齒輪傳動、蝸桿蝸輪傳動等比較,具有許多獨特的優(yōu)點,而且日益得到人們的重視和廣泛應(yīng)用。它非常適用于作為大傳動比的齒輪減速器和機(jī)械分度機(jī)構(gòu)、伺服裝置、雷達(dá)裝置及自動控制等高精度的傳動系統(tǒng)中。在機(jī)械自動化方面,可用于數(shù)控機(jī)床的傳動裝置,回轉(zhuǎn)機(jī)構(gòu)的減速器。在軍事裝備方面,可用作火炮瞄準(zhǔn)機(jī)的減速裝置、坦克和自行火炮炮塔回轉(zhuǎn)機(jī)的減速器、無線電通訊天線的傳動機(jī)構(gòu)、雷達(dá)天線驅(qū)動系統(tǒng)的傳動機(jī)構(gòu)、飛機(jī)螺旋槳的強(qiáng)力諧波傳動機(jī)構(gòu)。在航天飛行方面,可用諧波傳動馬達(dá)代替火箭中的液體原動機(jī)和人造衛(wèi)星儀器上的諧波馬達(dá)等。
1.3 諧波齒輪機(jī)構(gòu)的傳動原理
對于采用凸輪撥發(fā)生器的諧波齒輪機(jī)構(gòu),在裝配前,柔輪的原始剖面為圓形。柔輪和剛輪的齒矩p(周節(jié))相等,但剛輪的齒數(shù)比柔輪的齒數(shù)要多。波發(fā)生器的橢圓長軸比未變形柔輪的內(nèi)圓直徑略大/當(dāng)撥發(fā)生器裝入柔輪的內(nèi)圓時,迫使柔輪產(chǎn)生彈性變形,而使其變?yōu)闄E圓形。當(dāng)剛輪固定,波發(fā)生器為輸入件,柔輪為輸出件時,其傳動原理為:
如下圖所示:
當(dāng)波發(fā)生器在原動機(jī)的驅(qū)動下于柔輪內(nèi)旋轉(zhuǎn)時,就迫使柔輪不斷地產(chǎn)生變形,于是,柔輪的輪齒就在變形的過程中逐漸進(jìn)入或退出剛輪的齒間。在波發(fā)生器的橢圓長軸方向,柔輪與剛輪成為完全嚙合狀態(tài)(簡稱嚙合);而在波發(fā)生器的橢圓短軸方向,則處于完全脫開狀態(tài)(簡稱脫開)。而處于波發(fā)生器長軸與短軸之間(如45方向)的輪齒,沿柔輪軸長的不同區(qū)段內(nèi),有的輪齒逐漸進(jìn)入剛輪的齒間,而處于半嚙合狀態(tài),稱為嚙入;有的齒輪則逐漸退出剛輪的齒間,而處于半脫開狀態(tài),稱為嚙出。由于波發(fā)生器在柔輪內(nèi)進(jìn)行連續(xù)轉(zhuǎn)動,便使得兩輪輪齒的嚙入、嚙合、嚙出、脫開這四種狀態(tài)不斷地改變各自原來的工作情況,而產(chǎn)生所謂的錯齒運動。正是由于存在著這種相互的錯齒運動,才能把輸入運動變成為輸出運動。例如,將波發(fā)生器輸入的角速度ω,經(jīng)減速傳動而變成柔輪輸出的角速度ω,此時,剛輪固定不動,柔輪便向著與波發(fā)生器旋轉(zhuǎn)相反的方向轉(zhuǎn)動。對于雙波傳動(u=2)的運動規(guī)律是:波發(fā)生器H旋轉(zhuǎn)一周(周長2r),柔輪相對于剛輪在圓周方向轉(zhuǎn)過兩個齒矩2p的弧長;若H旋轉(zhuǎn)二分之一圈時,柔輪就轉(zhuǎn)過一個齒矩p的弧長;若H旋轉(zhuǎn)四分之一圈時,則柔輪便轉(zhuǎn)過p/2(p為齒矩)的弧長;依次類推。
在旋轉(zhuǎn)波發(fā)生器迫使柔輪產(chǎn)生彈性變形的過程中,對于柔輪上各點的運動情況簡述如下:
根據(jù)柔輪的結(jié)構(gòu)特點,可將柔輪筒體視為一個圓柱彈性殼體來進(jìn)行分析。
通過未變形柔輪壁厚中間線的圓柱面,稱為柔輪的原始中面。柔輪變形后的中面,稱為柔輪變形中面。而垂直于圓柱殼體軸線的截面與中面的交線,稱為柔輪的中線;以符號r表示未變形時的中線半徑。
首先,假定在嚙合傳動各構(gòu)件的相互關(guān)系為:柔輪g固定,波發(fā)生器H輸入,剛輪b輸出。如下圖所示:
在彈性力學(xué)理論中,通常應(yīng)研究殼體中面上點的位移,即圓周切向的位移v、徑向方向的位移w和軸向位移u。因軸向位移u對諧波傳動的運動學(xué)研究影響不大,因此,可將柔輪變形的研究簡化為平面問題,故僅需要分析柔輪中線上的切向位移v和徑向位移w。
當(dāng)忽略柔輪壁厚δ的影響,波發(fā)生器可使柔輪按預(yù)定的形狀產(chǎn)生變形,即有
ω=?() (1)
式中,為自變形長軸開始的未變形柔輪中線上點的角位移。
對于雙波傳動(u=2),?()是以為周期的函數(shù)關(guān)系。
根據(jù)柔輪中線不伸長的假設(shè)條件(因柔輪受載荷變形后,其中線伸長量極微?。瑒t可使得切向的位移為
=-=?() (2)
對于雙波傳動(u=2),當(dāng)波發(fā)生器以角速度ω順時針旋轉(zhuǎn)時,其角位移為=wt,則柔輪中線上的點相對于長軸位置的角位移量為-=-wt;t為波發(fā)生器旋轉(zhuǎn)的時間。此時,由(1)、(2)式可得
W= ?(- wt)
= ?(-wt) (3)
上式確定了柔輪中線上與起始長軸位置呈一夾角的點的運動軌跡。若取=0(即A點),則當(dāng)波發(fā)生器的轉(zhuǎn)角=0~180時,柔輪中線上的A點將沿著A、A、A、A、A的封閉環(huán)行軌跡運動。該環(huán)行的形狀取決于位移w和v值的大小。而固連于A點的柔輪的齒將隨A點一起運動,從而,推動剛輪沿著與波發(fā)生器相同的方向旋轉(zhuǎn)。當(dāng)波發(fā)生器轉(zhuǎn)一圈時,A點將沿環(huán)行軌跡轉(zhuǎn)過兩圈,即剛輪相對于被固定的柔輪錯過兩個輪齒。
應(yīng)該指出,盡管柔輪上各點與起始長軸的相對位置不同,即各點的起始相位角不同,而其中線上各點的運動軌跡都相同。正因為中線上各點的起始相位角不同,才使得柔輪的各個輪齒處于不同的嚙合狀態(tài)。
1.4 諧波齒輪傳動的結(jié)構(gòu)分類
1.4.1 按變形波數(shù)可分為
a. 單波傳動 其齒數(shù)差為1。由于在該諧波傳動中,其柔輪變形的不對稱性和嚙合作用力的不平衡,故單諧波傳動迄今在國內(nèi)外應(yīng)用較少。
b. 雙波傳動 其齒數(shù)差為2。該諧波傳動的特點是柔輪產(chǎn)生彈性變形時,其表面應(yīng)力較小,易獲得大的傳動比,結(jié)構(gòu)較簡單、傳動效率較高。因而,雙波傳動應(yīng)較廣泛。
c. 三波傳動 其齒數(shù)差為3。該諧波傳動的特點是徑向力較小,內(nèi)力較平衡,對中性能好;偏心誤差較小。但柔輪的應(yīng)力較大,在具有相同的轉(zhuǎn)速下,該傳動中的柔輪經(jīng)受反復(fù)彎曲的次數(shù)較多,因而對其疲勞壽命有影響。而且,其結(jié)構(gòu)較為復(fù)雜。所以,在一般情況下,仍較少采用三諧波傳動。
1.4.2 按波發(fā)生器相對于柔輪的配置可分為
a. 具有內(nèi)波發(fā)生器的諧波齒輪傳動 能充分利用空間,徑向尺寸小,結(jié)構(gòu)緊湊,制造安裝方便。因此,一般大都采用內(nèi)波發(fā)生器的諧波傳動。
b. 具有外波發(fā)生器的諧波齒輪傳動 該結(jié)構(gòu)的外形尺寸較大,轉(zhuǎn)動慣量也大;因而,它不適用于高速的傳動。所以,目前只在個別的情況下,才采用外波發(fā)生器的諧波齒輪傳動,或?qū)⑵鋺?yīng)用于諧波螺旋傳動。
1.4.3 按輪齒的嚙合類型可分為
a. 徑向嚙合式諧波齒輪傳動 其特點是:嚙合齒輪副的輪齒是沿著圓柱形柔輪和剛輪的母線方向分布,即其輪齒方向與傳動的回轉(zhuǎn)軸線相平行,因此,該諧波傳動屬于平面嚙合的齒輪機(jī)構(gòu)。
b. 端面嚙合式諧波齒輪傳動 其特點是:柔輪為圓周帶有端面齒的柔性薄板圓盤,剛輪為帶有端面齒的圓盤,而波發(fā)生器一般為帶有滾動體的波狀圓盤,在波發(fā)生器的作用下,迫使柔輪的輪齒與剛輪相嚙合。因此,該諧波傳動屬于空間嚙合的齒輪機(jī)構(gòu)。
1.4.4 按傳動級數(shù)來分類
a. 單級諧波齒輪傳動 在諧波齒輪傳動中,僅由一個柔輪和一個剛輪所組成的嚙合齒輪副的傳動,稱為單級諧波齒輪傳動。其結(jié)構(gòu)簡單、傳動范圍廣。
b. 雙級諧波齒輪傳動 在諧波齒輪傳動中,由兩個簡單諧波齒輪傳動串聯(lián)而成的組合式諧波齒輪機(jī)構(gòu),稱為雙級諧波齒輪傳動。通常,有徑向串聯(lián)式雙級諧波機(jī)構(gòu)和軸向串聯(lián)式雙級諧波機(jī)構(gòu)兩種形式。
c. 封閉諧波齒輪傳動(復(fù)波傳動) 在諧波齒輪傳動中,若采用一個差動諧波齒輪機(jī)構(gòu)(W=2),再用一個簡單諧波齒輪機(jī)構(gòu)作為封閉機(jī)構(gòu),且將差動機(jī)構(gòu)中的任何兩個基本構(gòu)件與其連接起來,同時也就消除了差動諧波機(jī)構(gòu)的一個自由度。由此便成了一個自由度W=1的組合式諧波齒輪機(jī)構(gòu),稱為封閉諧波齒輪機(jī)構(gòu)。它的特點是:結(jié)構(gòu)簡單、緊湊,傳動精度高,傳動比很大。
1.5 諧波齒輪傳動各部分的結(jié)構(gòu)形式
1.5.1 輪的結(jié)構(gòu)形式
柔輪的結(jié)構(gòu)形式與諧波傳動的結(jié)構(gòu)方案選擇有關(guān)。柔輪和輸出軸的連接方式直接影響諧波傳動的穩(wěn)定性和工作性能。概括有三種類型:杯形、環(huán)行、特殊形式。
1.5.2 輪的結(jié)構(gòu)形式
剛輪的結(jié)構(gòu)形式,主要有環(huán)行內(nèi)齒剛輪和帶凸緣內(nèi)齒剛輪兩種。
1.5.3 發(fā)生器的結(jié)構(gòu)形式
波發(fā)生器是迫使柔輪發(fā)生柔性變形的重要元件,按變形波數(shù)的不同,常有雙波和三波兩種。常見的機(jī)械式波發(fā)生器的結(jié)構(gòu)形式有下列三種:滾輪式波發(fā)生器、圓盤式波發(fā)生器和凸輪波發(fā)生器。
第2章 程序設(shè)計
本程序采用Visual FoxPro編制。Visual FoxPro是Microsoft公司推出的全新PC平臺關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。它具有強(qiáng)大的性能、無與匹敵的速度、完整而豐富的工具、極其友好的圖形用戶界面、簡單的數(shù)據(jù)存取方式、良好的兼容性、獨一無二的跨平臺特性及真正的可編譯性,使系統(tǒng)成為目前最快、最完美的數(shù)據(jù)庫系統(tǒng)。
2.1 步驟
2.1.1 將計算中所需要的數(shù)據(jù)資源輸入表中
2.1.2 將各個計算步驟分別制作成表單
2.1.3 將最后結(jié)果制作成表單顯示出來
2.1.4 編制主程序
2.1.5 系統(tǒng)部件的組裝
a. 建立項目管理器
b. 添加數(shù)據(jù)
c. 添加表單文檔
d. 添加應(yīng)用程序
e. 添加位圖文件
f. 設(shè)置項目信息內(nèi)容
g. 連編可獨立執(zhí)行的exe文件
2.2 程序流程圖
開始
輸入原始數(shù)據(jù)
計算并輸出齒數(shù)Zg,Zb
選擇柔輪及剛輪的材料
輸出柔輪及剛輪的力學(xué)性能
輸入系數(shù)K,Pp,ε,Ch,b
計算并輸出模數(shù)
由標(biāo)準(zhǔn)模數(shù)選擇模數(shù)m
計算并輸出柔輪的幾何參數(shù)
計算并輸出剛輪的幾何參數(shù)
計算并輸出諧波傳動的嚙合參數(shù)
選擇輪齒過渡曲線的深度系數(shù)
計算并輸出柔輪的幾何尺寸dfg,dr,dm,dag
hn*+cp*≤2ha*+c*
1=(hn*+cp*)·m ≤
計算并輸出剛輪的幾何參數(shù)dab,dfb和制造中心距aob,
插齒刀齒頂圓直徑dao
0.5(dfb-dag)―wo*m≥0.15m
計算并輸出波發(fā)生器的幾何參數(shù)
柔輪的疲勞強(qiáng)度驗算
n≥np
諧波齒輪機(jī)構(gòu)的傳動效率計算
最終結(jié)果顯示
結(jié)束
2.3 程序
2.3.1 主程序
2.3.2 部分程序代碼
a. 齒數(shù)計算表單中按鈕“計算”的代碼:
i=THISFORM.Text1.Value
u=THISFORM.Text4.Value
THISFORM.Text5.Value=ROUND(u*i,1)
Zg=THISFORM.Text5.Value
THISFORM.Text6.Value=ROUND(Zg+u,1)
按鈕“下一步”的代碼:
public Zg
Zg=thisform.Text5.Value
public T22
T22=thisform.Text2.Vslue
public Zb
Zb=thisform.Text6.Value
public i
i= thisform.Text1.Value
public u
u= thisform.Text4.Value
do form D:\諧波齒輪\時鋮\表單3.scx
release thisform
b.選取柔輪材料表單中按鈕“下一步”的代碼:
public zmg11
zmg11=val(thisform.txt彎曲疲勞.Value)
public tao11
tao11=val(thisform.txt剪切疲勞.Value)
do form D:\諧波齒輪\時鋮\表單6.scx
release thisform
c. 初步確定嚙合模數(shù)m表單中按鈕“計算”的代碼
K= thisform.Text3.Value
Pp= thisform.Text4.Value
s= thisform.Text5.Value
Ch= thisform.Text6.Value
b1=THISFORM.Text7.Value
thisform.Text8.Value=ROUND((20/Zg)*(((K*T22)/(s*b1*Ch*Pp))^(1/3)),3)
按鈕“下一步”的代碼
public m
m= thisform.txt1第一系列. Value
b1=thisform.Text7.Value
do form D:\諧波齒輪\時鋮\表單4.scx
release thisform
d. 柔輪幾何參數(shù)計算表單中按鈕“下一步”的代碼:
thisform.Text1.Value=round(Zg*m,2)
dg= thisform.Text1.Value
thisform.Text2.Value=round(0.012*dg,2)
zgm2= thisform.Text2.Value
if zgm2﹤1
thisform.Text3.Value=1
else
thisform.Text3.Value=round(zgm2,0)
endif
zgm=thisform.Text3.Value
thisform.Text4.Value=round(0.8*zgm,2)
zgm1=thisform.Text4.Value
thisform.Text9.Value=round(b1*dg,2)
b=thisform.Text9.Value
thisform.Text5.Value=round(0.2*b,0)
thisform.Text6.Value=round(1.125*dg,2)
thisform.Text7.Value=round(0.5*dg,2)
thisform.Text8.Value=round(10*m,2)
按鈕“下一步”的代碼:
public L
L=thisform.Text6.Value
public b
b=thisform.Text9.Value
public dg
dg=thisform.Text1.Value
public c1
c1=thisform.Text5.Value
public zgm1
zgm1=thisform.Text4.Value
public zgm
zgm=thisform.Text3.Value
public dl
dl=thisform.Text7.Value
public rl
rl=thisform.Text8.Value
do form D:\諧波齒輪\時鋮\表單5.scx
release thisform
e. 剛輪幾何參數(shù)計算表單中按鈕“計算”的代碼:
thisform.Text1.Value=round(m*Zb,2)
thisform.Text2.Value=round(6*m,2)
thisform.Text7.Value=round(10*m,2)
zgmb=val(thisform.Text3.Value)
按鈕“下一步”的代碼:
public db
db=thisform.Text1.Value
public zgmb
zgmb=thisform.Text3.Value
do form D:\諧波齒輪\時鋮\表單8.scx
release thisform
f. 嚙合參數(shù)計算表單中按鈕“計算”的代碼:
thisform.Text10.value=round(0.0004*(i-60)*m,4)
jt=thisform.Text9.Value
j0=thisform.Text10.Value
thisform.Text11.Value=round(jt+j0,4)
jmax=thisform.Text11.Value
thisform.Text12.Value=round(0.89+0.00008*Zg+2*jmax/m,4)
w01=thisform.Text12.Value
thisform.Text13.Value=round(w01*m,3)
thisform.Text14.Value=round(1.35-w01)/((0.85/(zg(1/3)))-0.04),4)
xg=thisform.Text14.Value
thisform.Text15.Value=round(xg+w01-1,4)
thisform.Text16.Value=round(4*w01-2.48-(4.6-4*w01)*0.001*zg,4)
hn1=thisform.Text16.Value
thisform.Text17.Value=round(hn1*m,4)
按鈕“選取”的代碼:
xg=thisform.Text14.Value
if xg=1
cp=0.25
else
if xg=2
do case
case Zg<200
cp=round(0.000001*Zg*Zg-0.0009*Zg+0.418,2)
case Zg<300
cp=round(-0.000001*Zg*Zg+0.00024*Zg+0.27,2)
case Zg<400
cp=round(-0.00013*Zg+0.309,2)
case Zg<500
cp=0.257
endcase
else
if xg=3
do case
case Zg<200
cp=round(0.000005*Zg*Zg-0.00296*Zg+0.784,2)
case Zg<300
cp=round(0.000006*Zg*Zg-0.0035*Zg+0.86,2)
case Zg<400
cp=round(-0.0004*Zg+0.47,2)
case Zg<500
cp=0.31
endcase
else
if xg
do case
case Zg<200
cp=round(0.000017*Zg*Zg-0.0082*Zg+1.538,2)
case Zg<300
cp=round(0.000001*Zg*Zg-0.00183*Zg+0.88,2)
case Zg<500
cp=round(0.000002*Zg*Zg-0.001765*Zg+0.82,2)
endcase
else
if xg=5
cp=round(0.000005*Zg*Zg-0.004367*Zg+1.52,2)
else
if xg=6
cp=round(0.000004*Zg*Zg-0.00461*Zg+1.850625,2)
else
if3=y2
messagebox(“驗算合格!繼續(xù)下一步運算!”,4+48+0,””)
else
messagebox(“驗算不合格!”,0+32+0,””)
endif
i. 柔輪的疲勞強(qiáng)度驗算表單中按鈕“計算”的代碼:
do case
case bta=30
czgm=1.592
ctao=0.565
case bta=35
czgm=1.986
ctao=0.628
endcase
thisform.Text1.Value=round(1.25*1.3*czgm*4*w0*210000*zgm/(dm*dm),2)
zgma=thisform.Text1.Value
thisform.Text5.Value=round(L-((b/2)+c1),0)
11=thisform.Text5.Value
thisform.Text3.Value=round(1.25*1.3*ctao*4*w0*210000*zgm/(dm*11),2)
thisform.Text4.Value=round(1.3*1.6*2000*T22/(3.1416*dm*dm*zgm),2)
t=thisform.Text3.Value
tt=thisform.Text4.Value
thisform.Text2.Value=round(0.5*(t+tt),2)
taoa=thisform.Text2.Value
thisform.Text6.Value=round(zgm11/(2.0*zgma),2)
thisform.Text7.Value=round(tao11/(0.75*taoa+0.2*taoa),2)
nzgm=thisform.Text6.Value
ntao=thisform.Text7.Value
thisform.Text8.Value=round(nzgm*ntao/sqrt(nzgm*nzgm+0.7*ntao*nato),2)
按鈕“驗算”的代碼:nn= thisform.Text8.Value
if nn>=1.5
messagebox(“驗算合格!繼續(xù)下一步運算!”,4+48+0,””)
else
messagebox(“驗算不合格!”,0+32+0,””)
endif
2.4 VFP編程說明
2.4.1 函數(shù)
VFP程序設(shè)計語言中的函數(shù)與數(shù)學(xué)上的函數(shù)沒有什么區(qū)別,使用函數(shù)要有參數(shù)(自變量),可以從函數(shù)得到一個返回值(因變量)。而從程序設(shè)計的角度來看,函數(shù)是子程序的一種,它能完成一種特定的運算。
VFP函數(shù)有系統(tǒng)函數(shù)和用戶自定義的函數(shù)。本設(shè)計中,主要用到的是系統(tǒng)函數(shù),VFP提供了大約380多個系統(tǒng)函數(shù),有數(shù)值函數(shù)、字符處理函數(shù)、表和數(shù)據(jù)庫函數(shù)、日期時間函數(shù)、類型轉(zhuǎn)換函數(shù)、測試函數(shù)、菜單函數(shù)、窗口函數(shù)、數(shù)組函數(shù)、SQL查詢函數(shù)、位運算函數(shù)、對象函數(shù)、文件管理函數(shù)以及系統(tǒng)調(diào)用函數(shù)等14類。本設(shè)計中主要用到的函數(shù)將列在下表。
常用函數(shù)
函數(shù)格式
說明
COS(表達(dá)式)
余弦函數(shù)
SIN(表達(dá)式)
正弦函數(shù)
PI()
求圓周率
ROUND(表達(dá)式1、表達(dá)式2)
按表達(dá)式2指定的小數(shù)位求表達(dá)式1四舍五入后的值
SQRT(表達(dá)式)
求平方根
TAN(表達(dá)式)
正切函數(shù)
ATAN(表達(dá)式)
反正切函數(shù)
ALLTRIM(表達(dá)式)
去掉字符串表達(dá)式的前導(dǎo)空格和尾隨空格
STR(表達(dá)式,n,m)
轉(zhuǎn)化數(shù)值表達(dá)式為數(shù)字字符串
VAL(表達(dá)式)
返回數(shù)字字符串對應(yīng)的數(shù)值
2.4.2 程序結(jié)構(gòu)設(shè)計
VFP提供了多種結(jié)構(gòu)的程序設(shè)計,與其它的語言一樣有順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)等。每一種結(jié)構(gòu)程序中,又可以用不同的語句來實現(xiàn)相同的目的?,F(xiàn)在就本設(shè)計中所用到的程序結(jié)構(gòu)語句簡單的介紹一下。
A. 順序結(jié)構(gòu)程序設(shè)計
Ⅰ)賦值語句:
STORE〈表達(dá)式〉TO〈名稱列表〉或〈名稱〉=〈表達(dá)式〉
Ⅱ)程序結(jié)束語句:
RELEASE
B. 選擇結(jié)構(gòu)程序設(shè)計
Ⅰ)單條件選擇語句:
IF<條件>
[語句列1]
[ELSE
[語句列2]]
NEDIF
說明:
a. IF、ELSE、ENDIF必須各占一行。每一行IF都必須有一個ENDIF與之對應(yīng),即IF和ENDIF必須成對出現(xiàn)。
b. ELSE子句是可選的。
c. <條件>可以是條件表達(dá)式或邏輯常量,根據(jù)<條件>的邏輯值,進(jìn)行判斷。
d. 如果<條件>為真(.T.),就執(zhí)行[語句列1]。如果<條件>為假(.F.),若有ELSE子句,則程序會執(zhí)行ELSE部分的[語句列2];若無ELSE子句,則程序會直接轉(zhuǎn)到ENDIF之后的語句繼續(xù)執(zhí)行。
e. [語句列1]和[語句列2]中還可以包括IF語句,稱為IF語句嵌套。要注意,每次嵌套中的IF語句必須與ENDIF成對出現(xiàn)。
Ⅱ)多分支條件選擇語句DO CASE
DO CASE
CASE<條件1>
[<語句列1]
[CASE<條件2>
[<語句列>]]
…
[OTHERWISE
[<其他語句列>]]
ENDCASE
說明:
a. DO CASE、CASE、OTHERWISE和ENDCASE必須各占一行。每個DO CASE必須有一個ENDCASE與之對應(yīng),即DO CASE和ENDCASE必須成對出現(xiàn)。
b. <條件1>可以是條件表達(dá)式或邏輯常量。
c. 在執(zhí)行DO CASE語句時,依次判斷各<條件>是否滿足。若<條件1>的值為真(.T.),就執(zhí)行相應(yīng)的[<語句列1>],直到遇到下一個CASE、OTHERWISE或ENDCASE。
d. 相應(yīng)的[<語句列1>]執(zhí)行后不再判斷其他<條件>,直接轉(zhuǎn)向ENDCASE后面的語句。因此,在一個DO CASE結(jié)構(gòu)中,最多只能執(zhí)行一個CASE子句。
e. 如果沒有一個條件為真,就執(zhí)行OTHERWISE后面的[<其他語句列>],直到ENDCASE。如果沒有OTHERWISE,則不作任何操作就轉(zhuǎn)向ENDCASE后面的語句。
f. 語句列中可以嵌套各種控制結(jié)構(gòu)的命令語句。
C. 循環(huán)結(jié)構(gòu)程序設(shè)計
Ⅰ)當(dāng)型循環(huán)命令DO WHILE
DO WHILE<條件>
[<命令列>]
[EXIT]
[LOOP]
ENDDO
說明:
a. <條件>可以是條件表達(dá)式或邏輯常量。根據(jù)<條件>的邏輯進(jìn)行判斷,如果<條件>的值為.T.,則執(zhí)行DO WHILE和ENDDO之間的循環(huán)體。
每執(zhí)行一遍循環(huán)體,程序自動返回到DO WHILE語句,判斷依次<條件>。
b. <命令列>是指定<條件>為
收藏