国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于單片機(jī)和以太網(wǎng)的遠(yuǎn)程測(cè)控系統(tǒng)

2020-03-30 02:26王建軍王守謙成艷亭喬建委許文碩
關(guān)鍵詞:溫度傳感器測(cè)控以太網(wǎng)

王建軍,王守謙,成艷亭,喬建委,許文碩

(山東理工大學(xué) 機(jī)械工程學(xué)院,山東 淄博 255049)

傳統(tǒng)儀器儀表采用純機(jī)械結(jié)構(gòu)或者模擬電路、邏輯門電路進(jìn)行設(shè)計(jì),在自動(dòng)校準(zhǔn)、自動(dòng)檢測(cè)、數(shù)據(jù)處理方面有很大不足。隨著大規(guī)模集成電子技術(shù)的發(fā)展,儀器儀表發(fā)展進(jìn)入了一個(gè)智能儀器階段,自動(dòng)測(cè)量、遠(yuǎn)程監(jiān)控成為智能化的體現(xiàn)。目前,基于單片機(jī)的集中數(shù)據(jù)采集和控制技術(shù)已經(jīng)得到了很好的發(fā)展和廣泛的應(yīng)用[1-3]。但在惡劣環(huán)境下以及多地域分布的生產(chǎn)環(huán)境下,一方面人力難以到達(dá)現(xiàn)場(chǎng)進(jìn)行集中測(cè)量,另一方面,分布式的測(cè)量需要進(jìn)行聯(lián)網(wǎng)采集,因此需要設(shè)計(jì)遠(yuǎn)程測(cè)控系統(tǒng),實(shí)現(xiàn)遠(yuǎn)程和多地點(diǎn)分布式的數(shù)據(jù)采集與控制系統(tǒng)。

目前有較多致力于解決基于單片機(jī)實(shí)現(xiàn)遠(yuǎn)程測(cè)控問題的研究,如韓興國(guó)等[4]研制了一種基于AT89C55單片機(jī)的數(shù)控機(jī)床遠(yuǎn)程測(cè)控儀,在數(shù)控機(jī)床遠(yuǎn)程控制平臺(tái)上進(jìn)行了直線插補(bǔ)和圓弧插補(bǔ)等插補(bǔ)精度的實(shí)時(shí)遠(yuǎn)程測(cè)試和誤差分析;張繼飛等[5]設(shè)計(jì)了水產(chǎn)養(yǎng)殖水質(zhì)參數(shù)的遠(yuǎn)程實(shí)時(shí)監(jiān)控系統(tǒng),該系統(tǒng)由水質(zhì)參數(shù)無(wú)線監(jiān)測(cè)部件RTU、遠(yuǎn)程數(shù)據(jù)管理服務(wù)器和客戶終端APP組成;鄒益民等[6]基于ModBus-TCP的主從式測(cè)控網(wǎng)絡(luò),以單片機(jī)系統(tǒng)為核心,實(shí)現(xiàn)了對(duì)本地恒溫實(shí)驗(yàn)裝置的數(shù)據(jù)采集、閑環(huán)控制、數(shù)據(jù)通信及遠(yuǎn)程監(jiān)測(cè);郭佑民等[7]設(shè)計(jì)了一種基于BQ27750的遠(yuǎn)程測(cè)控終端電源監(jiān)測(cè)系統(tǒng),整個(gè)系統(tǒng)對(duì)電池的電壓、電流、溫度、剩余電量等相關(guān)參數(shù)進(jìn)行監(jiān)測(cè),并采用SIM800C芯片的GPRS通信模式,在單片機(jī)的控制下將電池信息快速、有效地傳輸?shù)奖O(jiān)控中心;王建軍等[8]發(fā)明了一種路基滑坡遠(yuǎn)程監(jiān)測(cè)方法與裝置;Jafer等[9]設(shè)計(jì)了一種多節(jié)點(diǎn)遠(yuǎn)程傳感器測(cè)量裝置;Ugur等[10]研究了遠(yuǎn)程控制裝置。

為了創(chuàng)建一種基于51單片機(jī)和以太網(wǎng)的低成本遠(yuǎn)程測(cè)控系統(tǒng),本文將單片機(jī)通過網(wǎng)絡(luò)控制芯片接入互聯(lián)網(wǎng),通過編制單片機(jī)和服務(wù)器之間的網(wǎng)絡(luò)通信協(xié)議,設(shè)計(jì)遠(yuǎn)程測(cè)控系統(tǒng)。

