基于GPRS的數控機床監(jiān)控系統(tǒng)設計
引言
隨著我國工業(yè)化進程的加速以及產業(yè)結構的調整和升級,數控機床作為一種新型的、綜合了多種尖端技術的機電一體化產品,在現代企業(yè)中的應用越來越普遍。與此同時,數控機床的管理與故障維修還停留在一個較低的水平,一般還采用打電話及上報等形式通過人工來控制。在這種狀態(tài)下,安全隱患就不能及時排除、故障不能及時解決,從而導致整個系統(tǒng)運行效率低、成本高。為此,本文設計了一種基于GPRS網絡的數控機床遠程監(jiān)控系統(tǒng),該系統(tǒng)可利用GPRS技術對數控機床進行科學管理與實時監(jiān)測,以提高數控機床的使用精度與壽命,同時對數控機床生產企業(yè)匯總機床故障并做出相應的技術改進也具有重要的現實意義。
通用分組無線業(yè)務(GeneralPacketRadioServ-ice,簡稱GPRS)和以往連續(xù)在頻道傳輸的方式不同,該系統(tǒng)是以封包(Packet)方式來傳輸。GPRS與現有的GSM語音系統(tǒng)的最根本區(qū)別是,GSM是一種電路交換系統(tǒng),而GPRS是一種分組交換系統(tǒng)。GPRS具有資源利用率高,支持基于標準數據通信協(xié)議的應用,傳輸速率高,接入時間短,計費合理等特點。以GPRS網絡作為數據無線傳輸網絡,在無線數據的雙向傳送、無線遠程檢測與控制方面,可以開發(fā)出前景極其樂觀的各類應用,如氣象、水文系統(tǒng)數據收集,城鎮(zhèn)供水系統(tǒng)的監(jiān)測,車載終端,災害的遙測和報警等。
1 總體設計
GPRS遠程數控機床監(jiān)控系統(tǒng)主要由監(jiān)控中心、Internet、GPRS網絡和監(jiān)控終端四部分組成,Inter-net實現數控機床監(jiān)控中心與GPRS網絡的互連,監(jiān)控終端實現數控機床工作狀態(tài)等信息的釆集與傳輸,監(jiān)控中心負責接收處理信息并向終端發(fā)送數據。圖1所示是其系統(tǒng)總體設計框圖。
2 監(jiān)控終端硬件設計
硬件終端的開發(fā),包括單片機的選擇,單片機復位和時鐘電路,電源模塊的設計及各模塊之間的接口電路??刹捎?/span>AT指令實現MC55無線模塊的撥號上網,并利用c語言開發(fā)相關的終端程序。
圖1 總體設計框圖
GPRS終端監(jiān)控系統(tǒng)結構如圖2所示。整個系統(tǒng)結構主要由PIC18F6520單片機(MCU)最小系統(tǒng)(復位電路,時鐘電路)、GPRS模塊、模擬/數字信號采集、天線、SIM卡及電源模塊組成。
MCU部分采用微芯(Microchip)公司的控制芯片PIC18F652O作為微處理器,配合其軟件開發(fā)平臺MPLAB可實現編程、調試、仿真,以保證GPRS終端的強大功能、良好的可維護性和可升級性門。
GPRS數據傳輸模塊采用西門子(Siemens)公司的GPRS模塊MC55。MC55是一款尺寸較小的三頻模塊,支持標準的AT指令集和內嵌TCP/IP協(xié)議,具有良好的溫度特性和穩(wěn)定的工作性能。
模擬信號主要包括數控機床主軸的控制電壓(可以判斷機床主軸的旋轉狀態(tài))、數控機床溫度等;數字信號模塊主要對數控機床的運行狀態(tài)以及運行狀況作出判斷,它采用定時器中斷方式進行信號的采集。
電源模塊主要為單片機與GPRS模塊提供穩(wěn)定的電源,以滿足GPRS模塊瞬時電流最大值的要求,電源設計用LM2576系列開關穩(wěn)壓集成電路。
GPRS監(jiān)控終端的硬件電路如圖3所示。
圖3 監(jiān)控終端硬件電路
3 監(jiān)控系統(tǒng)軟件設計
遠程數控機床監(jiān)控系統(tǒng)的軟件結構分為監(jiān)控終端和監(jiān)控中心兩大模塊,故其相應的系統(tǒng)軟件分為監(jiān)控終端軟件和監(jiān)控中心軟件兩部分。
3.1 監(jiān)控終端程序設計
該部分程序首先要完成初始化、網絡連接等操作,系統(tǒng)初始化函數主要完成芯片的引腳初始工作狀態(tài)和特殊功能寄存器的設置。再對MC55進行初始化,并當MC55模塊找到GPRS網絡時進入命令模式,PIC18F6520通過串口發(fā)送AT指令給MC55,同時連接數據信息中心;建立連接之后,MC55就進入數據模式。PIC18F652O可通過AT撥號指令使MC55通過GPRS網絡登陸到GGSN(GatewayGPRSSupportingNode,網關GPRS支持節(jié)點)并轉入在線模式;此時,PIC18F6520向串口UART0發(fā)送的數據經MC55傳送到GGSN,同樣,GGSN的回答也經MC55便可傳回到PIC18F652O的串口;然后通過PPP協(xié)商,MC55獲取IP地址并通過GGSN連入Internet。本系統(tǒng)采用公網靜態(tài)IP組網方案,系統(tǒng)主站服務器使用靜態(tài)IP,并且事先將此IP地址寫入GPRS通信模塊中,終端上電后,再根據預先寫入的IP地址與主站服務器建立連接。
在嵌入式開發(fā)環(huán)境下,根據功能需求,可對網絡AT指令使用C語言重新進行函數封裝,并創(chuàng)建連接規(guī)范函數來實現相應的功能,MC55_init()為MC55初始化函數,ATSent()為發(fā)送AT指令函數,MC55_connect。為GPRS網絡連接函數。其封裝的主要AT指令有:
其程序流程圖如圖4所示。
圖4 終端程序流程圖
3.2 監(jiān)控中心軟件設計
數控機床監(jiān)控系統(tǒng)中心的軟件主要包括網絡的接入、數據的收發(fā)與安全性管理,以及對終端的控制設計。監(jiān)控系統(tǒng)中心基于客戶機/服務器模型設計(C/S),并采用TCP/IP協(xié)議實現與GPRS終端的IP協(xié)議通信,以實時或定時實現數據的采集以及對終端的控制。數控機床監(jiān)控系統(tǒng)中心軟件的設計采用Microsoft公司的VisualC++6.0開發(fā),VC++6.0應用靈活、功能強大,并對網絡編程具有強大的支持。軟件編程涉及Winsock網絡通信及數據庫管理等技術。
圖5所示是本系統(tǒng)監(jiān)控軟件流程圖。利用VCT+編寫基于TCP(面向連接)的Socket服務器程序通常有如下幾步:
圖5 監(jiān)控中心軟件流程圖
(1)創(chuàng)建套接字(socket)
利用socket函數創(chuàng)建套接字時,首先應定義一個socket類型的變量:sockSrv,以用來接收socket函數返回的套接字。
(2)將套接字綁定到一個本地地址端口上(bind)
實現這一步需要調用bind函數,而且在綁定之前要先定義一個SOCKADDR_IN類型的變量:ad-drSrVo
(3)將套接字設定為監(jiān)聽模式(listen),準備接收客戶請求。
(4)等待客戶請求到來
請求到來后,接受連接請求,并返回一個新的、對應于此次連接的套接字(accept)o因為作為服務器端,它需要不斷地等待客戶端的連接請求的到來,因此,程序接著會進入一個死循環(huán),以讓服務器端程序能夠不斷的運行。
(5)用返回的套接字和客戶端進行通信(send/recv)
用send函數向客戶端發(fā)送數據。在發(fā)送完數據后,還可以從客戶端接收數據,并將數據顯示出來。
(6)返回,等待另一客戶請求
調用closesocket函數將關閉已建立連接的套接字,然后進入下一個循環(huán),等待另一請求的到來。
4 結語
基于GPRS技術的遠程數控機床監(jiān)控系統(tǒng),較之傳統(tǒng)的機床檢測與維護方式,可以有效解決機床管理的諸多問題,能及時發(fā)現機床存在的故障,因而具有經濟性好,通信通道無需維護等優(yōu)點。事實上,這項技術對于數控機床遠程無線監(jiān)控的實施具有非常重要的現實意義,并具有極其廣闊的市場前景。