日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 物聯(lián)網(wǎng) > 《物聯(lián)網(wǎng)技術(shù)》雜志
[導(dǎo)讀]摘 要:隨著無線傳感網(wǎng)絡(luò)的迅猛發(fā)展,將嵌入式系統(tǒng)接入互聯(lián)網(wǎng)已成為無線傳感網(wǎng)絡(luò)研究中的熱點,其中通過訪問 嵌入式服務(wù)器網(wǎng)頁實現(xiàn)采集數(shù)據(jù)的動態(tài)顯示是一個技術(shù)難點。文中采用DS18B20溫度傳感器采集溫度,在嵌入式網(wǎng)關(guān)搭建 ARM-Linux開發(fā)平臺;然后移植BOA服務(wù)器;同時利用CGI程序、Ajax技術(shù)及HTML語言,在上位機(jī)通過訪問嵌入式網(wǎng)關(guān), 從而實現(xiàn)了對傳感器節(jié)點采集的溫度數(shù)據(jù)在網(wǎng)頁中的動態(tài)顯示。實際應(yīng)用表明,該系統(tǒng)消耗CPU資源少,可減輕服務(wù)器負(fù)擔(dān),而 且無需刷新頁面更新數(shù)據(jù),因而可減少用戶實際等待的時間。

引言

當(dāng)今,以互聯(lián)網(wǎng)為標(biāo)志的嵌入式系統(tǒng)正處于一個飛速發(fā) 展的階段。嵌入式系統(tǒng)接入Internet后,相當(dāng)于一個功能齊全 的小型Web服務(wù)器,用戶在上位機(jī)打開瀏覽器,通過Internet 即可獲取該Web服務(wù)器上的數(shù)據(jù)信息,從而實現(xiàn)了對現(xiàn)場信 息的遠(yuǎn)程監(jiān)控,而且這種基于HTML語言標(biāo)準(zhǔn)化的Web用戶 界面降低了系統(tǒng)開發(fā)、維護(hù)以及人員培訓(xùn)的費(fèi)用。

對于無線傳感網(wǎng)絡(luò)來說,可將嵌入式網(wǎng)關(guān)作為Web服務(wù) 器,用戶在上位機(jī)通過Internet訪問網(wǎng)頁的方式獲取下位機(jī)傳 感器節(jié)點采集的數(shù)據(jù)?;诖?,本系統(tǒng)采用DS18B20溫度傳 感器和ZigBee無線通信模塊構(gòu)成無線傳感網(wǎng)絡(luò),以ARM9 作為核心處理器搭建嵌入式Web服務(wù)器Boa和嵌入式數(shù)據(jù)庫 SQLite,采用C語言、HTML語言、JavaScript程序、CGI程序、 Ajax技術(shù),實現(xiàn)了對遠(yuǎn)端傳感器節(jié)點采集信息的處理、存儲 及在網(wǎng)頁上的動態(tài)顯示。

1系統(tǒng)硬件整體設(shè)計

本系統(tǒng)的硬件主要由3部分組成:上位機(jī)PC端、嵌入 式網(wǎng)關(guān)(ARM9)和ZigBee無線網(wǎng)絡(luò),系統(tǒng)的整體設(shè)計框圖 如圖1所示。