1 系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)

以IAP15F2K61S2單片機(jī)為控制核心進(jìn)行遠(yuǎn)程測(cè)控系統(tǒng)的設(shè)計(jì),如圖1所示。IAP15F2K61S2單片機(jī)開發(fā)板通過SPI總線與網(wǎng)絡(luò)模塊ENC28J60相連,采用C語(yǔ)言編程,通過模擬SPI時(shí)序的方式完成單片機(jī)與網(wǎng)絡(luò)模塊的通信;網(wǎng)絡(luò)模塊可通過固定IP或者DHCP的方式配置本地網(wǎng)絡(luò),通過RJ-45雙絞線接入路由器或其他上級(jí)網(wǎng)關(guān)設(shè)備,然后將上級(jí)網(wǎng)關(guān)設(shè)備接入網(wǎng)絡(luò),單片機(jī)即可同時(shí)接入到以太網(wǎng)。其操作步驟為:(1)注冊(cè)數(shù)據(jù)中心賬號(hào),申請(qǐng)HTTP請(qǐng)求接口;(2)根據(jù)HTTP請(qǐng)求接口改寫單片機(jī)程序,編譯燒錄;(3)將單片機(jī)在任意現(xiàn)場(chǎng)通過網(wǎng)絡(luò)芯片接入以太網(wǎng);(4)在任意地點(diǎn)采用上網(wǎng)設(shè)備打開數(shù)據(jù)中心網(wǎng)站管理單片機(jī)客戶端設(shè)備。

圖1 基于單片機(jī)的以太網(wǎng)遠(yuǎn)程數(shù)據(jù)測(cè)控系統(tǒng)結(jié)構(gòu)圖Fig.1 Architecture of ethernet remote data measurementand control system based on single chip microcomputer

單片機(jī)接入到以太網(wǎng)后,即可通過單片機(jī)編程操作溫度傳感器DS18B20采集現(xiàn)場(chǎng)的溫度數(shù)據(jù)。圖2中,將溫度傳感器數(shù)據(jù)通過HTTP請(qǐng)求方式提交到遠(yuǎn)端托管服務(wù)器,遠(yuǎn)端托管服務(wù)器根據(jù)服務(wù)器端設(shè)定存儲(chǔ)數(shù)據(jù)到MYSQL數(shù)據(jù)庫(kù),用戶可通過任意上網(wǎng)設(shè)備,如手機(jī)、筆記本電腦、臺(tái)式機(jī)電腦等,從網(wǎng)上查看和記錄測(cè)量數(shù)據(jù)。另外,用戶還可以通過控制中心網(wǎng)站,打開遠(yuǎn)程控制操作頁(yè)面,對(duì)單片機(jī)系統(tǒng)上的客戶端設(shè)備進(jìn)行控制操作。如圖1中,通過模擬開關(guān)操作,可通過本地瀏覽器遠(yuǎn)程控制LED控制開關(guān)的開斷。

圖2 單片機(jī)接入以太網(wǎng)的測(cè)控網(wǎng)絡(luò)示意圖Fig.2 Schematic of measurement and control network of single chip microcomputer connecting to ethernet

2 實(shí)物系統(tǒng)的開發(fā)

圖3為采用IAP15F2K61S2單片機(jī)開發(fā)板開發(fā)的客戶端,可實(shí)現(xiàn)本地被測(cè)對(duì)象的數(shù)據(jù)采集、上傳和遠(yuǎn)程控制操作。主要包括:(1)單片機(jī)開發(fā)板:以IAP15F2K61S2芯片為控制核心;(2)網(wǎng)絡(luò)模塊:ENC28J60網(wǎng)絡(luò)控制芯片;(3)溫度傳感器:DS18B20溫度傳感器芯片,安裝在單片機(jī)開發(fā)板上;(4)RJ-45接口雙絞線;(5)路由器;(6)LINUX VPS服務(wù)器:即提供WEB服務(wù)和HTTP接口的遠(yuǎn)端數(shù)據(jù)中心服務(wù)器。

圖3 基于IAP15F2K61單片機(jī)開發(fā)板的遠(yuǎn)程數(shù)據(jù)采集與控制系統(tǒng)客戶端組成圖Fig.3 Client components of remote data acquisition and control system based on IAP15F2K61 development board

