999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

區域溫度定時網站更新系統設計

2015-01-04 08:51:16史永哲
電子設計工程 2015年12期
關鍵詞:頁面系統

史永哲

(西安廣播電視大學 理工部,陜西 西安 710002)

隨著信息技術的快速發展,計算機的應用越來越廣泛。在我國,目前很多單位都擁有了自己的門戶網站,一些網站通常在網站主頁或其它網頁上顯示當地氣溫。但多數網站頁面顯示的氣溫都是對氣象網站或其它網站數據的引用,所顯示的溫度并不等于單位所在區域內的實際溫度,因此實際參考意義降低。為改進這個問題,本文提供了一種從區域內放置的溫度傳感器直接讀取溫度并自動顯示在網站頁面上的方法。采用這種方法,可以實現計算機定時讀取傳感器傳回的實時溫度,寫入到相應的文件;網頁從文件中讀取數據,定時將溫度更新到頁面上。整個過程不需要人為管理,達到了無伺服的效果。

1 系統概述

本系統是一個無伺服自動接收傳感器數據,并存儲文件,同時自動更新頁面數據顯示的計算機應用系統。本系統由硬件和軟件兩部分構成,硬件部分主要由溫度傳感器以及相應的接口設備和接入線路構成。軟件部分可分為兩方面,一方面是通過VB6.0高級編程語言實現將溫度傳感器傳回的溫度實時讀取,并將數據存儲到文件;另一方面是通過網站上的ajax的異步通信技術,不用刷新網頁,定時將文件中的數據定時讀出,用來更新網頁上特定元素的數據顯示,達到自動定時更新網頁上數據顯示的效果。下面我們來具體介紹。

2 硬件構成

圖1 硬件結構圖Fig.1 The hardware structure diagram

系統的硬件結構如圖1所示,其中,計算機可以是服務器,或通過局域網連接起來的別的計算機。要求計算機上能夠運行VB6.0的編程開發環境,并具有標準的RS232串口或者RS485接口,通過該接口要實現的主要功能是數據采集處理和系統控制。ADAM4521是接口轉換模塊,是一款智能RS-422/485到RS-232轉換器,能夠將RS485或者RS422信號轉換為RS232信號[1]。ADAM4521模塊具有如下特點:可尋址,信號傳輸速度為115.2 kbps,內置微處理器,不需要中間的握手信號。ADAM4013是熱敏電阻輸入模塊,能夠把熱敏電阻的模擬信號轉換為RS485的數字信號。ADAM4013模塊能利用自身的微處理器控制A/D轉換器,把電流、電壓或者熱敏電阻的模擬信號轉化為數字信號。該模塊可提供信號調整、測量范圍調整、A/D轉換等功能。該模塊的主要特點有:內置看門狗、采樣率10次/秒、高壓隔離、誤差小于0.05%。這些參數基本能滿足絕大多數場合的應用。溫度傳感器可選用鉑電阻Pt100,來測量-100℃到+100℃的溫度[2]。在使用時,可以將ADAM4013模塊的測量溫度系數a設為0.003 85。我們可以根據測量范圍和測量精度的不同要求選擇不同的溫度傳感器。

3 軟件實現

本系統的軟件實現分為兩部分,一部分是用VB6.0對硬件模塊的溫度采集功能進行編程,實現定時采集數據,并將采集到的數據存儲到數據文件中。另一部分利用Ajax技術,通過異步通信功能來定時在后臺讀取文件中數據,并顯示在指定的頁面位置,達到頁面數據自動更新的效果。

3.1 溫度數據采集功能的程序設計

系統軟件主要采用VB6.0對RS232的串口編程,實現各硬件之間的通訊。軟件框圖流程如圖2所示。

圖2 程序流程圖Fig.2 Program flow chart

VB6.0對RS232的串口編程主要通過它的MSComm控件來實現。MSComm的英文全稱是Microsoft Communications Control,是微軟公司提供的簡化Windows下串行通信編程的ActiveX控件,它為應用程序提供了串行接口收發數據的簡便方法,可為我們編寫的應用程序提供串行通訊功能。MSComm控件提供了兩種處理通訊的方式:事件驅動方式及查詢方式。我們可以利用MSComm控件的OnComm事件來捕獲并處理這些通訊事件。當MSComm對象的CommEvent屬性的值發生變化時,就會產生一個OnComm事件,即表示發生了一個通訊事件,或者產生了一個錯誤。每個被使用的MSComm控件都對應著一個串行端口,程序如果需要訪問多個串行端口,就必須要使用多個MSComm控件[3]。

