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