国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Creo二次開發(fā)的自卸車車廂快速設(shè)計系統(tǒng)

2015-03-15 08:19:45趙高輝仲梁維陳伊璐
通信電源技術(shù) 2015年6期
關(guān)鍵詞:自卸車二次開發(fā)車廂

卜 凡,趙高輝,仲梁維,陳伊璐

(上海理工大學(xué)機(jī)械工程學(xué)院,上海200093)

隨著國家經(jīng)濟(jì)以及基礎(chǔ)建設(shè)的高速發(fā)展,特種車輛受到越來越多的關(guān)注和重視。特種車輛在基礎(chǔ)建設(shè)事業(yè)中有至關(guān)重要的作用,尤其是自卸車輛,它是特種車輛中應(yīng)用最為廣泛的車型,在建筑、礦山、農(nóng)業(yè)生產(chǎn)等眾多領(lǐng)域扮演著極其重要的角色。自卸車輛的使用極大地縮短了裝卸時間、減小了勞動強(qiáng)度、節(jié)約了大量的勞動力、提高了運輸效率。

由于各個行業(yè)和客戶的要求不一致,導(dǎo)致同一品牌、型號的底盤,可能有多種尺寸的車廂需求。這一具有系列性的產(chǎn)品,絕大部分的設(shè)計工作都是基于原設(shè)計的,或者說是重復(fù)的,只有少量全新的設(shè)計。隨著社會的進(jìn)步、現(xiàn)代科技的發(fā)展,企業(yè)圍繞產(chǎn)品的競爭加劇,產(chǎn)品的市場壽命日愈縮短,大量重復(fù)的開發(fā)工作嚴(yán)重影響產(chǎn)品的開發(fā)效率,浪費開發(fā)成本。本文基于Creo軟件完成的車廂三維模型,使用VB.NET語言在Microsoft Visual Studio 2008編譯環(huán)境中,利用VB API接口函數(shù)對自卸車車廂實現(xiàn)二次開發(fā)。這種二次開發(fā)技術(shù)具有語法規(guī)則較為簡單,非常易于掌握的特點。利用Creo提供的VB API接口函數(shù)控制三維模型的特征,較Automation GATEWY而言,功能更為強(qiáng)大,且與Creo可以直接進(jìn)行數(shù)據(jù)交換,速度更快。

1 自卸車車廂設(shè)計知識的分析

自卸車車廂設(shè)計過程具有很強(qiáng)的經(jīng)驗性,雖然這些經(jīng)驗具有不同的存在形式,而且應(yīng)用的方式也有很大的差異,但是自卸車車廂設(shè)計方法的不斷改進(jìn),加之材料、力學(xué)等多門學(xué)科的理論和實際的交叉融合下,逐漸形成了較科學(xué)完整的知識體系。對自卸車車廂領(lǐng)域設(shè)計理論知識研究,是開發(fā)高效存儲、結(jié)構(gòu)合理、易于管理的知識庫的基礎(chǔ)。

自卸車車廂設(shè)計知識的獲取包含隱形和顯性兩大部分。顯性知識的來源主要有:行業(yè)標(biāo)準(zhǔn)和規(guī)范、工廠調(diào)研分析、設(shè)計手冊等。隱性知識的來源主要是領(lǐng)域?qū)<曳e累的知識和設(shè)計經(jīng)驗。本文通過前期對企業(yè)的調(diào)研,擠壓模具原理的分析研究,以及與多名設(shè)計專家、工藝專家進(jìn)行密切的交流,將專家寶貴的設(shè)計經(jīng)驗提取出來進(jìn)行分析,為知識庫的建立提供了基礎(chǔ)。

2 自卸車車廂快速設(shè)計系統(tǒng)開發(fā)方法

自卸車車廂快速設(shè)計系統(tǒng)以Creo設(shè)計軟件為中心,并集成自卸車車廂設(shè)計知識庫系統(tǒng),提供給自卸車車廂設(shè)計工程師一個現(xiàn)代化、智能化的快速設(shè)計環(huán)境。

系統(tǒng)后臺程序是整個系統(tǒng)的核心,通過接口函數(shù)實現(xiàn)對其他程序的數(shù)據(jù)交換。利用知識庫中的知識處理設(shè)計工程師給出的設(shè)計數(shù)據(jù),再利用處理結(jié)果,通過對Creo平臺的智能控制,修改基礎(chǔ)模型以及其他設(shè)計文件,最后輸出設(shè)計結(jié)果。

主要的設(shè)計工作是在Creo平臺中進(jìn)行的,在快速設(shè)計系統(tǒng)的控制下,Creo實現(xiàn)打開模型、修改尺寸參數(shù)、特征關(guān)系等,完成重建后進(jìn)行二維工程圖的調(diào)整優(yōu)化。圖1所示為基于知識的快速設(shè)計系統(tǒng)運行流程。

