王 斌過學(xué)迅張 巍葉 鵬張 杰
(1.武漢理工大學(xué);2.華中科技大學(xué))
相比 Matlab (GUI),Visual C++是一款更專業(yè)的開發(fā)軟件。Matlab編程簡(jiǎn)單,但程序只能在安裝有Matlab的PC上才能運(yùn)行;Visual C++不僅運(yùn)行效率高、移植性好,與其他大型軟件的接口也更穩(wěn)定。本文結(jié)合企業(yè)實(shí)際項(xiàng)目,用Visual C++開發(fā)一款汽車制動(dòng)系統(tǒng)開發(fā)平臺(tái),縮短了制動(dòng)系統(tǒng)的開發(fā)周期。
按照軟件工程學(xué)方法,需要對(duì)軟件設(shè)計(jì)進(jìn)行總體規(guī)劃。本系統(tǒng)的設(shè)計(jì)目標(biāo)是,為實(shí)際生產(chǎn)建立實(shí)用的設(shè)計(jì)、分析和仿真平臺(tái),在功能上滿足實(shí)際設(shè)計(jì)需要,如幫助選擇制動(dòng)器結(jié)構(gòu)型式;確定制動(dòng)器主要結(jié)構(gòu)參數(shù),并根據(jù)參數(shù)對(duì)其性能從理論角度進(jìn)行分析評(píng)價(jià);優(yōu)化用戶設(shè)計(jì)方案等。要求系統(tǒng)運(yùn)行穩(wěn)定可靠,結(jié)論正確[2]?;谠撘?guī)劃,具體給出系統(tǒng)的功能定義如圖1所示。
a.制動(dòng)器類型選擇功能。系統(tǒng)將設(shè)計(jì)技術(shù)(包括理論知識(shí)、相關(guān)法規(guī)、設(shè)計(jì)經(jīng)驗(yàn)等)存于知識(shí)庫中,輔助設(shè)計(jì)者確定制動(dòng)器類型及主要參數(shù)。
b.整車制動(dòng)性能分析功能。在參數(shù)確定后,根據(jù)理想與實(shí)際制動(dòng)力分配計(jì)算、ECE法規(guī)、制動(dòng)效率曲線等檢驗(yàn)是否滿足要求及國(guó)家相關(guān)法規(guī)。
c.制動(dòng)系統(tǒng)的理論計(jì)算功能。制動(dòng)系統(tǒng)的理論計(jì)算部分涵蓋了制動(dòng)力、制動(dòng)力矩、輪缸液壓、主缸工作容積、真空助力器、踏板行程、駐車制動(dòng)器等多項(xiàng)計(jì)算內(nèi)容,給用戶提供整車制動(dòng)信息。
d.制動(dòng)器性能優(yōu)化方案。當(dāng)設(shè)計(jì)不滿足國(guó)家法規(guī)或易于讓整車后輪先抱死時(shí),系統(tǒng)會(huì)提示用戶更改部分制動(dòng)器參數(shù)來優(yōu)化整個(gè)制動(dòng)性能。
e.提供與CAD/CAE軟件的接口。為了進(jìn)一步縮短制動(dòng)器開發(fā)周期,提高設(shè)計(jì)精度,軟件提供了與CATIA、ADAMS等軟件的接口,以輔助用戶進(jìn)一步設(shè)計(jì)。
f.數(shù)據(jù)圖表存儲(chǔ)功能。軟件提供了強(qiáng)大的數(shù)據(jù)存儲(chǔ)、圖形存儲(chǔ)功能,可將結(jié)果和性能曲線保存,便于生產(chǎn)實(shí)際。
軟件設(shè)計(jì)流程如圖2所示。
汽車設(shè)計(jì)使用的軟件大多采用彈出式對(duì)話框,即每計(jì)算一個(gè)項(xiàng)目彈出一個(gè)或一系列對(duì)話框,不僅繁瑣而且不利于用戶查看已完成的計(jì)算分析。本系統(tǒng)利用現(xiàn)在主流瀏覽器遨游的使用界面,結(jié)合Visual C++提供的Tab控件,將制動(dòng)系統(tǒng)的20余項(xiàng)設(shè)計(jì)計(jì)算按功能劃分為多個(gè)頁面,按照一定順序逐層與用戶對(duì)話的方法解決了該問題。該方法可以做到按人類認(rèn)識(shí)或描述問題的規(guī)律有層次的與用戶交流,界面如圖3所示,左邊的輸入框不僅利于用戶在對(duì)設(shè)計(jì)結(jié)果進(jìn)行修改時(shí)方便的找到相關(guān)參數(shù),也有助于用戶分析不同參數(shù)對(duì)汽車制動(dòng)性能影響的程度。
良好的人機(jī)界面應(yīng)該在適當(dāng)?shù)胤綄?duì)用戶進(jìn)行提示[3]。本系統(tǒng)可以根據(jù)合理性、合法性要求雙重檢測(cè)用戶輸入的數(shù)據(jù)。如當(dāng)用戶疏忽,將800輸入為8OO(O 為大寫字母)時(shí),軟件會(huì)自動(dòng)刪除“OO”,并彈出警示對(duì)話框。在合理性檢測(cè)方面,若用戶輸入的前軸距與后軸距之和不等于總軸距時(shí),軟件也會(huì)彈出警示對(duì)話框,避免后續(xù)設(shè)計(jì)錯(cuò)誤。
在實(shí)現(xiàn)參數(shù)化建模方面,由于篇幅限制,只敘述其中兩個(gè)比較關(guān)鍵的步驟。
a.利用Visual C++調(diào)用CATIA
主要是利用ShellExecute( )函數(shù)來調(diào)用CATIA的路徑。用戶在第一次使用軟件時(shí),需要查找路徑,然后將路徑通過命令流文件寫到本軟件的安裝目錄下。在后續(xù)使用時(shí),即可很流暢的進(jìn)入CATIA,不需要再查找路徑。
函數(shù)代碼為 :ShellExecute (NULL, NULL,m_File,NULL,cBuffer, SW_SHOWNORMAL)
b.通過CAA對(duì)CATIA_V5 R19做二次開發(fā)[4]
使用Visual Studio 2005開發(fā)制動(dòng)器零件建模模塊(Workbench),并在該模塊下制定出CATIA風(fēng)格的工具條,響應(yīng)命令按鈕及完成建模代碼的書寫。具體界面和菜單如圖4中機(jī)械設(shè)計(jì)的彈出菜單所示,用戶單擊各制動(dòng)系統(tǒng)部件即可彈出參數(shù)化對(duì)話框進(jìn)行建模。
以某車型制動(dòng)系統(tǒng)設(shè)計(jì)計(jì)算為例,按照開發(fā)流程(圖2)說明本開發(fā)平臺(tái)的功能。本次設(shè)計(jì)前、后軸均選用盤式制動(dòng)器。
在數(shù)據(jù)庫中儲(chǔ)存了大量的經(jīng)驗(yàn)參數(shù)及設(shè)計(jì)要求,用戶只需按照軟件向?qū)Ъ纯稍跀?shù)據(jù)庫中選取參數(shù)或根據(jù)軟件提示的設(shè)計(jì)要求輸入?yún)?shù)。本次設(shè)計(jì)主要參數(shù)見表1~表3。
表1 整車參數(shù)
表2 制動(dòng)器參數(shù)(盤式)
表3 制動(dòng)驅(qū)動(dòng)機(jī)構(gòu)部分參數(shù)
根據(jù)上述數(shù)據(jù),用戶即可進(jìn)入整車制動(dòng)系統(tǒng)分析模塊,分析整車制動(dòng)系統(tǒng)性能、計(jì)算制動(dòng)系統(tǒng)關(guān)鍵總成、校核系統(tǒng)關(guān)鍵部件,并通過各特性曲線圖及制動(dòng)法規(guī)對(duì)制動(dòng)性能做定性或定量評(píng)價(jià),判定整車制動(dòng)性能,輔助優(yōu)化制動(dòng)系統(tǒng)的設(shè)計(jì)工作。
圖5是該車的理想與實(shí)際制動(dòng)力分配曲線,其中,F(xiàn)曲線表示后輪未抱死時(shí)在各種φ值路面上前輪抱死時(shí)的前、后地面制動(dòng)力關(guān)系曲線,與之對(duì)應(yīng)的R曲線表示前輪未抱死時(shí)在各種φ值路面上后輪抱死時(shí)的前、后地面制動(dòng)力關(guān)系曲線。由軟件計(jì)算及圖5可知,該車的同步附著系數(shù)為0.44,較小,若用戶選擇的路面附著系數(shù)φ大于0.44,系統(tǒng)會(huì)提示用戶前軸先報(bào)死,同時(shí)系統(tǒng)提供裝載比例閥的接口。圖6顯示用戶安裝并選擇了比例閥參數(shù)后的理想與實(shí)際制動(dòng)力分配曲線。由圖6可知,路面附著系數(shù)在0.97之前,實(shí)際的制動(dòng)力分配系數(shù)在I曲線之下,可知該車在一般路面附著系數(shù)下后軸不會(huì)提前抱死,滿足制動(dòng)穩(wěn)定性要求。
根據(jù)ECE法規(guī)要求來分析整車的制動(dòng)性能,軟件將ECE法規(guī)要求 (φ=0.2~0.8時(shí)制動(dòng)強(qiáng)度Z≥0.1+0.85(φ-0.2))寫入圖7。由圖7可知,在絕大多數(shù)路面上,該車滿足φf>φr,即前軸利用附著系數(shù)曲線均在后軸利用附著曲線之上,同時(shí)在φ=0.2~0.8時(shí)前、后軸利用附著系數(shù)也都滿足ECE法規(guī)要求的Z≥0.1+0.85(φ-0.2)。綜上可知,該車滿足制動(dòng)穩(wěn)定性要求。
在完成整車性能分析后,軟件同樣提供真空助力器特性、踏板力與輸入力曲線、踏板力與輸出液壓曲線幫助用戶分析踏板力—制動(dòng)減速度—制動(dòng)距離特性。圖8顯示的是根據(jù)表3真空助力器參數(shù)繪制的真空助力器與主缸液壓輸出的效能曲線圖[5,6]。圖9是根據(jù)踏板力、助力比及圖8等關(guān)系綜合繪制的踏板力與制動(dòng)距離曲線圖。圖9中包含了前軸失效、后軸失效、正常制動(dòng)等狀況的制動(dòng)距離曲線[6],圖中垂直的虛線表示在某一制動(dòng)力下制動(dòng)距離將由于抱死而維持在一個(gè)數(shù)值。由圖9可知,當(dāng)踏板力為200 N時(shí),前、后軸依次抱死,達(dá)到最短制動(dòng)距離。
用戶確定了設(shè)計(jì)參數(shù)并對(duì)設(shè)計(jì)結(jié)果滿意后,即可進(jìn)入?yún)?shù)化建模模塊。本軟件在菜單上提供了與CATIA的接口,用戶單擊即可進(jìn)入CATIA。單擊子菜單即可彈出零部件界面,單擊某一部件即可彈出制動(dòng)器零件庫界面(圖10),用戶可以根據(jù)圖11中的二維圖尺寸標(biāo)識(shí)選擇之前的設(shè)計(jì)參數(shù)或填寫新數(shù)據(jù)。圖12為用戶填寫新數(shù)據(jù)產(chǎn)生的制動(dòng)盤模型。
為了提高制動(dòng)系統(tǒng)開發(fā)效率,縮短研發(fā)周期,開發(fā)了該款制動(dòng)系統(tǒng)設(shè)計(jì)開發(fā)平臺(tái)。該平臺(tái)能夠精確計(jì)算制動(dòng)系統(tǒng)的20余項(xiàng)內(nèi)容,全面分析整車制動(dòng)性能,并通過ACCESS數(shù)據(jù)庫儲(chǔ)存大量的經(jīng)驗(yàn)數(shù)據(jù)和制動(dòng)法規(guī)輔助用戶設(shè)計(jì)開發(fā)。該平臺(tái)還有很多方面需要完善,在整車制動(dòng)性能部分,還可以增加輔助制動(dòng)模塊;在參數(shù)化建模部分目前只能實(shí)現(xiàn)主要部件如制動(dòng)盤、制動(dòng)鼓、摩擦片等的參數(shù)化建模,復(fù)雜的卡鉗等還未實(shí)現(xiàn)參數(shù)化。
1 魯?shù)婪?汽車制動(dòng)系統(tǒng)的分析與設(shè)計(jì).北京:機(jī)械工業(yè)出版社,1985.
2 Bin Wang,Xuexun Guo.Development Platform for Vehicle’s Brake System Based on VC++.WCSE, 2010.
3 Eckerson Wayne.Inference object-oriented development tool debuts.Network World, Framingham, Feb 8,1993,Vol.10,Iss.6.
4 熊欣,馬洪閣.CATIA V5將知識(shí)工程應(yīng)用于汽車零部件開發(fā).CAD/CAM與制造業(yè)信息化,2004(2).
5 楊維和.汽車真空助力器的工作原理和性能計(jì)算.汽車技術(shù),1991(10).
6 方泳龍.汽車制動(dòng)理論與設(shè)計(jì).北京:國(guó)防工業(yè)出版社,2005.