焦作大學信息工程學院 邢文生
基于瀏覽器和GSM卡流量的潛水泵遠程控制保護系統(tǒng)
焦作大學信息工程學院 邢文生
為了實現(xiàn)手機遠程檢測和控制潛水泵,本文設(shè)計了基于單片機、HTML和GSM卡的遠程潛水泵控制系統(tǒng),闡述了系統(tǒng)的整體設(shè)計方案、硬件設(shè)計和軟件設(shè)計。系統(tǒng)的潛水泵端以單片機為處理器,使用壓力傳感器檢測水流壓力,以SIM900A模塊為通信模塊,通過HTTP協(xié)議,使用手機卡的流量與遠程WEB服務(wù)器通信。手機控制端使用瀏覽器訪問WEB服務(wù)器,可以遠程控制潛水泵運行。系統(tǒng)使用方便,穩(wěn)定性和可靠性高,有較高的實用價值和應(yīng)用前景。
SIM900;GSM;HTTP協(xié)議;潛水泵
潛水泵在農(nóng)業(yè)灌溉、工廠生產(chǎn)廣泛使用。傳統(tǒng)的控制方式是人工直接給潛水泵通電,有兩大弊端:①需要人工進行送電和斷電,需要付出人力;②潛水泵工作時,需要水淹沒潛水泵給潛水泵降溫。如果水位低,水沒有淹沒潛水泵,潛水泵可能會發(fā)熱損壞;③如果水泵的三相電缺相,潛水泵不出水但會過度發(fā)熱,水泵可能會發(fā)熱損壞。
隨著網(wǎng)絡(luò)和現(xiàn)代通信技術(shù)的不斷發(fā)展,智能手機都支持瀏覽器訪問WEB網(wǎng)站,瀏覽器支持標準HTTP協(xié)議。使用HTTP協(xié)議的控制系統(tǒng),不需要安裝其他應(yīng)用軟件,與硬件平臺無關(guān)。
本系統(tǒng)通過智能手機的瀏覽器,發(fā)出啟動、停止?jié)撍玫拿睢g覽器同時能夠接收到潛水泵控制端返回的數(shù)據(jù),包括潛水泵工作狀態(tài)和出水壓力等數(shù)據(jù)。系統(tǒng)能夠在水流壓力不正常情況下,關(guān)閉潛水泵。
控制系統(tǒng)設(shè)計如圖1所示,由單片機主控模塊、通信模塊、壓力檢測模塊、潛水泵驅(qū)動模塊組成。