知識庫中存儲著大量的設(shè)計知識、設(shè)計實例、生產(chǎn)工藝等數(shù)據(jù),是系統(tǒng)智能化的保障。更多新的成功設(shè)計方案的知識增加了知識庫的設(shè)計知識,使系統(tǒng)更加智能,并能實現(xiàn)知識的沉淀。

圖1 快速設(shè)計系統(tǒng)運行流程

3 基于VB API的二次開發(fā)關(guān)鍵技術(shù)

3.1 系統(tǒng)界面

自卸車車廂快速設(shè)計系統(tǒng)主要包含三個部分,即滿足自卸車車廂的參數(shù)化基礎(chǔ)模型、用戶設(shè)計系統(tǒng)以及相關(guān)設(shè)計的歷史數(shù)據(jù)庫。

用戶設(shè)計系統(tǒng)界面是人機(jī)交互的最重要部分,用戶設(shè)計系統(tǒng)界面的方便簡潔與否將直接影響到用戶體驗[4]。本設(shè)計界面以遵循實際設(shè)計的過程為原則,制定了選擇自卸車底盤、選擇前板樣式、確定車廂主要尺寸三部分。為了使界面簡潔,主界面只列出了日期、設(shè)計人員、定單號以及主要參數(shù)輸入框。同時為了方便設(shè)計,系統(tǒng)界面設(shè)計了浮現(xiàn)提示圖,即當(dāng)設(shè)計人員將鼠標(biāo)移入車廂主要參數(shù)框內(nèi)時,會自動浮現(xiàn)出對應(yīng)尺寸提示圖。更多詳細(xì)參數(shù)在子窗口中列出。為了便于查詢,主界面中設(shè)計了一個歷史查詢子窗口以方便設(shè)計人員查詢。大部分?jǐn)?shù)據(jù)根據(jù)用戶給出的條件自動計算得出,大大減少了設(shè)計者的工作量,提高了工作效率。系統(tǒng)界面如圖2所示。

為了使二次開發(fā)程序能成功連接到PTC Creo Parametric,必須要先設(shè)置一個新的系統(tǒng)環(huán)境變量PRO-COMM-MSG-EXE(見圖3),并將變量值指向可執(zhí)行程序pro-comm-msg.exe所在的全路徑,該可執(zhí)行程序的路徑為[2]:

[Creo-loadpoint]\<datecode>\CommonFiles\<machinetype>\obj\pro-comm-msg.exe,

圖2 系統(tǒng)界面

圖3 設(shè)置系統(tǒng)環(huán)境變量

其中,Creo loadpoint為Creo的安裝路徑;machinetype為windows系統(tǒng)類型,如果是32位windows系統(tǒng),則machinetype是i489-nt,否則是x86e-win64。

由于VB API是需要程序通過COM組件構(gòu)架進(jìn)行服務(wù)交換的,因此需要對COM服務(wù)組件進(jìn)行注冊。Creo自身就提供注冊COM組件的vb-api-register.bat文件,該文件路徑為:

[Creo-loadpoint]\<datecode>\Parametric\bin\obj\vb-api-register.bat

即Creo執(zhí)行程序所在的路徑。COM服務(wù)成功注冊到系統(tǒng)后,當(dāng)用戶開發(fā)的程序有調(diào)用COM服務(wù)內(nèi)容的動作時,服務(wù)將會自動啟動。

新建的開發(fā)程序并不能直接調(diào)用VB API函數(shù),而是先需要添加對Creo VB API Type Library for Creo Parametric 2.0這一COM服務(wù)組件的引用,如圖4所示。添加該COM組件后的程序,只需要導(dǎo)入pfcls命名空間就能正常調(diào)用VB API函數(shù)進(jìn)行二次開發(fā)工作。

圖4 添加COM服務(wù)組件

3.2 連接啟動Creo軟件的方法

VB.NET對Creo的開發(fā)只能是異步式,也就是說開發(fā)的程序不是像插件那樣集成于軟件中,而是獨立存在的可執(zhí)行用戶程序[3]。程序可以通過VB API接口啟動Creo程序或者連接到其正在運行的會話中,再通過調(diào)用API函數(shù)對Creo進(jìn)行數(shù)據(jù)和操作等方面的控制。在任何時候,程序只能與一個Creo會話啟動或連接,程序運行新會話,將會丟失之前會話的連接。異步式連接啟動Creo的代碼如下。

Dim AC as IpfcAsyncConnection

Dim Cc AC as New Ccpfc AsyncConnection

