孫向青,龔軍,解玲
摘要:帶式輸送機(jī)是一種以連續(xù)方式輸送物料的機(jī)械設(shè)備,能夠部署在各種復(fù)雜的環(huán)境場(chǎng)所,現(xiàn)已成為散裝物料的主要輸送設(shè)備,具有安裝方便、使用壽命長(zhǎng)、工作效率高等諸多優(yōu)點(diǎn)。文章提出了一種在.NET框架下,采用C# .NET為編程語(yǔ)言實(shí)現(xiàn)的帶式輸送機(jī)參數(shù)化設(shè)計(jì)系統(tǒng)。實(shí)踐證明,參數(shù)化設(shè)計(jì)系統(tǒng),能夠使得帶式輸送機(jī)設(shè)計(jì)過(guò)程變得更加高效、準(zhǔn)確和靈活,大大提高了設(shè)計(jì)者的工作水平和工作效率。
關(guān)鍵詞:.NET框架;帶式輸送機(jī);參數(shù)化設(shè)計(jì)
中圖分類(lèi)號(hào):TP311? ? ? ? ? ? ? ? ?文獻(xiàn)標(biāo)志碼::A
0引言
帶式輸送機(jī)是一種被廣泛應(yīng)用在港口、電廠、礦山、廠房的機(jī)械運(yùn)輸設(shè)備,具有構(gòu)造簡(jiǎn)單、輸送能力強(qiáng)、方便安裝、維修方便、投資成本低等諸多優(yōu)點(diǎn),受到眾多用戶(hù)的喜愛(ài)。近年來(lái),隨著我國(guó)帶式輸送機(jī)技術(shù)快速的發(fā)展,帶式輸送機(jī)的設(shè)計(jì)理念和設(shè)計(jì)水平已經(jīng)達(dá)到了國(guó)際先進(jìn)水平。但是,隨著用戶(hù)對(duì)帶式輸送機(jī)的整體功能和性能的要求不斷提高,帶式輸送機(jī)設(shè)計(jì)已經(jīng)朝著高運(yùn)載、大速度、長(zhǎng)距離的方向發(fā)展,顯然還延續(xù)人工方式進(jìn)行設(shè)計(jì)、修改、再設(shè)計(jì)、再修改的方式已經(jīng)不能適應(yīng)當(dāng)前的技術(shù)要求[1]。因此,使用相關(guān)的輔助軟件對(duì)帶式輸送機(jī)主要部件進(jìn)行參數(shù)化設(shè)計(jì)是提高廣大設(shè)計(jì)者工作效率和設(shè)計(jì)水平的一種有效方法。
帶式輸送機(jī)的優(yōu)點(diǎn)眾多,但主要優(yōu)點(diǎn)如下。
(1)能夠運(yùn)輸多種物料。
帶式輸送機(jī)可以運(yùn)輸?shù)奈锪戏N類(lèi)非常豐富,不僅可以運(yùn)輸石料、木材、面粉等日常物資,還可以運(yùn)輸鹽酸、硫酸以及其他一些腐蝕性強(qiáng)的物品[2]。
(2)運(yùn)載能力強(qiáng)。
帶式輸送機(jī)具有超強(qiáng)的運(yùn)輸能力。一臺(tái)帶式輸送機(jī)可以在1小時(shí)內(nèi)完成上百?lài)嵨镔Y的運(yùn)送,在一些特殊的場(chǎng)合,甚至可以完成上萬(wàn)噸物資的運(yùn)送。
(3)適合復(fù)雜環(huán)境工作。
同一般的運(yùn)輸工具,如汽車(chē)、輪船等比較,其適合的運(yùn)輸場(chǎng)所更加廣泛,它不僅可以安裝在具有一定角度的坡面上,同時(shí)還可以根據(jù)實(shí)際的地形進(jìn)行安裝,甚至可以按照用戶(hù)的需要在一定的角度范圍內(nèi)轉(zhuǎn)動(dòng)[3]。
(4)運(yùn)行狀況穩(wěn)定、運(yùn)輸成本低。
由于帶式輸送機(jī)故障率低的優(yōu)點(diǎn),在實(shí)際工作過(guò)程中,不需要投入太多的人力對(duì)其進(jìn)行現(xiàn)場(chǎng)看護(hù),大大節(jié)省了企業(yè)人力、物力的投入成本[4]。
從以上特點(diǎn)來(lái)看,帶式輸送機(jī)具有一些無(wú)可比擬的優(yōu)點(diǎn)。但隨著用戶(hù)的需求不斷變化,其設(shè)計(jì)水平還有很大的提升空間,需要設(shè)計(jì)者來(lái)改進(jìn)優(yōu)化,以滿(mǎn)足用戶(hù)新需求。
1帶式輸送機(jī)設(shè)計(jì)計(jì)算帶式輸送機(jī)總體設(shè)計(jì)過(guò)程中,需要考慮因素如下:(1)運(yùn)輸物料特性,如物料的粒度及級(jí)配、溫度、濕度以及物料是否有腐蝕性或者其他特殊因素。(2)驅(qū)動(dòng)裝置的最大功率或者是運(yùn)輸能力。(3)安裝環(huán)境及地質(zhì)狀態(tài)。(4)送料口位置、方向及卸料位置和方向。(5)帶式輸送機(jī)安裝角度、高度等因素。除了上述考慮的因素外,還需要對(duì)一些參數(shù)進(jìn)行計(jì)算,需要重點(diǎn)考慮以下方面。
1.1輸送帶張力計(jì)算
輸送帶張力是設(shè)計(jì)中的重要參數(shù)之一。在輸送帶正常工作的前提下,可以采用必要的實(shí)驗(yàn)手段和對(duì)應(yīng)的計(jì)算方法來(lái)較為精準(zhǔn)地計(jì)算輸送帶的實(shí)際張力。在已知輸送帶上物料質(zhì)量和輸送帶的速度的前提下,可以根據(jù)物料的質(zhì)量和輸送帶的速度來(lái)計(jì)算輸送帶的張力[5]。在張力計(jì)算的過(guò)程中,還要重點(diǎn)考慮彈性形變和垂度兩個(gè)關(guān)鍵因素來(lái)保障輸送帶的運(yùn)行穩(wěn)定。
1.2輸送帶彎曲應(yīng)力計(jì)算
輸送帶在實(shí)際的運(yùn)行過(guò)程中,需要使用多個(gè)托輥和滾筒,所以在計(jì)算過(guò)程中還需要考慮輸送帶所承受的彎曲應(yīng)力[6]。在計(jì)算輸送帶的彎曲應(yīng)力時(shí),需要考慮輸送帶的彎曲半徑、輸送帶的彈性模量、泊松比以及抗拉強(qiáng)度等因素。根據(jù)輸送帶的彎曲半徑和抗拉強(qiáng)度等參數(shù),可以計(jì)算出輸送帶在彎曲處的應(yīng)力分布情況,并據(jù)此選擇合適的輸送帶材料。
1.3軸和軸承設(shè)計(jì)
軸和軸承是帶式輸送機(jī)中的重要組成部分。在設(shè)計(jì)軸和軸承時(shí),需要考慮軸的強(qiáng)度和剛度、軸承的承載能力以及潤(rùn)滑和密封等因素[7]。根據(jù)實(shí)際工作情況和運(yùn)行要求,可以選擇適合的軸和軸承類(lèi)型,并對(duì)其進(jìn)行強(qiáng)度和剛度校核。此外,還需要考慮軸和軸承的安裝和維護(hù)等方面的因素。
1.4驅(qū)動(dòng)裝置選擇與設(shè)計(jì)
驅(qū)動(dòng)裝置是保證帶式輸送機(jī)正常工作的必要條件,對(duì)輸送機(jī)的運(yùn)載承受能力和工作效率起到重要的作用。在選擇和設(shè)計(jì)驅(qū)動(dòng)裝置時(shí),需要考慮電機(jī)功率、轉(zhuǎn)速、扭矩等因素,還需要考慮減速器和制動(dòng)器等輔助裝置的選型和使用要求[8]。
1.5制動(dòng)和逆止裝置設(shè)計(jì)
制動(dòng)和逆止裝置是帶式輸送機(jī)安全運(yùn)行的重要保障。在設(shè)計(jì)制動(dòng)和逆止裝置時(shí),需要綜合全盤(pán)考慮制動(dòng)和逆止裝置的制動(dòng)力矩和逆止力矩等重要參數(shù),以確保在緊急情況下能夠及時(shí)停車(chē)或逆止[9]。此外,還需要考慮制動(dòng)和逆止裝置的安裝和維護(hù)等方面的因素。
1.6托輥選擇與設(shè)計(jì)
托輥是支撐運(yùn)輸帶的重要組成部分,在選擇和設(shè)計(jì)托輥時(shí),需要考慮托輥的承載能力、轉(zhuǎn)動(dòng)慣量以及密封和潤(rùn)滑等因素。根據(jù)實(shí)際工況和運(yùn)行要求,可以選擇適合的托輥類(lèi)型,并對(duì)其進(jìn)行強(qiáng)度和剛度校核[10]。
1.7機(jī)架設(shè)計(jì)
帶式輸送機(jī)最重要的支撐零部件為機(jī)架,設(shè)計(jì)水平對(duì)輸送機(jī)的穩(wěn)定性起到非常重要的作用。在設(shè)計(jì)和選擇機(jī)架時(shí),需要考慮機(jī)架的結(jié)構(gòu)形式、材料和尺寸等因素,以確保機(jī)架具有足夠的承載能力和穩(wěn)定性。根據(jù)實(shí)際工況和運(yùn)行要求,可以選擇適合的機(jī)架類(lèi)型,并進(jìn)行相應(yīng)的強(qiáng)度和剛度校核。綜上所述,帶式輸送機(jī)設(shè)計(jì)過(guò)程中,需要考慮多個(gè)方面,包括輸送帶張力計(jì)算、輸送帶彎曲應(yīng)力計(jì)算、軸和軸承設(shè)計(jì)、驅(qū)動(dòng)裝置選擇與設(shè)計(jì)、制動(dòng)和逆止裝置設(shè)計(jì)、托輥選擇與設(shè)計(jì)以及機(jī)架設(shè)計(jì)等。在設(shè)計(jì)過(guò)程中,需要綜合考慮各個(gè)方面的因素,以確保帶式輸送機(jī)的穩(wěn)定、高效和安全運(yùn)行。
2參數(shù)設(shè)計(jì)化實(shí)例2.1參數(shù)化設(shè)計(jì)帶式輸送機(jī)在參數(shù)設(shè)計(jì)的過(guò)程中主要考慮以下4種因素。
2.1.1帶寬
帶寬是帶式輸送機(jī)的重要參數(shù)之一,它決定了輸送帶的最大承載能力。根據(jù)所需運(yùn)輸物料的大小和重量,選擇合適的帶寬。例如:如果需要運(yùn)輸大型物料或重載物料,則需要選擇較大帶寬的輸送帶。
2.1.2驅(qū)動(dòng)功率/扭矩
驅(qū)動(dòng)功率/扭矩是帶式輸送機(jī)的另一個(gè)重要參數(shù),它決定了輸送帶的驅(qū)動(dòng)力和輸送速度。根據(jù)所需運(yùn)輸物料的摩擦系數(shù)和提升高度,選擇合適的驅(qū)動(dòng)功率/扭矩。
2.1.3輸送速度
輸送速度是帶式輸送機(jī)的第三個(gè)重要參數(shù),它決定了物料運(yùn)輸?shù)臅r(shí)間和效率。根據(jù)實(shí)際生產(chǎn)需求和物料特性,選擇合適的輸送速度。
2.1.4托輥類(lèi)型和尺寸
托輥是帶式輸送機(jī)的支撐部件,對(duì)輸送帶的穩(wěn)定運(yùn)行起著關(guān)鍵作用。托輥的類(lèi)型和尺寸需要根據(jù)實(shí)際運(yùn)輸需求和輸送帶的寬度來(lái)選擇。
基于.NET程序的帶式輸送機(jī)參數(shù)化設(shè)計(jì)流程如圖1所示。
2.2設(shè)計(jì)框圖
在對(duì)帶式傳送機(jī)設(shè)計(jì)過(guò)程中,由于市面上的帶式傳送機(jī)型號(hào)多樣,各類(lèi)參數(shù)對(duì)帶式傳送機(jī)的整體質(zhì)量影響極大。一個(gè)適合的系數(shù)能夠讓設(shè)備消耗與耗能相匹配。如果通過(guò)復(fù)雜的公式來(lái)人工計(jì)算,難以保證系數(shù)的可靠性,而通過(guò)編程方式能夠很好地彌補(bǔ)人工計(jì)算的缺點(diǎn)。軟件設(shè)計(jì)如圖2所示。
2.3程序編寫(xiě)
界面是人機(jī)交互的一個(gè)非常重要的組成部分,在.NET程序中,參數(shù)對(duì)話框由Form類(lèi)表示。傳統(tǒng).NET中對(duì)話框是通過(guò)Form類(lèi)的ShowDialog()函數(shù)實(shí)現(xiàn),但在AutoCAD中這個(gè)函數(shù)會(huì)出現(xiàn)一些無(wú)法預(yù)料的錯(cuò)誤。所以AutoCAD.NET專(zhuān)門(mén)提供了2個(gè)函數(shù)來(lái)顯示參數(shù)對(duì)話框,它們都是ApplicationServices命名空間的Application類(lèi)的靜態(tài)成員函數(shù)。
一般使用模態(tài)對(duì)話框,其顯示是通過(guò)ShowModalDialog()函數(shù)實(shí)現(xiàn),其有5種重載,本文使用其中最簡(jiǎn)單的形式:
public static DialogResult ShowModalDialog(Form formToShow)
所以函數(shù)顯示的方法如下:
public class CustomDialog
{[CommandMethod("ModalDialog")]
public void ModalDialog()
{
ModalForm form=new ModalForm();
Application.ShowModalDialog(form);
}
為了提高繪圖效率,使用塊的方式將圖形加載到圖形數(shù)據(jù)庫(kù)當(dāng)中。在使用.NET技術(shù)進(jìn)行二次開(kāi)發(fā)時(shí),采用直接創(chuàng)建一個(gè)不帶屬性的簡(jiǎn)單塊的方式,AutoCAD的塊是儲(chǔ)存在塊表記錄中的實(shí)體對(duì)象的集合。每一個(gè)塊都從BlockBegin對(duì)象開(kāi)始,然后緊跟著數(shù)個(gè)Entity對(duì)象,最后以BlockEnd對(duì)象結(jié)束。
要在.NET中創(chuàng)建塊定義,可以按以下步驟進(jìn)行:
(1)創(chuàng)建一個(gè)BlockTableRecord對(duì)象并設(shè)置塊的名稱(chēng)。塊由BlockTableRecord類(lèi)表示,該類(lèi)只有一個(gè)無(wú)參數(shù)的默認(rèn)構(gòu)造函數(shù),所以當(dāng)創(chuàng)建一個(gè)BlockTableRecord對(duì)象后,還需使用Name屬性來(lái)設(shè)置塊名稱(chēng)。利用Transaction類(lèi)的GetObject()函數(shù)獲得當(dāng)前圖形的塊表對(duì)象。
(2)創(chuàng)建組成快的實(shí)體對(duì)象。調(diào)用BlockTableRecord類(lèi)的成員函數(shù)AppendEntity將組成快的實(shí)體寫(xiě)入塊表記錄,AppendEntity函數(shù)的定義如下:
PublicObject Id AppendEntity(Entity entity);
通過(guò)調(diào)用BlockTable類(lèi)的Add函數(shù)將創(chuàng)建的塊表記錄寫(xiě)入當(dāng)前圖形的塊表。
2.4程序的自動(dòng)加載與發(fā)布
采用Lisp、VBA和ARX生成的這些程序文件,AutoCAD能夠自動(dòng)識(shí)別并加載,但是對(duì)于.NET程序,本文要實(shí)現(xiàn)自動(dòng)加載需要借助外部工具的力量,本文選擇Inno Setup這個(gè)簡(jiǎn)單易操作的打包程序創(chuàng)建.NET安裝程序。
Inno Setup是一個(gè)由Delphi語(yǔ)言編寫(xiě)的免費(fèi)安裝制作軟件,相對(duì)市面上其他打包軟件,它更加小巧、簡(jiǎn)便。要?jiǎng)?chuàng)建一個(gè)適用于多版本的AutoCAD安裝程序要經(jīng)歷以下步驟:
(1)編寫(xiě)一個(gè)Windows窗體程序,用于顯示當(dāng)前系統(tǒng)安裝的AutoCAD,用戶(hù)需選擇并啟動(dòng)所需的AutoCAD版本。
(2)編寫(xiě)一個(gè)acad.lsp的Lisp文件,在其中鍵入加載.NET程序集的NetLoad命令,用于AutoCAD啟東時(shí)自動(dòng)檢索其啟動(dòng)位置的acad.lsp并自動(dòng)運(yùn)行。
(3)使用Inno Setup將上述兩文件進(jìn)行打包。
首先使用Visual Studio中的Windows窗體設(shè)計(jì)器將下圖中的控件拖入。
隨后在Load事件處理函數(shù)Form1_Load中加入關(guān)鍵代碼如下:
Private void Form1_Load(object sender, EventArgs e)
{List
Foreach(string location in locations)
{
string installedCADs=location.Split('\\').Last();
this.listBox1.Items.Add(installedCADs);
}
}
public static List
{
List
RegistryKeykeyLocalMachine=RegistryKey.OpenBaseKey(RegistryHive.LocalMachine,RegistryView.Registry64);
RegistryKey keyAutoCAD=keyLocalMachine.OpenSubKey("SOFTWARE\\Autodesk\\AutoCAD");
string[] cadVersions=keyAutoCAD.GetSubKeyNames();
foreach (string cadVersion in cadVersions)
{
RegistryKey keyCADVersion=keyAutoCAD.OpenSubKey(cadVersion);
string[] cadNames=keyCADVersion.GetSubKeyNames();
foreach (string cadName in cadNames)
{
if (cadName.EndsWith("804"))
{
RegistryKey keyCADName=keyCADVersion.OpenSubKey(cadName);
string location=keyCADName.GetValue("Location").ToString();
locations.Add(location);
}
}
}
return locations;
}
在使用OpenSubKey獲取AutoCAD在注冊(cè)表中的鍵時(shí),由于當(dāng)前系統(tǒng)位數(shù)不同,不能直接抓取,只能獲取到32位系統(tǒng)的注冊(cè)表鍵,為了解決這個(gè)問(wèn)題,先使用OpenBaseKey函數(shù)打開(kāi)64位系統(tǒng)的注冊(cè)表母鍵值,來(lái)避免這個(gè)問(wèn)題。
準(zhǔn)備第二部分的文件,用記事本文件輸入一段Delphi代碼:
(COMMAND “NETLOAD” “Chop10.dll”)
將記事本文件名改為acad.lsp,并將這兩個(gè)文件復(fù)制到一個(gè)文件夾中,打開(kāi)Inno Setup進(jìn)行安裝程序打包。
2.5實(shí)例分析
本文以輸送機(jī)機(jī)架中的連接鋼部件管為例,介紹其設(shè)計(jì)過(guò)程。首先,訪問(wèn)系統(tǒng)主界面后,依次點(diǎn)擊參數(shù)設(shè)計(jì)、卸載架、連接鋼管后,彈出連接鋼管參數(shù)對(duì)話框,在對(duì)話框中分別輸入長(zhǎng)度為304mm,小圓孔直徑為25mm,大圓孔直徑為80mm,中心距為200mm等參數(shù)后,點(diǎn)擊確定后,就可以生成三維參數(shù)模型。三維參數(shù)模型如圖3所示。
如果設(shè)計(jì)者對(duì)該三維參數(shù)模型不滿(mǎn)意,可以重復(fù)上述步驟,在連接鋼管參數(shù)對(duì)話框中修改參數(shù)后,重新生成新的三維模型。
3結(jié)語(yǔ)
本文提出的帶式輸送機(jī)參數(shù)化設(shè)計(jì)系統(tǒng),旨在提高帶式輸送機(jī)設(shè)計(jì)人員的設(shè)計(jì)效率和設(shè)計(jì)質(zhì)量,從而增強(qiáng)其設(shè)計(jì)產(chǎn)品在市場(chǎng)的競(jìng)爭(zhēng)力,用戶(hù)可以通過(guò)系統(tǒng)輸入帶式輸送機(jī)關(guān)鍵部件的參數(shù)后,自動(dòng)生成帶式輸送機(jī)的三維模型,同時(shí)也能夠生成二維工程圖。
實(shí)踐表明,該參數(shù)化設(shè)計(jì)系統(tǒng)能夠較好解決人工建模過(guò)程中對(duì)設(shè)計(jì)方案反復(fù)修改、重構(gòu)的缺點(diǎn),顯著降低了產(chǎn)品的設(shè)計(jì)周期,極大地提高了設(shè)計(jì)者的設(shè)計(jì)水平和設(shè)計(jì)效率,能夠?yàn)橥刑峁┯幸鎱⒖肌?/p>
參考文獻(xiàn)
[1]王慶剛,李剛.網(wǎng)絡(luò)輿情形成機(jī)制與危機(jī)管理研究[J].產(chǎn)業(yè)與科技論壇,2021(4):223-224.
[2]張鵬.基于SolidWorks二次開(kāi)發(fā)的帶式輸送機(jī)參數(shù)化設(shè)計(jì)[J].港口裝卸,2022(4):4-5.
[3]于中山,邱冶.帶式輸送機(jī)傳動(dòng)滾筒軸的參數(shù)化設(shè)計(jì)與有限元分析[J].機(jī)械制造,2022(3):1-4.
[4]殷華,曹現(xiàn)剛.基于參數(shù)化設(shè)計(jì)的礦用帶式輸送機(jī)結(jié)構(gòu)優(yōu)化研究[J].能源與環(huán)保,2021(5):233-238.
[5]黃勇,魏坤坤,潘江如,等.基于參數(shù)化設(shè)計(jì)的DTⅡ型帶式輸送機(jī)數(shù)字樣機(jī)系統(tǒng)開(kāi)發(fā)[J].內(nèi)燃機(jī)與配件,2020(24):197-201.
[6]雷宏.基于SolidWorks的DSJ100/200帶式輸送機(jī)參數(shù)化設(shè)計(jì)的研究[J].機(jī)械管理開(kāi)發(fā),2019(10):11-12.
[7]王韶霞.AutoCAD二次開(kāi)發(fā)技術(shù)在煤礦的應(yīng)用[J].煤炭技術(shù),2023(6):165-166.
[8]馬武,霍明明.帶式輸送機(jī)傳動(dòng)滾筒參數(shù)化設(shè)計(jì)及穩(wěn)定性研究[J].煤礦機(jī)械,2018(9):23-25.
[9]伍文進(jìn).三維CAD技術(shù)發(fā)展及其對(duì)制圖課程教與學(xué)影響之探討[J].中國(guó)電力教育,2019(11):165-167.
[10]薛成龍,王學(xué)文,謝嘉成,等.帶式輸送機(jī)關(guān)鍵零部件多方法參數(shù)化協(xié)同建模研究[J].礦業(yè)研究與開(kāi)發(fā),2019(2):111-115.
(編輯王永超)
Design and implementation of a parameterized design system for belt conveyor
Sun? Xiangqing1, Gong? Jun2*, Xie? Ling2
(1.Petroleum transportation Co., Ltd., of China, Urumqi 830012, China;?2.Xinjiang University, Urumqi 830046, China)
Abstract:? Belt conveyor is a mechanical device driven by friction to transport materials in a continuous way. It is widely used in transportation places with a certain inclination angle or horizontal transportation places, and has many characteristics such as convenient installation, long service life and high working efficiency. In this paper, a parametric design method of belt conveyor based on C# .NET programming language under the. NET framework is proposed. By using this method, all parameters of belt conveyor can be managed conveniently. In the design process, users can input different parameter values according to their actual needs, and the system can automatically generate a belt conveyor model that meets the needs of users. On this basis, users can further modify and optimize the model until they are satisfied with it. Practice has proved that this design method can make the design process of belt conveyor more efficient, accurate and flexible, and greatly improve the working level and efficiency of designers.
Key words: .NET framework; belt conveyor; parametric design