圖1 系統(tǒng)整體設(shè)計
主控模塊采用TC12LE5A60S2單片機為主控芯片,控制系統(tǒng)的核心,實現(xiàn)的功能如下:①系統(tǒng)參數(shù)的設(shè)置及儲存,如設(shè)置SIM900A的接收頻率、功耗大小、工作模式等參數(shù);②與SIM900A模塊通過串口連接,使用標準AT命令,控制SIM900A模塊信息的接收和發(fā)送,信息傳輸使用HTTP協(xié)議;③與壓力傳感器連接,接收傳感器值,并判斷出水泵工作狀態(tài)。如果水泵水壓不正常,關(guān)閉水泵,并發(fā)送信息到手機;④與固態(tài)繼電器連接,控制潛水泵的啟動與停止。
通信網(wǎng)絡(luò)采用SIMCom公司的SIM900A作為通信芯片。SIM900A是一款尺寸緊湊型、高可靠性的無線模塊,采用SMT封裝的雙頻GSM/GPRS模塊解決方案。模塊使用工業(yè)標準界面,以小尺寸和低功耗實現(xiàn)語音、SMS、數(shù)據(jù)和傳真信息的高速傳輸。
SIM900A通信模塊,支持HTTP協(xié)議,使用GSM卡與WEB服務(wù)器通信。支持標準的AT命令,單片機通過串口控制SIM900A模塊的信息傳輸。
SIM900A支持短信收發(fā)、文本和PDU模式、嵌入型TCP/UDP協(xié)議、FTP/HTTP協(xié)議。其中HTTP協(xié)議是瀏覽器或其他程序與Web服務(wù)器之間的應(yīng)用層通信協(xié)議,手機瀏覽器支持該協(xié)議。本系統(tǒng)使用HTTP協(xié)議實現(xiàn)SIM900A與WEB服務(wù)器的通信。
SIM900A通信模塊安裝GSM手機卡后,可以使用手機卡的流量與WEB網(wǎng)站進行信息傳輸。GSM手機信號覆蓋范圍廣,使用GSM手機卡作為通信方式有下面優(yōu)點:①不需要架設(shè)無線WIFI,適合潛水泵在野外安裝作業(yè);②使用手機卡流量與WEB服務(wù)器通信,與手機短信比較費用比較低;③GSM手機信號覆蓋范圍廣。
系統(tǒng)使用壓力傳感器檢測水流壓力,并通過壓力值判斷水泵出水狀態(tài)。
潛水泵沒有專門的風扇來散熱,工作時所產(chǎn)生得熱量靠的就是其工作環(huán)境中的水來散熱的,所以潛水泵工作時應(yīng)該全部在水中。如果沒有水,潛水泵會因散熱不好而起熱燒毀。如果潛水泵供電有問題(缺相),潛水泵不出水,而且大量發(fā)熱,電機損毀。如果供水的高度是否超出潛水泵的揚程,電機只運轉(zhuǎn)而不出水。使用傳感器檢測是否出水,如果不出水關(guān)閉潛水泵并在手機端提醒。
固體繼電器的輸入端是3-24V信號,輸出端是0-380V交流電。單片機輸出啟動或停止控制信號,控制信號決定固態(tài)繼電器的通斷,進而控制潛水泵。如果是三相電水泵,加交流接觸器進行控制。
硬件設(shè)計如圖2所示,包括單片機、SIM900A、手機卡、壓力傳感器、固態(tài)繼電器等部分。

圖2 系統(tǒng)硬件設(shè)計
單片機選擇STC12LE5A60S2,工作電壓為3.3V。該單片機是增強型高速8051 單片機,指令及引腳完全兼容8051,有8個AD轉(zhuǎn)換引腳,2個串口[6]。
SIM900A模塊電源為3.1~4.6 V,GSM_ANT引腳外接天線,15~18引腳接SIM卡。單片機與SIM900A模塊通信采用串口方式,SIM900A模塊的TXD、RXD引腳與單片機串口連接,實現(xiàn)WEB數(shù)據(jù)的收發(fā)[1]。
系統(tǒng)選用電壓輸出的壓力傳感器,檢測水流壓力。單片機已經(jīng)包含有8路A/D轉(zhuǎn)換器[6],選用P1.0引腳作為壓力傳感器的A/D轉(zhuǎn)換。
按鍵1與按鍵2配合,實現(xiàn)參數(shù)設(shè)置,如訪問密碼,動作延時時間等參數(shù)。
使用固態(tài)繼電器,能夠使用單片機的控制信號控制220V交流電的通斷。固態(tài)繼電器是開關(guān)器件,輸入端是單片機引腳的控制信號,輸出端是480V以下的交流電,輸出控制電流選擇20A。
軟件開發(fā)包括網(wǎng)站設(shè)計、傳感器信息采集、GSM通信軟件設(shè)計等。GSM通信軟件編寫如下:
單片機與SIM900A模塊通信采用串口方式,使用標準AT指令[2]。實現(xiàn)AT指令的代碼如下:

