貨車(chē)滾動(dòng)軸承標志板的激光打標圖紙程序設計的論文
摘要:采用激光刻打機進(jìn)行標志板刻打具有迅速、內容靈活的優(yōu)點(diǎn),然而其自帶軟件EzCad輸入較為煩瑣。通過(guò)利用Python語(yǔ)言及其pyautocad模塊調用AutoCAD生成DXF文件再導入EzCad中進(jìn)行刻打的方法,并基于PySide模塊編制輸入界面,提高了輸入效率,節省了總體時(shí)間。
關(guān)鍵詞:標志板;激光刻打;CAD二次開(kāi)發(fā);Python
《鐵路貨車(chē)輪軸組裝檢修及管理規則》(簡(jiǎn)稱(chēng)《輪規》)中規定,鐵路貨車(chē)在進(jìn)行廠(chǎng)段修時(shí),車(chē)輪軸承壓裝后必須要刻打軸承標志板并進(jìn)行安裝,F在用的標志板打號機大部分采用“液壓站+鋼字頭”的刻打方式,平均5~6min才能完成一個(gè)標志板的刻打,生產(chǎn)效率不高;由于字頭數目固定,當遇到新的內容時(shí)須增加或更換字頭,非常不便,這在一定程度上延長(cháng)了輪對檢修流程。焦作車(chē)輛段輪軸班組在原有一臺液壓站打號機的情況下新添置一臺YPK-20型激光打號機,該機器刻打速度快,且輸入字樣靈活,提高了刻打效率。然而機器配套的軟件EzCad要利用現有圖紙進(jìn)行更改,且有別于CAD文本框直接在圖紙上更改的輸入方式,須于圖紙一側的參數框內輸入,且每輸入一項須點(diǎn)“保存”或“應用”鍵保存,整個(gè)輸入過(guò)程較原設備更為煩瑣;谶@種情況,設計了新的圖紙生成程序,提高了輸入效率。
1程序效果要求及其實(shí)現方法
1.1新程序擬達到的效果液壓站打號機的輸入界面采用所見(jiàn)即所得的方式,即輸入界面與軸承標志板排列格式基本一致[1],這里同樣沿用這一設計方案。雖然EzCad可以直接在圖紙上修改,但由于其輸入是在另外的輸入框,且需要保存確認,影響了輸入體驗,這就要求我們設計一個(gè)輸入較為方便的界面。而程序也應該擁有保存功能,以便對輸入標志板內容進(jìn)行批量刻打。1.2實(shí)現方法選擇雖然EzCad也提供了二次開(kāi)發(fā)的函數,但其開(kāi)發(fā)語(yǔ)言較為單一,功能也較為局限。相比之下,AutoCAD作為通用作圖軟件,對其進(jìn)行二次開(kāi)發(fā)的手段比較豐富,而其保存的DXF格式文件也可以在EzCad中打開(kāi),所以可以先在CAD中生成待得圖像的DXF文件,再將DXF文件導入EzCad中進(jìn)行刻打,而保存得到的DXF文件也解決了數據的保存問(wèn)題。這樣,原問(wèn)題就轉化成了一個(gè)CAD二次開(kāi)發(fā)的問(wèn)題。1.3開(kāi)發(fā)語(yǔ)言選擇選擇較為流行的Python語(yǔ)言作為編程語(yǔ)言。Python是一種面向對象的語(yǔ)言,它的使用和分發(fā)完全免費,提供了所有腳本語(yǔ)言的簡(jiǎn)單性和易用性,并且具有在編譯語(yǔ)言中才能找到的高級軟件工程工具。
2程序結構設計
我們希望該程序界面友好、操作簡(jiǎn)單,所以可以一個(gè)GUI程序為主體,而將調用CAD生成DXF文件的函數作為GUI控件的響應函數包含于該程序中。2.1程序界面設計程序界面設計為有一個(gè)對話(huà)框的界面,這樣可以使操作更為直觀(guān)簡(jiǎn)單。輸入內容除了標志板內容外,還有與存儲數據和刻打相關(guān)的一些內容。下面分別介紹除標志板內容之外的各輸入內容。(1)保存文件夾:可輸入文本框,用于輸入生成DXF保存的文件夾路徑。(2)載重:下拉菜單,選項為“60t”和“70t”,用以區分兩種不同軸重的輪對。車(chē)間習慣于通過(guò)車(chē)輛載重對車(chē)輛部件進(jìn)行區分,這里也沿用這一習慣。兩種輪對標志板大小不同會(huì )導致在擺放時(shí)縱向中心不一致,可以通過(guò)調節各自的圖像生成位置來(lái)避免手動(dòng)調節擺放位置帶來(lái)的麻煩。(3)輪對編號:可輸入文本框,輸入壓裝時(shí)對輪對的臨時(shí)編號,用于保存DXF文件時(shí)進(jìn)行區分和識別。由于一般為流水號,文本框后的“+1”按鈕可方便地對上個(gè)輪對編號進(jìn)行加一處理。(4)待刻打方向:下拉菜單,選項分別為“雙側”“左側”和“右側”,用以區分兩邊標志板都需要刻打、僅需要刻打左側、僅需要刻打右側等情況。(5)軸承修程:下拉菜單,選項分別為“一般檢大修”“一般檢新造”“大修”和“新造”,用以區分不同修程的軸承,并以此確定標志板A欄中軸承新造/大修檢修標記和D欄中一般檢修標記是否刻打。(6)相隔距離調整:文本框,用于調整圖紙上兩標志板內容的相隔距離,在定位裝置固定時(shí)該輸入內容不變。(7)生成圖紙:按鈕,在輸入信息完畢后按下它生成圖紙。
由于輪對未經(jīng)二次組裝時(shí),其首次組裝年月日和末次組裝年月日一致,而這樣的輪對占很大的比例,故采用“當右端B欄的輪對末次組裝年月日文本框為空時(shí),生成圖紙時(shí)該數據調用左端B欄的輪對首次組裝年月日數據”的設計方案以提高輸入效率。在設計好界面布局后對其tab順序進(jìn)行編輯,這樣就可以通過(guò)“tab鍵”進(jìn)行各輸入位置的切換,實(shí)現純鍵盤(pán)操作以提高輸入效率?傮w順序為“從上到下,先填寫(xiě)左端,再填寫(xiě)右端”。然后對左端標志板內容的順序進(jìn)行局部調整,填完D欄后,再打C欄的“車(chē)軸制造年月”“鋼種代號”和“車(chē)軸制造單位代號”,以適應新《輪規》實(shí)行后,未退卸軸承標志板C欄這三項內容需要完善的情況。對于界面的程序實(shí)現,Python支持多種圖形界面的第三方庫,這里導入基于Qt庫的PySide模塊進(jìn)行編寫(xiě)。PySide集成了Qt和Python的優(yōu)勢,擁有LGPL授權許可,允許進(jìn)行免費/開(kāi)源軟件和私有商業(yè)軟件的開(kāi)發(fā)。2.2生成DXF圖紙的程序設計pyautocad模塊可以幫助完成用Python語(yǔ)言編寫(xiě)簡(jiǎn)單的ActiveX自動(dòng)控制腳本[2],這里導入它來(lái)編寫(xiě)調用CAD生成DXF文件的函數作為“生成圖紙”按鈕的響應函數。pyautocad封裝了一些接口[3],而且其中的sendcommand函數可以控制在CAD的命令行中運行指定的`命令,相當于把CAD命令行prompt當成了一個(gè)微型API[4],這就允許我們完整地使用CAD的功能控制生成圖紙。具體生成圖紙的流程為:(1)根據相對位置生成各欄文本;(2)將文字分解,變?yōu)橥鈬喞(xiàn)文字;(3)對空心的文字進(jìn)行填充;(4)對文本進(jìn)行打散,使之成為曲線(xiàn);(5)調整圖形位置;(6)保存。由于CAD中生成的文字導入EzCad中會(huì )變?yōu)榭招奈淖,這里先在CAD中將文字變?yōu)榭招奈淖,再對其進(jìn)行填充。將文字變?yōu)榭招奈淖钟袃蓚(gè)方法:一是使用官方自帶的Express工具箱,二是安裝燕秀工具箱。雖然Express工具箱的處理速度比燕秀工具箱更快,但文字處理后輪廓內部有一定的多余線(xiàn)條,這會(huì )影響后續的填充操作。而燕秀工具箱處理效果更好。填充過(guò)后,還要再把圖形打散一次,以保證填充線(xiàn)也能導入到EzCad中去。在生成一個(gè)新的圖紙時(shí),先檢查該文件夾中是否存在該輪對編號文件名的文件,如果存在,則程序不發(fā)生動(dòng)作,如果不存在,才生成對應的圖紙文件。在生成圖紙完畢后,可以將圖像刪除繼續等待下一個(gè)文件生成,也可以將CAD關(guān)閉,當下次調用時(shí)再次打開(kāi)。而如果單單以DXF格式保存就關(guān)閉CAD時(shí),CAD會(huì )以對話(huà)框的形式詢(xún)問(wèn)是否以DWG格式保存,故還要主動(dòng)保存DWG格式的文件。這樣目標文件夾中除了會(huì )有我們需要的DXF文件,還會(huì )有副產(chǎn)品———DWG文件。最后生成的圖紙效果如圖2所示。再將保存后的DXF文件作為矢量圖導入EzCad中打印即可。
3結語(yǔ)
(1)通過(guò)利用Python語(yǔ)言及其pyautocad模塊調用AutoCAD生成DXF文件再導入EzCad中進(jìn)行刻打的方法,并基于PySide模塊編制輸入界面,提高了輸入效率,節省了總體時(shí)間。(2)DXF文件作為中間文件,結合了兩個(gè)軟件的優(yōu)點(diǎn),并解決了數據存儲的問(wèn)題。(3)雖然激光刻打有效率高、刻打內容靈活的特點(diǎn),但在刻打過(guò)程中容易形成煙塵,長(cháng)期吸入對人體健康有害。在條件不允許重新設計刻打機時(shí),應盡量在寬敞、通風(fēng)處進(jìn)行刻打,刻打人員也應佩戴好口罩等防護用品。
【貨車(chē)滾動(dòng)軸承標志板的激光打標圖紙程序設計的論文】相關(guān)文章:
淺談訴訟標論文07-08
交通標志的論文04-12
標志色彩設計探討的論文11-10
巧妙構思板圖的論文05-10
激光熔覆技術(shù)研究的論文10-27
現代標志的漢字設計傳承論文06-19
試論文明社會(huì )的標志06-21
VFP程序設計課程教學(xué)探索論文07-24