欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      基于嵌入式網(wǎng)絡(luò)設(shè)備的遠程監(jiān)控系統(tǒng)設(shè)計(樣例5)

      時間:2019-05-13 01:13:26下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《基于嵌入式網(wǎng)絡(luò)設(shè)備的遠程監(jiān)控系統(tǒng)設(shè)計》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《基于嵌入式網(wǎng)絡(luò)設(shè)備的遠程監(jiān)控系統(tǒng)設(shè)計》。

      第一篇:基于嵌入式網(wǎng)絡(luò)設(shè)備的遠程監(jiān)控系統(tǒng)設(shè)計

      基于嵌入式網(wǎng)絡(luò)設(shè)備的遠程監(jiān)控系統(tǒng)設(shè)計

      摘要: 針對目前大量嵌入式網(wǎng)絡(luò)設(shè)備應(yīng)用于工業(yè)控制的監(jiān)控領(lǐng)域,監(jiān)控網(wǎng)絡(luò)的性能、帶寬、成本成為目前工業(yè)控制領(lǐng)域普遍關(guān)心的問題。而影響這一性能的是核心控制服務(wù)器的管理及設(shè)計結(jié)構(gòu)優(yōu)劣,為此本文提出了一個適于通用嵌入式設(shè)備的網(wǎng)絡(luò)遠程監(jiān)控系統(tǒng)服務(wù)器結(jié)構(gòu),分析了該服務(wù)器需要提供了功能需求,其中重點研究了該網(wǎng)絡(luò)監(jiān)控系統(tǒng)的通信協(xié)議、嵌入式技術(shù)和現(xiàn)場總線技術(shù)等。

      關(guān)鍵詞: 嵌入式;監(jiān)控;服務(wù)器;網(wǎng)絡(luò)設(shè)備;工業(yè)控制前言

      隨著控制、計算機、通信、網(wǎng)絡(luò)等技術(shù)的發(fā)展,信息交換溝通的領(lǐng)域迅速擴大,覆蓋了從企業(yè)的現(xiàn)場設(shè)備到控制、管理的各個層次,從工段、車間、工廠、企業(yè)乃至世界各地的市場。所以,如何更好的實現(xiàn)企業(yè)內(nèi)現(xiàn)場控制、過程監(jiān)控、經(jīng)營管理、市場管理等各層次的匯通和數(shù)據(jù)共享,即實現(xiàn)“管理監(jiān)控一體化”,是各個企業(yè)迫切需要解決的問題。工業(yè)控制網(wǎng)絡(luò)和 Internet的無縫連接能夠促進企業(yè)的網(wǎng)絡(luò)化發(fā)展,順應(yīng)工業(yè)監(jiān)控系統(tǒng)的發(fā)展潮流,具有強大的社會推動力和生命力。

      嵌入式系統(tǒng)與網(wǎng)絡(luò)技術(shù)的結(jié)合是順應(yīng)著低成本、高性能、網(wǎng)絡(luò)化的時代潮流,是嵌入式系統(tǒng)迅速發(fā)展的方向,開創(chuàng)著嵌入式技術(shù)的美好未來。嵌入式系統(tǒng)與網(wǎng)絡(luò)技術(shù)結(jié)嵌入式網(wǎng)絡(luò)設(shè)備服務(wù)器聯(lián)網(wǎng)系統(tǒng)的研究與實現(xiàn),就是開發(fā)基于TCP/IP協(xié)議棧的Internet互聯(lián)的嵌入式系統(tǒng),即嵌入式Internet設(shè)備。它可以實現(xiàn)遠程監(jiān)控、管理、診斷和維護現(xiàn)場設(shè)備,實現(xiàn)各種智能設(shè)備,例如家用電器、工業(yè)控制裝置或儀器、安全監(jiān)控系統(tǒng)、汽車電子等與Internet網(wǎng)絡(luò)的互聯(lián)。

      如果在工業(yè)控制網(wǎng)絡(luò)體系結(jié)構(gòu)的縱向上,可以實現(xiàn)工業(yè)控制網(wǎng)絡(luò)和Internet網(wǎng)絡(luò)的無縫連接,那么整個工控網(wǎng)絡(luò)就好像只有一種通信協(xié)議,可以滿足控制系統(tǒng)各個層次的要求,實現(xiàn)生產(chǎn)、管理和控制一體化。如果在工業(yè)網(wǎng)絡(luò)體系結(jié)構(gòu)的橫向上,可以使多種工業(yè)控制網(wǎng)絡(luò)統(tǒng)一協(xié)議標(biāo)準(zhǔn),那么企業(yè)生產(chǎn)底層具有各種總線類型接口的現(xiàn)場儀表和設(shè)備就可以通訊,實現(xiàn)設(shè)備無差別化。嵌入式設(shè)備服務(wù)器組成結(jié)構(gòu)

      嵌入式網(wǎng)絡(luò)設(shè)備服務(wù)器廣泛應(yīng)用于工業(yè)控制領(lǐng)域,實現(xiàn)對工業(yè)現(xiàn)場設(shè)備和儀器儀表的監(jiān)控。針對各種工業(yè)現(xiàn)場的不同應(yīng)用需求,嵌入式網(wǎng)絡(luò)設(shè)備服務(wù)器在設(shè)計時按用途分為兩大類,一類適用于對系統(tǒng)成本敏感,數(shù)據(jù)量少,對通訊指標(biāo)要求低的場合,價格低廉、貨源充足的8/16位嵌入式控制器是首選,即低端嵌入式服務(wù)器系統(tǒng);另一類適用于數(shù)據(jù)量大,對通訊的實時性和可靠性要求高的場合,性價比高的16/32位的嵌入式微處理器是最佳選擇,即中高端嵌入式服務(wù)器系統(tǒng)。因此,在設(shè)計前期需要考慮系統(tǒng)的應(yīng)用環(huán)境,選擇合適的方案最大程度的滿足工業(yè)現(xiàn)場各方面的需求。

      在嵌入式網(wǎng)絡(luò)設(shè)備服務(wù)器聯(lián)網(wǎng)系統(tǒng)的軟件設(shè)計上,完成服務(wù)器和網(wǎng)絡(luò)接口功能的是嵌入式HTTP協(xié)議、EGI接口函數(shù)、嵌入式TCP/IP協(xié)議棧、異構(gòu)協(xié)議轉(zhuǎn)換程序、網(wǎng)絡(luò)芯片驅(qū)動程序、CAN協(xié)議驅(qū)動程序和RS485協(xié)議驅(qū)動程序。只要實現(xiàn)了低端嵌入式服務(wù)器接口的軟件,在其基礎(chǔ)上做適當(dāng)?shù)男薷模涂梢猿晒σ浦驳街懈叨饲度胧椒?wù)器接口。

      基于51單片機的嵌入式網(wǎng)絡(luò)設(shè)備服務(wù)器應(yīng)用于工業(yè)監(jiān)控系統(tǒng),連接現(xiàn)場總線和以太網(wǎng),使得以太網(wǎng)中的管理層工作人員可以遠程監(jiān)控現(xiàn)場總線設(shè)備??紤]到單片機系統(tǒng)的資源局限性,基于51單片機的嵌入式系統(tǒng)就僅僅作為網(wǎng)絡(luò)設(shè)備,完成網(wǎng)絡(luò)設(shè)備服務(wù)器和網(wǎng)絡(luò)接口功能,監(jiān)控具有自診斷功能的智能型現(xiàn)場設(shè)備。智能型設(shè)備的自診斷功能能夠處理設(shè)備運行中的突發(fā)問題,需要監(jiān)控的信息主要是運行信息、報警信息和參數(shù)設(shè)置信息,傳輸數(shù)據(jù)量小,基于51單片機的嵌入式網(wǎng)絡(luò)設(shè)備服務(wù)器能夠滿足其傳輸指標(biāo)要求??紤]到現(xiàn)場總線協(xié)議的多樣性,無法顧及,僅以CAN總線為例,設(shè)計嵌入式網(wǎng)絡(luò)設(shè)備服務(wù)器系統(tǒng)的現(xiàn)場總線模塊。

      根據(jù)功能需要,本系統(tǒng)設(shè)計包括以下模塊:嵌入式微控制器(Micro Control Unit簡稱MCU)的主控模塊、工業(yè)現(xiàn)場總線CAN模塊和RS485模塊、與以太網(wǎng)連接的網(wǎng)絡(luò)控制模塊、系統(tǒng)調(diào)試用的串口RS232模塊、鍵盤輸入模塊和LCD顯示模塊以及電源模塊。整個系統(tǒng)的實現(xiàn)框架如圖一所示。

      圖 一:嵌入式網(wǎng)絡(luò)設(shè)備服務(wù)器系統(tǒng)的硬件結(jié)構(gòu)圖

      嵌入式網(wǎng)絡(luò)設(shè)備服務(wù)器系統(tǒng)需要實現(xiàn)網(wǎng)絡(luò)功能,為了適應(yīng)網(wǎng)絡(luò)的傳輸速度以及有足夠的時間解析數(shù)據(jù)包,僅僅依靠RTL8019AS內(nèi)部的RAM是遠遠不夠的,所以單片機外擴了一個32K的RAM存儲器。外擴的存儲器緩存以太網(wǎng)幀。嵌入式網(wǎng)絡(luò)設(shè)備服務(wù)器不僅要實現(xiàn)與以太網(wǎng)、CAN、RS4851232的通訊,還要提供人機交互接口LCD和鍵盤。因此,微控制器W77E58B需要訪問多個外部設(shè)備,又不能占用太多的引腳。譯碼器74HC 138為W77E58B訪問外部設(shè)備提供方便,只需W77E58B通過三個引腳A15,A14和A13就可以分別片選外擴RAM存儲器HM62256B,網(wǎng)絡(luò)接口芯片RTL8019AS, CAN總線控制器SJA1000, LCD顯示芯片的ACM12232-E1和ACM12232-E2。

      X5325芯片為單片機系統(tǒng)提供復(fù)位信號、32K的存儲空間和看門狗機制。X5325中的EEPROM是掉電不丟失信息的數(shù)據(jù)存儲器,所以用戶通過人機交互接口鍵盤輸入的信息可以存儲在X5325中。當(dāng)系統(tǒng)再次上電,W77E58B會從X5325的EEPROM中讀取用戶的設(shè)置信息在LCD上顯示。因此,嵌入式網(wǎng)絡(luò)設(shè)備服務(wù)器的最小系統(tǒng)由微控制器芯片W77E58B、靜態(tài)RAM存儲器芯片HM62256B、地址鎖存器74HC373、譯碼器74HC138、晶振電路和復(fù)位芯片X5325組成。系統(tǒng)設(shè)計中,W77E58B的參考時鐘由11.0592 MHz的晶體振蕩器產(chǎn)生。工業(yè)現(xiàn)場總線CAN和RS485的接口部分需要使用光電隔離措施。使用光耦6N137組成的光電隔離電路,隔離CAN的收發(fā)控制模塊PCA82C250和RS485的電平轉(zhuǎn)換模塊MAX485的電源。

      完整的以太網(wǎng)接口除了以太網(wǎng)控制芯片外,還需要RJ45插座連接網(wǎng)絡(luò)傳輸?shù)奈锢斫橘|(zhì)雙絞線。除此之外還需要隔離變壓器進行信號隔離以及兩個指示燈指示以太網(wǎng)的工作狀態(tài)。一個指示燈指示以太網(wǎng)是否連通,另一個指示燈指示嵌入式系統(tǒng)是否接收或發(fā)送以太網(wǎng)幀。3 嵌入式UDP/IP協(xié)議棧的實現(xiàn)

      UDP/IP協(xié)議棧是一個復(fù)雜的綜合體,在實際運用中,并不需要實現(xiàn)其全部協(xié)議。根據(jù)系統(tǒng)需要對網(wǎng)絡(luò)協(xié)議進行裁剪,設(shè)計并實現(xiàn)UDP/IP協(xié)議簇的一個子集,即嵌入式UDP/IP協(xié)議棧只實現(xiàn)ARP。IP和UDP協(xié)議,如此便避免了單片機的系統(tǒng)速度和內(nèi)存的瓶頸。這樣,嵌入式UDP/IP協(xié)議具有向下兼容性和易移植性,不僅滿足嵌入式微處理器的高質(zhì)量通訊任務(wù)的基本需求,必要時可方便增加部分協(xié)議處理,又可以滿足單片機的聯(lián)網(wǎng)需要。嵌入式UDP/IP協(xié)議棧符合經(jīng)濟型嵌入式工業(yè)設(shè)備聯(lián)網(wǎng)的設(shè)計要求。

      系統(tǒng)采用以太網(wǎng)的接入方式,因此必須實現(xiàn)IEEE802.3標(biāo)準(zhǔn),主要由RTL8019AS完成。為了保證系統(tǒng)能夠在以太網(wǎng)內(nèi)通信,還需要實現(xiàn)ARP協(xié)議。ARP協(xié)議的本質(zhì)就是完成網(wǎng)絡(luò)地址到物理地址的映射,從而保證網(wǎng)絡(luò)的正確傳輸。整個ARP處理過程由ARP請求和ARP應(yīng)答兩個函數(shù)實現(xiàn)。根據(jù)ARP報頭格式定義ARP報頭結(jié)構(gòu)體ARPHeader如下所示。其中,當(dāng)Operation=1時表示ARP請求數(shù)據(jù)包;當(dāng)Operation =2時表示ARP應(yīng)答數(shù)據(jù)包。實現(xiàn)協(xié)議棧的主要函數(shù)分發(fā)送部分和接收部分,發(fā)送函數(shù)有:①void fun_NetSendEther(void):封裝以太網(wǎng)幀。將上層協(xié)議的數(shù)據(jù)包封裝在以太網(wǎng)幀的數(shù)據(jù)部分,從EthernetHeader結(jié)構(gòu)體中讀取信息,填充以太網(wǎng)幀的幀頭并發(fā)送以太網(wǎng)幀。②void fun_NetSendIP(void):封裝IP數(shù)據(jù)包。將上層協(xié)議的數(shù)據(jù)包封裝在IP數(shù)據(jù)包的數(shù)據(jù)部分,從IpHeader結(jié)構(gòu)體、數(shù)組Deslp和數(shù)組NodeIp中讀取信息,調(diào)用fun_NetCheckSum函數(shù)計算校驗和,填充IP數(shù)據(jù)包的報頭部分,判斷上層協(xié)議是TCP協(xié)議(協(xié)議標(biāo)識06)還是UDP(協(xié)議標(biāo)識17)協(xié)議,并將不同的協(xié)議標(biāo)識添加到IP數(shù)據(jù)包報頭,發(fā)送IP數(shù)據(jù)包。③void fun_NetSendUDP(void):封裝UDP數(shù)據(jù)包。將上層協(xié)議的數(shù)據(jù)包封裝在UDP數(shù)據(jù)包的數(shù)據(jù)部分,從UdpHeader結(jié)構(gòu)體、數(shù)組DesIp和數(shù)組Nodelp中讀取信息,調(diào)用fun NetCheckSum函數(shù)計算校驗和,填充UDP數(shù)據(jù)包的報頭部分,并發(fā)送UDP數(shù)據(jù)包。

      接收的函數(shù)主要有:①void fun_NetRecEther(void):該函數(shù)從接收的數(shù)據(jù)包中提取發(fā)送方的MAC地址,以便發(fā)送回復(fù)信息時,填充數(shù)據(jù)包的接收方MAC地址。查看網(wǎng)絡(luò)層協(xié)議,判斷是IP協(xié)議還是ARP協(xié)議,并針對各種協(xié)議調(diào)用相應(yīng)的處理函數(shù)。②void fun_NetRecARPReq(void):將相應(yīng)的信息存儲在ARP結(jié)構(gòu)體中,以便回復(fù)時填充ARP數(shù)據(jù)包的報頭部分。分析ARP的請求數(shù)據(jù)包,若是發(fā)送給本IP的ARP請求,則將發(fā)送ARP應(yīng)答數(shù)據(jù)包,告知本IP地址對應(yīng)的MAC地址。③void funwe NetRecIP(void): IP協(xié)議的處理程序。首先檢驗校驗和,若校驗和正確,就將IP信息存儲在IP結(jié)構(gòu)體中,以便回復(fù)時填充IP數(shù)據(jù)包的報頭,否則丟棄整個數(shù)據(jù)包。查看下層協(xié)議是UDP還是TCP協(xié)議,調(diào)用相應(yīng)的函數(shù)處理程序。④void fun_etRecUDP(void):首先檢驗校驗和,若校驗和正確,就將UDP信息存儲在UDP結(jié)構(gòu)體中,以便回復(fù)時填充UDP數(shù)據(jù)包的報頭,否則丟棄整個數(shù)據(jù)包。

      圖 二:數(shù)據(jù)收發(fā)流程

      數(shù)據(jù)的整個收發(fā)流程如圖二所示。嵌入式網(wǎng)絡(luò)設(shè)備服務(wù)器系統(tǒng)接收到以太網(wǎng)數(shù)據(jù)幀,就調(diào)用嵌入式UDP/IP協(xié)議棧的接收函數(shù)接收,并按照協(xié)議棧的層次關(guān)系分析數(shù)據(jù)包。需要注意的是系統(tǒng)自動丟棄ARP應(yīng)答數(shù)據(jù)包。4 現(xiàn)場總線技術(shù)實現(xiàn)

      現(xiàn)場總線上連續(xù)傳輸?shù)腘個CAN協(xié)議幀。每幀10個字節(jié),其中控制字段占2個字節(jié),包括標(biāo)準(zhǔn)CAN協(xié)議幀的仲裁場和控制場,信息字段占8個字節(jié),包括標(biāo)準(zhǔn)CAN協(xié)議幀的數(shù)據(jù)場。其中,信息字段由8個字節(jié)組成,發(fā)送CAN數(shù)據(jù)幀時,信息字段由單片機W77E58B通過寫SJA1000的發(fā)送緩沖器的TXDATAO-TXDATA8設(shè)定。信息字段的數(shù)據(jù)信息內(nèi)容也由通訊雙方自定義。為適應(yīng)實際應(yīng)用的需要,數(shù)據(jù)信息分成了功能碼和數(shù)據(jù)信息兩個部分。功能碼有兩個作用,一是區(qū)分設(shè)備類型,另一個是區(qū)分信息類別。工業(yè)現(xiàn)場中有多種類型的設(shè)備都集成了CAN總線接口,都需要進行CAN總線通訊,所以在設(shè)計CAN協(xié)議幀時就需要提供可以區(qū)分不同設(shè)備的標(biāo)識,利用一個字節(jié)(8bits)的3 bit可以區(qū)分8種不同的設(shè)備。設(shè)備在通訊過程中需要交互各種類型的信息,例如動態(tài)遙測數(shù)據(jù),報警遙測數(shù)據(jù)和設(shè)置參數(shù)等,就必須有標(biāo)識能夠區(qū)分,使得通訊方分析CAN協(xié)議幀時知道是何種類型信息的數(shù)據(jù),那么余下的5 bit就用于信息類別的區(qū)分。5bit能夠區(qū)分32種信息類別。接收到CAN協(xié)議幀,W77E58B讀SJA 1000的接收緩沖器的RDIDO, RDIDI和RDDATAO-RDDATA8,分析接收的數(shù)據(jù)信息。工作人員在監(jiān)控軟件的查詢或設(shè)置子菜單中填寫從機的寄存器信息發(fā)送到嵌入式網(wǎng)絡(luò)設(shè)備服務(wù)器聯(lián)網(wǎng)系統(tǒng)上,嵌入式系統(tǒng)分析此信息,根據(jù)從機的寄存器信息表,填充Modbus請求數(shù)據(jù)幀,發(fā)送到對應(yīng)的從機設(shè)備。當(dāng)從機設(shè)備返回Modbus應(yīng)答數(shù)據(jù)幀后,分析數(shù)據(jù)幀,提取寄存器的數(shù)據(jù)信息,將信息回復(fù)給工作人員。實際上,監(jiān)控軟件中工作人員發(fā)送的查詢信息,例如A相電流,從機接收的是該信息所對應(yīng)的內(nèi)部寄存器地址。兩者之間的對應(yīng)轉(zhuǎn)換,由嵌入式網(wǎng)絡(luò)設(shè)備服務(wù)器聯(lián)網(wǎng)系統(tǒng)根據(jù)從機設(shè)備的寄存器信息表完成。5 創(chuàng)新點總結(jié)

      本文的創(chuàng)新點是提出了嵌入式網(wǎng)絡(luò)設(shè)備聯(lián)網(wǎng)服務(wù)器實現(xiàn)方案,根據(jù)嵌入式網(wǎng)絡(luò)設(shè)備的性能特點和實際工控領(lǐng)域的環(huán)境要求,提出了一種以單片機機為核心CPU的,適合嵌入式網(wǎng)絡(luò)設(shè)備的聯(lián)網(wǎng)服務(wù)器架構(gòu)。實現(xiàn)了現(xiàn)場總線和以太網(wǎng)相結(jié)合的“管控一體化”。設(shè)計的嵌入式系統(tǒng)通過實驗,測試和驗證了系統(tǒng)的安全性、可靠性和實時性性能。參考文獻: 陳俊,余兵.工業(yè)以太網(wǎng)絡(luò)技術(shù)的應(yīng)用與發(fā)展[J].PLC & FA, 2006, 3 2 韓黨群.CAN控制器SJA 1000及其應(yīng)用[J].電子技術(shù)應(yīng)用,2003, 1:66-69 3 部寬明.CAN總線原理和應(yīng)用系統(tǒng)設(shè)計[M].北京:北京航空航天大學(xué)出版社,1996, 10 4 張曦煌 基于嵌入式Web的遠程儀表接口[J],微計算機信息,2005,12-1:147-149。

      第二篇:基于ARM嵌入式的遠程監(jiān)控系統(tǒng)設(shè)計

      基于ARM嵌入式的遠程監(jiān)控系統(tǒng)設(shè)計

      摘要:基于ARM 內(nèi)核的嵌入式系統(tǒng)在遠程監(jiān)控報警系統(tǒng)中的設(shè)計實現(xiàn)與應(yīng)用。核心部分主要包 括 ARM 嵌入式平臺設(shè)計及 μC-OS 嵌入式實時操作系統(tǒng)移植;人機交互界面 μCGUI 的設(shè)計與實現(xiàn);遠程通訊及自動報警等;系統(tǒng)的設(shè)計還考慮到了擴展性和通用性以及與其他監(jiān)控設(shè)備無縫連接等問題。

      關(guān)鍵詞: ARM;μC/OS-II;μCGUI;遠程監(jiān)控 引言

      監(jiān)控系統(tǒng)現(xiàn)已成為現(xiàn)代化生產(chǎn)、生活中不可缺少的重要組成部分。目前,監(jiān)控系列產(chǎn)品 種類繁多,大部分廣泛應(yīng)用于交通、醫(yī)院、銀行、家居、學(xué)校等安防領(lǐng)域。

      隨著嵌入式系統(tǒng)的出現(xiàn),尤其是基于 ARM 內(nèi)核芯片的嵌入式系統(tǒng)的出現(xiàn),使得監(jiān)控系統(tǒng)的應(yīng)用領(lǐng)域更為廣泛。本文設(shè)計的遠程監(jiān)控報警系統(tǒng)除了作為安防功能外,還可以應(yīng)用于以下領(lǐng)域:通訊領(lǐng)域:遠程通訊、視頻會議和視頻點播、證券、遠程教育等。醫(yī)療領(lǐng)域:病房監(jiān)護、遠程診斷等。工業(yè)領(lǐng)域:遠程設(shè)備診斷、維護、維修,遠程生產(chǎn)監(jiān)控等。家用領(lǐng)域:家用電器遠程維護;電、氣、火等重大事故自動報警等。

      系統(tǒng)設(shè)計

      2.1系統(tǒng)組成

      本文設(shè)計的遠程監(jiān)控系統(tǒng)主要由中心控制器、數(shù)據(jù)終端、傳感器模塊、通訊模塊、接口模塊等幾部分組成。系統(tǒng)組成圖(如圖 1)。

      2.2中心控制器 系統(tǒng)核心負責(zé)數(shù)據(jù)采集判斷處理。為了提高系統(tǒng)工作效率,這里使用的是三星公司的 S3C2410芯片作為處理器。S3C2410 芯片是一款高性價比的 ARM 芯片,非常適合作手機、PDA 等手持設(shè)備。主要特性包括: ARM920T 內(nèi)核,最高工作頻率 203MHz,LCD 控制器:可直接驅(qū)動真彩液晶屏,最高支持 2048×1024 真彩液晶屏,2 個 USB Host端口,1 個USB Device端口,支持 Nand flash 啟動模式,SD 卡接口,UART、IIC、SPI、IIS 等多種類 型串行接口,4 通道DMA。

      本文的監(jiān)控系統(tǒng)的 CPU 核心部分使用的是標(biāo)準(zhǔn)的 SO-DIMM200 金手指接口,便于后期維護和升級。如果該監(jiān)控系統(tǒng)的使用環(huán)境較為苛刻,可以將 CPU替換為S3C2440芯片。S3C2440完全兼容S3C2410全部特性(注意:芯片引腳不完全兼容)。與S3C2410芯片相比,S3C2440的性能更為優(yōu)越:最高工作頻率可達500MHz,內(nèi)部集成CMOS攝像頭接口,但價格較昂貴。

      圖1 監(jiān)控系統(tǒng)組成框圖

      2.3數(shù)據(jù)終端 數(shù)據(jù)終端的主要功能是對監(jiān)控數(shù)據(jù)進行分析、處理,及時將數(shù)據(jù)匯報給監(jiān)控人員。同時,監(jiān)控人員可以根據(jù)現(xiàn)場情況,使用數(shù)據(jù)終端對監(jiān)控的設(shè)備進行遠程控制。數(shù)據(jù)終端最大優(yōu)勢 就是安全、可靠、便于攜帶。一般情況下為了節(jié)約成本,可以將手機、PDA 等移動通訊設(shè)備作為數(shù)據(jù)終端使用。但是如果作為對高危環(huán)境或精密儀器的監(jiān)控系統(tǒng),數(shù)據(jù)終端需要專業(yè)定制。這里使用的是中心控制器的作為數(shù)據(jù)終端,即中心控制器既作為數(shù)據(jù)采集發(fā)送中心,也可數(shù)據(jù)接收處理中心使用。

      2.4通訊模塊

      通訊模塊主要負責(zé)遠程數(shù)據(jù)通訊。帶有 RS232/485、GPRS、CDMA 等一種或多種通訊 方式。需要根據(jù)現(xiàn)場環(huán)境和用戶需要進行定制。通訊模塊與控制器通過接口總線連接,連接 方式為 TTL/RS232/RS485 等。

      2.5傳感器模塊

      傳感器模塊的主要功能是感知外部環(huán)境,對外部環(huán)境進行實時監(jiān)測。由人體紅外傳感器、振動傳感器、超聲波傳感器、可燃氣體傳感器、溫度傳感器、濕度傳感器等一種或多種傳感 器組成。可根據(jù)現(xiàn)場監(jiān)測環(huán)境不同進行定制。

      2.6接口模塊

      接口模塊主要作為系統(tǒng)擴展功能使用,將控制器的 A/D 轉(zhuǎn)換、I2C、SPI 等多種接口進行 外部擴展。接口模塊沒有特定的功能,但可以根據(jù)需要與其他設(shè)備連接,例如可以與工業(yè)儀 器儀表或設(shè)備連接,實時對儀器或設(shè)備進行監(jiān)控。

      接口模塊雖然不是監(jiān)控系統(tǒng)的主要部分,但是對于整個系統(tǒng)來說卻是不可缺少。因為本文的監(jiān)控系統(tǒng)主要考慮到了系統(tǒng)的可擴展性和與其它系統(tǒng)無縫連接。通過接口模塊可以很方 便的對監(jiān)控系統(tǒng)進行升級,并且可以實現(xiàn)與其他系統(tǒng)或設(shè)備的無縫連接。這也是本系統(tǒng)區(qū)優(yōu) 于其他監(jiān)控系統(tǒng)的主要功能。軟件設(shè)計

      3.1工作軟件

      系統(tǒng)的軟件設(shè)計較為復(fù)雜,這里只給出了整個工作軟件流程(如圖 2)。

      圖2 軟件流程圖

      3.2操作系統(tǒng)移植

      S3C2410 芯片支持多種嵌入式操作系統(tǒng),如 WINCE、uCLinux 等。但考慮到監(jiān)控系統(tǒng) 的實時性要求,這里使用的是 μC/OS-II 嵌入式實時操作系統(tǒng)。μC/OS-II 是一個源碼公開、可移植、可固化、可裁剪、占先式的實時多任務(wù)操作系統(tǒng)。其絕大部分源碼是用 ANSI C 寫的。整個嵌入式系統(tǒng)分為兩大層:硬件層和軟件層。這里主要研究軟件層的架構(gòu)。軟件層主要分為四個部分:實時操作系統(tǒng)內(nèi)核,與處理器相關(guān)部分,與應(yīng)用程序相關(guān)部分,用戶的應(yīng)用程序。移植 μC/OS-II 系統(tǒng)需要修改的文件有:應(yīng)用程序相關(guān)文件: OS_CFG.H INCLUDE.H; 處理器相關(guān)文件: OS_CPU.H、OS_CPU_A.ASM、OS_CPU_C.C。

      3.2.1 與處理器相關(guān)的代碼

      這是移植中最關(guān)鍵的部分。內(nèi)核將應(yīng)用系統(tǒng)和底層硬件有機的結(jié)合成一個實時系統(tǒng),要 使同一個內(nèi)核能適用于不同的硬件體系,就需要在內(nèi)核和硬件之間有一個中間層,這就是與 處理器相關(guān)的代碼。處理器不同。這部分代碼也不同。我們在移植時需要自己移植這部分代 碼。

      a)OS_CPU.H

      包括了用#define 定義的與處理器相關(guān)的常量,宏和類型定義,有系統(tǒng)數(shù)據(jù)類型定義,棧 增長方向定義,關(guān)中斷和開中斷定義,系統(tǒng)軟中斷的定義等等。

      b)OS_CPU_A.ASM

      這部分需要對處理器的寄存器進行操作,所以必須用匯編語言來編寫。包括四個子函數(shù): OSStartHighRdy(),OSCtxSw(),OSIntCtxSw(),OSTickISR()。OSStartHighRdy()在多任務(wù)系統(tǒng)啟動函數(shù) OSStart()中調(diào)用。完成的功能是:設(shè)置系統(tǒng)運行標(biāo)志位 OSRunning = TRUE;將就緒表中最高優(yōu)先級任務(wù)的棧指針 Load 到 SP 中,并強制中斷返回。這樣就緒的最高優(yōu)先級任務(wù)就如同從中斷里返回到運行態(tài)一樣,使得整個系統(tǒng)得以運轉(zhuǎn)。OSCtxSw()在任務(wù)級任 務(wù)切換函數(shù)中調(diào)用的。任務(wù)級切換是通過 SWI 或者 TRAP 人為制造的中斷來實現(xiàn)的。ISR 的向 量地址必須指向 OSCtxSw()。這一中斷完成的功能:保存任務(wù)的環(huán)境變量(主要是寄存器的值, 通過入棧來實現(xiàn)),將當(dāng)前 SP 存入任務(wù) TCB 中,載入就緒最高優(yōu)先級任務(wù)的 SP,恢復(fù)就緒最高優(yōu)先級任務(wù)的環(huán)境變量,中斷返回。這樣就完成了任務(wù)級的切換。OSIntCtxSw()在退出中斷 服務(wù)函數(shù) OSIntExit()中調(diào)用,實現(xiàn)中斷級任務(wù)切換.由于是在中斷里調(diào)用,所以處理器的寄存器入棧工作已經(jīng)做完,就不用作這部分工作了。具體完成的任務(wù);調(diào)整棧指針(因為調(diào)用函數(shù)會使任務(wù)棧結(jié)構(gòu)與系統(tǒng)任務(wù)切換時堆棧標(biāo)準(zhǔn)結(jié)構(gòu)不一致),保存當(dāng)前任務(wù) SP,載入就緒 最高優(yōu)先級任務(wù)的 SP,恢復(fù)就緒最高優(yōu)先級任務(wù)的環(huán)境變量,中斷返回。這樣就完成了中斷級任務(wù)切換。OSTickISR()系統(tǒng)時鐘節(jié)拍中斷服務(wù)函數(shù),這是一個周期性中斷,為內(nèi)核提供

      時鐘節(jié)拍。頻率越高系統(tǒng)負荷越重。其周期的大小決定了內(nèi)核所能給應(yīng)用系統(tǒng)提供的最小時 間間隔服務(wù)。一般只限于 ms 級(跟 MCU 有關(guān)),對于要求更加苛刻的任務(wù)需要用戶自己建立中斷來解決.該函數(shù)具體內(nèi)容:保存寄存器(如果硬件自動完成就可以省略),調(diào) OSIntEnter(),調(diào)用 OSTimeTick(),調(diào)用 OSIntExit(),恢復(fù)寄存器,中斷返回。

      c)OS_CPU_C.C

      該文件中共定義了 6 個函數(shù),但是最重要的是 OSTaskStkInit().其他都是對系統(tǒng)內(nèi)核的擴展 時用的.OSTaskStkInit()是在用戶建立任務(wù)時系統(tǒng)內(nèi)部自己調(diào)用的,對用戶任務(wù)的堆棧進行初始化。使建立好的進入就緒態(tài)任務(wù)的堆棧與系統(tǒng)發(fā)生中斷并且將環(huán)境變量保存完畢時 的棧結(jié)構(gòu)一致。這樣就可以用中斷返回指令使就緒的任務(wù)運行起來。

      3.2.2與應(yīng)用相關(guān)的代碼

      這部分包括兩個文件:OS_CFG.H, INCLUDES.H。用戶根據(jù)自己的應(yīng)用系統(tǒng)來定制合適 的內(nèi)核服務(wù)功能。OS_CFG.H 來配置內(nèi)核,用戶根據(jù)需要對內(nèi)核進行定制,留下需要的部分,去掉不需要的部分,設(shè)置系統(tǒng)的基本情況。比如系統(tǒng)可提供的最大任務(wù)數(shù)量,是否定制郵箱服務(wù),是否需要系統(tǒng)提供任務(wù)掛起功能,是否提供任務(wù)優(yōu)先級動態(tài)改變功能等等。INCLUDES.H 系統(tǒng)頭文件,整個實時系統(tǒng)程序所需要的文件,包括了內(nèi)核和用戶的頭文件。

      3.3用戶圖形接口

      雖然 μC/OS-II 操作系統(tǒng)具有很高的實時性,但不像 WINCE、uCLinux 等操作系統(tǒng)那樣 有良好的圖形界面支持。所以,在使用液晶和觸摸屏的情況下需要移植用戶圖形接口程序。這里使用的是 μC/GUI。μC/GUI 是一個軟件模塊集合,通過該模塊可以在我們的嵌入式產(chǎn)品 中加入用戶圖形接口(GUI)。μC/GUI 具有很高的執(zhí)行效率,并且與處理器和 LCD 控制器相 獨立。該模塊可以工作在單任務(wù)或者多任務(wù)環(huán)境,可以支持不同大小的顯示方式。

      通過 μC/GUI 我們可以很方便的在液晶屏繪制圖形和界面。如果需要多種字體支持,必 須自己將相應(yīng)的字體字庫加入到 μC/GUI 中。為了避免出現(xiàn)亂碼,盡量使用 GB2312 國標(biāo)字庫。

      3.4關(guān)于字庫的兼容性問題

      我們國內(nèi)通常使用的漢字字庫是 GB 碼,但國際上使用的是 UNICODE 碼,所以如果數(shù)據(jù)終端使用的是手機、PDA 等移動通信設(shè)備,那么在數(shù)據(jù)發(fā)送前必須進行字碼轉(zhuǎn)換,即 GB 碼 轉(zhuǎn)換為 UNICODE 碼或者 UNICODE 碼轉(zhuǎn)換為 GB 碼。由于 GB 碼與 UNICODE 碼在排列組合上沒有任何規(guī)律,所以通常字碼轉(zhuǎn)換的方法就是 查表法。

      4結(jié)束語

      基于 ARM9 嵌入式系統(tǒng)的遠程監(jiān)控系統(tǒng)與以往的監(jiān)控系統(tǒng)不同,高性能的處理器芯片大大提高了系統(tǒng)的性能。使監(jiān)控系統(tǒng)能夠工作在比較惡劣的環(huán)境中。并且在設(shè)計上充分考慮到了系統(tǒng)的可擴展性和兼容性問題,實現(xiàn)了本系統(tǒng)與其他系統(tǒng)的無縫連接。以滿足不同工作環(huán) 境的需要。

      作者創(chuàng)新觀點:本文設(shè)計的遠程監(jiān)控系統(tǒng)應(yīng)用范圍更廣,更靈活、方便。通過各個功能模塊 的不同組合,可以十分方便快速的應(yīng)用于各個領(lǐng)系域,真正實現(xiàn)智能化、自動化且具有較高 的性價比。

      第三篇:基于web的嵌入式遠程監(jiān)控系統(tǒng)

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第1頁

      共33頁

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      學(xué)生:劉 仁

      指導(dǎo)老師:蔡 碩

      摘要: 隨針對當(dāng)前國內(nèi)國外嵌入式服務(wù)器技術(shù)研究和發(fā)展情況的分析,本報告提出了將 WEB 服務(wù)器、嵌入式系統(tǒng)以及當(dāng)前的一些嵌入式實驗板板載功能進行融合的設(shè)計思想。設(shè)計了結(jié)合 WEB 服務(wù)器技術(shù)的嵌入式監(jiān)控系統(tǒng)。該系統(tǒng)具有瀏覽交互式網(wǎng)頁,對嵌入式平臺進行監(jiān)視和控制等功能。通過本套嵌入式WEB 服務(wù)器系統(tǒng),用戶可以通過 HTTP 協(xié)議方便的訪問相應(yīng)的嵌入式平臺進行有效監(jiān)視的同時還可以進行實時的有效控制。該系統(tǒng)對硬件要求極低、響應(yīng)速度快、安全性好、可擴展性強等優(yōu)點,具有較高的實際應(yīng)用價值。該系統(tǒng)在智能家居、嵌入式組網(wǎng)等方面的應(yīng)用將有較廣闊的發(fā)展前途。

      關(guān)鍵詞:ARM 嵌入式系統(tǒng);嵌入式 web 監(jiān)控;boa 服務(wù)器;CGI 編程;Linux 操作系統(tǒng)

      關(guān)鍵詞:自動化、奏樂器、VHDL、數(shù)字電路

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第2頁

      共33頁

      Abstract: According to the analysis of the researches about the status of the mbeddedserver of the world.We rise a design of a embedded internet control system basedon the Web service which integrates the web server,embedded technology and thefunctions on the embedded experiment Board.This system has the function of browsing the web pages,monitoring theembedded Board and so on.With this embedded WEB server,the users can watchthe embedded system conveniently according the HTTP protocol.At the sametime the users can also monitor the ystem.This system have a lot of longtageslike a low request of the hardware,limited time of response and a stable status.Wewill see that this kind of system used in the application of intelligent familyelectronics,embedded neting and so on would have a good development.Keywords: ARM Embedded System;Embedded Web Server System;Boa Server;CGI Programing;Linux Operating System

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第3頁

      共33頁

      引 言

      嵌入式系統(tǒng)課程設(shè)計是本專業(yè)在學(xué)習(xí)完 C 語言、LINUX 操作系統(tǒng)、嵌入式系統(tǒng)原理與接口設(shè)計、嵌入式操作系統(tǒng)原理之后的專業(yè)課程設(shè)計,屬于專業(yè)課內(nèi)容。通過課程設(shè)計建立嵌入式系統(tǒng)主體環(huán)節(jié),嵌入式系統(tǒng)的最小結(jié)構(gòu)和系統(tǒng)應(yīng)用設(shè)計基本技能,培養(yǎng)分析和解決一些簡單的實際問題的能力,為今后畢業(yè)設(shè)計奠定基礎(chǔ)。隨著嵌入式技術(shù)的發(fā)展和高速寬帶網(wǎng)絡(luò)的普及, 利用網(wǎng)絡(luò)實現(xiàn)遠程監(jiān)控已為人們廣泛接受, 嵌入式網(wǎng)絡(luò)監(jiān)控技術(shù)正是在此條件下逐步發(fā)展成熟起來的。用戶使用 Web 瀏覽器, 通過以太網(wǎng)遠程訪問內(nèi)置 Web 服務(wù)器的監(jiān)控攝像機, 不但可以實現(xiàn)對現(xiàn)場的遠程視頻監(jiān)控, 而且可以向監(jiān)控現(xiàn)場發(fā)送指令。在整個系統(tǒng)的實現(xiàn)過程中, 嵌入式 Web 服務(wù)器起著十分重要的作用。本課題就是基于該項技術(shù),最終編程實現(xiàn)通過網(wǎng)絡(luò)控制下位機嵌入式控制器的電機啟動和停止。

      1.1研究目的和意義

      1、通過嵌入式課程設(shè)計,熟練掌握 C 語言的編程方法?;?WEB 的遠程監(jiān)控的實現(xiàn),CGI 的編寫和使用,將理論聯(lián)系到實踐中去,提高我們的動腦和動手的能力。

      2、通過基于 WEB 的嵌入式遠程監(jiān)控系統(tǒng)的設(shè)計,掌握 S3C2410 實驗箱,直流電機的工作原理,BOA 服務(wù)器的使用,CGI 的使用和簡單程序的編寫及調(diào)試方法,最終提高我們的動手實踐能力。

      3、本課題的研究目的是用 BOA 服務(wù)器、CGI、IE 瀏覽器設(shè)計一個通過 IE 瀏覽器監(jiān)控電機的系統(tǒng),能夠通過兩個簡單的按鍵對電機進行啟動和停止的控 3

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第4頁

      共33頁

      制,并能夠在 IE 瀏覽器上看到電機的當(dāng)前狀態(tài)。

      4、由于基于 WEB 的嵌入式遠程監(jiān)控系統(tǒng)將成為今后遠程監(jiān)控技術(shù)發(fā)展的主流方向,所以需要設(shè)計出簡單實用,讓人們更滿意的產(chǎn)品。

      1.2 本設(shè)計任務(wù)和主要內(nèi)容

      1.基本要求

      本課題主要設(shè)計和研究基于WEB的嵌入式遠程監(jiān)控系統(tǒng),要求在保證可靠運行的前提下,電路設(shè)計盡量簡潔緊湊,以減小成本、提高系統(tǒng)的效率和安全性。

      2.應(yīng)解決的問題 1)設(shè)計系統(tǒng)網(wǎng)絡(luò)方案

      2)分析網(wǎng)絡(luò)程序結(jié)構(gòu)和應(yīng)用程序的使用方法 3)編程實現(xiàn)嵌入式系統(tǒng)服務(wù)器功能 4)編程實現(xiàn)嵌入式系統(tǒng)聯(lián)網(wǎng)功能

      5)編程實現(xiàn)通過網(wǎng)絡(luò)控制下位機嵌入式控制器的電機啟動和停止

      3.?dāng)U展功能

      演奏時可以通過按鍵選擇是手動演奏還是自動演奏,手動演奏是通過按鍵進行簡易樂曲的演奏。

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第5頁

      共33頁總體方案設(shè)計

      2.1 整體方案設(shè)計

      系統(tǒng)總體設(shè)計是基于嵌入式系統(tǒng)和 WEB 服務(wù)器結(jié)合的思想開發(fā)的,其網(wǎng)絡(luò)拓撲結(jié)構(gòu)如圖 2.1 所示

      圖 2.1 系統(tǒng)網(wǎng)絡(luò)拓撲圖

      針對本次課程設(shè)計提出的系統(tǒng)設(shè)計如圖 2.2 所示

      圖 2.2 系統(tǒng)方案框圖

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第6頁

      共33頁

      2.2 硬件系統(tǒng)設(shè)計

      2.3.1 核心處理器的選擇

      核心處理芯片需要完成處理和支持整個系統(tǒng)的功能需求,通過運行 BOA 服務(wù)器要實施的接收來自各個客戶端的請求和信息,并根據(jù)獲得的請求和信息進行相應(yīng)的后臺處理以及信息的反饋。為完成上述功能,實現(xiàn)服務(wù)器正常運行,對處理芯片進行選型,對比現(xiàn)有處理芯片的優(yōu)缺點,選擇 ARM9 S3C2410X 芯片作為設(shè)計開發(fā)嵌入式服務(wù)器系統(tǒng)的核心處理芯片。S3C2410X 微處理器是一款由 Samsung 公司為手持設(shè)備設(shè)計的低功耗、高集成度的基于ARM920T 核的微處理器,為了降低系統(tǒng)總成本和減少外圍器件,這款芯片還集成了以下部件:16KB 指令 Cache、16KB 數(shù)據(jù) Cache、MMU、外部存儲器控制器、LCD 控制器、NAND FLASH 控制器、4 個 DMA 通道、3 個 UART 通道、1 個 IIC 總線控制器、1 個 IIS總線控制器、4 個 PWM 定時器、1 個內(nèi)部定時器、通用 IO 口、實時時鐘、8 通道 10 位ADC 和觸摸屏接口、USB 主、USB 從、SD/MMC 卡接口等。

      2.3 軟件環(huán)境選擇

      2.3.1 操作系統(tǒng)的選擇

      當(dāng)選定了硬件系統(tǒng)后,為了配合硬件達到系統(tǒng)的最優(yōu)控制要求,對市面上常用的嵌入式系統(tǒng)進行分析比較。

      (1)價格比較:Linux 是完全免費的操作系統(tǒng),只需遵循 GPL 聲明,不需支付任何費用;WinCE 是微軟的商用嵌入式操作系統(tǒng),使用它需要支付 WinCE 及其開發(fā)環(huán)境的費用,開發(fā)出來的每套產(chǎn)品也需交納一定費用。uc/os—II 系統(tǒng),可以免費用于學(xué)習(xí)或科研,但開發(fā)商使用產(chǎn)品或銷售都是收費的。

      (2)開放性比較:Linux 是源代碼完全開放的操作系統(tǒng),可以自由下載,并且

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第7頁

      共33頁

      在遵循GPL 聲明的前提下可以自由地修改、移植,為系統(tǒng)的開發(fā)和調(diào)試帶來極大的便利;winCE是部分源碼開放的商用操作系統(tǒng),如果要修改其中的代碼,需獲得微軟公司的授權(quán);uc/os—II 也是開放的實時操作系統(tǒng)。

      (3)文件系統(tǒng)的比較:Linux 支持絕大部分文件系統(tǒng),只需選擇相應(yīng)的文件系統(tǒng)即可;

      WinCE 僅支持 Windows 系列的 FAT16、有限文件系統(tǒng);uc/os—II 本身沒有包括文件系統(tǒng),需購買或移植。Linux 與 ARM 處理器從以上可以看出,Linux 系統(tǒng)在諸多方面都存在優(yōu)勢,而且本身的 ARM 處理器與 Linux 也有著緊密的聯(lián)系。因此采用 Linux 操作系統(tǒng)。2.3.2 服務(wù)器的選擇

      典型的嵌入式 Web 服務(wù)器有 Boa 和 thttpd 兩種,它們和 Apache 等高性能的 Web 服務(wù)器主要的區(qū)別在于它們一般是單進程服務(wù)器,只有在完成一個用戶請求后才能響應(yīng)另一個用戶的請求,而無法并發(fā)響應(yīng),但這在嵌入式設(shè)備的應(yīng)用場合里已經(jīng)足夠了。Boa 是一個非常小巧的 Web 服務(wù)器,可執(zhí)行代碼只有約 60KB。它是一個單任務(wù) Web服務(wù)器,只能依次完成用戶的請求,而不會 fork 出新的進程來處理并發(fā)連接請求。但 Boa支持 CGI,能夠為 CGI 程序 fork 出一個進程來執(zhí)行。Boa 的設(shè)計目標(biāo)是速度和安全,在其站點公布的性能測驗中,Boa 的性能要好于 Apache 服務(wù)器。經(jīng)過上述的對比和判斷,選擇Boa 作為系統(tǒng)的嵌 入式服務(wù)器。

      綜合以上的討論以及選擇,根據(jù)系統(tǒng)的實際需求,最終確定了采用 S3C2410X 為核心處理器,Linux 為嵌入式操作系統(tǒng),boa 為服務(wù)器以及相應(yīng)的 http 瀏覽器的系統(tǒng)設(shè)計方案。

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第8頁

      共33頁硬件設(shè)計

      3.1 系統(tǒng)硬件平臺介紹

      我們所介紹的硬件平臺是基于 ARM 體系結(jié)構(gòu),由北京博創(chuàng)興業(yè)科技有限公司開發(fā)的UP-NetARM2410-S 實驗儀器。UP-NetARM2410-S 的 CPU 為 ARM920T 內(nèi)核的三星S3c2410 芯片,由于有 MMU(內(nèi)存管理單元)可以運行標(biāo)準(zhǔn)的 ARM-LINUX 內(nèi)核。通過這個平臺,我們可以實現(xiàn)嵌入式 LINUX 中的針對無 MMU 的開發(fā)過程。

      3.2 s3c2410 芯片介紹

      圖 3.1 芯片結(jié)構(gòu)圖

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第9頁

      共33頁

      3.3 ARM 處理器的外圍設(shè)備

      3.3.1 電源電路

      設(shè)備提供 12v 的電源,經(jīng) LM1085-3.3V 和 AS1117-1.8V 分別得到 3.3V 和 1.8V 的工作電壓。開發(fā)板上的芯片多數(shù)使用了 3.3V 電壓,而 1.8V 是供給 S3C2410 內(nèi)核使用的。5V 電壓供給 LCD、電機、總線等電路使用。

      圖 3.2 電源電路

      3.3.2 硬件復(fù)位電路

      硬件復(fù)位電路由IMP811T構(gòu)成,實現(xiàn)對電源電壓的監(jiān)控和手動復(fù)位操作。2410-S主板復(fù)位電路設(shè)置專用邏輯:IMP811T 的復(fù)位電平可以使CPU JTAG(nTRST和板級系統(tǒng)(nRESET)全部復(fù)位;來自仿真器的ICE_nSRST 信號只能使板級復(fù)位;來自仿真器的ICE_nTRST 可以使JTAG(nTRST)復(fù)位,通過跳線選擇是否使板級nRESET復(fù)位。nRESET反相后得到RESET 信號。硬件復(fù)位電路如圖3.3所示

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第10頁

      共33頁

      圖3.3 硬件復(fù)位

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第11頁

      共33頁軟件設(shè)計

      4.1 設(shè)計思想

      基于 web 的嵌入式監(jiān)控系統(tǒng)設(shè)計主要的功能有簡單的網(wǎng)頁瀏覽,實現(xiàn)簡單應(yīng)用功能(客戶端與服務(wù)器的交互)以及服務(wù)器端的控制功能。因此軟件的設(shè)計分為三個部分:boa 服務(wù)器的搭建、應(yīng)用程序設(shè)計和驅(qū)動程序的加載。

      4.2 BOA 服務(wù)器的簡介與搭建

      4.2.1 嵌入式 Web 服務(wù)器 Boa 的特點

      Boa 是一款單任務(wù)的 HTTP 服務(wù)器, 與其他傳統(tǒng)的 Web 服務(wù)器不同的是當(dāng)有連接請求到來時, 它并不為每個連接單獨創(chuàng)建進程, 也不通過復(fù)制自身進程來處理多鏈接, 而是通過建立 HTTP 請求列表來處理多路 HTTP 連接請求, 同時它只為 CGI 程序創(chuàng)建新的進程,這樣就在最大程度上節(jié)省了系統(tǒng)資源, 這對嵌入式系統(tǒng)來說至關(guān)重要。同時它還具有自動生成目錄、自動解壓文件等功能, 因此 Boa 具有很高的 HTTP 請求處理速度和效率, 在嵌入式系統(tǒng)中具有很高的應(yīng)用價值。4.2.2 Boa 的功能實現(xiàn)

      嵌入式 Web 服務(wù)器 Boa 和普通 Web 服務(wù)器一樣, 能夠完成接收客戶端請求、分析請求、響應(yīng)請求、向客 戶端返回請求結(jié)果等任務(wù)。它的工作過程主要包括:

      (a)完成 Web 服務(wù)器的初始化工作, 如創(chuàng)建環(huán)境變量、創(chuàng)建 TCP 套接字、綁定端口、開始偵聽、進入循環(huán)結(jié)構(gòu), 以及等待接收客戶瀏覽器的連接請求;

      (b)當(dāng)有客戶端連接請求時,Web 服務(wù)器負責(zé)接收客戶端請求, 并保存相關(guān)請求信息;

      (c)在接收到客戶端的連接請求之后,分析客戶端請求, 解析出請求的方法、基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第12頁

      共33頁

      URL 目標(biāo)、可選的查詢信息及表單信息, 同時根據(jù)請求做出相應(yīng)的處理;

      (d)Web 服務(wù)器完成相應(yīng)處理后, 向客戶端瀏覽器發(fā)送響應(yīng)信息, 關(guān)閉與客戶機的TCP 連接。嵌入式 Web 服務(wù)器 Boa 根據(jù)請求方法的不同,做出不同的響應(yīng)。如果請求方法為HEAD,則直接向瀏覽器返回響應(yīng)首部;如果請求方法為 GET,則在返回響應(yīng)首部的同時,將客戶端請求的 URL 目標(biāo)文件從服務(wù)器上讀出,并且發(fā)送給客戶端瀏覽器;如果請求方法為 POST,則將客戶發(fā)送過來的表單信息傳送給相應(yīng)的 CGI 程序,作為 CGI 的參數(shù)來執(zhí)行 CGI 程序,并將執(zhí)行結(jié)果發(fā)送給客戶端瀏覽器。Boa 的功能實現(xiàn)也是通過建立連接、綁定端口、進行偵聽、請求處理等來實現(xiàn)的。4.2.3 BOA 的搭建與移植

      (1)準(zhǔn)備源代碼、解壓軟件包,安裝源代碼到 boa 網(wǎng)站 http://004km.cnTB0 = DCM_TCNTB0;/* less than 10ms */ TCMPB0 = DCM_TCNTB0/2;TCON &=~(0xf);TCON |=(0x2);TCON &=~(0xf);TCON |=(0x19);})在 s3c2410_dcm_ioctl 中提供調(diào)速功能接口: case DCM_IOCTRL_SETPWM: return dcm_setpwm((int)arg);應(yīng)用程序 dcm_main.c 中調(diào)用:

      ioctl(dcm_fd, DCM_IOCTRL_SETPWM,(setpwm * factor));實現(xiàn)直流電機速度的調(diào)整。a.編譯直流電機模塊 cd /arm2410s/kernel-2410s

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第20頁

      共33頁

      make menuconfig 進入 Main Menu / Character devices 菜單,選擇 DC MOTOR 為模塊加載: b.編譯內(nèi)核模塊: make dep make make modules 直流電機模塊的編譯結(jié)果為:

      /arm2410s/kernel-2410s/drivers/char/s3c2410-dc-motor.o c.編譯應(yīng)用程序

      cd /arm2410s/exp/basic/10_dcmotor/ make 生成 dcm_main d.掛載驅(qū)動模塊

      insmod /host/kernel-2410s/drivers/char/s3c2410-dc-motor.o e.運行程序

      mount –t nfs 192.168.0.xxx:/arm2410s /host insmod /host/kernel-2410s/drivers/char/s3c2410-dc-motor.o cd /host/exp/basic/10_dcmotor/./dcm_main 程序運行結(jié)果:直流電機轉(zhuǎn)動 1 秒,停轉(zhuǎn) 1 秒。由于是根據(jù)原有變速程序稍做改動完成的程序,所以遇到的問題不是很多,經(jīng)過幾次嘗試就得到了期望的結(jié)果。

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第21頁

      共33頁

      5.3 調(diào)試結(jié)果分析

      5.3.1 調(diào)試結(jié)果

      1、靜態(tài)網(wǎng)頁

      圖 5.1 靜態(tài)網(wǎng)頁

      2、乘法網(wǎng)頁

      圖 5.2 乘法網(wǎng)頁

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第22頁

      共33頁

      3、電機控制網(wǎng)頁

      圖 5.3 電機控制網(wǎng)頁

      圖 5.4 返回結(jié)果

      5.3.2 結(jié)果分析

      經(jīng)過 x86 下的調(diào)試和基于 ARM 的下載與調(diào)試后,系統(tǒng)能夠?qū)崿F(xiàn)靜態(tài)網(wǎng)頁瀏覽,簡單人機交互以及電機控制的功能,系統(tǒng)工作穩(wěn)定,響應(yīng)速度快,組網(wǎng)方便快捷,如果與 DNS 服務(wù)器或者 WINS 服務(wù)器相結(jié)合即可實現(xiàn)用主機名就能登錄相應(yīng)平臺的功能。

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第23頁

      共33頁設(shè)計總結(jié)

      經(jīng)過三個周的學(xué)習(xí)與努力,經(jīng)過系統(tǒng)分析、方案論證、硬件和軟件設(shè)計、調(diào)試 等階段完成了基于 web 的嵌入式遠程監(jiān)控系統(tǒng)的設(shè)計制作。在這三個周的課程設(shè)計中,我得到了老師和同學(xué)很大的幫助,有時候覺得進行不下去了,老師或同學(xué)一句話就能讓我茅塞頓開。即使聽不懂,他們也會耐心的講解。

      在系統(tǒng)的設(shè)計制作過程中,確實遇到了各種各樣的問題,如調(diào)試思路正確但是沒有能夠進行找到合適的方法進行進一步的實驗,設(shè)計中對于程序的編寫以及目錄結(jié)構(gòu)的認知上存在偏差,其主要原因還是基礎(chǔ)功不扎實,把握系統(tǒng)的能力不足,這為我們以后的學(xué)習(xí)和工作提了一個醒。在問題的解決過程中,也提高了組員的動手動腦能力,學(xué)到了許多在書本上學(xué)不到的知識。在具體的設(shè)計當(dāng)中解決了諸如 boa 服務(wù)器的搭建,C 程序的修改及 CGI編程的理解,程序的調(diào)試和系統(tǒng)的整體認識等問題,小組成員收獲很大。

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第24頁

      共33頁

      致謝

      在這次課程設(shè)計中,學(xué)校和學(xué)院給予了大力的支持,提供了與設(shè)計有關(guān)的環(huán)境,方便了課程設(shè)計的順利進行。在這其中我確實學(xué)到了很多知識,在此僅代表個人衷心的感謝學(xué)校和學(xué)院的大力支持。本論文是在指導(dǎo)老師蔡爍的悉心指導(dǎo)和嚴(yán)格要求下完成的。在整個課程設(shè)計過程中,蔡爍老師時時督促和引導(dǎo),并在設(shè)計過程中進行了方向指導(dǎo),在總體方向不出錯的基礎(chǔ)上,施展自己的所學(xué),發(fā)揮個人的所長。他不僅在學(xué)習(xí)上和生活上給予了我們多方面的指導(dǎo)和無微不至的關(guān)懷,而且他淵博的學(xué)識、嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、孜孜不倦的工作作風(fēng)和寬以待人的處事風(fēng)格使我終身受益,并且還從中學(xué)會了分析問題和解決問題的方法此外,在本次設(shè)計過程中,還得到了其他老師和的熱情關(guān)心和幫助,值此論文完成之際,謹(jǐn)向老師表示崇高的敬意和最誠摯的謝意。

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第25頁

      共33頁

      參考文獻

      [1]鄭靈翔編著 《嵌入式 LINUX 系統(tǒng)設(shè)計》 北京航空航天大學(xué) 2008 年 [2]孫紀(jì)坤、張小全編著 《嵌入式 LINUX 系統(tǒng)開發(fā)技術(shù)詳解-基于 ARM》人民郵電出版社 2007.9、[3]王進德 編著 《嵌入式 LINUX 程序設(shè)計與應(yīng)用案例》 中國電力出版社 2007.5 [4]鄭慕德 編著 《嵌入式微型計算機系統(tǒng)實例教程-ARM 與 LINUX》 科學(xué)出版社2006.7 [5]劉淼 編著 《嵌入式系統(tǒng)接口設(shè)計與 LINUX 驅(qū)動程序開發(fā)》 北京航空航天大學(xué)出版社,2006.5 [6]魏洪興等編著 《嵌入式系統(tǒng)設(shè)計與實例開發(fā) II-基于 ARM9 微處理器與 LINUX 操作系統(tǒng)》 清華大學(xué)出版社 2005.12 [7]魏洪興等編著 《嵌入式系統(tǒng)設(shè)計與實例開發(fā)實驗教材 II-基于 ARM9 微處理器與LINUX 操作系統(tǒng)》清華大學(xué)出版社 2005.12 [8]金敏等編著 《嵌入式組成、原理與設(shè)計編程》 人民郵電出版社 2007.6

      基于web的嵌入式遠程監(jiān)控系統(tǒng)

      第26頁

      共33頁

      附錄 1 主要程序清單

      乘法網(wǎng)頁的HTML表單: 測試

      ?測試

      請在下面填入乘數(shù)和被乘數(shù),按下確定后可以看到結(jié)果

      第四篇:基于嵌入式Web的遠程監(jiān)控系統(tǒng)設(shè)計

      基于嵌入式Web的遠程監(jiān)控系統(tǒng)設(shè)計

      摘 要:本文結(jié)合機房環(huán)境設(shè)備的管理需要,分析了遠程監(jiān)控系統(tǒng)的特點,提出基于嵌入式Web服務(wù)器的遠程監(jiān)控系統(tǒng)設(shè)計思路、體系架構(gòu)方法,并對基于OPC技術(shù)的互聯(lián)與基于嵌入式Web服務(wù)器的互聯(lián)作了簡要對比。文章結(jié)合CGI程序的設(shè)計,著重探討了嵌入式Web服務(wù)器的實現(xiàn)方法。關(guān)鍵詞:嵌入式平臺,Web服務(wù)器,遠程監(jiān)控,CGI程序

      ⒈引言

      隨著計算機和網(wǎng)絡(luò)技術(shù)的普及,計算機系統(tǒng)的數(shù)量與日俱增,計算機機房已成為各大型單位的信息樞紐。機房中的環(huán)境設(shè)備(如空調(diào)、UPS電源、配電柜、消防設(shè)備等)為網(wǎng)絡(luò)系統(tǒng)的安全運行提供了環(huán)境保障。同時,環(huán)境設(shè)備自身的安全運行,也成為機房管理的重要內(nèi)容之一。一旦機房的環(huán)境設(shè)備出現(xiàn)故障,就會直接影響計算機系統(tǒng)的正常運行,嚴(yán)重的還會造成機房內(nèi)的相關(guān)設(shè)備損壞,甚至導(dǎo)致網(wǎng)絡(luò)系統(tǒng)癱瘓[1]。因此,對機房環(huán)境設(shè)備的運行狀態(tài)進行實時監(jiān)控,是保證機房設(shè)備安全運行的關(guān)鍵措施。

      ⒉遠程監(jiān)控系統(tǒng)的需求分析

      對機房環(huán)境設(shè)備的監(jiān)控主要涉及以下幾個方面的內(nèi)容:對配電系統(tǒng)、UPS系統(tǒng)、空調(diào)系統(tǒng)工作狀態(tài)的監(jiān)視;對機房的溫濕度、生活用水和供暖制冷系統(tǒng)漏水情況等進行監(jiān)測、報警,以及對門禁系統(tǒng)、消防系統(tǒng)、保安系統(tǒng)等的管理。由于這些環(huán)境設(shè)備是連續(xù)工作的,因此要求監(jiān)控系統(tǒng)也必須是長時間連續(xù)工作的。這樣就對系統(tǒng)設(shè)計的可靠性、安全性、可維護性等方面提出了更高的要求[1],具體表現(xiàn)在以下幾個方面:

      ⑴高可靠性。要求監(jiān)控系統(tǒng)可長時間不間斷運行,無故障運行時間要長,且系統(tǒng)的維護快速簡便。

      ⑵高安全性。系統(tǒng)應(yīng)能夠提供多種安全保護措施,對異常狀態(tài)進行分析、記錄、及時報警,以便讓管理人員能夠盡快了解所發(fā)生的情況并及時處理。

      ⑶較強的實時性。監(jiān)控系統(tǒng)對信息的傳輸要及時,不能有過大的延時,否則難以及時跟蹤被監(jiān)控對象的當(dāng)前狀況。

      ⑷易用性和易維護性。機房環(huán)境設(shè)備監(jiān)控系統(tǒng),應(yīng)以GUI的方式提供良好的人機界面,便于人機交互。同時,監(jiān)控系統(tǒng)要有通用性和靈活性,即可以在對系統(tǒng)進行少量修改或擴充就可增加新的監(jiān)控項目,擴充監(jiān)測點數(shù),以滿足新的監(jiān)控要求。

      ⑸豐富的系統(tǒng)功能。要求監(jiān)控系統(tǒng)不僅能夠提供一般的報警功能,對采集的當(dāng)前數(shù)據(jù)進行記錄且保存

      歷史數(shù)據(jù),并以圖形方式對環(huán)境設(shè)備運行狀態(tài)和參數(shù)進行直觀顯示。

      實施監(jiān)控的主要方法,即是在現(xiàn)場控制器的控制之下,實時地采集數(shù)據(jù)并與預(yù)設(shè)的值進行比較,如果超出相應(yīng)的閥值則給出報警,以提示有關(guān)人員進行相應(yīng)處理。根據(jù)對環(huán)境設(shè)備監(jiān)控的位置不同,可把監(jiān)控系統(tǒng)分為本地監(jiān)控和遠程監(jiān)控兩大類。本地監(jiān)控方式往往需要派人長期現(xiàn)場值守,管理成本較高;而借助于公共的Internet或企業(yè)內(nèi)部的Intranet網(wǎng)絡(luò)實施遠程監(jiān)控則可做到無人值守,從而大幅度地節(jié)約管理成本、提高機房管理水平和效率,因此成為監(jiān)控系統(tǒng)發(fā)展的主流方向。

      ⒊遠程監(jiān)控系統(tǒng)的設(shè)計

      基于對遠程監(jiān)控系統(tǒng)的需求分析,進行系統(tǒng)設(shè)計時應(yīng)重點考慮如下幾種因素:首先,要考慮現(xiàn)場總線與數(shù)據(jù)網(wǎng)的互聯(lián)問題。由于被監(jiān)控對象的信號種類較多,所采用的現(xiàn)場總線標(biāo)準(zhǔn)各異,因此不同總線標(biāo)準(zhǔn)之間的轉(zhuǎn)換以及現(xiàn)場總線與數(shù)據(jù)網(wǎng)之間的互聯(lián)是系統(tǒng)設(shè)計時需要重點考慮的問題[2]。其次,實時性要求是遠程監(jiān)控網(wǎng)絡(luò)系統(tǒng)區(qū)別于普通網(wǎng)絡(luò)系統(tǒng)的基本特征。如果監(jiān)控系統(tǒng)的實時性得不到保障,現(xiàn)場監(jiān)控就失去了實用價值。第三,為滿足監(jiān)控系統(tǒng)的高可靠性要求,應(yīng)分別對硬件系統(tǒng)和軟件系統(tǒng)進行抗干擾設(shè)計。第四,根據(jù)遠程連接方式不同,應(yīng)采用不同的安全措施以保證信息的安全傳輸。3.1監(jiān)控系統(tǒng)的功能設(shè)計

      監(jiān)控系統(tǒng)的基本功能主要包括:現(xiàn)場數(shù)據(jù)的實時采集、發(fā)送和顯示;對采集到的數(shù)據(jù)進行處理和存儲;對數(shù)據(jù)處理的結(jié)果進行分析、判斷和報警;提供多種業(yè)務(wù)支持功能。3.1.1實時數(shù)據(jù)采集

      實時數(shù)據(jù)采集是實施系統(tǒng)監(jiān)控的基礎(chǔ)。在環(huán)境設(shè)備的監(jiān)控系統(tǒng)中,需要實時采集的數(shù)據(jù)主要包括高低壓配電系統(tǒng)及UPS電源的電壓、電流、電源開關(guān)狀態(tài)等參數(shù),空調(diào)機的冷熱水溫度、流量、送風(fēng)量、送風(fēng)溫度、新風(fēng)量等狀態(tài)參數(shù),以及機房內(nèi)部的環(huán)境參數(shù)(如溫度、濕度、水浸、煙感、門禁等)。不同的參數(shù)采用的總線標(biāo)準(zhǔn)不同(如RS232/485總線、Lonworks總線),只有把它們統(tǒng)一到TCP/IP協(xié)議上,才能實現(xiàn)真正意義上的遠程監(jiān)控。

      3.1.2報警功能

      報警是監(jiān)控系統(tǒng)的基本功能之一。監(jiān)控系統(tǒng)對采集到的數(shù)據(jù)進行分析、處理,如果發(fā)現(xiàn)相關(guān)數(shù)據(jù)超限、數(shù)據(jù)異常,則說明環(huán)境設(shè)備出現(xiàn)異常情況,此時應(yīng)發(fā)出相應(yīng)報警。設(shè)計報警功能時,需要考慮被監(jiān)控對象的自身特性、優(yōu)先級別等因素,對多個報警信號進行加權(quán)處理,以保證系統(tǒng)的所有重要報警都能被及時處理。

      3.1.3多種業(yè)務(wù)支持功能

      靈活的查詢和豐富的報表功能是對監(jiān)控系統(tǒng)基本功能的擴展。通過對設(shè)備運行狀態(tài)的實時數(shù)據(jù)、歷史數(shù)據(jù)進行對比分析,從不同角度向管理者提供設(shè)備運行和維護信息,為設(shè)備的維護、大修、更新、改造等質(zhì)量管理提供可靠依據(jù)。3.2監(jiān)控系統(tǒng)的結(jié)構(gòu)設(shè)計

      遠程監(jiān)控系統(tǒng)由現(xiàn)場數(shù)據(jù)采集設(shè)備(可以為多個設(shè)備)、本地Web服務(wù)器和遠端監(jiān)控主機三部分構(gòu)成[3]。Web服務(wù)器通過現(xiàn)場總線與本地數(shù)據(jù)采集設(shè)備直接相連,并負責(zé)把本地傳感器采集到的數(shù)據(jù)進行簡單處理,通過網(wǎng)絡(luò)發(fā)送到遠端的監(jiān)控主機上,從而為實現(xiàn)無人值守的管理方式創(chuàng)造條件。

      遠程監(jiān)控系統(tǒng)在設(shè)計時需要解決的關(guān)鍵問題,就是將不同類型的現(xiàn)場總線或控制網(wǎng)絡(luò)與以太網(wǎng)進行互聯(lián)互通,從而實現(xiàn)監(jiān)控信息的遠程實時傳輸。目前,實施遠程監(jiān)控主要有如下幾種方法:①基于PSTN的傳統(tǒng)方法,即通過Modem連接異地的現(xiàn)場設(shè)備;②基于OPC技術(shù)。采用支持多種現(xiàn)場總線規(guī)范的OPC Server,通過OPC 接口實現(xiàn)現(xiàn)場總線到Internet或Intranet網(wǎng)絡(luò)的無縫連接;③基于嵌入式平臺實現(xiàn)遠程監(jiān)控。在嵌入式平臺上完成對現(xiàn)場數(shù)據(jù)的實時采集,通過現(xiàn)場總線與數(shù)據(jù)網(wǎng)的互連,將Server端的數(shù)據(jù)通過TCP/IP協(xié)議提供給遠端的監(jiān)控主機(即Client端);④采用其它自定義方法實施遠程監(jiān)控。3.2.1基于OPC的監(jiān)控系統(tǒng)

      OPC 是以O(shè)LE/COM/DCOM機制作為應(yīng)用程序級的通信標(biāo)準(zhǔn),采用客戶/服務(wù)器模式,把開發(fā)訪問接口的任務(wù)放在硬件生產(chǎn)廠家或第三方廠家,以O(shè)PC服務(wù)器的形式向用戶提供通用的接口,解決了軟、硬件廠商之間的矛盾,提高了系統(tǒng)的開放性和互操作性[4]?;贠PC架構(gòu)的監(jiān)控系統(tǒng)結(jié)構(gòu)如圖1所示。其中,OPC DA Server為數(shù)據(jù)采集服務(wù)器,OPC AE Server為報警服務(wù)器。OPC Server 提供多種接口規(guī)范,應(yīng)用程序和Web瀏覽器(即OPC Client)可以通過這些接口取得與OPC Server相連的硬件設(shè)備信息,從而實現(xiàn)OPC Client通過以太網(wǎng)對OPC Server的訪問。同時OPC Server也可以將采集到的數(shù)據(jù)或報警信息通過網(wǎng)絡(luò)發(fā)送到客戶端或Web瀏覽器端。

      在基于OPC的體系架構(gòu)中,由于 COM/DCOM 已被視為網(wǎng)絡(luò)功能的具體實現(xiàn)方法,使得Client對OPC Server的遠程訪問成為標(biāo)準(zhǔn)的網(wǎng)絡(luò)訪問方式。但是OPC技術(shù)的缺點也是非常明顯的,由于LE/COM/DCOM機制是一個純軟件的架構(gòu),對系統(tǒng)資源配置的要求高。當(dāng)系統(tǒng)規(guī)模較大或監(jiān)控點數(shù)較多時,系統(tǒng)的實時性將會明顯下降。

      3.2.2基于嵌入式平臺的監(jiān)控系統(tǒng)

      實時監(jiān)控系統(tǒng)需要長時間不間斷地工作,對系統(tǒng)的可靠性和實時性均有較高要求。為此必須從系統(tǒng)功能、體系架構(gòu)、軟硬件系統(tǒng)的穩(wěn)定性、設(shè)備功耗等方面進行綜合考慮(例如選用工控級的產(chǎn)品),設(shè)計小型化的智能型監(jiān)控系統(tǒng)。而建立在RTOS之上的嵌入式系統(tǒng)為控制系統(tǒng)的網(wǎng)絡(luò)化、小型化提供了有效途

      徑,嵌入式網(wǎng)絡(luò)控制已成為監(jiān)控系統(tǒng)未來發(fā)展的重點方向之一。

      基于嵌入式平臺的遠程監(jiān)控系統(tǒng)結(jié)構(gòu)如圖2所示。其中,嵌入式Web服務(wù)器既是遠程監(jiān)控系統(tǒng)的中心節(jié)點,也是控制網(wǎng)絡(luò)與數(shù)據(jù)網(wǎng)絡(luò)進行互聯(lián)的網(wǎng)關(guān),通過TCP/IP協(xié)議將其連接到以太網(wǎng)上,監(jiān)控主機則通過以太網(wǎng)(或Internet)在遠程實時地監(jiān)視現(xiàn)場信號的動態(tài)變化,從而實現(xiàn)遠程監(jiān)控的目標(biāo)。對于能夠直接支持TCP/IP協(xié)議的現(xiàn)場檢測設(shè)備,則可以將其直接連接到以太網(wǎng)上,圖中的液體泄漏檢測儀即是如此;對于采用其他總線標(biāo)準(zhǔn)的現(xiàn)場設(shè)備,則需要通過嵌入式Web服務(wù)器進行信號轉(zhuǎn)換之后把現(xiàn)場總線連接到以太網(wǎng)上。

      圖2 遠程監(jiān)控系統(tǒng)結(jié)構(gòu)圖

      ⒋嵌入式Web服務(wù)器的設(shè)計

      在基于嵌入式平臺的遠程監(jiān)控系統(tǒng)中,監(jiān)控系統(tǒng)的中心節(jié)點主要承擔(dān)兩方面的任務(wù):一方面負責(zé)對現(xiàn)場數(shù)據(jù)的采集,即Web服務(wù)器以定時巡檢的方式通過現(xiàn)場總線對傳感器的信號進行采集;另一方面負責(zé)協(xié)議轉(zhuǎn)換,把現(xiàn)場總線來的數(shù)據(jù)轉(zhuǎn)換成TCP/IP協(xié)議的格式,通過以太網(wǎng)將其發(fā)送到遠端的監(jiān)控主機上。在本設(shè)計中實現(xiàn)了從RS232、RS485到TCP/IP協(xié)議之間的相互轉(zhuǎn)換。4.1開發(fā)環(huán)境簡介

      考慮到系統(tǒng)開發(fā)的簡便性,本方案選用uCLinux操作系統(tǒng)平臺作為系統(tǒng)的OS環(huán)境,輔助開發(fā)工具選用MiceTek公司的HiTool。嵌入式Web服務(wù)器的硬件環(huán)境選用MiceTek公司的Samsung44B0X開發(fā)板,利用其豐富的接口功能,可實現(xiàn)嵌入式Web服務(wù)器與傳感器的直接連接。4.2 嵌入式Web服務(wù)器的硬件設(shè)計

      嵌入式Web服務(wù)器硬件環(huán)境的自定義,是根據(jù)監(jiān)控系統(tǒng)的需要,重新制作嵌入式系統(tǒng)的主板。該主板的CPU仍選用Samsung的S3C44B0X,1M的BootFlash,8M的SDRAM,并提供10M/100M的以太網(wǎng)端口,2個RS232接口和6個RS485接口。如果待檢測的參數(shù)較少,則選用一塊嵌入式Web服務(wù)器主板即可;如果待檢測的參數(shù)較多,則可選用多個同樣的Web服務(wù)器主板,并對每個Web服務(wù)器進行參數(shù)配置(設(shè)置不同的IP地址),構(gòu)成分布式的Web服務(wù)器。如果監(jiān)控系統(tǒng)要求存儲的數(shù)據(jù)量很大,則可以采取以下兩種方法加以解決:一是嵌入式Web服務(wù)器外接硬盤;另一種方法是外加一臺由工業(yè)控制級的服務(wù)器,對多臺嵌入式Web服務(wù)器進行統(tǒng)一管理。4.3 嵌入式Web服務(wù)器的軟件實現(xiàn)

      嵌入式Web服務(wù)器的軟件開發(fā)主要包括以下幾項內(nèi)容:首先,完成嵌入式操作系統(tǒng)的移植和TCP/IP協(xié)議的剪裁;第二,編寫數(shù)據(jù)采集、數(shù)據(jù)處理應(yīng)用子程序;第三,編寫遠程通信子程序;第四,報警處理子程序;第五,數(shù)據(jù)查詢和報表生成子程序。這些功能應(yīng)先在上述的開發(fā)環(huán)境中進行初步實現(xiàn)之后,再移植到自定義的環(huán)境中。

      由于嵌入式系統(tǒng)的資源有限,因此對上述功能的實現(xiàn)應(yīng)盡量簡潔,例如對HTTP協(xié)議的移植,只需要保留基本的Get和Post方法即可,而Options、Head、Put、Delete和Trace方法在此可不考慮實現(xiàn),因為對RAM(或EEPROM)中的數(shù)據(jù)存儲可以采用循環(huán)覆蓋的方式。

      在此方案中,嵌入式Web服務(wù)器與Web瀏覽器及其他應(yīng)用程序之間的交互,可以通過調(diào)用CGI(Common Gateway Interface)程序來實現(xiàn)。CGI規(guī)定了Web服務(wù)器與瀏覽器及其他可執(zhí)行程序的接口協(xié)議標(biāo)準(zhǔn)。當(dāng)Web瀏覽器將請求信息發(fā)送給Web服務(wù)器時,Web服務(wù)器觸發(fā)一個可執(zhí)行的CGI程序,該程序根據(jù)用戶請求的內(nèi)容做出相應(yīng)的處理,并將處理結(jié)果以Web服務(wù)器可識別的方式輸出,Web服務(wù)器再將該結(jié)果回送給Web瀏覽器[5]。

      CGI程序中的信息傳遞是通過標(biāo)準(zhǔn)輸入設(shè)備stdin和標(biāo)準(zhǔn)輸出設(shè)備stdout來完成的。Web服務(wù)器在調(diào)用CGI程序之前,需要預(yù)先設(shè)置好所有的環(huán)境變量,以便把客戶的請求轉(zhuǎn)化為參數(shù)后存入環(huán)境變量,然后就可以調(diào)用CGI程序了。CGI程序根據(jù)不同的請求方法確定如何獲取客戶的請求內(nèi)容,而Web服務(wù)器則通過標(biāo)準(zhǔn)輸入設(shè)備stdin獲得客戶請求;對于CGI程序的輸出結(jié)果,Web服務(wù)器則是通過標(biāo)準(zhǔn)輸出設(shè)備stdout來獲得,Web服務(wù)器對其進行語法分析之后,再傳送給客戶瀏覽器。至于CGI程序的實現(xiàn),本方案選用C語言,以保證CGI程序的快速、高效和安全。

      ⒌結(jié)語

      基于嵌入式平臺的監(jiān)控系統(tǒng),以其體積小、可連續(xù)工作時間長、性能穩(wěn)定等特點,得到人們的廣泛認可,成為網(wǎng)絡(luò)化遠程監(jiān)控系統(tǒng)的主流方向。在本設(shè)計中,借助于相對穩(wěn)定和成熟的軟硬件開發(fā)環(huán)境,設(shè)計了一套較為完整和實用化的遠程監(jiān)控方案并加以實現(xiàn)。經(jīng)使用證明,該設(shè)計方案是成功的并取得了較為理想的效果。

      參考文獻

      [1]關(guān)光富,計算機機房環(huán)境設(shè)備監(jiān)控系統(tǒng)與設(shè)計分析,電工技術(shù)雜志,2004.2 [2]周祖德編著,基于網(wǎng)絡(luò)環(huán)境的智能控制,國防工業(yè)出版社,2004.1,第1版 [3]宋廣軍,張敬,王睿,基于web的溫濕度遠程監(jiān)控系統(tǒng),微計算機信息,2004.1 [4]孫敏,顧德英,汪晉寬,基于OPC技術(shù)的監(jiān)控組態(tài)程序的開發(fā),儀器儀表學(xué)報(增刊),2003.8 [5]湯碧玉,曾楠,鄭靈翔等,嵌入式系統(tǒng)中基于Web的遠程監(jiān)控設(shè)計與實現(xiàn),廈門大學(xué)學(xué)報(自然科學(xué)版),vol.43(5),2004.9

      第五篇:基于嵌入式Linux遠程圖像監(jiān)控系統(tǒng)的設(shè)計

      本文由wangyong1179貢獻

      pdf文檔可能在WAP端瀏覽體驗不佳。建議您優(yōu)先選擇TXT,或下載源文件到本機查看。2010年第 11期 文章編號: 1006 2475(2010)11 0031 04 計 算 機 與 現(xiàn) 代 化 JISUAN JI YU X IAN DA I UA H 總第 183期

      基于嵌入式 L inux遠程圖像監(jiān)控系統(tǒng)的設(shè)計

      唐人財, 劉連浩

      (中南大學(xué)信息科學(xué)與工程學(xué)院, 湖南 長沙 410083)摘要: 系統(tǒng)以嵌入式微處理器 S3C2440和 L inux為核心平臺, 采用 U SB攝像頭作為圖像采集設(shè) 備, 利用 L inux 下視頻設(shè)備 應(yīng)用編程接口 V 4L2和 Q t/Em bedded實現(xiàn)圖像的采集, 實時 顯示和 JPEG 格式 圖片保 存, 利 用 libjpeg 庫來實 現(xiàn)視頻 數(shù)據(jù) 的編解碼以及通過以太網(wǎng)進行遠程傳輸, 實現(xiàn)一種功耗低、可靠性高和低成 本的網(wǎng)絡(luò)圖像采集與傳輸系統(tǒng)設(shè)計方案。關(guān)鍵詞: L inux 圖像采集;Q t/Em bedded V 4L2;S3C2440;;中圖分類號: T P391 41.文獻標(biāo)識碼: A do: 10 3969 /.j issn.1006 2475.2010.11.009 i.D esign of R emote I age M on itoring System Based on Em bedded L inux m TANG R en ca, L IU L ian hao i(Institu te of Infor ation Science and Eng ineer ing, C entra l South U niversity Changsha 410083, China)m , Ab stract T he syste uses e : m mbedded m icroprocesso r S3C2440 and L inux as the core platfo r T he applica tion prog ramm ing in m.te rface V 4L2 and Q t /Embedded library are tw o key techno log ies to realize i age acqu isition, rea l ti e display and JPEG p icture m m sav ing by using U SB ca era T his design of i age acqu isition and trans ission is a low powe r consumption, h igh reliab ility and m.m m inexpensive syste m, wh ich ach ieves encod ing o r decod ing of i ages by lib jpeg library and remo te transm ission o f E therne t m.K ey w ords L inux;i age acquisition;Q t/Em bedded V4L 2;S3C2440 : m;0 引

      友好圖形操作界面, 實現(xiàn)現(xiàn)場圖像在終端上的實時顯 示和 JPEG圖片的保存。利用 L inux 下 lib jp eg庫編碼 壓縮圖像, 通過以太網(wǎng)接口實時傳輸?shù)揭曨l監(jiān)控中心 PC機上, 通過接收解碼顯示現(xiàn)場圖像, 實現(xiàn)遠程視頻 圖像監(jiān)控功能。系統(tǒng)總體設(shè)計結(jié)構(gòu)如圖 1所示。

      隨著嵌入式技術(shù)、多媒體技 術(shù)及網(wǎng)絡(luò)技術(shù) 的發(fā) 展, 基于嵌入式技術(shù)、視頻壓縮編碼技術(shù)和網(wǎng)絡(luò)傳輸 控制技術(shù)的綜合應(yīng)用, 已成為數(shù)字化網(wǎng)絡(luò)視頻采集監(jiān) 控領(lǐng)域的核心 技術(shù)。系統(tǒng)是基于 ARM 9和 L inux平臺的遠程視頻圖像監(jiān)控設(shè)計方案, 整個系統(tǒng)建立在嵌 入式結(jié)構(gòu)上, 實現(xiàn)了高質(zhì)量的視頻圖像采集和實時處 理功能。

      系統(tǒng)總體設(shè)計

      遠程視頻圖像監(jiān)控系統(tǒng)分為嵌入式視頻監(jiān)控終 端和監(jiān)控中心 PC 機兩部分。嵌入 式視頻監(jiān)控終端 基于嵌入式微處理器 S3C2440和 L inux 核心平臺, 采 用通用 USB 攝像頭捕捉現(xiàn)場圖像, 通過 USB 接口將 數(shù)據(jù)傳輸?shù)?ARM 開發(fā)板上, 由開發(fā)板上的圖像采集 處理模塊進行圖像數(shù)據(jù)處理, 通過 LCD 觸摸屏顯示

      圖 1 系統(tǒng)總體設(shè)計框圖 2 系統(tǒng)硬件設(shè)計

      系統(tǒng)選取 m in i2440開發(fā)板作為系統(tǒng)設(shè)計的硬件

      收稿日期: 2010 06 28 作者簡介: 唐人財(1978), 男, 海南??谌? 中南大學(xué)信息科學(xué)與工程 學(xué)院碩 士研究 生, 研 究方向: 嵌入 式系統(tǒng) 及應(yīng)用;劉連 浩(1959), 男, 湖南 澧縣人, 教授, 博士, 研究方向: 單片機及嵌入式系統(tǒng)。32 計

      現(xiàn)

      2010年第 11期

      平臺, 監(jiān)控終端硬件由主控模塊和擴展模塊兩部分組 成。主控模塊采用嵌入式微處理器 S3C2440 它是一 , 款基于 ARM 920T 核的 16/ 32位 RS I 結(jié)構(gòu)的嵌入式微 C 處理器, 主頻 400 z 最高可達 533 MH , MH z 片內(nèi)外資源 , 豐富, 具有強大的處理能力, 從硬件上保證了系統(tǒng)快速 的響 應(yīng) 速 度。系 統(tǒng) 存 儲 擴 展 了 128 B 的 NAND M FLAS 64 B的 SDRAM。擴展模塊包括通用 USB攝 H, M 像頭、9000以太網(wǎng)控制器和帶觸摸屏的 NEC3 5英 DM.寸 TFT 真彩液晶屏。主控模塊通過 USB 接口電路、LCD接口電路、以太網(wǎng)接口電路與擴展模塊相連接構(gòu) 成整個硬件系統(tǒng)。系統(tǒng)硬件結(jié)構(gòu)如圖 2所示。

      配置內(nèi)核編譯選項時把 UVC 驅(qū)動編譯進內(nèi)核。UVC 不是攝像頭的品牌或型號, 它是一種視頻設(shè)備的技術(shù) 規(guī)范, 全稱為 U SB V ideo C lass 這是一個為 USB 視頻 , 設(shè)備提供驅(qū)動的開源項目。UVC 驅(qū)動支持 V 4L 2應(yīng) 用編程接口, 系統(tǒng)設(shè)計中使用的 USB 攝像頭為 T op Speed U SB 2 0 C a era UVC 驅(qū)動提供支持。.m , 3 3 V4L2圖像采集程序的實現(xiàn).V4L2 是 V id eo For L inux Two 的 簡稱, 是 V id eo Fo r L in ux AP I的第二版本, 是 L inux 下開發(fā)視頻設(shè)備 程序的接口標(biāo)準(zhǔn), 使用分層方法對所有視頻設(shè)備的驅(qū) 動和應(yīng)用編 程提 供一 套完備 的接 口規(guī) 范?;?V4L 2標(biāo)準(zhǔn), 視頻圖像采集處理流程如圖 3所示。[ 3] 圖 2 系統(tǒng)硬件結(jié)構(gòu)框圖 3 系統(tǒng)軟件設(shè)計

      1 系統(tǒng)軟件平臺.系統(tǒng)軟件平臺以嵌 入式 L inux 和 Q t/Em bedded 為基礎(chǔ), 具體構(gòu)建步驟為: 在宿主機上建立交叉編譯 環(huán)境, 完成引導(dǎo)加載程序 v ivi的編譯移植, 編譯移植 linux 2 6 29 內(nèi)核, 包括 DM 9000 網(wǎng)卡、..通用 USB 攝 像頭和 LCD 觸摸 屏等驅(qū)動 的移植, 基于 busybox 1.13.3構(gòu)建文件系統(tǒng)?;谙到y(tǒng)設(shè)計的需求, 還要完 成 QTE 4 5 3圖形庫與 tslib 1 4觸摸屏支持庫以及...lib jp eg庫向開發(fā)板的移植。lib jp eg 庫主要用于實現(xiàn) 內(nèi)存中圖像數(shù)據(jù)的編解碼, QTE 4 5 3是面向嵌入式..系統(tǒng)的 Q t版本, 采用了 fram ebuffer作為底層圖形接 口, 采用 C ++ 封裝, 具有豐富的控件資源和良好的可 移植性, 系 統(tǒng)中的應(yīng) 用程序 以及環(huán) 境都是 基于 Q t / Em bedded來開發(fā)的。最終形成基于 ARM 的嵌入式 [ 1 2] L inux 操作系統(tǒng)平臺 , 在系統(tǒng)軟件平臺上可進行嵌 入式應(yīng)用程序的開發(fā)。限于篇幅, 系統(tǒng)軟件平臺的構(gòu) 建在此只作簡單介紹。3 2 嵌入式 L inux下 USB 攝像頭驅(qū)動.為了使用 L in ux下 V4L2應(yīng)用編程接口編寫圖像 采集應(yīng)用程序, 在開發(fā)板上移植版本為 linux 2 6 29..的內(nèi)核, 此內(nèi)核版本支持 UVC 驅(qū)動 USB 攝像頭, 在圖 3 視頻圖像采集處理流程圖

      3 1 視頻設(shè)備結(jié)構(gòu)體初始化..程序中定義一個視頻設(shè)備的數(shù)據(jù)結(jié)構(gòu) struct vde vice 結(jié)構(gòu)體的成員變量是對視頻設(shè)備和圖像屬性的 , 描述。

      init_ vdata(struct vdevice * vdev , char * dev _na e un m , signed int w idth unsigned int he ight int fo r at);, , m 通過參數(shù)完成對視頻設(shè)備結(jié)構(gòu)體變量 vdev的賦 值初始化。視頻設(shè)備名稱 dev_na e 視頻圖像寬度 m , w idth 視頻圖像高度 heigh, 視頻圖像格式 for a, 以 , t m t 及申請分配兩個內(nèi)存緩沖區(qū) fram ebuffer和 rgbbu ffer , 分別為采集到的一幀圖像 數(shù)據(jù)緩沖區(qū)和 24位 RGB 圖像數(shù)據(jù)緩沖區(qū)。3 3 2 視頻設(shè)備初始化..函數(shù) in it_vdev(struct vdev ice * vdev)根據(jù)參數(shù)

      2010年第 11期

      唐人財?shù)? 基于嵌入式 L inux遠程圖像監(jiān)控系統(tǒng)的 設(shè)計

      vdev傳遞的值對視頻設(shè)備進行初始化, 這是進行視頻 圖像采集前必須完成的工作。視頻設(shè)備結(jié)構(gòu)體 vdev 包含了要設(shè)置的設(shè)備信息, 初始化視頻設(shè)備到適合的 圖像采集工作方式。視頻設(shè)備初始化具體實現(xiàn)如下:(1)打開攝像頭設(shè)備文件。利用系統(tǒng)調(diào)用 函數(shù) vdev > fd = open(vdev > dev_nam e O_RDWR)實現(xiàn), 該函數(shù)的功能是打開參 , 數(shù) vdev > dev_nam e指定的設(shè)備, 對于攝像頭用設(shè)備 文件名 /dev /v ideo0 表示, vdev > fd 是設(shè)備打開后 返回的文件描述符, 在程序中可使用它來對設(shè)備文件 進行操作。(2)查詢設(shè)備信息和設(shè)置采集屬性。在 L inux 編程中, io ct l函數(shù)是設(shè)備驅(qū)動程序中對 設(shè)備的 I /O 進行管理的函數(shù), 用戶程序一般使用 ioctl 函數(shù)來對設(shè)備的一些特性進行控制。調(diào)用帶 V ID I C _ O QUERYCAP命令參數(shù)的 io ct l函 數(shù)來取得設(shè)備文件的屬性參數(shù), 并存儲于 struct v4l2_ capab ility 結(jié)構(gòu)體變量 vdev > cap 中, 然后可 逐項驗 證 vdev > cap的屬性, 看設(shè)備是否符合采集的要求。

      ioctl(vdev > fd V ID I _QU ERYCAP, & vdev > cap);, OC m em 間建立映射, 調(diào)用帶 V I I C _QBUF 命令參數(shù)的 DO ioct l函數(shù)將所申請的設(shè)備緩存加入等待輸入緩存隊 列, 內(nèi)存映射初始化完成。3 3 3 采集圖像數(shù)據(jù)..函數(shù) capture(struct vdevice * vdev)完成一幀視 頻圖像數(shù)據(jù)采集, 采集到的視頻圖像數(shù)據(jù)存放到設(shè)備 緩存 vdev > bu f中, 通過映射的程序內(nèi)存空間可處理 視頻圖像, 函數(shù)調(diào)用成功返回視頻設(shè)備采集的圖像數(shù) 據(jù)大小。在設(shè)備緩存加入等待輸入隊列后, 調(diào)用帶 VIDI C_ O STREAMON命令參數(shù)的 ioctl函數(shù)使能視頻設(shè)備。

      type= V 4L2_BU F _TYPE_V IDEO _CA PTURE;ioctl(vdev > fd V ID I _STREAM ON, & type);, OC 圖像數(shù)據(jù)緩存采用 F IFO 的方式, 緩存隊列將已 采集到視頻圖像數(shù)據(jù)的設(shè)備緩存出隊列, 此時與之映 射的內(nèi)存空間就存儲了采集到的視頻圖像數(shù)據(jù), 處理 完畢重新使設(shè)備緩存加入隊列。這個過程需要調(diào)用 兩次 io ctl函數(shù)。

      ioctl(vdev > fd V ID I _DQBUF, & vdev > buf);, OC ioctl(vdev > fd V ID I _QBUF, & vdev > buf);, OC 接著設(shè)置視頻圖像采集格式, 可根據(jù)需求修改攝 像頭緩沖區(qū)中圖像參數(shù)如分辨率、格式等。具體方法 為先給 struct v4 l2 _for at結(jié)構(gòu)體變量 vdev > f t分量 m m 賦新值, 再調(diào)用 帶 V ID I C _S _FMT 命令參數(shù) 的 ioctl O 函數(shù)完成采集屬性的設(shè)置。ioctl(vdev > fd V ID I _S_FM T, & vdev > fm t);, OC 調(diào)用帶 VIDIOC_DQBUF 命令參數(shù)的 ioct l函數(shù)使 設(shè)備緩存出隊列, 利用系統(tǒng)函數(shù) m em cpy 將所采集的 一幀視頻圖像數(shù)據(jù)拷貝的所分配的內(nèi)存空間 vdev > fram ebuffer以 方 便 后 續(xù) 圖 像 處 理。然 后 調(diào) 用 帶 V IDI C _ O QBUF 命令參數(shù)的 io ctl函數(shù)把設(shè)備緩存重新 加入輸入緩存隊列, 至此完成一幀視頻圖像數(shù)據(jù)采集。系統(tǒng)采用的攝像頭初始化為 YUV422圖像格式, 圖像要在 LCD 上顯示, 必須進行圖像數(shù)據(jù)格式轉(zhuǎn)換 處理, 將 YUV422格式轉(zhuǎn)換為 RGB24格式。

      yuv2 rgb24(vdev > fra ebuffer vdev > rgbbuffer vdev > m , , w idth vdev > he ight);,(3)實現(xiàn)內(nèi)存映射。V4L2捕獲的數(shù)據(jù)是存放在內(nèi)核空間的, 用戶不 能直接訪問該 段內(nèi)存, 必須通 過某些手段來 轉(zhuǎn)換地 址。系統(tǒng)采用 mm ap內(nèi)存映射方式, 把設(shè)備內(nèi)存映射 到用戶程序內(nèi)存空間, 直接處理設(shè)備內(nèi)存, 加速了 I/ O 訪問。主要函數(shù)調(diào)用如下: ioctl(vdev > fd V ID I _REQBUF S & vdev > rbuf);, OC , ioctl(vdev > fd V ID I _QU ERYBUF, & vdev > buf);, OC vdev > m e [ i] = mm ap(0, vdev > bu.length, PROT _ m f READ, M AP _SHARED, vdev > fd vdev > bu.f m.offset);, ioctl(vdev > fd V ID I _QBUF, & vdev > buf);, OC 函數(shù) yuv2rgb24 將 vdev > fram ebuffer指定 內(nèi)存 中的 YUV 422圖像格式轉(zhuǎn)換為 RGB24格式, 并存放 到 vdev > rgbbuffer指定內(nèi)存中, 函數(shù)實現(xiàn)在 此不作 詳細闡述。3 4 圖像數(shù)據(jù)的 JPEG 編解碼.網(wǎng)絡(luò)傳輸前對原始圖像數(shù)據(jù)進行壓縮處理, 利用 IJG(Independent JPEG G roup)提供的 lib jp eg 庫進行 [ 4 6] 圖像編解碼。在開源的 libjpeg 庫中, 函數(shù)必須從 文件或其他 設(shè)備流中讀取數(shù)據(jù), 再將壓縮數(shù) 據(jù)存成 JPEG 文件, 增加了不必要的文件 I/O 操作, 不利于網(wǎng) 絡(luò)實時傳輸圖像。為解決 該問題, 改寫 了 lib jp eg 庫 內(nèi) jdatasrc c和 jd atads.c兩個源代碼文件, 設(shè)計自定.t 義的結(jié)構(gòu)體 struct m y_dest_ gr和 struct m y_src_ g r m m , 增加自定義圖像數(shù)據(jù)緩存地址變量、已處理圖像數(shù)據(jù)

      具體實現(xiàn): 首先, 對 struct v4 l2 _ requestbuffers結(jié) 構(gòu)體變 量 vdev > rbuf 分 量 賦 值, 調(diào) 用 帶 V I I C _ DO REQBUFS命令參數(shù)的 io ctl函 數(shù)分配自定義 數(shù)量的 設(shè)備緩存;然后, 在循環(huán)程序結(jié)構(gòu)中對申請分配的設(shè) 備緩存 進行映射, 調(diào)用帶 V IDIOC _QUERYBUF 命令 參數(shù)的 ioct l函數(shù)獲得設(shè)備緩存偏移量和緩存大小并 存于 struct v4l2_buffer結(jié)構(gòu)體變量 vdev > bu f中, 調(diào) 用 mm ap在設(shè)備 緩存 和程序 內(nèi)存 空間 變量 vdev > 34 計

      現(xiàn)

      2010年第 11期

      的偏移量變量和圖像大小變量, 并改寫 lib jp eg庫相關(guān) 操作函數(shù), 封裝相關(guān)的數(shù)據(jù)結(jié)構(gòu)和成員函數(shù)為自定義 的圖像編解碼類 MY JPEG。實現(xiàn)輸入數(shù)據(jù)和輸出數(shù)據(jù) 的重定向到內(nèi)存, 利用開源的 libjpeg 庫在內(nèi)存中實現(xiàn) 圖像的壓縮和解壓縮。參照 lib jpeg 庫中編解碼過程, 實現(xiàn)了類 MYJPEG中壓縮與解壓縮成員函數(shù)。

      w r ite e(unsigned cha r * m m char* m quality);/ /圖像數(shù)據(jù)壓縮處理 readm e(uns igned char indata int pSize unsigned char m * , , * outdata);/ /圖像 數(shù)據(jù)解壓縮處理 outdata int * pS ize unsigned , , indata unsigned int mw idth, unsigned int mhe ight int , , 壓縮函數(shù)中參數(shù)可以靈活對壓縮圖像分辨率大 小和質(zhì)量屬性進行設(shè)置, 參數(shù) pS ize 返回壓縮后圖像 的大小。而解壓縮圖像時, 壓縮圖像的大小則通過參 數(shù) pSize傳入。3 5 網(wǎng)絡(luò)傳輸視頻圖像數(shù)據(jù).UDP是非連接的、不可靠的、傳遞數(shù)據(jù)報的傳輸 協(xié)議, 提供了一種高效無連接的服務(wù)。由于 UDP 不 提供數(shù)據(jù)的可靠性保證, 使其具有較少的傳輸時延, 很適合實時性高而不要求數(shù)據(jù)絕對可靠的場合。視 頻圖像數(shù)據(jù)實時性強, 數(shù)據(jù)量大, 所以系統(tǒng)設(shè)計采用 此協(xié)議傳輸數(shù)據(jù)。通過 L inux 下的 socket套 接字編 [ 7] [ 8 11] 程 , 實現(xiàn)視頻圖像的網(wǎng)絡(luò)傳輸。利用 C語言中 的多線程編程, 將網(wǎng)絡(luò)通信置于一個工作線程, 避免 了 GU I應(yīng)用程序因網(wǎng)絡(luò)阻塞等待操作而使圖形用戶 界面凍結(jié)無法響應(yīng)的問題。系統(tǒng)設(shè)計時結(jié)合使用互 [ 12] 斥鎖和條件變量對各個工作線程進行同步。嵌入式視頻監(jiān)控終端上采集顯示程序作為主線 程, 同時創(chuàng)建一個視頻圖像發(fā)送工作 線程 deal_send(), 用來處理與視頻監(jiān)控中心 PC間的網(wǎng)絡(luò)通信。具 體過程描述如 下: 調(diào)用 socket()函數(shù)創(chuàng)建一個 UDP 數(shù)據(jù)報類型的套接字, 接著調(diào)用 bind()函數(shù), 給套接 字綁定一個端口。視頻圖像發(fā)送工作線程調(diào)用 recv from()函數(shù)在指定的端口上阻塞等待客戶端發(fā)送來 的 UDP數(shù)據(jù)報, 接收到服務(wù)請求, 處理該服務(wù)請求并 通過 sendto()函數(shù)將處理結(jié)果返回給 PC 端。在監(jiān)控中心 PC 端創(chuàng)建解碼顯示視頻圖像工作 線程, 并創(chuàng) 建一個視 頻圖像接 收工 作線程 deal _re ce ive(), 用來處理與視頻監(jiān)控終端的網(wǎng)絡(luò)通 信。具 體過程描述如 下: 調(diào)用 socket()函數(shù)創(chuàng)建一個 UDP 數(shù)據(jù)報類型的套接字, 接著調(diào)用 bind()函數(shù), 給套接 字綁定一個端口。調(diào)用 sendto()函數(shù)向監(jiān)控終端發(fā) 送服務(wù)請求報文, 調(diào)用 recv from()函數(shù)等待并接收服 務(wù)應(yīng)答報文。繼續(xù)定時發(fā)送服務(wù)請求直至通信終止。具體網(wǎng)絡(luò)傳輸?shù)耐ㄐ胚^程如圖 4所示。

      圖 4 網(wǎng)絡(luò)傳輸通信流程 4 視頻圖像實時顯示

      系統(tǒng)是一個實時視頻圖像采集與傳輸系統(tǒng), 采集 的現(xiàn)場視頻圖像在嵌入式視頻監(jiān)控終端和監(jiān)控中心 PC上實時顯示與保存。只要以較快速度顯示變化的 圖片就可以實時顯示現(xiàn)場情況, 系統(tǒng)中利用定時器每 40m s采集一幀視頻圖像。該遠程圖像監(jiān)控系統(tǒng)界面 是通過 QT 來實現(xiàn)的, 在強大的 QT 圖形庫的支持下, [ 13 14 ] 可快速開發(fā)出友好的圖形用戶界面。利用幾個 相關(guān) Q t圖形類 Q I age QP ixm ap和 QL abe,l 實現(xiàn)視頻 m、圖像的顯示和 JPEG格式圖片保存。5 結(jié)束語

      系統(tǒng)設(shè)計方案 是一種基于嵌入式 L inux 的圖像 采集和傳輸系統(tǒng), 本文詳細介紹了 V4L 2應(yīng)用編程接 口進行 USB 攝像頭視頻圖像采集, 基于 QTE 圖形庫 實時顯示視頻圖像, 利用開源的 lib jp eg 庫實現(xiàn)圖像 的 JPEG 編解碼, 通過網(wǎng)絡(luò)實時傳輸進行遠程監(jiān)控。整個系統(tǒng)數(shù)字化、網(wǎng)絡(luò)化程度高, 實時性好、穩(wěn)定可靠 且圖像質(zhì)量較好。經(jīng)實驗測試, 系統(tǒng)很好地實現(xiàn)對現(xiàn) 場視頻圖像的監(jiān)控。在該系統(tǒng)的基礎(chǔ)上, 可進一步進 行二次擴展開發(fā), 以便應(yīng)用在工業(yè)現(xiàn)場控制、遠程指 揮監(jiān)控系統(tǒng)、可視電話等諸多領(lǐng)域。

      參考文獻: [ 1] [ 2] [ 3] 趙敏, 楊恢先, 湯安平.基于 S3C2440的嵌入式 L inux 系統(tǒng) 移植的研究與實現(xiàn) [ J].電子器件, 2008 31(6): 1947 1950 ,.鄭靈翔.嵌入式 L inux 系統(tǒng)設(shè)計 [M ].北京: 北京 航空航 天大學(xué)出 版社, 2008.M ichae lH Schi ek V ideo for L inux Tw o AP I Specifica tion m.[ EB /OL ].http: / /v4l2spec bytesex org /v4l2spec / v4 l2...pd, 2008 03 04.f(下轉(zhuǎn)第 38頁)38 計

      現(xiàn)

      化 2010年第 11期

      目標(biāo)圖像中變成 A!B!因為向前移動了, 所以物體顯 , 得比原來要大些。放大的過程應(yīng) 該是: 逐步 放大左 圖, 并適當(dāng)?shù)亟厝》糯髨D中跟原來一樣大小的一塊矩 形區(qū)域, 作為一張新的過渡圖。至于放大的倍數(shù), 作 [ 8] 如下考慮 : 假設(shè) A!的長度是 AB的 L 倍, 兩幅圖像之間插入 B!n張過渡圖, 則每一張過渡圖之間的放大的倍數(shù)是(L 1)/(n+ 1)。

      速度, 內(nèi)存優(yōu)化后系統(tǒng)占用資源更少, 由于不用頻繁 申請內(nèi)存和 釋放內(nèi)存, 減少 了漏洞和錯誤發(fā) 生的幾 率;采用縮放的方法改進了行進間的瀏覽效果, 提高 了虛擬漫游的沉浸感, 具有一定的實用意義。

      參考文獻: [ 1] 石云飛, 王永平, 李龍 濟, 等.基于 模板匹配 的柱面全景 圖拼接優(yōu)化算法 [ J].工程圖學(xué)學(xué)報, 2005(1): 96 99.[ 2] [ 3] [ 4] 華順剛, 曾令宜, 歐宗瑛.一種快速的柱面全景拼接算法 [ J].數(shù)據(jù)采集與處理, 2006, 21(4): 435 436.潘華偉, 鄒北驥.一種圓 柱形全 景圖生 成新算法 及其實 現(xiàn) [ J].計算機工程與科學(xué), 2003, 25(6): 13 16.吳憲祥, 郭寶龍, 王娟.基于相位相關(guān)的柱面全景圖像自 動拼接算法 [ J].光學(xué)學(xué)報, 2009, 29(7): 1824 1829.[ 5] 鐘力, 張茂 軍, 孫立 峰, 等.360度柱 面全 景圖 像生 成算 法及其實現(xiàn) [ J].小型 微型 計算 機系 統(tǒng), 1999 20(12): , 899 900.[ 6] [ 7] [ 8] [ 9] 趙 輝, 陳 輝, 于 泓.一 種 改 進 的 全 景 圖 自 動拼 接 算 法 [ J].中國圖象圖形學(xué)報, 2007, 12(2): 336 342.阮 秋 琦.數(shù) 字 圖 像 處 理 [ M ].北 京: 電 子 工 業(yè) 出 版 社, 2001.董 士 海.虛 擬 現(xiàn) 實 的 未 來應(yīng) 用 [ N ].中 國 計 算 機 報, 2001 02 21.崔漢國, 曹茂春, 歐陽清.柱面全景圖像拼合算法研究數(shù) 字圖像處理 [ J].計算機工程, 2004, 30(6): 158 159.[ 10] 趙萬金, 龔聲蓉, 劉全, 等.一種用于 圖像拼 接的 圖像序 列自 動 排 序 算 法 [ J].中 國 圖 象 圖 形 學(xué) 報, 2007, 12(10): 1861 1864.[ 11] 張茂春.虛擬現(xiàn)實系統(tǒng) [M ].北京: 科學(xué)出版社, 2001.[ 12] 明德烈, 柳健, 田金文.二維平面內(nèi)的增強現(xiàn)實虛實配準(zhǔn) 問題研究 [ J].紅外與激光工程, 2001, 30(6): 410 413.[ 13] 蔡勇, 劉學(xué)惠, 吳恩華.基于圖像繪制的虛擬現(xiàn)實系統(tǒng)環(huán) 境 [ J].軟件學(xué)報, 1997.8(10): 721 728.[ 14] 喻罡.基于圖像的虛 擬場景 構(gòu)造 和漫 游系統(tǒng) 研究 [ D ].西安: 西安理工大學(xué), 2002.圖 6 放大前后的線段

      在放大后的圖像中央截取一塊跟原圖像大小相 同的區(qū)域, 然而由于拍攝的過程中, 一系列的過渡場 景不可能嚴(yán)格地在一條直線上, 也就是說相鄰的中間 圖像的中心位置并不重合。如果不加任何處理, 在過 渡的時候?qū)嶋H效果并不平滑, 在到達下一張中間圖像 的時候仍然會有跳躍的感覺。解決的方法是, 預(yù)先計 算 AB的中點在經(jīng)過放大和截取后, 在最終目標(biāo)圖中 的位置 p(x y), 對比 A!B!的中點 p!(x!y!), 得出 ,!, ? x = x!-x ? y = y!-y 每次 放大后截 取時, 補償 , , ? x /(n+ 1)和 ? y /(n+ 1), 使圖像中心逐步向目標(biāo) 圖像的中心靠攏。

      結(jié)束語

      本文首先研究了魚眼圖像的拼接算法, 在提出基 于亮度差的魚眼圖像重疊區(qū)域的確定方法和采用線性 補償光強的方法進行圖像的融合處理的基礎(chǔ)上, 實現(xiàn) 了利用兩幅魚眼圖像生成空戰(zhàn)環(huán)境球面虛擬空間, 然 后探討了基于球面虛擬圖的多視點漫游問題。分析 可知: 利用反投影模板技術(shù)有效地提高全景圖瀏覽的

      (上接第 34頁)[ 4] 汪慶年, 孫麗兵, 李桂 勇.一種基于 ARM 的視 頻監(jiān)控 系 統(tǒng)的設(shè)計 [ J].微計算機信息, 2009 25(11): 158 160., [ 5] [ 6] [ 7] [ 8] [ 9] 汪慶年, 張廣棟.嵌入 式網(wǎng)絡(luò) 視頻 監(jiān)控系 統(tǒng)的 設(shè)計與 實 現(xiàn) [ J].電力電子, 2008(5): 47 49.趙文敏, 余文芳, 邢建國.一種嵌入式網(wǎng) 絡(luò)視頻監(jiān)控 系統(tǒng) 的設(shè)計 [ J].計算機應(yīng)用與軟件, 2009 26(8): 67 68 81., , 郭 東升, 田秀 華.L inux 環(huán)境 下基 于 Socke t的網(wǎng) 絡(luò)通 信 [ J].軟件導(dǎo)刊, 2009, 18(1): 116 118.楊暉, 胡永健, 林志泉.基于 L inux和 S3C2410嵌入式圖像傳 輸系統(tǒng)設(shè)計 [ J].微計算機信息, 2007 23(8): 20 24., 孟超, 張曦煌.基于嵌 入式系 統(tǒng)的 圖像采 集與 傳輸設(shè) 計 [ J].計算機工程與設(shè)計, 2008 29(17): 4414 4416 ,.[ 10] 童 永 清.L inuxC 編 程 實 戰(zhàn) [ M ].北 京: 人 民 郵 電 出 版 社, 2008.[ 11] 王遠洋, 周淵平, 郭 煥麗.L inux 下基 于 Socket多線 程并 發(fā)通信的實現(xiàn) [ J].微計算機信息, 2009, 25(15): 70 72.[ 12] 楊水 清, 張 劍, 施云飛, 等.ARM 嵌 入式 L inux系 統(tǒng)開發(fā) 技術(shù)詳解 [M ].北京: 電子工業(yè)出版社, 2008.[ 13] 蔡志明, 盧傳富, 李立夏.精通 Q t4 編程 [ M ].北京: 電子 工業(yè)出版社, 2008.[ 14] 陳 鯤, 陳 云 秋, 劉 信 新.基 于 Q t/Embedded 的 嵌 入 式 L inux應(yīng)用程序的 設(shè)計 [ J].計算機與 數(shù)字工程, 2009, 37(1): 156 161.1

      下載基于嵌入式網(wǎng)絡(luò)設(shè)備的遠程監(jiān)控系統(tǒng)設(shè)計(樣例5)word格式文檔
      下載基于嵌入式網(wǎng)絡(luò)設(shè)備的遠程監(jiān)控系統(tǒng)設(shè)計(樣例5).doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進行舉報,并提供相關(guān)證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        基于ARM的嵌入式智能家居遠程監(jiān)控系統(tǒng)設(shè)計.

        摘要 科技改變生活,科技為人類帶來了更舒適更方便的解決方案,智能家居是現(xiàn)代化科技的體現(xiàn),智能家居也正是在應(yīng)人們需求下而產(chǎn)生的。 本設(shè)計的內(nèi)容是設(shè)計一個基于ARM的智能家居......

        基于ARMlinux的嵌入式遠程測控系統(tǒng)設(shè)計.

        基于ARM linux的嵌入式遠程測控系統(tǒng)設(shè)計基于ARM linux的嵌入式遠程測控系統(tǒng)設(shè)計 類別:嵌入式系統(tǒng)前言 目前,大多數(shù)遠程測控系統(tǒng)中,系統(tǒng)的硬件采用8/16位的單片機,軟件多采用匯編......

        嵌入式遠程醫(yī)療監(jiān)護系統(tǒng)(范文模版)

        嵌入式遠程醫(yī)療監(jiān)護系統(tǒng) 嵌入式醫(yī)療監(jiān)護系統(tǒng)設(shè)計 一、整體設(shè)計 MSP430系列單片機是美國德州儀器(TI)1996年開始推向市場的一種16位超低耗(具有精簡指令集的混合信號處理器(Mixed......

        基于A8的嵌入式Linux遠程視頻監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)(5篇)

        基于A8的嵌入式Linux遠程視頻監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn) 摘 要:將網(wǎng)絡(luò)技術(shù)和嵌入式技術(shù)相結(jié)合的遠程視頻監(jiān)控系統(tǒng)是視頻采集技術(shù)的發(fā)展趨勢,文中提出了一種基于對等網(wǎng)絡(luò)模型的嵌入......

        嵌入式數(shù)據(jù)庫SQLite在遠程監(jiān)控系統(tǒng)中的應(yīng)用,嵌入式數(shù)據(jù)庫.

        嵌入式數(shù)據(jù)庫SQLite在遠程監(jiān)控系統(tǒng)中的應(yīng)用,嵌入式數(shù)據(jù)庫,SQLite,遠程監(jiān)控系統(tǒng),arm-μ 隨著后PC時代的到來,各種各樣的新型嵌入式系統(tǒng)設(shè)備在應(yīng)用數(shù)量上已經(jīng)遠遠超過通用計算......

        煤礦主排水泵計算機遠程監(jiān)控系統(tǒng)設(shè)計

        煤礦主排水泵計算機遠程監(jiān)控系統(tǒng)設(shè)計 摘 要: 針對煤礦主排水泵的特點和當(dāng)前測控技術(shù)發(fā)展,本文介紹了一種基于模塊化的煤礦井下 主排水系統(tǒng)計算機監(jiān)控系統(tǒng)。該系統(tǒng)實時采集......

        基于嵌入式ARM的遠程視頻監(jiān)控系統(tǒng)研究.

        基于嵌入式ARM的遠程視頻監(jiān)控系統(tǒng)研究 隨著科技的進步,視頻監(jiān)控系統(tǒng)正在向嵌入式、數(shù)字化、網(wǎng)絡(luò)化方向發(fā)展。嵌入式視頻監(jiān)控系統(tǒng)充分利用大規(guī)模集成電路和網(wǎng)絡(luò)的科技成果,實......

        浙大遠程 嵌入式系統(tǒng)第4次(本站推薦)

        《嵌入式系統(tǒng)》作業(yè)四 一、判斷題 1. X86 CPU有8位、16位、32位通用寄存器各8個,共能存儲448位數(shù)據(jù)?!?2. 狀態(tài)寄存器的SF標(biāo)志位是進位標(biāo)志?!?3. 超線程技術(shù)和多線程技術(shù)......