耿建璞,崔洪斌,劉慶華,曹 侃,劉新勇,曹朋賢
(1.河北科技大學(xué)機(jī)械工程學(xué)院,河北石家莊 050018;2.石家莊國(guó)泰欣安科技有限公司,河北石家莊 050000)
橋梁支座是連接橋梁上部橋體和下部橋墩的重要組成部分,其功能是把橋梁上部結(jié)構(gòu)反力和變形可靠地傳遞給橋墩,同時(shí)能適應(yīng)梁體因溫度、混凝土收縮徐變及載荷作用下引起的水平位移和撓曲引起的梁體轉(zhuǎn)動(dòng)。盆式橡膠支座是橋梁結(jié)構(gòu)中應(yīng)用較為廣泛的一種支座。隨著近幾年國(guó)家大力發(fā)展橋梁建筑產(chǎn)業(yè),市場(chǎng)競(jìng)爭(zhēng)日趨激烈,盆式橡膠支座制造企業(yè)為了能夠在競(jìng)爭(zhēng)中立于不敗之地,必須要提高設(shè)計(jì)水平,快速推出自己新的產(chǎn)品?;谶@樣的背景,通過(guò)Visual Basic利用SolidWorks提供的二次開(kāi)發(fā)接口,在SolidWorks平臺(tái)上實(shí)現(xiàn)盆式橡膠支座的零件、裝配體三維參數(shù)化建模。
SolidWorks提供幾百個(gè)API函數(shù),可適用于SolidWorks二次開(kāi)發(fā)。SolidWorks二次開(kāi)發(fā)技術(shù)有2種:一種是COM技術(shù),生成Dll文件,作為插件插入SolidWorks中,該技術(shù)可以使用較多的Solid-Works API;另一種是OLE技術(shù),生成exe格式的文件。
SolidWorks API對(duì)象的梗概如圖1所示,從圖中看出SldWorks對(duì)象位于圖中最頂端,是Solid-Works API最高層對(duì)象,通過(guò)其下的6個(gè)主要模塊,可以直接或間接訪問(wèn)API中所有對(duì)象。用戶利用API函數(shù)可以方便地建立適合自己的功能模塊,并與SolidWorks連接在一起,實(shí)現(xiàn)對(duì)SolidWorks的二次開(kāi)發(fā)[1-2]。
圖1 SolidWorks API對(duì)象梗概Fig.1 Synopsis of solidworks API object
Visual Basic,VBA,C,C++以及SolidWorks宏文件等都可作為SolidWorks二次開(kāi)發(fā)的工具。筆者采用Visual Basic對(duì)SolidWorks進(jìn)行二次開(kāi)發(fā),Visual Basic是面向 Windows的應(yīng)用程序開(kāi)發(fā)工具,易學(xué)易用,由于它采用面向?qū)ο蟪绦蛟O(shè)計(jì)方法,在軟件開(kāi)發(fā)過(guò)程中得到廣泛應(yīng)用。Visual Basic程序設(shè)計(jì)的特點(diǎn)是代碼簡(jiǎn)捷,界面簡(jiǎn)單、調(diào)試方便。
盆式橡膠支座計(jì)算機(jī)輔助設(shè)計(jì)系統(tǒng)研究的主要內(nèi)容為對(duì)客運(yùn)專線鐵路橋梁盆式橡膠支座進(jìn)行模塊化、參數(shù)化設(shè)計(jì),根據(jù)此橋梁盆式橡膠支座的設(shè)計(jì)過(guò)程,對(duì)其進(jìn)行功能分解,確定各功能模塊并進(jìn)行編碼;對(duì)SolidWorks進(jìn)行二次開(kāi)發(fā),建立客運(yùn)專線鐵路橋梁盆式橡膠支座的參數(shù)化模型;設(shè)計(jì)其模塊接口,實(shí)現(xiàn)參數(shù)化設(shè)計(jì);劃分參數(shù)化程序的功能模塊,以Visual Basic為開(kāi)發(fā)工具,開(kāi)發(fā)客運(yùn)專線鐵路橋梁盆式橡膠支座參數(shù)化建模系統(tǒng)。
該系統(tǒng)功能主要包含設(shè)計(jì)計(jì)算、數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)、零件參數(shù)化建模[3-4]、裝配體自動(dòng)生成技術(shù)等。
盆式橡膠支座總體設(shè)計(jì)計(jì)算包含支座零件的尺寸設(shè)計(jì)以及驗(yàn)證支座受到豎向、橫向力引起的位移和撓曲。
根據(jù)盆式橡膠支座所承受豎向載荷、水平載荷、縱向(橫向)位移、轉(zhuǎn)角等條件,利用計(jì)算手冊(cè)和相關(guān)的設(shè)計(jì)標(biāo)準(zhǔn)[5-6],對(duì)盆式橡膠支座進(jìn)行設(shè)計(jì)計(jì)算,由于一些零件尺寸不是孤立的,而是在已有的零件尺寸基礎(chǔ)上,一步步計(jì)算而來(lái),主要設(shè)計(jì)流程如圖2所示:首先計(jì)算出聚四氟乙烯板和橡膠承壓板的直徑、厚度,有些尺寸是相互制約的,例如,螺栓長(zhǎng)度需要下支座板厚度確定,而下支座板長(zhǎng)度需要螺栓的直徑來(lái)限制。然后通過(guò)上面產(chǎn)生的數(shù)據(jù),計(jì)算出密封圈、中間承壓板、上支座板等零件尺寸。
圖2 設(shè)計(jì)流程Fig.2 Design flow
通過(guò)上述過(guò)程計(jì)算出的零件尺寸需要根據(jù)盆式橡膠支座在實(shí)際情況下受到的力、位移、轉(zhuǎn)角條件進(jìn)行強(qiáng)度、穩(wěn)定性等驗(yàn)算。
數(shù)據(jù)庫(kù)的主要功能是利用計(jì)算機(jī)對(duì)數(shù)據(jù)進(jìn)行存取。筆者采用Access創(chuàng)建盆式橡膠支座數(shù)據(jù)庫(kù),利用數(shù)據(jù)庫(kù)對(duì)聚四氟乙烯板、橡膠承壓板、下支座板、中間承壓板、螺栓等數(shù)據(jù)進(jìn)行存儲(chǔ)和讀取,通過(guò)使用ADO技術(shù)實(shí)現(xiàn)Visual Basic與數(shù)據(jù)庫(kù)的連接。由于螺栓直徑?jīng)Q定了下支座板長(zhǎng)度,而下支座板厚度決定了螺栓長(zhǎng)度,需要對(duì)螺栓數(shù)據(jù)進(jìn)行讀取、計(jì)算以及存儲(chǔ)。Visual Basic使用ADO方法連接數(shù)據(jù)庫(kù)需添加引用的方式為工程→引用→Microsoft ActiveX Data Objects2.8Library。
茶室小巧雅致,最讓人稱道的是,溫度適宜,顯示出店家的匠心。太冷固然沒(méi)道理,目下已是寒秋,客人進(jìn)高檔浴池,圖的不就是個(gè)溫暖?太熱,也不相宜。外面清冷,一進(jìn)門(mén)就遭遇燠熱,會(huì)讓人不適,甚至煩躁。在裝修考究、不冷不熱的茶室中,先進(jìn)一小碗熱粥,由內(nèi)而外,把客人的體溫慢慢調(diào)高,這樣,在進(jìn)入更衣室之后,既不會(huì)怕冷,也不至于出汗。
盆式橡膠支座的標(biāo)準(zhǔn)化、系列化程度高,可以根據(jù)盆式橡膠支座的特點(diǎn)進(jìn)行系列化、參數(shù)化建模,其優(yōu)點(diǎn)是可以通過(guò)修改幾個(gè)關(guān)鍵尺寸實(shí)現(xiàn)零件重新建模。
目前主要通過(guò)2種方法實(shí)現(xiàn)參數(shù)化建模:程序驅(qū)動(dòng)法和尺寸驅(qū)動(dòng)法[8-9]。筆者采用尺寸驅(qū)動(dòng)法。
尺寸驅(qū)動(dòng)法是利用建立好的參數(shù)化模型,通過(guò)修改尺寸重新生成模型。該方法運(yùn)行效率高、程序穩(wěn)定性較好,同時(shí)減少了SolidWorks API函數(shù)的調(diào)用,使設(shè)計(jì)者從大量程序代碼中解放出來(lái)。以縱向支座上支座板為例,只需要修改部分關(guān)鍵尺寸即可生成新的模型。
部分代碼如下:
swPart.Parameter("AZ@草圖1").System Value=txtA.Text'修改尺寸
……
SolidWorks提供了2種裝配設(shè)計(jì)方法,一種是自底而上設(shè)計(jì),先建立好零件模型再進(jìn)行裝配;另一種是自頂而下的設(shè)計(jì),在新建裝配體中進(jìn)行零件設(shè)計(jì),零件與零件之間相互關(guān)聯(lián),避免了設(shè)計(jì)過(guò)程中常識(shí)性錯(cuò)誤。盆式橡膠支座采用自頂而下的設(shè)計(jì)方法創(chuàng)建裝配體:首先通過(guò)SolidWorks創(chuàng)建好盆式橡膠支座各個(gè)零件以及裝配體模型,然后利用程序讀取裝配體模型文件,以尺寸驅(qū)動(dòng)法更新各個(gè)零件尺寸,實(shí)現(xiàn)裝配體的重新建模。
部分代碼如下:
盆式橡膠支座根據(jù)使用性能和位移類型可以分為固定支座、縱向活動(dòng)支座、橫向活動(dòng)支座和多向活動(dòng)支座4種類型,雖然每種支座適應(yīng)條件不同,但其結(jié)構(gòu)大體相同。現(xiàn)在以縱向活動(dòng)支座為例,介紹盆式橡膠支座計(jì)算機(jī)輔助設(shè)計(jì)系統(tǒng)。
單擊盆式橡膠支座計(jì)算機(jī)輔助設(shè)計(jì)系統(tǒng),輸入賬號(hào)密碼進(jìn)入主界面,單擊“下一步”出現(xiàn)參數(shù)設(shè)置界面,如圖3所示。
該界面功能是輸入盆式橡膠支座的豎向載荷、水平載荷(豎向載荷的百分比)、橋梁支座的橫向位移、縱向位移、轉(zhuǎn)角等參數(shù)以及選擇盆式橡膠支座類型。
單擊“下一步”生成聚四氟乙烯板和承壓橡膠板,計(jì)算下支座板時(shí)需要用到螺栓尺寸,在生成下支座板前先調(diào)用螺栓數(shù)據(jù)庫(kù),如圖4所示。
由于螺栓尺寸與下支座板相互制約,因此把二者安排在一個(gè)界面內(nèi),下支座板參數(shù)設(shè)置見(jiàn)圖5。
圖3 參數(shù)設(shè)置界面Fig.3 Setting of parameters
圖4 選取螺栓Fig.4 Selection of bolts
圖5 下支座板參數(shù)設(shè)置Fig.5 Parameter setting of bottom support plate
不同類型支座的下支座板結(jié)構(gòu)基本一致,可以共用同一個(gè)界面。螺栓長(zhǎng)度是根據(jù)下支座板厚度確定,而螺栓直徑又影響了下支座板長(zhǎng)度,因此把它們?cè)O(shè)計(jì)到一個(gè)界面內(nèi),便于查看管理。
單擊“下一步”將依次生成密封圈、不銹鋼板、中間鋼襯板、SF-1B板、上支座板。完成這些計(jì)算,就可生成盆式橡膠支座的零部件,最后生成總裝配體。裝配體尺寸數(shù)據(jù)來(lái)自于存儲(chǔ)在數(shù)據(jù)庫(kù)中的各個(gè)零部件的信息。
通過(guò)對(duì)SolidWorks進(jìn)行二次開(kāi)發(fā)設(shè)計(jì)出盆式橡膠支座計(jì)算機(jī)輔助設(shè)計(jì)系統(tǒng)。與傳統(tǒng)的設(shè)計(jì)方法相比,該系統(tǒng)能夠?qū)ε枋较鹉z支座進(jìn)行參數(shù)化設(shè)計(jì),縮短了設(shè)計(jì)時(shí)間。
/References:
[1]江 洪,魏 崢.SolidWorks二次開(kāi)發(fā)實(shí)例解析[M].北京:機(jī)械工業(yè)出版社,2004.JIANG Hong,WEI Zheng.Example Analysis of SolidWorks Redevelopment[M].Beijing:China Machine Press,2004.
[2]葉修梓,陳超群.SolidWorks高級(jí)教程二次開(kāi)發(fā)與API[M].北京:機(jī)械工業(yè)出版社,2009.YE Xiuzi,CHEN Chaoqun.Redevelopment of SolidWorks advanced Course and API[M].Beijing:China Machine Press,2009.
[3]劉順?lè)迹芑矍?,董金華.基于Pro/E參數(shù)化技術(shù)的三維建模方法[J].河北科技大學(xué)學(xué)報(bào),2011,32(1):57-59.LIU Shunfang,CAO Huiqin,DONG Jinhua.Three-dimension modeling based on Pro/E parametric technology[J].Journal of Hebei University of Science and Technology,2011,32(1):57-59.
[4]董金華,李才潑,劉順?lè)?,?網(wǎng)絡(luò)環(huán)境下三維CAD技術(shù)研究[J].河北科技大學(xué)學(xué)報(bào),2010,31(4):342-345.DONG Jinhua,LI Caipo,LIU Shunfang,et al.Research in 3DCAD technology based on Internet[J].Journal of Hebei University of Science and Technology,2010,31(4):342-345.
[5]TZ 213—2005,客運(yùn)專線鐵路橋涵工程施工技術(shù)指南[S].TZ 213—2005,Engineering Construction Guides of Passenger Dedicated Line Railway Bridge and Culvert[S].
[6]JT/T 391—2009,公路橋梁支座[S].JT/T 391—2009,Bearing of Highway Bridge[S].
[7]董平國(guó),顏志軍,萬(wàn) 麗.Visual Basic數(shù)據(jù)庫(kù)開(kāi)發(fā)典型模塊與實(shí)例精講[M].北京:機(jī)械工業(yè)出版社,2006.DONG Pingguo,YAN Zhijun,WAN Li.Typical Modules and Intensive Teaching of Visual Basic Database Development[M].Beijing:China Machine Press,2006.
[8]張信群.SolidWorks二次開(kāi)發(fā)在沖模標(biāo)準(zhǔn)件中的應(yīng)用[J].制造業(yè)自動(dòng)化,2010,32(12):70-72.ZHANG Xinqun.The parametric design of standard parts library of die set in SolidWorks circumstance[J].Manufacturing Automation,2010,32(12):70-72.
[9]靳江艷,方憶湘,劉恩福.CAXA實(shí)體設(shè)計(jì)環(huán)境下的蝶閥產(chǎn)品參數(shù)化設(shè)計(jì)[J].河北科技大學(xué)學(xué)報(bào),2007,28(3):230-233.JIN Jiangyan,F(xiàn)ANG Yixiang,LIU Enfu.Butterfly valve parametric design based on CAXA solid[J].Journal of Hebei University of Science and Technology,2007,28(3):230-233.
[10]褚連娣.基于SolidWorks的裝配體設(shè)計(jì)建模技術(shù)研究[J].機(jī)械工程與自動(dòng)化,2011(3):32-34.CHU Liandi.Research on technology of assembly modeling based on SolidWorks[J].Mechanical Engineering &Automation,2011(3):32-34.