• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 關 閉

    新聞中心

    EEPW首頁 > 工控自動化 > 專題 > 基于EWS的EPA藍牙數據采集系統設計

    基于EWS的EPA藍牙數據采集系統設計

    作者: 時間:2008-01-31 來源: 收藏

    引 言
        (Ethernet for Plant Automation)基于以太網(IEEE802.3)、無線局域網(IEEE802.11)和藍牙(IEEE802.15)等信息網絡COTS(Commercial-Off-The-Shelf)通信技術以及TCP(UDP)/IP協議,是一種適用于工業自動化控制系統裝置與儀器儀表間,以及工業自動化儀器儀表間數據通信的工業控制網絡技術。
        藍牙技術是一種線纜替代短距離無線通信技術,工業現場某些工業設備需要安裝在惡劣的工業環境中,采用藍牙技術可以避免工業現場布線遇到的問題。嵌入式Web服務器的出現滿足了工業控制網絡低成本遠程控制的需要。本文將兩者結合起來設計和開發了滿足工業控制網絡需求的藍牙數據采集器,以嵌入式Web服務器(Embedded Web Server)技術為基礎,結合Rabbit2000的網絡通信功能,利用現有的網絡技術(如HTTP、CGI、SSI等),將藍牙無線方式采集到的現場數據傳送到服務器端,服務器以網頁的形式,提供給遠程用戶使用。

    本文引用地址:http://www.czjhyjcfj.com/article/78493.htm


    1 基于嵌入式Web服務器的藍牙數據采集系統設計
        基于嵌入式Web服務器的藍牙數據采集系統模型如圖l所示。藍牙數據采集器是基于協議的。遠程監控用戶通過企業內部網絡連接到嵌入式Web服務器上,控制藍牙芯片完成數據采集,并將采集到的數據返回嵌入式Web服務器,顯示在遠程管理終端的Web瀏覽器上。

     

    2.1系統硬件結構設計
        基于EPA協議的藍牙數據采集器的系統結構如圖2所示。它包括微處理器、藍牙模塊、數模(D/A)轉換模塊、模數(A/D)轉換模塊、液晶顯示模塊、Flash存儲器以及以太網控制器模塊,其中:藍牙模塊、數模(D/A)轉換模塊、模數(A/D)轉換模塊以及液晶顯示模塊通過其接口電路分別與微處理器的串行通信接口連接。藍牙模塊采用的串口波特率是57600bps;微處理器的工作主頻率是11.0592MHz、從頻率是32.768kHz;藍牙模塊的工作電壓是3.3V,這需要一個5V到3.3V的電壓轉換電路;圖2中芯片沒有標
    明電源引線的都需提供5V電壓。

     

    2.2工作原理
        ①打開藍牙數據采集器的電源開關時,系統進行自檢。
        ②系統自檢通過后,藍牙數據采集器對藍牙進行初始化,并在其覆蓋范圍內搜尋另外帶有藍牙芯片的現場設備。
        ③若發現上述設備,各自的鏈路管理器就會發現對方,就可以在需要時鑒權和認證后建立通信關系。
        ④在需要進行現場數據采集時,將A/D轉換模塊的輸入端口通過外圍接口電路與被采集對象相連。A/D轉換模塊獲得啟動命令后,采集現場數據并交給微處理器進行處理,處理后的數據通過藍牙模塊發送給相關控制設備,也可以將處理后的數據傳給嵌入式Wek·服務器。
        ⑤同時,系統還配有一路D/A轉換輸出,在需要模擬量輸出時,可將D/A轉換器的輸出端口通過外圍接口電路與被控對象相連,程序將控制指令發給D/A轉換模塊,D/A轉換模塊接收到控制指令后轉化為模擬量傳送給現場設備,使現場設備按照控制指令進行工作。
    2.3軟件總體設計
        基于EPA協議的藍牙數據采集系統軟件結構示意圖如圖3所示。

     

    3  嵌入式web服務器的實現
    3.1嵌入式web服務器體系結構
        該系統的嵌入式Web服務器體系結構如圖4所示。嵌入式Web服務器在本系統中處于用戶和應用系統的中間。嵌入式Web服務器必須提供若干機制實現對現場設備的監視和控制,為瀏覽器提供和發送Web頁并處理瀏覽器提交的數據[引。嵌入式Welh服務器設計難點之一是利用Rabbit2000來實現通過瀏覽器進行遠程訪問的能力,本系統采用cGI和SSI技術來實現;難點之二是嵌入式通信程序開發。本系統以Rabbit2000微處理器作為控制芯片,利用z—world公司提供的支持TcP/IP協議的通信子程序庫,在Dynamic c集成開發環境下可以實現快速開發。

    3.2前臺FORM表單的編制和界面設計
        用戶提交的各種命令請求主要是采取F()RM表單形式提交給cGI程序的[引。Fc)RM是HTML,(超文本標記語言)的一種標識,可以用任何一種文本編輯器來編輯,存為.html文件可以被w’WW瀏覽器識別。數據輸入盡量采用下拉框輸入,界面友好。
    3.3處理流程
       處理的設計是嵌入式Web服務器系統的核心部分。CGI是一個用于定義Web服務器與外部程序之間通信方式的標準,可以用作一個擴展Web服務器功能的接口,通過CGI可以實現與訪問Web網頁的用戶交互。
        從本質上講CGI就是一個服務機制。當用戶通過Web瀏覽器向HTTP服務器發出一條具有GET或POST命令格式的請求,服務的具體步驟如下:
        ①前臺客戶機利用瀏覽器使用TCP/IP協議,與服務器建立連接,發送URL請求;
        ②服務器調用存入Rabbit2000芯片里的CGI程序,使用客戶機傳遞的參數作為CGI程序的參數;
        ③CGI以能被識別的格式返回處理結果給HTTP服務器;
        ④HTTP服務器將數據返回客戶端處理,并通過瀏覽器顯示CGI執行的結果。
        圖5顯示了上述瀏覽器和服務器通過CGI程序實現交互的全過程。

     

        服務器端附件(SSI)是一種簡單的動態Web頁面生成技術。SSI定義了一組可以嵌于HTML文本中的標記,在送往客戶端瀏覽器前,Web服務器先作預處理。可以把SSI想象成嵌于HTML頁面的特殊程序。
        下面舉一個藍牙數據采集系統進行藍牙芯片初始化的例子,其中SSI的命令字為exec,參數為showinitial,通過HttpSpec http_flashspee[]里的{ HTTPSPEC _ FUNCTION, “ showinitial”,0. show_initial,0,NULL,NULL}語句與主程序里面CGI函數中的int show_initial(Http-State*state)建立關系,并返回此函數結果在HTML文本里面顯示。
       


       
    <1NPUT TYPE=”SUB-MIT”VALUE=”初始化”></TD>
        [an error occurred while processing the directive]
        </TR></TABLE>
        </FORM></TD>
    3.4 后臺DynamicC程序實現
        EPA協議中采用了UDP協議來傳送報文,不需要證實,滿足工業現場的實時要求。使用DynamicC編譯環境實現UDP報文傳輸通信程序主框架代碼如下:
        htp_init();
        init_dateform(); //設置靜態數據
        init_dynamicwebdata();//初始化動態Web數據
        tcp_reserveport(80); //標志80端口為服務器端
        while(1){
        tcp_tick(NULL);
        http_handler(); //處理HTTP
        costate{
        waitfor(udp_peek(&sock, &udi));
        tcp_tick(NULL);
        Handle_Udp(&sock,&udi);
        }
        }
        在Web服務器程序中編寫用戶的自定義函數,用來處理從用戶端瀏覽器發送過來的CGI請求。在DynamicC中通過結構HTTPSPEC_FILE將動態網頁與靜態網頁結合起來,通過結構HTTPSPEC_FUNCTION將用戶自定義函數和每一個CGI請求聯系起來。這樣,當一個CGI請求被觸發且送到Web服務器上時,服務器程序就將尋找相應的函數進行處理,并返回結果。
        {HTTPSPEC_FILE, “/index.html”,index_html,NULL,0,NULL,NULL}, {HTTPSPEC_FUNCTION, “/initial.cgi”,0,initial,0,NULL,NULL),{HTTPSPEC_FUNCTION, “/setuplink.egi”,0,setuplink,0,NULL,NULL},界面顯示效果部分代碼如下:
        var=sspec_addvariable (“getdata2”,&getdata[1],PTRl6,"%s",SERVER_HTTP);
        var=sspec_addfv(form,var);
        sspec_setfvname(form,var,“藍牙地址”);
        sspec_setfvdesc(form,var,“藍牙本地地址”);
        sspec_setfvlen(form,var,12);

    結 語
        文章重點探討了基于嵌入式Web服務器的EPA藍牙數據采集系統的設計方法與實現中的一些關鍵問題。此系統的測試充分表明,利用嵌入式技術在嵌入式系統中開發基于EPA協議的藍牙數據采集系統的嵌入式Web服務器是切實可行的。工控系統基于嵌入式Web服務器的遠程監控維護方式將有效降低監控運行維護成本、提高監控運行維護效率,因而具有很大的應用前景和推廣價值。

     



    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 桐梓县| 兴安盟| 阿坝| 黄龙县| 万宁市| 乌鲁木齐县| 瑞昌市| 青铜峡市| 灌阳县| 新余市| 宁蒗| 沐川县| 嘉荫县| 宁津县| 筠连县| 保定市| 博客| 福贡县| 安福县| 福贡县| 务川| 麻城市| 河东区| 徐汇区| 绿春县| 八宿县| 普陀区| 河间市| 东乌珠穆沁旗| 余干县| 北票市| 八宿县| 龙川县| 尉犁县| 栾川县| 泰和县| 镇远县| 阿城市| 城步| 二连浩特市| 大埔县|