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

當前位置:首頁 > 嵌入式 > 嵌入式硬件
[導讀]基于XSCALE PXA270處理器平臺和開源Linux系統(tǒng)搭建ARM-Linux物聯(lián)網(wǎng)服務器。使用51單片機連接溫濕度傳感模塊、LED燈等外圍設備,使用基于 XSCALE PXA270處理器的Up-Tech嵌入

基于XSCALE PXA270處理器平臺和開源Linux系統(tǒng)搭建ARM-Linux物聯(lián)網(wǎng)服務器。使用51單片機連接溫濕度傳感模塊、LED燈等外圍設備,使用基于 XSCALE PXA270處理器的Up-Tech嵌入式實驗箱為核心服務器運行平臺。首先介紹了嵌入式設備的ARM-Linux系統(tǒng)搭建、守護程序和CGI程序之間的通信設計,然后詳細介紹了Web服務器的搭建和網(wǎng)絡程序設計所使用的iQuery類庫和AJAX技術的設計實現(xiàn)。

物聯(lián)網(wǎng)是互聯(lián)網(wǎng)應用的擴展,是一種新興的聯(lián)網(wǎng)技術,其核心是物與物之間的信息通信交流,也是物與人之間的交互控制。物聯(lián)網(wǎng)技術,主要是利用各種傳感器設備,例如:無線技術、射頻識別(RFID)技術,各類傳感器等技術設備將物理世界中的各種信息,如溫度、光強、位置等信息通過網(wǎng)絡傳輸,達到物與物之間、物與人之間的信息交互目的。

要使人們能方便地訪問物聯(lián)網(wǎng)信息,監(jiān)測和控制各類傳感節(jié)點和電氣設備,一個友好的用戶界面是前提。基于B/S架構(gòu)的解決方案以其客戶端通用性成為構(gòu)建系統(tǒng)的首選。本文將設計開發(fā)一個通用的基于ARM處理器平臺和Linux嵌入式操作系統(tǒng)的物聯(lián)網(wǎng)服務器,在硬件平臺上,將使用基于 XSCALEPXA270處理器的UPTECH嵌入式開發(fā)實驗箱、51單片機及各種傳感控制設備。在此嵌入式設備上使用ARM LinuX系統(tǒng),在嵌入式Linux系統(tǒng)下搭建服務器,采用B/S架構(gòu),以BOA為WEB服務器,通過CGI通信方式實現(xiàn)遠程的信息傳遞和智能交互。

1 、系統(tǒng)體系結(jié)構(gòu)

為了突出現(xiàn)代物聯(lián)網(wǎng)服務器系統(tǒng)的低功耗、低成本、服務水平高、處理效率高的特點,服務器將運行在基于XSCALE PXA270處理器的UP—Tech嵌入式設備上,利用51單片機連接各種傳感控制設備。

在 UP-Tech嵌入式設備上移植了2.6.28內(nèi)核的ARM Linux操作系統(tǒng)。在Linux系統(tǒng)上面,編寫一個守護程序來與51單片機通信,從而在Linux系統(tǒng)上與各種傳感控制設備進行通信控制。在Linux 上面移植Boa WEB服務器,用來搭建用戶可交互式的訪問界面。使用戶通過瀏覽器訪問頁面就可以實時進行查看或控制各種傳感控制設備。

系統(tǒng)架構(gòu)如圖1所示。

 


圖1 系統(tǒng)架構(gòu)

2、 物聯(lián)網(wǎng)數(shù)據(jù)采集與處理子系統(tǒng)設計

2.1 基于51單片機的數(shù)據(jù)采集系統(tǒng)

在物聯(lián)網(wǎng)終端設備方面,采用51單片機,通過其豐富的外擴接口和溫度傳感器、濕度傳感器,以及LED燈等模塊進行連接。在軟件上采用“C語言+驅(qū)動庫” 的開發(fā)模式,通過這樣的開發(fā)模式,不僅可以提高開發(fā)效率,還能很好地完成多個傳感器的信息收集和處理。在連接ARM-Linux嵌入式平臺方面,采用 UART 虛擬串口與嵌入式平臺進行連接通信。

本系統(tǒng)的基本實現(xiàn)功能如下:

(1)連接各個傳感模塊,通過輸入輸出接口獲取傳感器傳遞過來的信息并且記錄;