ZigBee無線網(wǎng)絡(luò)由傳感器節(jié)點和協(xié)調(diào)器構(gòu)成,傳感器節(jié) 點將采集的信息經(jīng)協(xié)調(diào)器發(fā)送至網(wǎng)關(guān),同時協(xié)調(diào)器也可接收網(wǎng) 關(guān)發(fā)送的指令進(jìn)而控制節(jié)點的打開與關(guān)閉。嵌入式網(wǎng)關(guān)介于上位機(jī)和傳感器節(jié)點之間,它既要支持TCP/IP協(xié)議,允許用戶 通過Internet訪問,又要實現(xiàn)無線網(wǎng)絡(luò)和Internet之間的地址 映射、協(xié)議轉(zhuǎn)換和路由功能,類似于Internet網(wǎng)關(guān)叫 由于嵌 入式網(wǎng)關(guān)CPU串口引腳不是標(biāo)準(zhǔn)RS232電平,在ZigBee與網(wǎng) 關(guān)之間需加入電平轉(zhuǎn)換電路[4]。PC端即上位機(jī)客戶端,用戶 在上位機(jī)通過瀏覽器輸入嵌入式網(wǎng)關(guān)的IP地址可進(jìn)入系統(tǒng)登 錄界面,登錄后用戶經(jīng)管理系統(tǒng)獲取傳感器節(jié)點采集的數(shù)據(jù), 以訪問網(wǎng)頁的方式實時顯示數(shù)據(jù)信息,并可輸入指令實現(xiàn)對下 位機(jī)傳感器節(jié)點的控制。本文重點介紹嵌入式網(wǎng)關(guān)Web服務(wù) 器的設(shè)計,實現(xiàn)溫度數(shù)據(jù)在上位機(jī)的動態(tài)顯示。

基于ARM9的嵌入式Web服務(wù)器數(shù)據(jù)動態(tài)顯示的實現(xiàn)

2嵌入式Web服務(wù)器的搭建

硬件電路采用ARM9微處理器及外圍電路,開發(fā)環(huán)境: MINI2440, Linux_2.6.32.2 內(nèi)核,虛擬機(jī) Redhat5,交叉編譯 版本ARM-Linux-gcc-4.3.2。主要工作包括Linux內(nèi)核移植、 根文件系統(tǒng)制作、交叉編譯工具安裝、Web服務(wù)器源碼分析等。 2.1交叉編譯工具安裝

交叉編譯即在一個平臺上編譯生成可在另一平臺運(yùn)行的 代碼。本設(shè)計包括安裝Linux系統(tǒng)的宿主機(jī)和基于ARM MINI2440的目標(biāo)板,由于二者處理器體系結(jié)構(gòu)不同,因此需 借助交叉編譯工具在宿主機(jī)編譯生成目標(biāo)板上可運(yùn)行的機(jī)器 代碼。本系統(tǒng)使用交叉編譯工具版本為ARM-Linux-gcc-4.3.2,將其拷貝到宿主機(jī)系統(tǒng),把編譯器路徑加入環(huán)境變量保存, 重啟系統(tǒng)后在終端輸入arm-linux-gcc -v出現(xiàn)交叉編譯工具版 本信息,表示交叉編譯器安裝成功。

2.2 BOA源碼分析及安裝

Web服務(wù)器采用BOA文件生成,它能按照順序完成用戶 請求,支持認(rèn)證、CGI程序,其可執(zhí)行代碼約60 KB。BOA 服務(wù)器的編譯與移植如下:進(jìn)入boa-0.94-13文件夾的src 目錄,運(yùn)行configure配置安裝文件,根據(jù)Makefiles生成 Makefile文件進(jìn)行修改,再執(zhí)行make,生成可執(zhí)行程序boa 后修改/etc/boa.conf,對boa進(jìn)行配置編譯,與虛擬機(jī)etc目 錄下mine.types 一起拷貝到目標(biāo)板var目錄,執(zhí)行./boa,Web 服務(wù)器在目標(biāo)板上即可運(yùn)行。

3數(shù)據(jù)動態(tài)顯示的實現(xiàn)

通過上位機(jī)實時顯示傳感器節(jié)點發(fā)送給網(wǎng)關(guān)的數(shù)據(jù)是一 個難點,一般采用手動或自動刷新來實現(xiàn)數(shù)據(jù)更新,但都無法 實現(xiàn)數(shù)據(jù)的實時動態(tài)顯示。本設(shè)計以采集溫度數(shù)據(jù)為例,在 網(wǎng)頁中嵌入JavaScript,采用Ajax技術(shù)實現(xiàn)溫度信息的動態(tài)實 時顯示,節(jié)約了 CPU資源。

3.1軟件流程

