雕刻機 STM32 數控系統的研究
2020-4-30 來源: 北方民族大學 作者: 吳富民,海蓮,曹宇
摘要 :GRBL 是一款基于 Arduino 的開源雕刻機控制軟件語言,俗稱“數控 G 代碼”。GRBL 具有運行效率高,成本低,所占內存小,操作指令簡單易懂等優點。因此幾乎所有 DIY 雕刻機和自制 CNC 控制系統都會使用 GRBL 語言作為基本的操作指令。STM32f103 作為最常見的 32 位微處理器 , 它擁有 64k ROM,32kRAM。有足夠多的 GRBL 在 ARDUINO 上順利運行,最初是在 32 KROM,2KRAM。實踐證明,以 STM32 為雕刻機主控系統較 Arduino 具有操作簡便、測試準確、性價比高等特點。
關鍵詞 :雕刻機 ;STM32 微處理器 ;GRBL ;Arduino
0 引言
數控技術是數控機床控制系統中的關鍵 , 數控機床的蓬勃發展是國家實現工業自動化的基礎。G 代碼作為現在最常用的數控代碼,在數控機床控制系統的搭建和自動化生產線的建設中起著重要的作用。數控機床的控制系統在未來的發展趨勢是開源的及面向大眾化、模式化、標準化的發展方向。對于數控機床控制系統未來發展趨勢是否開源式,相關研究學者都有著自己的看法。但總的來說可移植性、互操作性、可擴展性、可互換性是數控系統未來發展最基本的特征。基于 STM32 芯片的雕刻機數控系統使用 C 程序實現數控系統功能的全軟件式數控。
1 、數控系統背景
數控 GRBL 代碼解釋器是全軟件式數控系統的核心。現在幾乎所有的工廠中數控機床通常使用 G 代碼來控制機床對工件的加工,如工件加工時的走刀、溫控系統的開啟、參考坐標系的選擇等。G 代碼能為控制系統能提供加工時需要的數據塊。G 代碼解釋器的開放性、可移植性、易讀性、高效性也是為什么說 G 代碼能成為生產線自動化的基礎。
雕刻機控制系統的核心是實時性,因為整個控制系統需要實時操作硬件(即步進電機、光源和散熱器)。在所有的 CNC 系統中使用的實時操作系統由操作系統 + 實時反饋信息系統(負反饋)組成。為了能夠實現開放式 CNC 數控系統對雕刻圖形和雕刻速度等通用操作系統的要求,滿足其實時性要求。
我們小組詳細地討論了雕刻機數控系統的總體架構 ;得出的結果是利用函數指針和 G 代碼關鍵字函數表來控制雕刻加工。這樣很不僅解決了 G 代碼解釋器詞法解釋中的關鍵字分解問題而且提高了系統整體的實時性和穩定性。除此之外我們還提出了按照功能對 G 代碼的指令進行分組,借鑒標準 G 代碼分組語法表來構建符合本系統的指令分組。這樣能為數控 G 代碼的語法檢查中兩條或兩條以上指令不能同時出現在同一條 G 代碼中提供了有益的參考。
2、 G 代碼的特性
G 代碼處理語言不像 Arduino 語言那樣復雜也不像匯編語言那樣可讀性差,它的語言現象十分簡單。考慮到控制系統的效率和實用性,本系統將詞法分析和語法分析結合在一起。提高運行效率的同時完全不影響系統的適用性。在實際操作中,證明了該方法的實用性、有效性和可擴展性。一般的 G 代碼表現形式為 :[Nnnnn]Gnn[X[±]nnnn.[john][y],[+nnnn.[john][with][+nnnn.[][]W+NNNbrother.[john][i][+nnnn.[john]〔j[±〕nnnn.[john][k+][nnnn.[john][d[+nnnn.nnn][Tnnn][Snnn][Mnn][Fnnnn] ;雖然這個表達式沒有涵蓋 G 代碼的所有語言現象,但可以從表達式中得出以下結論。
(1)G 代碼的一般表達式為 :關鍵字 + 數字 +( 空格 )+ 結束符 ;(2)G 代碼的關鍵字并不多 , 主要有 N,G,X,Y,Z,W,I,J, K,R,M,S,T,F 等 , 在實際的過程中 , 機床制造商和用戶可能對
關鍵字進行擴展 ;(3)不同的關鍵詞對應的 G 代碼的語法分析和詞法分析有不同的要求。在實際控制系統中,預處理模塊移除空白、注釋和小寫字母后,G 代碼可寫成 :小寫關鍵字 + 數字。如x10 ;(x 正向移動 10)y-8;(y 反向移動 8) ……。在掃描每行 G代碼數據的過程中,讀取指令字符和對應的數值,字符的 ASCII值對應 G 代碼關鍵字函數名在函數表中相應的位置,然后根據位置在 G 代碼關鍵字函數表中找到相應的處理函數。基于字符的ASCII 碼調用相應的處理函數來處理一一對應的指令,并將處理后的字符的數值發送給控制系統實現對電機的控制。在 32F2 中的 G1 處理讀取 G ;根據 G 代碼的 ASCII 值,可以在函數 G 代碼關鍵字的函數表中分析對應的函數 ;調用分析 G1 來處理 G1(如讀取值 1 并執行分組處理等),處理結束。
3 、結束語
基于雕刻機 STM32 數控系統的雕刻機控制系統未來發展一個十分具有前景的方向,STM32F1 有豐富的軟硬件資源,具有很大的靈活性。該系統就是利用了 32 單片機的軟硬件資源實現的,它采用 AD 繪圖硬件,利用了現代操作系統的虛擬內存特性,可多任務同時運行特性以及 C 語言的可移植性和強大的表達功能 ,實現了對 G 代碼各項功能進行詳細解釋,全部代碼用標準的 C語言寫成,具備良好的可讀性、可移植性、開放性和跨平臺特性。盡管該系統是在上位機下實現的,但它仍然具有良好的模塊化特性,系統結構簡單易懂,實用性強,運行速度快、雕刻效率高。
投稿箱:
如果您有機床行業、企業相關新聞稿件發表,或進行資訊合作,歡迎聯系本網編輯部, 郵箱:skjcsc@vip.sina.com
如果您有機床行業、企業相關新聞稿件發表,或進行資訊合作,歡迎聯系本網編輯部, 郵箱:skjcsc@vip.sina.com
更多相關信息