(2)設置定時器,在規(guī)定的單元時間內(nèi),采集各個傳感設備的信息和控制設備的狀態(tài)。將他們的信息、狀態(tài)合成數(shù)據(jù)包,通過虛擬串口發(fā)送;

(3)利通虛擬串口通信,時刻檢測來自ARM-Linux平臺發(fā)送過來的控制信號;

(4)分析串口傳遞過來的數(shù)據(jù)包,檢測數(shù)據(jù)來源確定是否合法,然后根據(jù)特定的控制代碼對單片機和各個控制模塊進行控制。

2.2 基于ARM—Linux平臺的數(shù)據(jù)處理系統(tǒng)

ARM-Linux 平臺是指利用開源的Linux內(nèi)核經(jīng)過特定需求的裁剪后,經(jīng)過交叉編譯后得到一個能夠運行在ARM處理器的Linux內(nèi)核,同時還定制一個Linux根文件系統(tǒng),整個系統(tǒng)容量控制在幾百KB到幾十MB。系統(tǒng)主要由三部分組成:BootLoader、ARM-Linux內(nèi)核、Linux根文件系統(tǒng)。

在嵌入式設備上,主要的數(shù)據(jù)處理系統(tǒng)由守護程序?qū)崿F(xiàn)。守護程序一方面負責接收處理單片機發(fā)送過來的信息;一方面接受WEB服務器傳來的查詢控制請求。

在物聯(lián)網(wǎng)服務器端,來自客戶端訪問的請求,由服務器接收并檢驗后,將請求查詢、控制指令傳遞給守護程序,守護程序接收到來自服務器的請求,通過驗證后再向單片機發(fā)送請求查詢、控制指令。

守護程序的通信過程分為兩部分,第一部分為守護程序向服務端的CGI程序告知更新數(shù)據(jù),第二部分為服務端CGI程序向守護程序發(fā)送指令控制,由守護程序監(jiān)聽到后執(zhí)行控制程序。

3 、人機交互子系統(tǒng)-WEB服務器設計

由于嵌入式設備的硬件資源一般都比較有限,不能同時處理多個用戶的請求。因此,在WEB服務器的選取方面,選擇一些專為嵌入式設備而開發(fā)的WEB服務器。這些服務器具有占用內(nèi)存空間低、處理效率高、安全性高等優(yōu)點,相當適合嵌入式應用領域。另一方面,在實際的應用當中,由于互聯(lián)網(wǎng)的高速發(fā)展,3G網(wǎng)絡的到來,每個人都希望可以通過手上的手持式設備來訪問控制自己的物聯(lián)網(wǎng)設備,使用一個輕量級的WEB服務器當作訪問控制服務器,可以相當出色地完成任務。

3.1 服務器工作原理

嵌入式WEB服務器的體系結(jié)構(gòu)采用B/S架構(gòu),也即由服務端和客戶端構(gòu)成。在此架構(gòu)上,將會通過以下幾個步驟來與WEB服務器互相通信。

(1)在客戶端的瀏覽器(Browser)輸入WEB服務器的IP地址;

(2)客戶端首先通過TCP發(fā)起建立連接請求,然后服務器通過認證后,確認請求合法后立即建立連接。在這個過程中,采用的是TCP/IP協(xié)議的“三次握手”方式建立連接的;

(3)通過TCP/IP建立連接后,瀏覽器再用HTTP協(xié)議發(fā)出HTTP請求;

(4)當服務器端接收到HTTP請求后,對其進行解析等操作,然后根據(jù)不同的處理結(jié)果服務器再執(zhí)行相應的返回操作。

(5)客戶端收到服務器的返回結(jié)果后,解析HTML數(shù)據(jù)包,然后將之顯示在瀏覽器上。

3.2 Boa WEB服務器的移植

Boa 是一個處理單任務的WEB服務器。也就是說只有在完成一個請求后才能響應另外一個連接請求,雖然無法實現(xiàn)并發(fā)響應,但是已經(jīng)足夠應付嵌入式的應用處理了。另外,Boa也是一個相當輕量級的WEB服務器,交叉編譯所得到的可執(zhí)行文件只有60kB左右。出于設計的精簡和應用需求,Boa僅支持CGI。

在WWW.boa.org上下載boa的源代碼。通過以下步驟完成其交叉編譯:[!--empirenews.page--]

#tar—bxzf boa-0.94.1 3.tar. gz

#cd./boa-0.94.13/src

#./configure

#vi./Makefile

