一種 G 代碼自動生成及仿真系統

文:上海新時達智能科技有限公司2021年第四期

  1、引言

  數控加工是利用數字化控制系統完成對零件的加工,在機械行業中占據著非常重要的地位??刂葡到y需要通過數控編程來實現,G代碼就是最為廣泛使用的一種數控編程語言。傳統的G代碼編譯器不但需要對已編程的G代碼進行語法分析和差錯處理,還需要對程序進行仿真和調試。因此G代碼編譯往往非常龐大而且受限軟硬件平臺,一套簡便易操作的G代碼生成及仿真系統就顯得很有必要。基于以上原因,本文提出了一種簡便的可跨平臺的G代碼自動生成及仿真系統,該系統利用控制系統自帶的觸摸屏設備,根據加工工藝自動將繪圖文件生成G代碼文件,通過界面和按鈕操作對G代碼進行編輯和仿真,并可預覽代碼的運動軌跡。此外,該系統還支持程序的上傳和下載操作,支持U盤等外部設備對文件的導入和導出操作。該系統的實現提高了數控程序開發的效率,減少了加工安全風險,降低了開發成本。

控制器

圖 1 數控系統框架

  2、數控系統簡介

  數控系統是數控加工的控制中心,其基本框架如圖1所示。

  在數控系統中,觸摸屏是人機交互的接口,它通過TCP通信與控制器進行連接,具有向控制器發送命令、顯示系統狀態、修改參數、查看故障等功能;控制器是數控系統的核心,對運動軌跡進行規劃,然后通過總線發出控制指令控制驅動器并帶動設備運行。觸摸屏可利用現有的通信資源,實現控制器文件的上傳和下載功能,也可導入外部存儲設備(SD卡、U盤等)中的文件,或將文件導出到這些外部設備中。

  3、G代碼自動生成及仿真系統實現過程

  G代碼自動生成及仿真系統主要在數控系統的觸摸屏上實現,根據需要實現的功能可分為以下幾個模塊:代碼生成模塊、軌跡顯示模塊、代碼編輯模塊、仿真模塊、上傳下載模塊。

控制器

圖 2 G 代碼自動生成及仿真系統

  3.1代碼生成模塊

  該模塊可將繪圖文件(dxf文件)轉換成G代碼內容的txt文件,并將轉換后的文件自動保存到dxf文件路徑下。

  模塊封裝了基于開源dxflib,用C++語言實現文件轉換的庫,在觸摸屏上通過路徑選擇界面打開dxf文件后,模塊會調用庫中的轉換函數,并將源文件(dxf文件)路徑、目標文件(txt文件)路徑、界面配置的相關參數傳遞給庫函數,然后由庫函數將轉換后的文件自動保存到目標路徑,并顯示G代碼的運行軌跡。

  當選擇的文件是txt類型的G代碼文件時,不需要調用庫函數進行轉換,而是直接顯示運動軌跡。

  3.2軌跡顯示模塊

  打開文件后,界面會解析G代碼的內容,并顯示運動軌跡,如圖4所示。

控制器

圖 3 打開 dxf 文件并自動轉換

控制器

圖 4 文件運動軌跡顯示

  首先模塊解析txt文件內容,將G代碼文本逐條轉換成如圖5所示的自定義數據結構,生成一個G代碼數據集,然后遍歷這個數據集確定坐標范圍,并根據畫布的像素范圍計算坐標與像素之間的比率關系,之后便開始繪制軌跡。

控制系統

圖 5 G 代碼數據結構

  繪圖部分通過調用GDI+繪圖工具實現。繪制時從G代碼數據集逐條讀取數據并繪圖,數據的坐標值需要首先轉換成像素值,繪制的起點和終點分別為上一條數據和本條數據的像素值,當G代碼類型為0時,用虛線繪制直線;G代碼類型為1時,用實現繪制直線;G代碼類型為2、3時,用實現繪制圓弧。

  3.3代碼編輯模塊

  進入代碼編輯頁面時,界面上顯示了G代碼的內容,并提供了一些操作按鈕,用來對G代碼進行插入、刪除、編輯、清空操作。

  插入代碼時,可以先選擇需要插入的位置(如圖6中高亮顯示的代碼行),然后在G代碼類型下拉框中選擇插入代碼的類型(包括定位、直線、圓弧、等待、平面、圓滑),再點擊“插入”按鈕并確定便彈出圖7所示的參數設置頁面,

控制系統

圖 6 G 代碼插入

控制系統

圖 7 G 代碼參數設置

控制系統