在嵌入式網(wǎng)關(guān)中,通過串口采集溫度信號,每個溫度數(shù) 據(jù)前面帶有設(shè)備號字符,將不同傳感器節(jié)點采集的溫度信息分 別存儲在txt文檔中,上位機(jī)通過Internet訪問嵌入式網(wǎng)關(guān)讀 取txt文檔信息,并在網(wǎng)頁上動態(tài)顯示。采用txt文檔存儲數(shù)據(jù), 一方面有利于在現(xiàn)場直接從網(wǎng)關(guān)SD卡中讀取信息;另一方面 有利于上位機(jī)編程讀取數(shù)據(jù)。其溫度動態(tài)顯示軟件流程圖如 圖2所示。

基于ARM9的嵌入式Web服務(wù)器數(shù)據(jù)動態(tài)顯示的實現(xiàn)

3.2溫度信息處理

協(xié)調(diào)器將傳感器節(jié)點采集的溫度值通過串口傳送到嵌入 式網(wǎng)關(guān),需定義傳感器節(jié)點的設(shè)備號,以實現(xiàn)不同節(jié)點采集的 溫度值在txt文檔中存儲,數(shù)據(jù)格式如表1所列。

把編寫好的串口 C程序在宿主機(jī)編譯后生成的temper文 件,并將temper、CGI程序和js程序拷貝到ARM板服務(wù)器 WWW目錄下,執(zhí)行temper,在服務(wù)器WWW目錄下生成3 個txt文檔,實現(xiàn)了溫度數(shù)據(jù)的存儲。

表1數(shù)據(jù)傳送格

設(shè)備號
溫度值(C)
電壓值(V)
設(shè)備1
溫度值1
電壓值1
設(shè)備2
溫度值2
電壓值2
設(shè)備3
溫度值3
電壓值3

3.3數(shù)據(jù)的讀取及顯示

為了實現(xiàn)溫度的動態(tài)顯示,在溫度顯示網(wǎng)頁(temper. html)中采用JavaScript (js)程序[8],通過加入定時器每隔一 段時間調(diào)用CGI程序以獲取txt文檔的溫度值。由于采樣數(shù)據(jù) 不斷存儲到txt文檔,CGI程序采用倒序方法首先讀取txt文 檔最后一行獲取最新數(shù)據(jù),從而在網(wǎng)頁上動態(tài)顯示溫度。

4結(jié)果分析

在IE瀏覽器中輸入目標(biāo)機(jī)的IP地址,登錄系統(tǒng)進(jìn)入到 溫度顯示頁面(temper.html),如圖3所示,點擊獲取按鈕, 溫度值將顯示在頁面上,設(shè)置溫度數(shù)據(jù)5秒更新一次,當(dāng)改 變溫度傳感器采集的溫度時,網(wǎng)頁顯示數(shù)據(jù)也同時更新,溫 度顯示頁面如圖3所示,從圖3可以看出,當(dāng)采集溫度數(shù)據(jù)發(fā) 生變化時,頁面顯示溫度值也隨之改變,實現(xiàn)了傳感器節(jié)點采 樣數(shù)據(jù)的動態(tài)顯示。

基于ARM9的嵌入式Web服務(wù)器數(shù)據(jù)動態(tài)顯示的實現(xiàn)

5結(jié)語

本文通過構(gòu)建ARM-Linux嵌入式網(wǎng)關(guān),利用BOA服務(wù) 器、運(yùn)用JavaScript, CGI、Ajax技術(shù)及HTML語言實現(xiàn)了傳 感器節(jié)點采集的溫度在上位機(jī)網(wǎng)頁的動態(tài)顯示,與傳統(tǒng)的手 動或自動刷新網(wǎng)頁相比,該系統(tǒng)占用服務(wù)器CPU資源少,縮 短了用戶等待時間,實現(xiàn)了下位機(jī)采集的現(xiàn)場數(shù)據(jù)在上位機(jī)實 時動態(tài)顯示。

20211119_6197b878b28ee__基于ARM9的嵌入式Web服務(wù)器數(shù)據(jù)動態(tài)顯示的實現(xiàn)

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