MSComm控件的主要屬性有:CommPort:設置并返回端口號;Settings:以字符串形式設置并返回波特率、數據位、奇偶校驗、停止位;PortOpen:設置或者返回通訊端口的狀態,也可用來打開和關閉一個端口;Input:從接收緩沖區中返回和刪除字符;Output:給緩沖區內寫入一個字符串。ADAM模塊是通過使用一定的約定字符來實現相應的操作,經常會用到的有:"%0101210600":設置端口;"#01":讀串口 1的數據;"#02":讀串口 2 的數據;"$010":模塊自動校準;"$011":偏移量校準;"$012":讀端口信息;"$01M":讀模塊名稱。本軟件中用到的核心VB程序代碼有:

Const Cmdconfig="%0101210600"‘設置端口命令字符

Const CmddataIn1="#01"‘讀串口1的數據命令字符

Const CmddataIn2="#02"‘讀串口2的數據命令字符

Const CmdspanCalibration="$010"‘‘校準命令字符

Const CmdoffsetCalibration="$011"‘偏移量校準命令字符

Const CmdconfigStatus="$012"‘讀端口信息的命令字符

Const CmdmoduleName="$01M"‘讀模塊名的命令字符

Private Sub MSComm1_OnComm()‘CommEvent值變化時運行的事件子程序

Select Case MSComm1.CommEvent‘判斷MSComm1通訊事件的類型

Case ComEvReceive‘如果收到Rthreshold個字節產生的接收事件

MSComm1.Rthreshold=0‘關閉對OnComm事件的接收

Timedelay 500‘延時 500ms

temperatureStr1=Right(MSComm1.Input, 7)‘讀取 BCD 碼的高位字節

temperature=Val(temperatureStr1)‘得到溫度的數值

Open “wendu.txt” for random as#1 len=len(temperature)‘給wendu.txt中寫入數據。

Put#1,1,temperature‘將采集到的溫度數據寫入wendu.txt的第一行。

Close#1‘關閉文件

MSComm1.Output=CStr(CmddataIn) &vbCr‘發送讀數據命令

MSComm1.InBufferCount=0‘清空緩存

MSComm1.Rthreshold=1‘關閉OnComm的事件接收

Case Else

End Select

End Sub

上述程序代碼得到的temperature變量即是待測介質的實際溫度。我們通過VB的定時器(可以每10分鐘)以覆蓋方式將其值定時保存到wendu.txt文件的第一行 (定時器代碼略)。下面我們來通過ajax的異步通信功能實現網頁定時讀取wendu.txt中的溫度數據。

3.2 通過ajax實現頁面數據的異步更新

Ajax的英文全稱是 Asynchronous JavaScript And XML,意思即是異步的JavaScript和XML,是一種用于創建快速動態網頁的技術[4]。Ajax在后臺通過與服務器進行少量的數據交換,可以實現網頁的異步更新,這意味著它可以在不重新加載整個頁面的情況下,對網頁的某個部分進行更新。該方法可以讓Web頁面不用打斷交互流程以及重新加裁,就可以進行動態地更新。在Ajax中的應用中,起關鍵作用的是XmlHttpRequest對象。XMLHttpRequest對象在大部分瀏覽器上已經實現且擁有一個簡單的接口,允許數據從客戶端傳遞到服務器端,但不會打斷用戶當前的操作。從名稱上看,XMLHttpRequest傳遞的數據格式是XML格式的數據,但實際上,使用XMLHttpRequest可以傳送任何格式的數據[5]。本系統的頁面和數據文件之間的訪問關系如圖3所示,Index.htm通過使用XMLHttpRequest對象訪問Read.asp,達到對Wendu.txt文件中數據的訪問。

在Index.htm頁面中我們設計的核心代碼如下:

<script language="javascript">

var myrequest=false;//給myrequest對象賦初值為false