圖3中,采用一個(gè)5V轉(zhuǎn)接3V的電源模塊給IAP15F2K61S2單片機(jī)開發(fā)板和ENC28J60網(wǎng)絡(luò)模塊兩個(gè)設(shè)備供電,單片機(jī)的P03~P07口通過杜邦線與網(wǎng)絡(luò)模塊的SPI總線相連,網(wǎng)絡(luò)模塊通過RJ-45接口雙絞線與路由器連接,路由器通過無(wú)線網(wǎng)絡(luò)接入以太網(wǎng),從而實(shí)現(xiàn)了單片機(jī)客戶端接入以太網(wǎng)。

2.1 單片機(jī)和網(wǎng)絡(luò)服務(wù)器的通信編程

IAP15F2K61S2單片機(jī)是單時(shí)鐘/機(jī)器周期的兼容8051內(nèi)核單片機(jī),指令代碼完全兼容傳統(tǒng)8051,而速度快8~12倍,內(nèi)部集成高速SPI(Serial Peripheral Interface)接口、2KB EEPROM、A/D轉(zhuǎn)換模塊和MAX810專用復(fù)位電路。工作電壓2.4~3.8V[11]。

UIP是一種適用于小型嵌入式通信的TCP/IP協(xié)議棧,由瑞典計(jì)算機(jī)科學(xué)院人員開發(fā)編寫,其通過少量代碼可實(shí)現(xiàn)TCP/IP協(xié)議棧的一些基本功能,如UDP、ARP,還有IP、ICMP和TCP協(xié)議,可由幾百字節(jié)的C語(yǔ)言代碼編寫實(shí)現(xiàn);經(jīng)過對(duì)UIP協(xié)議棧的進(jìn)一步優(yōu)化,代碼容量縮減到1.2 KB以內(nèi),RAM占用更是縮減到了500 B以內(nèi),有利于充分利用IAP15F2K61S2單片機(jī)的片上資源實(shí)現(xiàn)上網(wǎng)功能[12]。UIP協(xié)議棧運(yùn)行流程圖如圖4所示。

圖4 UIP協(xié)議棧運(yùn)行流程圖Fig.4 Flow chart of UIP protocol stack operating

1)UIP設(shè)備的驅(qū)動(dòng)程序

采用的硬件設(shè)備為IAP15F2K61S2單片機(jī)和ENC28J60網(wǎng)絡(luò)模塊,獲取UIP源碼后需要將ENC28J60的驅(qū)動(dòng)程序與UIP的接口進(jìn)行SPI口連接,然后對(duì)UIP驅(qū)動(dòng)設(shè)備進(jìn)行初始化。

ENC28J60 網(wǎng)卡驅(qū)動(dòng)時(shí),首先上電初始化,通過函數(shù) enc28j60_init進(jìn)行寄存器初始化,設(shè)定網(wǎng)卡物理地址、收發(fā)緩沖區(qū)位置和大小等,然后調(diào)用發(fā)送數(shù)據(jù)函數(shù)dev_send和接收數(shù)據(jù)函數(shù)dev_poll,實(shí)現(xiàn)數(shù)據(jù)的發(fā)送和接收功能。

2)網(wǎng)絡(luò)應(yīng)用接口程序

TCP/IP協(xié)議棧的鏈路層功能由ENC28J60網(wǎng)絡(luò)模塊完成,網(wǎng)絡(luò)層和傳輸層由單片機(jī)處理,在單片機(jī)上運(yùn)行UIP協(xié)議棧,通過網(wǎng)絡(luò)模塊可接入互聯(lián)網(wǎng)。

UIP 協(xié)議的應(yīng)用程序接口實(shí)現(xiàn)WEB應(yīng)用服務(wù)。UIP 定義了一個(gè)宏UIP_APPCALL實(shí)現(xiàn)接口功能。當(dāng)用戶要編程實(shí)現(xiàn)某應(yīng)用服務(wù)時(shí),只需將宏UIP_APPCALL定義成實(shí)際的應(yīng)用程序函數(shù)名。UIP 在接收到底層傳來(lái)的數(shù)據(jù)包后,若需送上層應(yīng)用程序處理,就調(diào)用UIP_APPCALL,不同連接通過判斷當(dāng)前連接的端口號(hào)確定。