AC=CcAC.Start("pro-g:no-graphics-i:rpcinput",”.”)

其中“pro-g:no-graphics-i:rpc-input”為Creo程序的全路徑。

3.3 模型的數(shù)據(jù)交換與再生

系統(tǒng)完成對Creo軟件驅(qū)動后,首先是對基礎(chǔ)模型進(jìn)行驅(qū)動,然后對基礎(chǔ)模型進(jìn)行數(shù)據(jù)交換與再生,完成新產(chǎn)品的模型設(shè)計。以上步驟的功能性代碼如下所示。

(1)驅(qū)動基礎(chǔ)模型

Dim s Model As Ipfc ModelDescriptor’打開模型

Dim modelS As Ipfc Model

Dim CM As CCpfc ModelDescriptor

CM=New CCpfc ModelDescriptor

sModel=CMD.Create(MType,Mexe,Nothing)‘MType為要驅(qū)動的模型類型,Mexe為要驅(qū)動的模型全路徑

modelS=session.RetrieveModel(sModel)modelS.Display()

(2)對基礎(chǔ)模型進(jìn)行數(shù)據(jù)交換

Dim paramValue As IpfcParamValue

Dim param As IpfcParameter

Dim params As CpfcParameters

Dim paramUnit As Ipfc Unit

models=session.Current Model’獲取當(dāng)前模型,準(zhǔn)備讀取其參數(shù)

params=CType(model,IpfcParameterOwner).ListParams()’'獲取參數(shù)

For i=0 To params.Count-1 param=params.Item(i)

param Unit=param.Units

Select Case param.Name

Case Parameter A’選取參數(shù)賦值A(chǔ)

paramValue=PDUtils.createParamValue(Value,Type)’Value為要換參數(shù)A的數(shù)值

param.SetScaled Value(paramValue,paramunit)…

End Select

Next

(3)對模型進(jìn)行再生得到設(shè)計模型

Dim RegenInstruction As IpfcRegenInstructions

D

im Isolid As IpfcSolid

RegenInstruction=(New CCpfcRegenInstructions).Create(True,True,Nothing)

modelS=aC.Session.Current Model

Isolid=CType(model,Ipfc Assembly)

Isolid.Regenerate(RegenInstruction)’模型再生

Ipfc AsyncConnection.Session.Get ModelWindow(solid).Repaint()’窗口刷新

models.Save()保存模型

3.4 工程圖調(diào)整與格式轉(zhuǎn)換

Creo工程圖中雖然包含了大量的知識信息,也方便修改,但是對于保密性較強(qiáng)的公司,或者要進(jìn)行數(shù)據(jù)外發(fā)的時候,往往不方便使用。將圖紙輸出為絕大部分公司都能方便查閱的PDF或者DWG格式,并在格式轉(zhuǎn)換的過程中將文件名稱修改為新的設(shè)計編號,不僅能將數(shù)據(jù)壓縮,而且能方便數(shù)據(jù)的存檔和查閱。

工程圖轉(zhuǎn)換為PDF格式的代碼如下:

Dim PDFinstructions As IpfcPDFExportInstructions

PDFinstructions=(New CCpfcPDFExportInstructions).Create()

model.Export(outdir,PDFinstructions)

其中,outdir表示PDF文件輸出的全路徑,這個名稱不能超過30個字符(包括文件的pdf后綴名)。

類似的,通過API函數(shù)可以將工程圖轉(zhuǎn)換成其他多種二維圖紙格式,如轉(zhuǎn)換DXF格式,代碼如下:

Dim DXFinstructions As IpfcDXFExportInstruc-tions

DXFinstructions=(New CCpfcDXFExportInstructions).Create()

model.Export(outdir,DXFinstructions)

格式的轉(zhuǎn)換過程需要對顏色、圖層、線型和字體等根據(jù)需求進(jìn)行修改,這樣的設(shè)置可以編寫導(dǎo)出映射文件dxf-export.pro,通過映射內(nèi)容達(dá)到指定的要求。

4 數(shù)據(jù)庫的操作

通過VB.NET對數(shù)據(jù)庫操作是建立在ADO.NET的基礎(chǔ)之上的,它包含了外部應(yīng)用程序?qū)?shù)據(jù)庫執(zhí)行訪問、查詢、更新、管理等動作的必須類庫。