try{//嘗試在不同的瀏覽器版本建立XmlHttpRequest對象

myrequest=new XMLHttpRequest (); //嘗 試 創 建XMLHttpRequest對象

}catch (trymicrosoft) {//如果失敗

try{

myrequest=new ActiveXObject("Msxml2.XMLHTTP"); //

圖3 文件訪問結構圖Fig.3 File access structure

嘗試建立較新版本的兼容對象

}catch (othermicrosoft) {//如果還失敗

try{

myrequest=new ActiveXObject("Microsoft.XMLHTTP");

//嘗試建立較老版本的兼容對象。

}catch (failed) {//如果還失敗

myrequest=false; //給myrequest變量賦值為 false

}

}

}

function getCustomerInfo(){//建立定時自動運行的函數getCustomerInfo()

myrequest.open ("GET",”Read.asp”, true); //定時訪問Read.asp動態網頁

myrequest.onreadystatechange=updatePage (); //獲取當前HTML的就緒狀態

myrequest.send (null); //發送請求,null表示不發送額外數據

window.setTimeout ("getCustomerInfo ()",600000); //每10分鐘執行一次本函數

}

function updatePage(){//判斷網頁的就緒狀態函數

if(myrequest.readyState==4) {//如果服務器完成發送響應

if(myrequest.status==200) //如果處理的狀態是正常的

document.getElementById ("wd").value =myrequest.responseText;//在頁面顯示傳回的數據

}

}

在Read.asp頁面中我們設計的核心代碼如下:

<%

Set Fs=Server.CreateObject("Scripting.FileSystemObject")//建立文件系統對象

Set Rs=FS.OpenTextFile(Server.MapPath("wendu.txt"), 1,False)//以只讀模式打開文件

response.write(Rs.ReadLine)//讀取第一行的內容,并將內容寫到返回結果中

Rs.Close//關閉 wendu.txt

Set Rs=Nothing

Set Fs=Nothing

%>

在上述文件中,Index.htm是顯示并更新數據的頁面;Read.asp是數據處理頁面,即讀取wendu.txt中的數據并返回。函數getCustomerInfo()的功能是每10分鐘執行一次自身包含的代碼,這些代碼主要包括定時訪問Read.asp頁面并返回數據,根據判斷Read.asp頁面是否就緒等。Update()函數的作用是判斷Read.asp網頁的就緒狀態,在狀態就緒的情況下,才能執行發送訪問請求,并用返回的數據來更新網頁中元素的屬性值[6]。通過這些代碼,可以定時將wendu.txt文件中第一行數據[7]定時讀取到index.htm中,并顯示在index.htm中ID為“wd”的標簽上[8]。這樣,就實現了從文件數據到頁面數據的自動定時更新。

4 結 論

本系統所需設備簡單,硬件的連接較為方便,易于實現。系統只占用了PC機的一個串口,占用資源較少。不需要數據采集卡以及硬件的驅動程序,可使用VB程序設計語言中的串口控件對象來自己編寫數據采集程序,靈活性比較大。本系統的功能比較實用,不但可以在網站上應用,亦可推廣至家庭電腦上使用。本系統涵蓋了計算機硬件和軟件兩方面的技術應用[9],涉及到了設備連接、接口編程、網頁設計等,系統運行結果可靠。讀者如果能親身實踐,必能品嘗到自己動手設計計算機應用系統的樂趣,激發出學習和研究計算機應用功能的興趣和動力。

[1]蘭羽,白潔.基于pt100傳感器的溫度測量系統設計[J].機械與電子,2013(10):121-124.LAN Yu,BAI Jie.Design of temperature measurement system base on Pt100 sensor[J].Machinery&Electronics,2013(10):121-124.

[2]張修太,胡雪惠.基于PT100的高精度溫度采集系統設計與實驗研究[J].傳感技術學報2013(6):93-97.ZHANG Xiu-tai,HU Xue-hui.The design and experimental study of high precise temperature acquisition system base on pt100[J].Chinese Journal of Sensors and Actuators,2013(6):93-97.

[3]李小亭,張琛.基于PLC的小型高精度多相流實驗裝置測控系統設計[J].電子測量與儀器學報,2014(6):70-74.LI Xiao-ting,ZHANG Chen.Design of measurement and control system of experimental apparatus for PLC-based small high-precision multiphase flow[J].Journal of Electronic Measurement and Instrument,2014(6):70-74.

[4]高鵬,徐小力.基于Ajax的四層架構遠程監測系統設計[J].計算機工程與設計,2014(2):196-198.GAO Peng,XU Xiao-li.Design of four layer architecture remote monitoring system base on ajax[J].Computer Engineering and Design,2014(6):196-198.