UIP 還提供一些應(yīng)用程序接口函數(shù)供編程使用:如關(guān)閉連接接口函數(shù)uip_close;輪詢接口函數(shù)uip_poll;打開連接接口函數(shù)uip_connect等。通過調(diào)用不同應(yīng)用程序接口函數(shù)實(shí)現(xiàn)相應(yīng)功能。

2.2 服務(wù)器端WEB服務(wù)的HTTP接口

數(shù)據(jù)中心網(wǎng)站服務(wù)器使用方便,其WEB服務(wù)采用類C語(yǔ)言的PHP語(yǔ)言編寫,并提供GET請(qǐng)求接口方式,方便在UIP中進(jìn)行HTTP請(qǐng)求的發(fā)送。服務(wù)器端的控制中心網(wǎng)站和數(shù)據(jù)中心網(wǎng)站通過PHP動(dòng)態(tài)語(yǔ)言開發(fā),采用Codeigniter開源框架實(shí)現(xiàn)敏捷開發(fā),同時(shí)在API函數(shù)編寫過程中使用IF判斷語(yǔ)句嚴(yán)格控制命令輸出,實(shí)現(xiàn)高效嚴(yán)謹(jǐn)?shù)腁PI編寫。

3 以太網(wǎng)遠(yuǎn)程測(cè)控系統(tǒng)測(cè)試實(shí)例

數(shù)據(jù)中心網(wǎng)站設(shè)置為:http://dc.sdut.me,具體實(shí)驗(yàn)步驟如下:

1)準(zhǔn)備測(cè)試。測(cè)試單片機(jī)開發(fā)板和網(wǎng)絡(luò)模塊以及溫度傳感器、LED開關(guān)等是否工作正常。

2)接線電源測(cè)試。保證線路連接穩(wěn)定可靠和供電正常。

3)啟動(dòng)設(shè)備。首先運(yùn)行網(wǎng)絡(luò)模塊,然后打開電源開關(guān)和控制板數(shù)據(jù)采集開關(guān),此時(shí)系統(tǒng)將自動(dòng)采集溫度傳感器數(shù)據(jù)并通過網(wǎng)絡(luò)模塊傳送到控制中心網(wǎng)站數(shù)據(jù)庫(kù),并查詢、執(zhí)行控制中心發(fā)出的控制指令。

4)客戶端訪問。啟動(dòng)設(shè)備后等待片刻,使用筆記本電腦瀏覽器查看控制中心網(wǎng)站,查看溫度傳感器的數(shù)據(jù)采集情況,然后發(fā)出控制指令,觀察執(zhí)行控制中心發(fā)出的開關(guān)控制指令是否得到執(zhí)行。

5)實(shí)驗(yàn)結(jié)束。切斷電源,使系統(tǒng)停止工作,檢查回顧系統(tǒng)工作狀況、數(shù)據(jù)中心網(wǎng)站和客戶端訪問情況是否正常。

3.1 溫度傳感器的遠(yuǎn)程數(shù)據(jù)采集實(shí)例分析

溫度傳感器遠(yuǎn)程測(cè)量實(shí)例結(jié)果如圖5所示。

圖5 以太網(wǎng)遠(yuǎn)程數(shù)據(jù)采集實(shí)例—溫度采集Fig.5 An example of ethernet remote data acquisition-temperature acquisition

數(shù)據(jù)采集的采樣頻率采用服務(wù)器端控制方法,用戶可在服務(wù)器端設(shè)置采樣時(shí)間間隔,自選傳感器類型,并設(shè)置傳感器數(shù)據(jù)存儲(chǔ)字段。只要客戶端單片機(jī)運(yùn)行正常,能夠及時(shí)將傳感器測(cè)量數(shù)據(jù)進(jìn)行傳輸,則數(shù)據(jù)中心就可按照用戶需求完成數(shù)據(jù)采集和圖表分析。

3.2 遠(yuǎn)程控制實(shí)例分析

遠(yuǎn)程控制實(shí)例測(cè)試結(jié)果如圖6所示。遠(yuǎn)程控制采用客戶端單片機(jī)GET方式獲取控制命令,控制命令HTTP包最低173字節(jié),單包容量小、網(wǎng)絡(luò)傳輸快,模擬開關(guān)控制可實(shí)現(xiàn)最快1 s的及時(shí)控制。另外,單片機(jī)編程時(shí),考慮到控制可靠性設(shè)計(jì),采用看門狗實(shí)時(shí)監(jiān)控單片機(jī)程序運(yùn)行,一旦程序跑飛,可及時(shí)復(fù)位單片機(jī),有效保證了控制設(shè)備運(yùn)行的可靠性。