通過ODBC或OLE DB兩種數(shù)據(jù)提供程序都可以連接到Access數(shù)據(jù)庫。雖然ODBC相對來說出現(xiàn)的時間更早,但是很多應(yīng)用程序仍使用ODBC連接Access、SQL Server、Oracle等數(shù)據(jù)庫,SQL Server和Oracle的舊版本以及Sybase甚至只支持ODBC這種數(shù)據(jù)訪問數(shù)據(jù)庫。OLEDB則適合于所有新版本的數(shù)據(jù)庫,對數(shù)據(jù)庫進(jìn)行一般訪問時,最好選擇OLE DB方式。ODBC和OLE DB兩者有各自的命名空間,分別為System.Data.Odbc和System.Data.OleDb,在使用之前必須導(dǎo)入相應(yīng)的命名空間。本文使用的是OLE DB數(shù)據(jù)提供程序動態(tài)連接數(shù)據(jù)庫[5]。主要功能代碼如下:

'打開數(shù)據(jù)庫

Dim connstr As String="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=CASC.accdb"

Dim conn As New OleDbConnection(connstr)

conn.Open()

Dim mycom As New OleDbCommand

Dim AccStr As String="SELECT*FROM*"

mycom=New OleDbCommand(AccStr,conn)

cmd.ExecuteNonQuery()’執(zhí)行操作

conn.Close()’關(guān)閉數(shù)據(jù)庫連接

其中connstr中定義的Source由操作的對象數(shù)據(jù)庫決定,AccStr根據(jù)操作內(nèi)容編寫語句代碼。系統(tǒng)讀取數(shù)據(jù)庫結(jié)果如圖5所示。

圖5 數(shù)據(jù)庫運行結(jié)果

運行程序后,進(jìn)行相應(yīng)的底盤、前板樣式選擇以及輸入相應(yīng)的參數(shù)后,點擊三維模型設(shè)計按鈕后,就會在Creo軟件中自動建立自卸車與車廂相關(guān)三維模型。圖6為本快速設(shè)計系統(tǒng)運行后得到的自卸車車廂設(shè)計模型。

圖6 自卸車車廂設(shè)計模型

5 結(jié) 論

本文通過PTC Creo提供的API接口,利用VB.NET和Creo完成了自卸車車廂的二次開發(fā)工作,使自卸車車廂這一原本復(fù)雜、重復(fù)、工作量大、易出錯的工作變得簡單、高效、準(zhǔn)確,極大地提高了設(shè)計效率,縮短了設(shè)計周期,從而使得公司競爭力得到了較大的提高。利用Creo二次開發(fā)技術(shù),可以使機(jī)械制造等領(lǐng)域提高效率,具有很多實際意義。

[1]賈禮鳳,趙高暉,仲梁維.基于模塊化的余熱鍋爐快速設(shè)計研究[J].機(jī)械工程與自動化,2015,02:34-36.

[2]Parametric Technology Corporation.PTC Creo Parametric 3.0 VB API User’s Guide[M].USA:PTC,2014.

[3]劉 龍,朱林波.基于VB的Pro/E二次開發(fā)方法的再探討[J].金屬加工冷加工,2009,(13):65-67.

[4]鄺杰靈,仲梁維.基于Pro/E二次開發(fā)的微型行星齒輪快速設(shè)計系[J].機(jī)械工程與自動化,2015,03:31-32+34.

[5]甘淑娟.基于VB.NET與Access的題庫管理系統(tǒng)設(shè)計與實現(xiàn)[J].軟件導(dǎo)刊,2013,12(7):117-119.

猜你喜歡
自卸車二次開發(fā)車廂
適用于重型自卸車牽引裝置的設(shè)計
淺談基于Revit平臺的二次開發(fā)
甘肅科技(2020年20期)2020-04-13 00:30:02
六號車廂
淺談Mastercam后處理器的二次開發(fā)
模具制造(2019年3期)2019-06-06 02:11:02
西門子Easy Screen對倒棱機(jī)床界面二次開發(fā)
SSAB Hardox悍達(dá)450材料輕型自卸車廂體測試報告
專用汽車(2016年9期)2016-03-01 04:17:19
CAE分析在自卸車上裝設(shè)計中的應(yīng)用
專用汽車(2015年2期)2015-03-01 04:07:17
豪濼自卸車無法加速
QMI汽車夏季維護(hù):雨季車廂除異味
國機(jī)重工非公路自卸車GKP80G
旅游| 岳西县| 重庆市| 七台河市| 南岸区| 九寨沟县| 图木舒克市| 沧州市| 静海县| 曲靖市| 康乐县| 湘乡市| 浑源县| 衡山县| 精河县| 兴山县| 阜平县| 民勤县| 文昌市| 花莲县| 砀山县| 玛多县| 阜平县| 手游| 安国市| 廊坊市| 游戏| 拉孜县| 邯郸市| 临夏县| 峨山| 中卫市| 那曲县| 天长市| 永胜县| 永嘉县| 平罗县| 谷城县| 洱源县| 绥滨县| 洪湖市|