修改CC=gcc為CC=arm-unknownlinux-gcc,CPP=gcc -E為CPP=arm-unknownlinux-cpp -E,保存退出。執(zhí)行如下命令:

#make

#arm-linux-strip./boa

得到能在arm平臺下的可執(zhí)行文件boa,大小只有60KB

將可執(zhí)行文件Boa下載到嵌入式設備后,還需對其進行一些配置。首先需要在/etc/boa目錄下建立一個boa配置文件boa.conf。表1為Boa配置文件部分配置說明:

 

ARM-LINUX平臺的物聯(lián)網(wǎng)服務器設計" />

表1 Boa配置文件配置參數(shù)說明

3.3 通用網(wǎng)關接口CGI

CGI是通用網(wǎng)關接口的簡稱。該接口定義了WEB服務器和其他可執(zhí)行程序之間的通信接口標準。一般這些可執(zhí)行程序我們也簡稱為CGI程序。在客戶端瀏覽器上面,可以請求執(zhí)行CGI程序,并會附帶傳送的參數(shù)。當服務器收到此請求后,執(zhí)行對應的CGI程序,與此同時,會把來自客戶端的傳輸傳遞給CGI程序。在服務器和CGI程序之間,他們足利用標準輸入輸出來實現(xiàn)參數(shù)傳遞和信息返回的。

在本物聯(lián)網(wǎng)服務器的設計當中,CGI程序不僅僅與WEB服務器通信,它還需要和守護程序進行通信。由于守護程序是負責連接外圍設備,并與之通信的,所以可以通過CGI程序來對外圍設備進行通信。通過這樣的通信過程實現(xiàn)了客戶端與物聯(lián)網(wǎng)設備終端的交互。其通信過程如下:

(1)客戶端利用TCP/IP協(xié)議和WEB服務器建立連接;

(2)客戶端利用HTTP協(xié)議發(fā)出URL指向一個CGI程序的請求;

(3)服務器收到請求后,執(zhí)行對應的CGI程序;

(4)CGI應用程序執(zhí)行,可以通過讀取標準輸入或環(huán)境變量(QUERY STRING)獲取來自客戶端的參數(shù);

(5)應用程序利用進行標準輸出方式來輸出返回結(jié)果給WEB服務器。

(6)WEB服務器將結(jié)果傳送給客戶端,完成整個請求返回過程。

3.4 網(wǎng)絡應用程序的訪問與控制

網(wǎng)站的訪問和控制使用JavaScript語言,調(diào)用jQuery類庫和利用AJAX技術,實現(xiàn)動態(tài)顯示頁面的效果。而頁面的參數(shù)傳遞和CGI反饋都是使用JSON數(shù)據(jù)格式。

JSON即JavaScript Object Notation,它是一種輕量級的數(shù)據(jù)交換格式。本設計使用JSON數(shù)據(jù)格式中的”名稱/值”對的集合為基本數(shù)據(jù)結(jié)構(gòu),它作為頁面與CGI程序之間的參數(shù)傳遞和運算結(jié)果返回的數(shù)據(jù)格式?;靖袷饺缦拢?/p>

{device:“value”,model:“value”,type:“value”,data:“Value”}

利用jQuery類庫,每隔1 s中通過請求。/cgi-bin/web_cgi。得到請求結(jié)果作為當前狀態(tài)。

4 、總結(jié)

本文實現(xiàn)了一個基于ARM-Linux平臺的通用物聯(lián)網(wǎng)服務器的設計,本設計可以為用戶提供通過WEB頁面對物聯(lián)網(wǎng)中數(shù)據(jù)采集的實時監(jiān)測和控制功能,具有較好的實用意義。下一步將繼續(xù)完善系統(tǒng)的功能,如:增加對更多傳感器的支持,系統(tǒng)如何更方便地應用于不同的領域等,系統(tǒng)的安全性也有待完善。

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

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅(qū)動電源的性能直接關系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設計中至關重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅(qū)動性能的關鍵。

關鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

關鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關鍵字: LED 設計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關鍵元件,其性能直接影響到電動汽車的動力性能和...

關鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質(zhì)量和效率直接關系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關鍵字: LED照明技術 電磁干擾 驅(qū)動電源

開關電源具有效率高的特性,而且開關電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關鍵字: LED 驅(qū)動電源 開關電源

LED驅(qū)動電源是把電源供應轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: LED 隧道燈 驅(qū)動電源
關閉