圖6 遠(yuǎn)程控制開關(guān)實(shí)例Fig.6 Example of remote control switch

通過測(cè)試可知,設(shè)計(jì)的遠(yuǎn)程測(cè)控系統(tǒng)有以下優(yōu)點(diǎn):(1)采用51單片機(jī)和10 M網(wǎng)卡芯片,并模擬SPI總線接口,提供了單片機(jī)接入以太網(wǎng)的一種低成本解決方案;(2)移植精簡(jiǎn)TCP/IP協(xié)議(即UIP)到51單片機(jī),資源占用少,方便構(gòu)建網(wǎng)絡(luò)應(yīng)用;(3)數(shù)據(jù)中心服務(wù)器采用穩(wěn)定可靠的LINUX服務(wù)器,WEB服務(wù)程序和HTTP接口采用PHP動(dòng)態(tài)編程語(yǔ)言編寫;(4)克服了多地點(diǎn)、跨地域數(shù)據(jù)采集和惡劣環(huán)境下現(xiàn)場(chǎng)測(cè)控的不便,使遠(yuǎn)程測(cè)控方便、快捷和高效。通過手機(jī)或電腦的瀏覽器控制被控設(shè)備、查看測(cè)量數(shù)據(jù),方便快捷,不存在平臺(tái)、系統(tǒng)兼容性問題;(5)測(cè)量數(shù)據(jù)實(shí)時(shí)保存到數(shù)據(jù)服務(wù)器,保證了測(cè)量數(shù)據(jù)的安全、可靠、易獲取,同時(shí)可方便擴(kuò)展數(shù)據(jù)存儲(chǔ)容量。數(shù)據(jù)中心服務(wù)器根據(jù)獲取的測(cè)量數(shù)據(jù)分析繪圖,提供簡(jiǎn)單的數(shù)據(jù)處理分析,并可設(shè)置警報(bào),提供郵件、短信通知等擴(kuò)展功能。

4 結(jié)束語(yǔ)

設(shè)計(jì)并實(shí)現(xiàn)了一套基于以太網(wǎng)的遠(yuǎn)程數(shù)據(jù)采集和控制系統(tǒng),以單片機(jī)作為客戶端,遠(yuǎn)程數(shù)據(jù)采集與控制軟件采用網(wǎng)頁(yè)編程實(shí)現(xiàn),運(yùn)行在數(shù)據(jù)中心服務(wù)器上,用戶只要通過瀏覽器打開數(shù)據(jù)中心網(wǎng)站即可實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)采集和控制。通過溫度傳感器的遠(yuǎn)程數(shù)據(jù)采集實(shí)驗(yàn)和遠(yuǎn)程LED開關(guān)控制實(shí)驗(yàn),驗(yàn)證了基于單片機(jī)聯(lián)網(wǎng)進(jìn)行遠(yuǎn)程測(cè)控方案的可行性,取得了良好的測(cè)控實(shí)驗(yàn)效果。

猜你喜歡
溫度傳感器測(cè)控以太網(wǎng)
氣象用溫度傳感器檢定結(jié)果的測(cè)量不確定度評(píng)定與應(yīng)用
基于HSIC的日光溫室溫度傳感器優(yōu)化配置策略
昆山祺邁測(cè)控設(shè)備有限公司
淺談溫度傳感器原理及其應(yīng)用
三大因素驅(qū)動(dòng)創(chuàng)新提速以太網(wǎng)快步邁入“靈活”時(shí)代
三大因素驅(qū)動(dòng)創(chuàng)新提速 以太網(wǎng)快步邁入“靈活”時(shí)代
基于現(xiàn)代測(cè)控技術(shù)及其應(yīng)用分析
基于以太網(wǎng)的計(jì)算機(jī)與數(shù)控系統(tǒng)通信技術(shù)研究
虛擬儀器技術(shù)在農(nóng)業(yè)裝備測(cè)控中的應(yīng)用
向著新航程進(jìn)發(fā)——遠(yuǎn)望7號(hào)測(cè)控船首航記錄