陳啟明
【摘 要】變螺距螺紋是應用在擠壓和輸送方面的一種螺紋,加工難度大,在數控機床普及的趨勢下,利用數控設備使加工變螺距螺紋變得簡單易行,但是對編程人員的編程能力提出較高要求。文章通過實踐經驗總結,以FUNUC oi-mate-tc車床為例,借助計算機語言編寫適合變螺距螺紋加工的通用軟件,在保證加工精度的同時,降低編程門檻,提高編程效率。
【關鍵詞】C語言;變螺距螺紋;軟件開發(fā)
【中圖分類號】TG659 【文獻標識碼】A 【文章編號】1674-0688(2018)12-0065-02
0 引言
變螺距螺紋在工業(yè)中應用廣泛,利用數控機床加工時,因其螺距在做增量變化,同時要保證牙的寬度相等,主要采用的編程方式就是宏程序。宏程序需要利用數控系統(tǒng)中的變量、循環(huán)、邏輯運算等高級編程方式,對于編程人員的要求較高。為了使編程更方便、更容易,本文借助計算機語言自行開發(fā)通用工具提高編程效率。
1 開發(fā)前期準備
1.1 變螺距螺紋車削工藝分析
牙等寬變螺距螺紋因螺距在做增量變化,但是牙寬相等,加工時刀具寬度不會變化,因此加工時需要先分層,然后在每一層趕刀加工??紤]到加工效率,加工過程分為開粗和精加工兩部分,開粗時對牙槽中的多余材料進行加工,精加工時對牙側進行車削,確保零件精度。
1.2 開發(fā)工具的確定
1.2.1 開發(fā)語言
開發(fā)語言可根據自身需求自行選定,本文以C語言為例進行開發(fā)。C語言是國際流行的計算機高級語言,具有代碼量很小、運行速度比較快、功能強大、簡單易學等特點。
1.2.2 開發(fā)工具
工具可根據自身需求選定,本文以code blocks作為開發(fā)工具。code blocks是一個開放源碼的全功能跨平臺C/C++集成開發(fā)環(huán)境,具有靈活而強大的配置功能,除支持自身的工程文件,還支持多種腳本文件、工程文件和解決方案,具有良好的兼容性。
1.2.3 程序的開發(fā)
1.2.3.1 確定框架
螺紋軟件的開發(fā)只需要對輸入參數進行處理,然后輸出準確的G代碼即可,所以編碼部分由螺紋各加工參數輸入、正確與否的判斷、邏輯運算和文件生成四大部分組成。
1.2.3.2 各部分的編程
首先分定義參數在C語言中的變量名,然后將參數準確輸入相應變量中,參數即為螺紋的基本數據,由加工時螺紋實際參數而定。
(1)螺紋各參數在編碼過程中所對應的變量名見表1。
(2)螺紋參數的輸入(源代碼),考慮各參數的數據類型,此處使用了整型、浮點型的數據(如圖1所示)。
1.2.3.3 對各參數正確與否進行判斷
在輸入參數時,難免會輸入錯誤的參數,如果沒有將輸入的參數進行判斷,則G代碼會按照錯誤的參數進行輸出,可能會導致撞刀或其他嚴重的安全事故,所以在進行邏輯運算之前必須對各參數進行判斷,使各參數符合加工需要。編碼過程需對牙寬、螺距、牙側角度、刀寬、引入距離等參數進行判斷,當輸入有誤時,報警提示并重新寫入數據,確保參數正確和G代碼的正確性。判斷牙寬和螺距(如圖2所示);判斷牙側角度(如圖3所示)。
1.2.3.4 邏輯運算
邏輯運算直接影響著G代碼的輸出安全與可靠,屬于開發(fā)中的核心部分。邏輯運算由參數計算、開粗、精加工三部分組成,參數計算方面根據所輸入的數據,結合加工軌跡進行計算,對螺紋總長度、總牙數、借刀次數、分層次數等參數進行計算;開粗時將每層的加工G代碼輸出;精加工時根據加工精度選擇合適的參數,對牙型兩側的殘料進行加工。
在數控系統(tǒng)中,運行螺紋加工指令G32時,螺距值不能為0,所以開發(fā)時必須做出相應處理,防止機床使用時報錯。參數的計算(如圖4所示);螺紋開粗G代碼的輸出(如圖5所示);螺紋精加工G代碼的輸出(如圖6所示)。
1.2.3.5 文件類型的處理與輸出
FUNUC數控系統(tǒng)中,機床通常采用程序文件后綴為
.TXT/.CUT/.NC等數據格式,為了使用戶直接將生成的程序傳輸進去,本文以.TXT文件格式為例,將G代碼保存到TXT文檔中,方便直接傳輸到機床。此處以在桌面位置新建一個文件名為O7777的TXT文檔為例進行說明(如圖7所示)。
1.2.3.6 程序的調試與生成
代碼完工后,利用具體參數進行軟件測試與調試,同時利用CIMCO EDIT和進行刀具軌跡仿真;調試過程中,著重對生成G代碼的可使用性和準確性進行測量,對數據報錯進行檢驗,確保在使用過程中既不出安全事故,又使加工的零件精度合格;調試合格后,生成.exe的可執(zhí)行文件。
2 結語
本文介紹利用C語言開發(fā)數控螺紋軟件的方法,將程序開發(fā)中涉及的程序結構、注意事項和源代碼進行詳細闡述,解決了數控操作人員因編程能力有限或其他原因沒法加工高難度螺紋的難題,降低了生產成本、提高了加工效率,為其他高難度螺紋、特定工藝環(huán)節(jié)的軟件開發(fā)提供思路和借鑒。
參 考 文 獻
[1]譚浩強.C語言程序設計[M].北京:清華大學出版社,2000.
[2]人力資源和社會保障部教材辦公室.數控車床編程與操作(廣數系統(tǒng))[M].北京:中國勞動社會保障部出版,2012.
[3]劉棋,夏哲卿,高承明,等.和鬼谷一起學數車宏程序[M].北京:機械工業(yè)出版社,2015.