代碼如下:
Second_AT_Command("ATE0"); //取消回顯
Second_AT_Command("AT+CIPSHUT");//關(guān)閉移動場景
Second_AT_Command("AT+CREG?");//查詢GPRS網(wǎng)絡(luò)注冊狀態(tài)
Second_AT_Command("AT+CGATT?",1,40);//附著GPRS業(yè)務(wù)網(wǎng)絡(luò)
Second_AT_Command("AT+SAPBR=3,1,"Contype","GPRS"");// 設(shè)置網(wǎng)絡(luò)參數(shù)
Second_AT_Command("AT+SAPBR=3,1,"APN","UNINET"");//設(shè)置接入點名稱(聯(lián)通卡為例)
Second_AT_Command("AT+SAPBR=1,1",;// 打開承載
Second_AT_Command("AT+HTTPTERM");
Second_AT_Command("AT+HTTPINIT",1,40);//初始化HTTP
Second_AT_Command("AT+HTTPPARA="CID");// 設(shè)置承載上下文標括識
首先準備要訪問的網(wǎng)站的URL網(wǎng)址(支持域名),例如HTTP://www.xxx.xom/sb.asp?a=2.7&b=3。域名后面的“a=2.7”表示上傳潛水泵壓力信息到WEB服務(wù)器,“b=3”表示上傳潛水泵工作狀態(tài)到WEB服務(wù)器。
代碼如下:
Second_AT_Command("AT+HTTPPARA="URL","網(wǎng)址"");//要訪問的網(wǎng)站,支持域名
Second_AT_Command("AT+HTTPACTION=0");// 激活HTTP請求,Post方式
Second_AT_Command("AT+HTTPREAD");//設(shè)置接收數(shù)據(jù)顯示IP頭
delay(2500);//延時一段時間
執(zhí)行上述代碼后,等待一段時間(0.5秒左右),WEB服務(wù)器會返回信息。
發(fā)送請求后,WEB服務(wù)器返回數(shù)據(jù),ISM900A模塊通過串口發(fā)送給單片機。單片機程序通過串口中斷讀出數(shù)據(jù),該數(shù)據(jù)包括潛水泵的啟動或停止命令。
web服務(wù)器支持HTTP的服務(wù)請求。本系統(tǒng)的SIM900A模塊和手機瀏覽器都可以訪問WEB服務(wù)器,瀏覽器輸入域名后,向服務(wù)器發(fā)出請求,并將數(shù)據(jù)存儲到服務(wù)器和接收服務(wù)器返回信息。
以asp為例說明,代碼中網(wǎng)址的訪問格式如下:http://www.XXX.asp?參數(shù)=5。可以是asp、PHP 、aspx等方式訪問,參數(shù)是需要上傳到WEB服務(wù)器的參數(shù)。
asp網(wǎng)站代碼中,返回數(shù)據(jù)的命令如下:response.write(返回的數(shù)據(jù))。
本系統(tǒng)能夠遠程控制潛水泵,節(jié)省人力。系統(tǒng)使用GSM卡流量通信,不需要架設(shè)WIFI,安裝方便。系統(tǒng)直接使用瀏覽器進行控制,不需要下載安裝APP,非常新穎實用。
系統(tǒng)使用SIM900A模塊,運行穩(wěn)定可靠,設(shè)計成本較低,具有商業(yè)價值。
[1]SIM900A_Hardware_design_V1.03[Z/OL].HTTP://wm.sim.com/documenten.aspx.2016.11.29.SIMCom.
[2]SIM900-HTTP-FTP-AP.pdf[Z/OL].HTTP://wm.sim.com/documenten.aspx.2016.11.29.SIMCom.
[3]甘志偉,閆凱.基于SIM900A的無線數(shù)據(jù)采集卡設(shè)計與實現(xiàn)[J].山西電子技術(shù),2013,(1).
[4]敖麟欽.基于GSM/SMS的信息查詢系統(tǒng)設(shè)計與實現(xiàn)[J].軟件導(dǎo)刊,15.12(2016):77-79.
[5]楊光,蘭志光,戴華林.基于STM32和SIM900A車載通訊系統(tǒng)的設(shè)計與實現(xiàn)[J].中國民航飛行學院學報,2017,28(3):39-42.
[6]陳勇.單片機原理與應(yīng)用-基于匯編.C51及混合編程[M].北京:高等教育出版社,2014.
[7]馮昊等.ASP動態(tài)網(wǎng)頁設(shè)計與應(yīng)用(第2版)[M].北京:清華大學出版社,2016.
邢文生(1969-),男,河南焦作人,控制工程碩士,焦作大學信息工程學院副教授,研究方向:物聯(lián)網(wǎng)。