-
-2 15
- 賈毅朝,,孫培祿(青島卓東機(jī)械科技有限公司,,山東青島266400)摘要:提出了一種基于AuioCAD的模塊化設(shè)計(jì)方法,并對自動編程系統(tǒng)開發(fā)的關(guān)鍵技術(shù)進(jìn)行了研究,,包括圖形數(shù)據(jù)的采集,,加工模具的選擇,加工路徑的優(yōu)化處理以及NC代碼的生成等自動編程的一系列過程,。研究了仿真模塊的總體結(jié){弩方案,,實(shí)現(xiàn)了基于AutoCAD Wj=維動態(tài)仿真。實(shí)踐生產(chǎn)證明,基于AutoCAD的數(shù)控沖床自動編程系統(tǒng)能夠滿足實(shí)際生產(chǎn)的需要,,能夠有效提高數(shù)控沖壓加工的生產(chǎn)效率和安全性,。關(guān)量詞:VisuaIUSP;數(shù)控沖床,;自動編程,;加工仿真O概述隨著科學(xué)技術(shù)的發(fā)展,數(shù)控沖床越來越廣泛地應(yīng)用在機(jī)械制造行業(yè)中,。在數(shù)控加工系統(tǒng)中,,傳統(tǒng)的NtC代碼手工編程不僅效率低,而且容易出錯,;而采用APT語言的自動編程雖然幾何定義語句簡潔,,功能較強(qiáng),但要求編程人員要熟記系統(tǒng)的語言與規(guī)則,,一旦出錯又不易發(fā)現(xiàn),。國外的數(shù)控沖床圖形編程系統(tǒng)已應(yīng)用于工業(yè)生產(chǎn)實(shí)際,而我國在這方面還處于研究階段,。本文作者對數(shù)控沖床的自動編程系統(tǒng)進(jìn)行了深入的研究,,并在AuIoCAD的VisuaIUSP環(huán)境下進(jìn)行了相應(yīng)的系統(tǒng)開發(fā)工作,并成功通過了AutoCAD2000—AutoCAD2006多個版本的兼容性測試,。1 自動編程系統(tǒng)的總體結(jié)構(gòu)自動編程系統(tǒng)采用模塊化結(jié)構(gòu),,由六大功能模塊組成,分別為自動編程主模塊,、圖形信息處理模塊,、加工路徑確定與優(yōu)化模塊、模具庫與模具選擇模塊,、后置處理模塊,、圖形仿真模塊,模塊化數(shù)控沖床自動編程系統(tǒng)的總體結(jié)構(gòu)圖如圖1所示,。自動編程主模塊的主要工作是調(diào)用如工路徑模塊和模具庫模塊,,將圖形信息轉(zhuǎn)化為加工路徑信息及模具信息,并生成刀位文件,。此模塊還可以直接調(diào)用后置處理模塊與圖形仿真模塊,,生成加工所需的NC代碼,并對其進(jìn)行圖形仿真,。本模塊所具有的功能還包括保存,、編輯刀位文件和NC代碼文件等文件編輯功能。2 系統(tǒng)開發(fā)的關(guān)鍵技術(shù)研究2.1 圖形信息的處理要想生成數(shù)控轉(zhuǎn)塔沖床NC代碼,,首先就要讓計(jì)算機(jī)識別所需要加工的圖形,。圖形信息處理模塊的作用是將CAD圖形中的有用圖形信息提取出來,,比如圖形中圓孔的直徑和圓心、方孔的邊長和中心,、腰圓孔的孔徑和中心線圓弧的半徑與圓心,、矩形孔的邊長和幾何中心等,然后將這些信息輸送到主程序模塊中,。獲取圖形信息的方法有多種,,比如通過DXF文件導(dǎo)入,或者通過人機(jī)交互獲取,。由于VisualLISP可以直接操作選擇集,,所以選擇后一種方法更為合適,并且有利于設(shè)定編程原點(diǎn)(工件坐標(biāo)系原點(diǎn))等人機(jī)交互更為方便的操作,。2.1.1 圓形類基本參數(shù)的獲取在AutoLISP中,,通過交互操作獲取圓基本參數(shù)是非常容易的,如下簡單程序段即可獲得圓形的主要參數(shù):(SETQ cir_data(ENTGET(CAR(ENTSEL”,、n請選擇一個圓形:”))),;通過交互操作獲得圖形信息( SETQ cir_pt( CDR( ASSOC 10 cir_data)));從圖形信息中獲取圓心坐標(biāo)(SETQ cir_r(CDR(ASSOC 40 cir_data))),;從圖形信息中獲取圓的半徑2.1.2矩形類基本參數(shù)的獲取矩形類的主要參數(shù)是2個邊長和4個頂點(diǎn).4個頂點(diǎn)可以用AutoLISP函數(shù)獲得,,邊長可以通過計(jì)算相鄰的兩點(diǎn)間的距離確定。獲得點(diǎn)的位置一般要用到ASSOC函數(shù),,其作用是從關(guān)聯(lián)表中搜索1個元素,,如果找到則返回該關(guān)聯(lián)表?xiàng)l目,如果點(diǎn)的數(shù)目較多則一般采用循環(huán)讀取的方法,,只需做1個循環(huán)即可獲得4個頂點(diǎn),。(SETQ re8_data( ENTGET( CAR( ENTSEL”、n請選擇一個矩形:”)))),;通過交互操作獲得圖形信息( WHILE( SETQ pt( ASSOC IO reg_data》,;設(shè)置循環(huán)條件(SETQ reg_data(CDR(MEMBER pt reg_dtt-ta)));將以獲得的點(diǎn)從關(guān)聯(lián)表中刪除(SETQ ptb (CONS( CDR pt) ptb ))將獲得的依次點(diǎn)位存儲到變量ptb中計(jì)算邊長的時候?qū)Ⅻc(diǎn)位從點(diǎn)表變量ptb中提取,,通過Distance函數(shù)直接求取,,無需做距離計(jì)算。2.1.3腰圓孔,、腰直孔類基本參數(shù)的獲取腰圓孔、腰直孔基本參數(shù)的獲取涉及到多段線數(shù)據(jù)的提取,。為了實(shí)現(xiàn)圖形的自動編程,,必須將這兩類孔均轉(zhuǎn)換為多段線PolyLine或者Lwpolyline。采用AutoLISP表處理函數(shù)可以獲得各節(jié)點(diǎn)坐標(biāo)及圓弧凸度,,其方法如下:(SETQ pcl_data( ENTGET( CAR( ENTSEL”\n請選擇一個矩形:”))))( SETQ ptl( CDR( ASSO(: 10 pel_data)))i從pel_data中取出第一個節(jié)點(diǎn)坐標(biāo)給變量ptl(SETQ par(CDR(ASSOC 42 pel_data))),;從pel_data中取出第一條線段凸度給變量par圓弧半徑可由凸度值和相鄰兩節(jié)點(diǎn)坐標(biāo)計(jì)算出來,,圓弧半徑尺的值由式(1) 2 3確定:式中:R為圓弧半徑;dist為兩節(jié)點(diǎn)距離,;par為凸度絕對值,。腰圓孔類基本參數(shù)主要有4個半徑和4個圓心。其實(shí).只需要計(jì)算出其中4個圓心就可以實(shí)現(xiàn)編程功能了,。有了4個圓心又可以確定圓弧步?jīng)_的起點(diǎn)和終點(diǎn),。通過分析計(jì)算出的圓弧半徑就可以獲得模具的半徑和圓弧步?jīng)_所需的圓弧半徑。腰直孔獲得其多段線的4個頂點(diǎn)圓弧半徑就可得出步?jīng)_的起點(diǎn),、終點(diǎn)和步?jīng)_的長度,。計(jì)算出的圓弧半徑即模具的半徑。2.2加工模具的自動選擇2.2.1模具庫的建立對于一個具體的刀具,,具體有以下幾個參數(shù):模具號,,形狀,X方向長,,y方向長以及直徑,。對于圓形模具,沒有X,、y方向長參數(shù),,對于矩形模具,沒有直徑參數(shù),。用戶可以由對話框建立刀具和修改刀具,。定義變量m _dia為模具直徑,m一xlen為模具X方向長,,m-ylen為模具y方向長,,m_shape為模具形狀,m_sym為模具號,,如下程序段定義刀具信息格式,。(list m_8ym m_shape m_xlen m_ylen m_dia);刀具信息組成表格式模具類的建立即是建立了刀具存儲的格式,,即刀具信息在刀具庫中是以表的格式存儲的,,模具庫管理通過表操作來完成對模具庫的管理功能。2.2.2加工模具的自動選擇一般的數(shù)控沖壓機(jī)可以多副模具,,其中既有圓形模具,,也有矩形模具,其要加工的孔可分為圓孔,、矩形孔,、腰圓孔,腰直孔四類,。為了方便選擇圖形和不同類圖形的處理,,系統(tǒng)可以通過交互式操作將不同類型圖形賦值于四個不同的選擇集ss1,、ss2、883,、as4,。通過對SSGET函數(shù)的參數(shù)設(shè)置,可以避免賦值過程的誤操作,。系統(tǒng)自動模具選擇的總體流程如圖2所示,。圖2系統(tǒng)自動模具選擇的總體流程其中模具匹配需要編寫專用的匹配函數(shù),根據(jù)孔型的不同自動從建立好的模具庫中選擇合適的模具進(jìn)行加工,。2.3加工路徑確定加工路徑的確定就是數(shù)控沖床沖壓路徑的確定,,主要的設(shè)計(jì)任務(wù)就是實(shí)現(xiàn)以何種方式來確定加工順序,加工路徑如何實(shí)現(xiàn)最短優(yōu)化,,如何使加工時間縮到最少,,如何使程序適應(yīng)多種加工方案。2 3.1 加工路徑確定的基本原則數(shù)控沖床加工路徑的確定主要涉及兩個基本原則:(1)同一把刀工序盡量集中,。在數(shù)控沖壓加工時,,為了減少轉(zhuǎn)刀所占用的輔助時間,可按集中工序的方法加工零件,,盡可能用同一把沖模加工完零件表面上的相同沖切部分,。(2)走刀路徑最短。對于數(shù)控設(shè)備來說,,每一秒鐘的時間都是寶貴的,,沖壓過程所需的時間較短,而橫具的空行程決定了加工效率,,合理安排空行程路徑顯得尤為重要,。2.3.2加工路徑的優(yōu)化加工路徑的優(yōu)化的問題即是對加工孔尋找最短遍歷路徑的問題,對尺寸相同的加工孔而言,,路徑的優(yōu)化可以歸屬與完全NP問題,,完全NP問題的典型是貨郎擔(dān)問題,貨郎擔(dān)問題和本文研究的最短遍歷路徑問題的差別在于貨郎擔(dān)問題的最終節(jié)點(diǎn)是起始點(diǎn),,而最短遍歷路徑不要求最后回到起始點(diǎn),,但如果能夠以一個高效的算法來解決貨郎擔(dān)問題,最短遍歷路徑也可參照得出近似算法,。完全NP問題完全的算法是不存在的,,因?yàn)閷τ诒闅v點(diǎn)大于20時要想得出結(jié)果需要幾年甚至幾十年的時間。一般采用近似算法來代替最優(yōu)算法,,常見的算法有正交路徑法,、最近點(diǎn)路徑法一等。2. 4后置處理后置處理模塊的主要作用是用來將刀位文件轉(zhuǎn)化為NC代碼,。把它作為獨(dú)立模塊的作用是可以通過不同的后置處理生成適應(yīng)不同數(shù)控系統(tǒng)的NC代碼,,增強(qiáng)系統(tǒng)的通用性。2.4.1 后置處理模塊的設(shè)計(jì)后置處理模塊分為兩大類:一類為專用后置處理模塊,,另一類是通用后置處理模塊,。根據(jù)沖壓數(shù)控系統(tǒng)的特點(diǎn),通用后置處理模塊更適合本系統(tǒng),,通過制定標(biāo)準(zhǔn)格式的機(jī)床文件,,通過對話框?qū)崿F(xiàn)機(jī)床數(shù)據(jù)的標(biāo)準(zhǔn)化文件。在NC代碼生成和圖形仿真時調(diào)用機(jī)床標(biāo)準(zhǔn)文件,,即可獲得相應(yīng)的數(shù)控代碼信息,。數(shù)控系統(tǒng)C代碼的設(shè)置界面如圖3所示。2.4.2 NC代碼生成(1)點(diǎn)位沖孔的NC代碼生成點(diǎn)位沖孔的G代碼是GOO,,但為了適應(yīng)更多的數(shù)控系統(tǒng),,作者建立一個變量gcode_00,用來表示快速點(diǎn)定位沖孔指令,,系統(tǒng)默認(rèn)代碼為GOO,,不同的數(shù)控系統(tǒng)可以在自動編程系統(tǒng)的后置處理設(shè)置中設(shè)定。刀具的中心位置坐標(biāo)由加工路徑模塊確定,,刀具信息由模具選擇模塊確定,。(2)步?jīng)_加工的NC代碼生成以直線步?jīng)_為例,系統(tǒng)默認(rèn)的直線步?jīng)_的G代碼是G69,,不同的數(shù)控系統(tǒng)仍然可以在自動編程系統(tǒng)的G代碼設(shè)置中設(shè)定,。步?jīng)_的起始位置和終點(diǎn)位置坐標(biāo)由加工路徑模塊確定,刀具信息由模具選擇模塊確定,。步?jīng)_的長度即是起點(diǎn)位置和終點(diǎn)位置的距離,,用函數(shù)DisIance可以輕松實(shí)現(xiàn),步矩的確定分為圓形,。模具步?jīng)_和矩形模具步?jīng)_兩種情況,。2.4.3步?jīng)_步矩的確定用圓形的模具進(jìn)行步?jīng)_時必然會產(chǎn)生均勻的步?jīng)_齒花,步距越大,,齒花越明顯,。圓形模具的步?jīng)_步距取決于步?jīng)_齒花的高度,即取決于步?jīng)_精度的大小,,齒花大小決定了孔的加工精度,,所以設(shè)計(jì)程序時把精度要求作為一個輸入?yún)?shù),在自動編程系統(tǒng)的步?jīng)_精度設(shè)置中設(shè)定,,步距的大小由式(2):計(jì)算確定,。式中:p為步距;d為模具直徑,;s為齒花高度,。矩形模具的步?jīng)_步距只取決于步?jīng)_的長度與模具的尺寸,。用步?jīng)_起點(diǎn)和終點(diǎn)的距離除以步?jīng)_方向的模具尺寸得出的數(shù)值取整加一,得出最小步?jīng)_步數(shù),;然后,,再用步?jīng)_起點(diǎn)和終點(diǎn)的距離除以步?jīng)_步數(shù)得出的數(shù)值即可作為步?jīng)_步距。當(dāng)然,,在大多數(shù)數(shù)控系統(tǒng)中,,矩形模具的步?jīng)_步距可以是小于步?jīng)_方向的模具尺寸的任何值,為了保證加工的效率和加工效果,,可以人工估算一個合理步矩值,,然后通過自動編程系統(tǒng)的步?jīng)_精度設(shè)置中設(shè)定。如果步?jīng)_起點(diǎn)和終點(diǎn)的距離除以此步距得出的步?jīng)_步數(shù)不為整數(shù)時,,數(shù)控系統(tǒng)會自動調(diào)整步矩以適合加工,。3加工過程的仿真在數(shù)控加工過程中,零件加工后的質(zhì)量是否符合要求,,在加工過程中是否會發(fā)生零件與刀具,、刀具與夾具、刀具與機(jī)床工作臺之闖的干涉與碰撞,,刀具是否對零件進(jìn)行了過切或少切,,刀具的走刀路線、走刀方式是否合理等一系列實(shí)際加工中可能會發(fā)生的問題都決定于自動編程系統(tǒng)所輸出的數(shù)控加工指令集是否正確,。根據(jù)NC代碼文件提供的信息,,將加工軌跡模擬出來.顯示在顯示屏上,以方便程序校驗(yàn)和沖壓過程檢驗(yàn),。3.1仿真系統(tǒng)總體結(jié)構(gòu)仿真系統(tǒng)應(yīng)該能夠完成數(shù)控程序的錯誤檢查,,動態(tài)地模擬數(shù)控機(jī)床驅(qū)動刀具的運(yùn)動及加工過程。因此加工過程的仿真一般由文件處理,、錯誤檢查和模擬仿真三部分組成,。其總體結(jié)構(gòu)如圖4所示。3.2 NC代碼的翻譯與仿真的實(shí)現(xiàn)獲得了程序段的數(shù)據(jù),,就可以利用其提供的數(shù)值進(jìn)行仿真,。實(shí)現(xiàn)了在屏幕上作圖不等于實(shí)現(xiàn)了加工過程的仿真,如果不僅想看到全部的圖形顯示在屏幕上,,而且想動態(tài)的觀測加工的先后順序,,就需要加一些程序。實(shí)現(xiàn)動態(tài)的仿真可以由兩種方法實(shí)現(xiàn):一是調(diào)用AuroCAD的內(nèi)部命令“delay”,。這種方法的優(yōu)點(diǎn)是簡單快捷,,可以隨意設(shè)定兩個圖形間的生成時間,即可以隨意調(diào)節(jié)仿真的速度。第二種方法是編寫動態(tài)函數(shù)z_timer,;動態(tài)函數(shù)ztimer的作用是通過輸入的沖床T軸移動速度,,再根據(jù)圖形中計(jì)算出的兩個相鄰加工點(diǎn)的距離,即可得出其移動所需要的時間,,然后再由Delay函數(shù)實(shí)現(xiàn)延時,。這種方法的優(yōu)點(diǎn)是:全部時間與實(shí)際時間相符,可以加入換刀的時間,,實(shí)現(xiàn)真正實(shí)時的仿真,并且可以通過對話框指定時間縮放比例,,即也可以接比例控制仿真的速度,。4程序運(yùn)行實(shí)例4.1 NC代碼的自動生成選用實(shí)際加工的電控板圖紙如圖5所示。首先,,將圖5按1:1的比例在AutoCAD中繪制出來,,然后檢查要加工的矩形孔是否是整體,如果矩形孔是用多條直線段繪制的,,就需要轉(zhuǎn)化為一條多段線,。點(diǎn)擊菜單“數(shù)控加工”一“加工刀具預(yù)撿驗(yàn)”,以檢查所需加工的孔在刀庫中是否存在合適的加工刀具,,檢查完畢后,,系會提示矩形孔60×20沒有直接可以使用的模具。因此,,可以指定步?jīng)_模具為1316號刀具,,即13 x13方模其,但是為了讓動態(tài)仿真更為清晰,,選用T321號步?jīng)_模具,,即10 xl0方模具。圖5電氣控制板點(diǎn)菜單“數(shù)控加工”-“NC代碼生成”,,在彈出的對話框中根據(jù)提示選擇要加工的圖形,,并設(shè)定好相關(guān)參數(shù),點(diǎn)擊確定即可生成相應(yīng)的NC代碼,,如圖6所示,。4.2 NC代碼的動態(tài)仿真的實(shí)例首先對NC代碼文件進(jìn)行錯誤檢查,確認(rèn)沒有詞法和語法錯誤后,,點(diǎn)擊“數(shù)控加工”一“數(shù)控仿真”,,激活數(shù)控仿真對話框,通過對話框選定要進(jìn)行仿真的NC文件,,設(shè)定好沖壓仿真速度,,點(diǎn)擊確定按鈕,對話框自動關(guān)閉,并且在當(dāng)前屏幕上開始對所指定的NC代碼文件進(jìn)行動態(tài)仿真,。仿真效果如圖7所經(jīng)過多年的研究,,數(shù)字控制技術(shù)已經(jīng)非常成熟。根據(jù)有源功率因數(shù)校正開關(guān)變流器的工作特性,,將數(shù)字微處理器應(yīng)用于功率開關(guān)變換器控制技術(shù)中,,提出了采用改進(jìn)的數(shù)字控制算法控制的功率因數(shù)校正變換器方案,詳細(xì)闡述了基于數(shù)字化技術(shù)的功率因數(shù)校正交流器工作原理和控制方法,,給出了電路分析,、實(shí)驗(yàn)設(shè)計(jì)分析結(jié)果。
- 評論(0)
發(fā)表評論 TrackBack
◎歡迎參與討論,,請?jiān)谶@里發(fā)表您的看法,、交流您的觀點(diǎn)。