盧錦川 鐘海雄



摘? 要:數控機床在使用的過程中產生了大量的生產過程信息和數據,文章針對FANUC 0i數控系統進行數據采集技術的研究。先對該數控系統上的RS232串行數據接口的信號管腳進行分析,然后研究了該數控系統的特殊宏變量地址,并通過Visual Studio 2010軟件開發了基于該數控系統的數據采集系統。數據采集結果表明,本數控系統信息采集軟件能夠有效的采集到FANUC 0i數控系統運行過程中的數據。
關鍵詞:數控系統;RS232串口;宏指令;Visual Studio 2010;數據采集
中圖分類號:TG659? ? ? ? 文獻標志碼:A? ? ? ? ?文章編號:2095-2945(2020)23-0057-03
Abstract: In the process of using CNC machines, a lot of production process information and data are produced. This paper studies the data acquisition technology for FANUC 0i CNC system. Firstly, the signal pins of RS232 serial data interface on the CNC system is analyzed, then the special macro variable address of the CNC system is studied, and finally, the data acquisition system based on the CNC system is developed by Visual Studio 2010 software. The data collection results show that this software can collect the data of FANUC 0i CNC system more effectively.
Keywords: CNC system; RS232 serial port; macro instruction; Visual Studio 2010; data acquisition
前言
數控機床,作為一個在制造業中扮演著非常重要的角色,是現代生產和加工處理環節的關鍵。根據生產管理和控制上的需要,要從數控系統上采集盡可能多的數據,如加工的程序,主軸運轉狀態,機床運轉狀態,倍率多少,報警狀態等等與生產管理相關的信息。
本文針對FANUC 0i數控系統,通過宏指令和RS232串口設計了一個數控系統信息采集軟件。
1 RS232接口協議
RS232協議是由美國電子工業協會EIA制定的一種串行物理接口標準,并廣泛應用在計算機串行接口外設連接。FANUC 0i數控系統就具有兩個RS232串行接口。
RS232接口的端子定義如圖1所示,對應的信號名稱如圖2所示。
圖1 RS232實物圖
各個端子的含義如下:(1)DCD(Data Carrier Detect)載波檢測。(2)RXD(Received Data)接收數據。(3)TXD
(Transmit Data)發送數據。(4)DTR(Data Terminal Ready)數據終端準備好。(5)SG(Signal Ground)信號地。(6)DSR(Data Set Ready)數據準備好。(7)RTS(Request To Send)請求發送。(8)CTS(Clear To Send)清除發送。(9)RI(Ring Indicator)振鈴提示[1]。
2 FANUC宏指令及使用
FANUC 0i數控系統自帶有宏指令,可以通過這些宏指令將本系統內的特定變量里的內容從串口輸出。在這個系統中,機床的運行狀態信息都保存在這些特定變量當中,通過獲得這些地址變量里內容的分析,就可以獲得機床當前的相關信息。具體的實現方法是在NC程序中加入相應的宏指令,數控系統在運行NC程序時,當運行到特定的宏指令時就會將系統內部的變量發送到串口,在通過串口連接被計算機接收到。在FANUC 0i系統中用宏指令可以采集到的數據主要有:NC程序的程序號、數控系統的日期、當前各個軸的坐標、進給速度等信息。
FANUC 0i系統的宏指令地址共有14個。分別如下:(1)#3000代表報警信息。(2)#3001代表以1毫秒為增量的計時器,計時到65535毫秒時,歸零。(3)#3002地址放置的是機床的運行時間。(4)#3011地址存放數控系統的年、月、日的信息。(5)#3012地址存放數控系統運行的時間即小時、分、秒的信息。(6)#3901地址存放數控機床已經加工的工件數。(7)#3902地址存放還要加工的工件數。(8)#4109地址存放主軸的進給速度。(9)#4111地址存放刀具的長度補償值。(10)#4115地址存放當前運行的NC程序號。(11)#4119地址存放主軸的轉速。(12)#4120地址存放當前所使用的刀具號。(13)#5021~#5023地址存放主軸相對于機床坐標系的坐標位置值(分別對應X、Y、Z)。(14)#5041~#5043地址存放主軸相對于工件坐標系的坐標位置值(分別對應X、Y、Z)[2-3]。
在具體使用這些變量地址時,要在NC程序中的相應行輸入POPEN、BPRNT/DPRNT和PCLOS宏指令。POPEN表示打開,PCLOS表示關閉,BPRNT/DPRNT表示要獲取的信息的宏指令地址、數值標記。
以要獲取機床X、Y軸的運行坐標為例,要在數控機床的NC程序中使用宏指令的方式如下:
O0010
POPEN
DPRNT/BPRNT[PARTX#5041[34]]PARTZ#5042[34]
PCLOS
G91X20F3.0S500
Y10
M30
當數控系統運行上面的NC程序時,數控系統會把當前機床的X和Y軸的坐標值送到RS232串口中,通過計算機端的數據采集軟件就可以獲得這些數值了。
3 計算機端數控機床數據信息采集軟件的設計
本數控機床數據信息采集軟件采用Visual Studio 2010來開發[4-6],其界面如圖3所示。
在該軟件中,要有com口的選擇設置,這里“打開文件”是要選擇要下載到數控系統中的NC程序,“接收程序換行”是要把所選的程序進行分行標準化,如果想采集機床的日期,則點擊“采集機床日期”按鈕,則所選的已經分行標準化的NC中就會加入相應的宏指令及地址。然后,通過點擊“發送數據”按鈕就可以把NC程序下載到數控系統中,當該NC程序在數控系統中運行時,“當前機床日期”下面的編輯框中就會顯示采集到的原始數據,再經過解析,機床日期的數據,就會分別顯示在年、月、日旁邊的編輯框中。
NC程序分行標準化如圖4所示。
采集到機床的日期并進行解析后,如圖5所示。
4 結束語
通過研究FANUC 0i數控系統的宏指令,開發出了具有串口通信功能的數控程序上傳和下載功能及數控系統的數據信息采集功能的軟件,提供算法實現程序,為隨后開發和研制出商業化的數控系統數據采集軟件提供了理論基礎和先行經驗。
參考文獻:
[1]王海濤.基于RS232串口的數控機床程序傳輸及狀態監控系統的研究[D].長春理工大學,2012.
[2]吳飛,霍松林.基于串口通信的DNC技術研究[J].武漢理工大學學報(信息與管理工程版),2009,31(06):893-895+929.
[3]李波.基于串口的DNC信息采集系統的研究[D].南京航空航天大學,2007.
[4]董紅政,王忠勇,史曉鵬.基于MSComm控件實現串行通信的方法[J].微計算機信息,2007,23(27):145-147.
[5]楊朝暉,胡東明,盛安.基于MSComm控件實現雙機的數據通訊[J].科技信息(科學教研),2007(11):70-70.
[6]李治.基于Web的機床信息采集系統的研究與開發[D].大連理工大學,2005.