[5]熊文,孫旭.Ajax技術在Web2.0網站設計中的應用研究[J].計算機技術與發展,2012(3):142-145.XIONG Wen,SUM Xu.The application of ajax technology in web site design[J].Computer Technology and Development,2012(3):142-145.

[6]曹永鴻.基于.Web的學校網絡中心空調遠程監控[J].電腦編程技巧與維護,2014(15):61-64.CAO Yong-hong.The school network center air-conditioning remote monitoring Based on web[J].Computer Program Skills and Maintenance,2014(15):61-64.

[7]王文龍,張少博,陳海峰.一種試驗數據處理軟件設計[J].火箭推進 ,2012(1):76-80.WANG Wen-long,ZHANG Shao-bo,CHEN Hai-feng.Design of a test data processing software[J].Journal of Rocket Propulsion,2012(1):76-80.

[8]董冬,張少博,劉曉.試驗狀態信息管理軟件設計[J].火箭推進,2013(6):72-77.DONG Dong,ZHANG Shao-bo,LIU Xiao.Design of information management software for test status[J].Journal of Rocket Propulsion,2013(6):72-77.

[9]許仁安,黃作兵,吳大珩.一種IRIG-B碼對時系統方案軟硬件設計的研究[J].陜西電力,2014(7):91-93.XU Ren-an,HUANG Zuo-bing,WU Da-heng.Study on software and hardware design scheme of IRIG-B code time synchronous system[J].Shaanxi Electric Power,2014(7):91-93.

猜你喜歡
頁面系統
微信群聊總是找不到,打開這個開關就好了
大狗熊在睡覺
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
刷新生活的頁面
保健醫苑(2022年1期)2022-08-30 08:39:14
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
同一Word文檔 縱橫頁面并存
主站蜘蛛池模板: 久久久黄色片| 亚洲swag精品自拍一区| 久久五月视频| 午夜久久影院| 国产成a人片在线播放| 大陆精大陆国产国语精品1024| 91小视频在线观看免费版高清| 国产精品99r8在线观看| 青青草国产免费国产| 亚洲天堂网在线视频| 亚洲国产午夜精华无码福利| 男女性色大片免费网站| 久久天天躁夜夜躁狠狠| 日韩高清无码免费| 亚洲国产第一区二区香蕉| 91av国产在线| 干中文字幕| 69综合网| 日本高清视频在线www色| 亚洲丝袜中文字幕| 国产极品嫩模在线观看91| 青青草综合网| 久久精品丝袜| 欧美国产精品不卡在线观看| 91av成人日本不卡三区| 欧美综合成人| 五月激情婷婷综合| 日韩欧美中文| 国产成人1024精品| 精品久久蜜桃| 97青草最新免费精品视频| 欧美黄网在线| 国产在线自在拍91精品黑人| 欧美不卡视频在线| 国产91丝袜在线观看| 欧美人与性动交a欧美精品| 欧美a级完整在线观看| 国产精品一区二区不卡的视频| 亚洲综合日韩精品| 亚洲无码A视频在线| 成人福利在线免费观看| 亚洲日韩AV无码一区二区三区人| 国产成人91精品| 国产亚洲精久久久久久久91| 永久免费精品视频| 国产成人三级| 91在线中文| 99精品国产高清一区二区| 91青青视频| 四虎成人精品| 97超碰精品成人国产| 国产91蝌蚪窝| 精品无码国产自产野外拍在线| 九九热精品在线视频| yy6080理论大片一级久久| 成人毛片在线播放| 亚洲第一中文字幕| 2021国产精品自产拍在线观看| 国产成人毛片| 国产精品观看视频免费完整版| 日韩人妻少妇一区二区| 久久综合色天堂av| 先锋资源久久| 成人第一页| 2020国产在线视精品在| 国产网站一区二区三区| AV不卡在线永久免费观看| 国产女人水多毛片18| 看你懂的巨臀中文字幕一区二区| 国禁国产you女视频网站| 日韩欧美在线观看| 国产成人亚洲精品蜜芽影院| a级毛片视频免费观看| 伊人婷婷色香五月综合缴缴情| 色欲国产一区二区日韩欧美| 日韩美毛片| 国产第四页| 2022国产无码在线| 波多野结衣久久精品| 91最新精品视频发布页| 国产v精品成人免费视频71pao| 成人噜噜噜视频在线观看|