圖 8 G 代碼仿真模式

  設置完成并點擊“確定”后便完成了插入動作。當選中“行后添加”時,插入位置在所選代碼的后面一行,否則插入位

  置在所選代碼的前面一行。

  刪除代碼時,需要先選擇目標行,然后點擊“刪除”按鈕,在彈出的確定刪除提示框(參考圖6)中選擇“是”便可完成刪除動作。

  編輯代碼時,需要先選擇目標行,然后點擊“編輯”按鈕,在彈出的確定修改提示框(參考圖6)中選擇“是”,便會根據當前選擇的G代碼類型進入不同的編輯界面,如當前G代碼類型為定位時,進入圖7所示的編輯界面,編輯完成后點擊“確定”便完成了編輯動作。

  清空代碼時,只需要點擊界面的“清空”按鈕,在彈出的確定清空提示框(參考圖6)中選擇“是”,G代碼內容就會被全部清空。

  代碼修改后需要點擊“保存”按鈕進行保存。系統保存時會解析界面上G代碼的數據內容,然后逐條轉換成標準G代碼寫入txt文件,并替換原來的txt文件。若修改后沒有點擊“保存”,退出界面時會給出保存提示,點擊“是”便可自動保存。

  模塊除了可對已存在的代碼文件進行編輯,還支持新建程序功能。點擊“新建程序”后,模塊會在當前目錄下新建一個自定義文件名內容空白的G代碼文件,通過插入功能添加相關G代碼可完成程序的編寫。

  3.4仿真模塊

  在圖6中點擊“仿真”按鈕,在彈出的是否進入仿真提示框中選擇“是”便進入了仿真模式。如圖8,仿真模式下不可編輯內容,通過點擊“單步”按鈕可顯示每一步G代碼的運動軌跡,仿真時的軌跡為紅色顯示,這部分由軌跡顯示模塊實現,這樣可以方便地查出程序中的錯誤。仿真狀態下,點擊“停止仿真”可退出仿真狀態。

  3.5上傳下載模塊

  該模塊使用FTP協議實現觸摸屏與控制器之間的文件傳輸。通過該模塊,觸摸屏可從控制器下載G代碼文件,在本地進行編輯和仿真,也可以將本地的G代碼文件上傳給控制器。這個模塊使G代碼程序的開發可本地化,不再受限于軟硬件平臺。

  3.6其他功能

  除以上介紹的一些模塊,系統還支持狀態顯示、參數設置、用戶權限管理、文件導入導出等功能。觸摸屏可通過U盤、SD卡等硬件設備從外部導入G代碼文件,也可將本地的G代碼文件導出到這些硬件設備,這個功能使得G代碼的開發更加靈活,不僅可以本地化,也可以通過遠程進行協助。

  4、總結

  G代碼生成及調試系統基于數控系統自帶的觸摸屏設備實現,其實現成本小。它可以將dxf文件自動轉換成G代碼文件,并在界面上顯示加工的運動軌跡效果。系統還提供了G代碼編輯功能,不需要手動編寫G代碼,只需要點擊相應的功能按鈕在彈出的編輯界面中設置參數,即可自動在相應位置生成G代碼,減少了人工輸入的錯誤,即使對G代碼不熟悉的用戶也可進行代碼編寫。仿真功能不需要依賴其他的平臺,通過單步仿真,可以看到每一步G代碼的運動軌跡,這樣可以更直觀地顯示仿真結果。系統實現了代碼調試的本地化,觸摸屏中生成及編輯好的代碼,可以通過上傳功能直接上傳到控制器,反之,控制器中的代碼文件也可以下載到觸摸屏,經過編輯仿真后再上傳,降低了開發成本,減少了開發時間。當現場G代碼開發遇到不能解決的問題,可通過外部硬件設備將遠程支持的程序導入到觸摸屏,結合上傳功能傳到控制器中,本地程序也可以導出到外部設備,導入導出的功能也可用于程序在不同數控系統間的復制??偠灾?,這個系統通過對資源的有效利用,提高了G代碼開發的效率,應該得到更廣泛的應用。

中傳動網版權與免責聲明:

凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.hysjfh.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。

本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

如涉及作品內容、版權等問題,請在作品發表之日起一周內與本網聯系,否則視為放棄相關權利。

伺服與運動控制

關注伺服與運動控制公眾號獲取更多資訊

直驅與傳動

關注直驅與傳動公眾號獲取更多資訊

中國傳動網

關注中國傳動網公眾號獲取更多資訊

2021年第四期

2021年第四期

圖片閱讀

掃碼關注小程序

時刻關注行業動態

雜志訂閱

填寫郵件地址,訂閱更多資訊:

撥打電話咨詢:13751143319 余女士
郵箱:chuandong@chuandong.cn

熱搜詞
  • 運動控制
  • 伺服系統
  • 機器視覺
  • 機械傳動
  • 編碼器
  • 直驅系統
  • 工業電源
  • 電力電子
  • 工業互聯
  • 高壓變頻器
  • 中低壓變頻器
  • 傳感器
  • 人機界面
  • PLC
  • 電氣聯接
  • 工業機器人
  • 低壓電器
  • 機柜
回頂部
點贊 0
取消 0
往期雜志
  • 2025年第一期

    2025年第一期

    伺服與運動控制

    2025年第一期

  • 2024年第六期

    2024年第六期

    伺服與運動控制

    2024年第六期

  • 2024年第五期

    2024年第五期

    伺服與運動控制

    2024年第五期

  • 2024年第四期

    2024年第四期

    伺服與運動控制

    2024年第四期

  • 2024年第三期

    2024年第三期

    伺服與運動控制

    2024年第三期