(天津長蘆海晶集團有限公司工程設(shè)備管理部,天津300150)
隨著機械加工整體水平的提高,各企業(yè)現(xiàn)使用的絕大部分傳統(tǒng)老式機床已經(jīng)很難滿足企業(yè)的生產(chǎn)需求和生產(chǎn)效率。為節(jié)約成本,進一步發(fā)揮老式傳統(tǒng)機床的功效和潛在價值,將大批傳統(tǒng)老式機床改造利用是一種必然趨勢。利用Proteus仿真軟件在計算機上模擬出加工走刀和零件切削的全過程,直接觀察在切削過程中可能遇到的問題并進行調(diào)整,這樣既不實際占用和消耗機床、工件等資源,還可以利用計算機仿真技術(shù)預(yù)先對機床改造結(jié)果進行估計,避免可能遇到的問題,起到了事半功倍的效果。
注重數(shù)控功能的選擇,不應(yīng)單純追求數(shù)控系統(tǒng)的高性能指標(biāo),這對于實現(xiàn)較高的性能價格比非常重要。數(shù)控系統(tǒng)所具有的功能要與準(zhǔn)備改造的數(shù)控機床所能達到的功能相匹配,盡量減少過剩的數(shù)控功能。如果數(shù)控系統(tǒng)功能過剩,一方面浪費資金,另一方面還可能潛伏由于數(shù)控系統(tǒng)復(fù)雜程度的增加而帶來的故障率增長的隱患,這里我們選用的是低功耗、高性能8位的89C51單片機,它有豐富的硬件資源,特別是其內(nèi)部增加的閃速可電改寫的存儲器Flash ROM給單片機的開發(fā)及應(yīng)用帶來了很大的方便,并且芯片的高性價比也使其得到了廣泛的應(yīng)用。
為了確定程序的正確性,采用Keil u Vision軟件對各個程序進行調(diào)試,該軟件是德國Keil Software公司出品的51系列兼容單片機軟件開發(fā)系統(tǒng)。是用戶開發(fā)和調(diào)試單片機源代碼的理想工具,簡稱Keil。Keil提供源代碼級調(diào)試,支持?jǐn)帱c、變量監(jiān)視,存儲器訪問,串口監(jiān)視,指令跟蹤。
調(diào)試步驟如下:
3.2.1 創(chuàng)建一個項目(project),從器件庫中選擇目標(biāo)器件,配置工具設(shè)置。
3.2.2 用匯編語言創(chuàng)建源程序并保存,匯編程序文件擴展名為.ASM,C語言程序文件擴展名為.C。
3.2.3 用項目管理器生成應(yīng)用,將編寫好的程序添加到工程項目中,并調(diào)試。
3.2.4 修改源程序中的錯誤。
3.2.5 測試,連接應(yīng)用。
程序在調(diào)試正確后會生成.HEX文件,將該文件刻進芯片中即可。進入軟件后可創(chuàng)建工程文件,點擊project在彈出的菜單中選擇New uvision project即可。創(chuàng)建后窗口左方會出現(xiàn)工程項目Tatget1。創(chuàng)建好工程項目后,單擊新建選項,在窗口中輸入源程序,保存文件的擴展名為.ASM。然后再將寫好的源程序文件添加到工程項目的Sources Group中。接下來就可以對源程序進行調(diào)試了,首先可以用Project中的build target生成目標(biāo)文件,若程序有錯則無法生成,需根據(jù)提示對程序進行修改,直到錯誤和警告數(shù)目為零。再用Debug對程序進行運行調(diào)試,通過觀察相應(yīng)窗口的狀態(tài)來確定是否跟預(yù)期相同。然后依次完成直線插補程序,圓弧插補程序,步進電動機控制程序調(diào)試,鍵盤掃描與顯示程序調(diào)試。
軟件自動升降速控制的基本原理是:確定定時器的初始定時常數(shù),依據(jù)就是在升速過程中允許的啟動頻率,按一定規(guī)律不斷增加定時常數(shù)(對加法計數(shù)的定時器來講)減小中間時間間隔,加快脈沖分配頻率,在恒速過程中,保持定時常數(shù)不變;在降速過程中,按規(guī)律不斷減小定時常數(shù),降低脈沖分配頻率,直到定時常數(shù)等于希望的制動頻率所對應(yīng)的值時,停止脈沖分配,使步進電機制動。
升降速過程可按指數(shù)或直線(勻加速)規(guī)律控制,前者的特點是升降速過程短,與步進電機的階躍響應(yīng)規(guī)律吻合,但程序設(shè)計復(fù)雜,后者的特點是程序簡單,但升降速過程較長。本設(shè)計中采用的是分段直線規(guī)律進行自動升降速控制。
根據(jù)給定刀具的運動軌跡和給定速度,采用適當(dāng)?shù)挠嬎惴椒?,在運動軌跡的起點和終點之間,計算出滿足要求的中間坐標(biāo)的過程叫插補。
基準(zhǔn)脈沖插補又稱脈沖增量插補或行程標(biāo)量插補,其主要特點是在順序循環(huán)計算運動軌跡中間點的過程中,每次插補循環(huán)的輸出是下一個中間點的相對前中間點位移坐標(biāo)的增量,并以指令脈沖形式輸出。以驅(qū)動各坐標(biāo)軸的進給,同時控制每次插補輸出的坐標(biāo)位移增量,即每次插補輸出的指令脈沖或者是一個,或者沒有。因此,在運動軌跡的起點和終點之間,中間點個數(shù)是已知的,插補循環(huán)次數(shù)也是已知的,通過控制每次插補循環(huán)的時間,就可以控制總插補時間,從而控制運動速度?;鶞?zhǔn)脈沖插補的方法很多,有脈沖乘法器法,逐點比較法,數(shù)字積分法,適量判別法,比較積分法;最小偏差法,單步追蹤法等,其中應(yīng)用較多的是逐點比較法和數(shù)字積分法。在本次設(shè)計中我們采用的是逐點比較法。
逐點比較法的基本思路:在從起點到終點的過程中,根據(jù)刀具當(dāng)前位置和給定軌跡的偏離情況,并為消除這個偏離,在其中一個坐標(biāo)軸上走一小步,這樣一步步直到終點。每一步都是用給定軌跡對實際軌跡進行修正。插補循環(huán)一般由偏差判別,坐標(biāo)進給,偏差函數(shù)和終點判別四個工作節(jié)拍組成:1)偏差判別:首先要判斷刀具當(dāng)前點與其要求的運動軌跡的偏離情況,具體方法是根據(jù)要求的運動軌跡設(shè)計一個偏差函數(shù),該偏差函數(shù)是刀具坐標(biāo)的函數(shù),其函數(shù)值反應(yīng)偏離情況;2)坐標(biāo)進給:根據(jù)上面判斷的結(jié)果,發(fā)出一個進給指令脈沖,控制刀具沿相應(yīng)坐標(biāo)軸產(chǎn)生一個脈沖當(dāng)量的位移。進給脈沖分配給哪一個坐標(biāo)軸,正向還是負(fù)向,總的原則是用這個位移的結(jié)果糾正已有的偏離;3)偏差函數(shù)計算:用新的刀具位置坐標(biāo)重新計算偏差函數(shù)的值;4)終點判別:判斷刀具是否到達軌跡的終點,如到達軌跡終點則插補結(jié)束,否則重復(fù)開始下一個插補循環(huán)。
Proteus是英國Labcenter Electtonics公司研發(fā)的EDA軟件,是模擬電路、數(shù)字電路、模數(shù)混合電路的設(shè)計與仿真平臺,其元件庫中具有最完整的單片機型號,是世界上最先進的單片機系統(tǒng)設(shè)計與仿真軟件。它實現(xiàn)了在計算機上完成從原理圖設(shè)計與電路設(shè)計、電路分析與仿真、單片機代碼調(diào)試與仿真、系統(tǒng)測試與功能檢驗證到形成PCB的完整的電子設(shè)計、研發(fā)過程。
在此次設(shè)計中主要用到該軟件的智能原理圖輸入系統(tǒng),以完成電路設(shè)計、源程序設(shè)計及其調(diào)試仿真,步驟如下:
1)建立設(shè)計文件并保存;2)選取并放置元器件和電源、地終端;3)設(shè)置元器件屬性;4)連接電路。
將編寫好的匯編程序輸入到系統(tǒng)中單擊SISI菜單中的Source選項,如圖所示,選取,在彈出的對話框中即可選取已編寫好的后綴為ASM的匯編源程序。然后再單擊Source菜單中的,即可對程序進行編譯并生成目標(biāo)代碼文件。若程序有錯,則窗口會提示編譯失敗,糾錯后再次編譯直至成功。
在上述步驟完成后,即編譯成功生成目標(biāo)代碼文件.HEX。單擊仿真按鈕中的開始按扭,則會開始全速仿真,單擊可暫停仿真,出現(xiàn)原代碼調(diào)試窗口,可根據(jù)仿真現(xiàn)象再次對程序進行調(diào)試,鍵盤掃描與顯示程序的系統(tǒng)仿真結(jié)果如圖1所示。
圖1 系統(tǒng)仿真窗口
此外,在單擊仿真開始按扭后,若硬件電路中包含有錯誤,同樣無法進行仿真,錯誤提示窗口如圖2所示,故該軟件還可以檢測硬件電路的可行性。
圖2 硬件電路錯誤提示窗口