<code id="uoems"><wbr id="uoems"></wbr></code>
    <button id="uoems"><em id="uoems"></em></button>

    基于EWS的EPA藍(lán)牙數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)

    相關(guān)專題: 無(wú)線 芯片

      摘要 針對(duì)基于EPA協(xié)議的工業(yè)現(xiàn)場(chǎng)遠(yuǎn)程訪問(wèn)和監(jiān)控問(wèn)題,簡(jiǎn)述基于MPU Rabbit 2000的EPA藍(lán)牙數(shù)據(jù)采集 系統(tǒng)的工作原理,利用MPU內(nèi)部的TCP/IP協(xié)議棧和Dynamic C開(kāi)發(fā)工具,給出有關(guān)軟件實(shí)現(xiàn)的代碼框 架結(jié)構(gòu)。在此基礎(chǔ)上,進(jìn)行系統(tǒng)的嵌入式Web服務(wù)器設(shè)計(jì)。通過(guò)CCI通信程序的設(shè)計(jì)及在系統(tǒng)界面瀏 覽中的應(yīng)用,驗(yàn)證設(shè)計(jì)的可行性。該設(shè)計(jì)對(duì)嵌入式系統(tǒng)應(yīng)用于工廠現(xiàn)場(chǎng)的無(wú)線Web接入具有重要的參 考價(jià)值。

      關(guān)鍵詞 EPA EWS Rabbit2000 動(dòng)態(tài)C 嵌入式Web服務(wù)器 HTTP協(xié)議


    引 言
      EPA(Ethernet for Plant Automation)基于以太網(wǎng)(IEEE802.3)、無(wú)線局域網(wǎng)(IEEE802.11)和藍(lán)牙(IEEE802.15)等信息網(wǎng)絡(luò)COTS(Commercial-Off-The-Shelf)通信技術(shù)以及TCP(UDP)/IP協(xié)議,是一種適用于工業(yè)自動(dòng)化控制系統(tǒng)裝置與儀器儀表間,以及工業(yè)自動(dòng)化儀器儀表間數(shù)據(jù)通信的工業(yè)控制網(wǎng)絡(luò)技術(shù)。

      藍(lán)牙技術(shù)是一種線纜替代短距離無(wú)線通信技術(shù),工業(yè)現(xiàn)場(chǎng)某些工業(yè)設(shè)備需要安裝在惡劣的工業(yè)環(huán)境中,采用藍(lán)牙技術(shù)可以避免工業(yè)現(xiàn)場(chǎng)布線遇到的問(wèn)題。嵌入式Web服務(wù)器的出現(xiàn)滿足了工業(yè)控制網(wǎng)絡(luò)低成本遠(yuǎn)程控制的需要。本文將兩者結(jié)合起來(lái)設(shè)計(jì)和開(kāi)發(fā)了滿足EPA工業(yè)控制網(wǎng)絡(luò)需求的藍(lán)牙數(shù)據(jù)采集器,以嵌入式Web服務(wù)器EWS(Embedded Web Server)技術(shù)為基礎(chǔ),結(jié)合Rabbit2000的網(wǎng)絡(luò)通信功能,利用現(xiàn)有的網(wǎng)絡(luò)技術(shù)(如HTTP、CGI、SSI等),將藍(lán)牙無(wú)線方式采集到的現(xiàn)場(chǎng)數(shù)據(jù)傳送到服務(wù)器端,服務(wù)器以網(wǎng)頁(yè)的形式,提供給遠(yuǎn)程用戶使用。


    1 基于嵌入式Web服務(wù)器的藍(lán)牙數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)

      基于嵌入式Web服務(wù)器的藍(lán)牙數(shù)據(jù)采集系統(tǒng)模型如圖l所示。藍(lán)牙數(shù)據(jù)采集器是基于EPA協(xié)議的。遠(yuǎn)程監(jiān)控用戶通過(guò)企業(yè)內(nèi)部網(wǎng)絡(luò)連接到嵌入式Web服務(wù)器上,控制藍(lán)牙芯片完成數(shù)據(jù)采集,并將采集到的數(shù)據(jù)返回嵌入式Web服務(wù)器,顯示在遠(yuǎn)程管理終端的Web瀏覽器上。



    2.1系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)

      基于EPA協(xié)議的藍(lán)牙數(shù)據(jù)采集器的系統(tǒng)結(jié)構(gòu)如圖2所示。它包括微處理器、藍(lán)牙模塊、數(shù)模(D/A)轉(zhuǎn)換模塊、模數(shù)(A/D)轉(zhuǎn)換模塊、液晶顯示模塊、Flash存儲(chǔ)器以及以太網(wǎng)控制器模塊,其中:藍(lán)牙模塊、數(shù)模(D/A)轉(zhuǎn)換模塊、模數(shù)(A/D)轉(zhuǎn)換模塊以及液晶顯示模塊通過(guò)其接口電路分別與微處理器的串行通信接口連接。藍(lán)牙模塊采用的串口波特率是57600bps;微處理器的工作主頻率是11.0592MHz、從頻率是32.768kHz;藍(lán)牙模塊的工作電壓是3.3V,這需要一個(gè)5V到3.3V的電壓轉(zhuǎn)換電路;圖2中芯片沒(méi)有標(biāo)明電源引線的都需提供5V電壓。



    2.2工作原理

      ①打開(kāi)藍(lán)牙數(shù)據(jù)采集器的電源開(kāi)關(guān)時(shí),系統(tǒng)進(jìn)行自檢。
     、谙到y(tǒng)自檢通過(guò)后,藍(lán)牙數(shù)據(jù)采集器對(duì)藍(lán)牙進(jìn)行初始化,并在其覆蓋范圍內(nèi)搜尋另外帶有藍(lán)牙芯片的現(xiàn)場(chǎng)設(shè)備。
     、廴舭l(fā)現(xiàn)上述設(shè)備,各自的鏈路管理器就會(huì)發(fā)現(xiàn)對(duì)方,就可以在需要時(shí)鑒權(quán)和認(rèn)證后建立通信關(guān)系。
     、茉谛枰M(jìn)行現(xiàn)場(chǎng)數(shù)據(jù)采集時(shí),將A/D轉(zhuǎn)換模塊的輸入端口通過(guò)外圍接口電路與被采集對(duì)象相連。A/D轉(zhuǎn)換模塊獲得啟動(dòng)命令后,采集現(xiàn)場(chǎng)數(shù)據(jù)并交給微處理器進(jìn)行處理,處理后的數(shù)據(jù)通過(guò)藍(lán)牙模塊發(fā)送給相關(guān)控制設(shè)備,也可以將處理后的數(shù)據(jù)傳給嵌入式Wek·服務(wù)器。
     、萃瑫r(shí),系統(tǒng)還配有一路D/A轉(zhuǎn)換輸出,在需要模擬量輸出時(shí),可將D/A轉(zhuǎn)換器的輸出端口通過(guò)外圍接口電路與被控對(duì)象相連,程序?qū)⒖刂浦噶畎l(fā)給D/A轉(zhuǎn)換模塊,D/A轉(zhuǎn)換模塊接收到控制指令后轉(zhuǎn)化為模擬量傳送給現(xiàn)場(chǎng)設(shè)備,使現(xiàn)場(chǎng)設(shè)備按照控制指令進(jìn)行工作。

    2.3軟件總體設(shè)計(jì)

      基于EPA協(xié)議的藍(lán)牙數(shù)據(jù)采集系統(tǒng)軟件結(jié)構(gòu)示意圖如圖3所示。



    3 嵌入式web服務(wù)器的實(shí)現(xiàn)

    3.1嵌入式web服務(wù)器體系結(jié)構(gòu)

      該系統(tǒng)的嵌入式Web服務(wù)器體系結(jié)構(gòu)如圖4所示。嵌入式Web服務(wù)器在本系統(tǒng)中處于用戶和應(yīng)用系統(tǒng)的中間。嵌入式Web服務(wù)器必須提供若干機(jī)制實(shí)現(xiàn)對(duì)現(xiàn)場(chǎng)設(shè)備的監(jiān)視和控制,為瀏覽器提供和發(fā)送Web頁(yè)并處理瀏覽器提交的數(shù)據(jù)[引。嵌入式Welh服務(wù)器設(shè)計(jì)難點(diǎn)之一是利用Rabbit2000來(lái)實(shí)現(xiàn)通過(guò)瀏覽器進(jìn)行遠(yuǎn)程訪問(wèn)的能力,本系統(tǒng)采用cGI和SSI技術(shù)來(lái)實(shí)現(xiàn);難點(diǎn)之二是嵌入式通信程序開(kāi)發(fā)。本系統(tǒng)以Rabbit2000微處理器作為控制芯片,利用z—world公司提供的支持TcP/IP協(xié)議的通信子程序庫(kù),在Dynamic c集成開(kāi)發(fā)環(huán)境下可以實(shí)現(xiàn)快速開(kāi)發(fā)。

    3.2前臺(tái)FORM表單的編制和界面設(shè)計(jì)

      用戶提交的各種命令請(qǐng)求主要是采取F()RM表單形式提交給cGI程序的[引。Fc)RM是HTML,(超文本標(biāo)記語(yǔ)言)的一種標(biāo)識(shí),可以用任何一種文本編輯器來(lái)編輯,存為.html文件可以被w’WW瀏覽器識(shí)別。數(shù)據(jù)輸入盡量采用下拉框輸入,界面友好。

    3.3 HTTP協(xié)議處理流程

      HTTP協(xié)議處理的設(shè)計(jì)是嵌入式Web服務(wù)器系統(tǒng)的核心部分。CGI是一個(gè)用于定義Web服務(wù)器與外部程序之間通信方式的標(biāo)準(zhǔn),可以用作一個(gè)擴(kuò)展Web服務(wù)器功能的接口,通過(guò)CGI可以實(shí)現(xiàn)與訪問(wèn)Web網(wǎng)頁(yè)的用戶交互。

      從本質(zhì)上講CGI就是一個(gè)服務(wù)機(jī)制。當(dāng)用戶通過(guò)Web瀏覽器向HTTP服務(wù)器發(fā)出一條具有GET或POST命令格式的請(qǐng)求,服務(wù)的具體步驟如下:
     、偾芭_(tái)客戶機(jī)利用瀏覽器使用TCP/IP協(xié)議,與服務(wù)器建立連接,發(fā)送URL請(qǐng)求;
      ②服務(wù)器調(diào)用存入Rabbit2000芯片里的CGI程序,使用客戶機(jī)傳遞的參數(shù)作為CGI程序的參數(shù);
     、跜GI以能被識(shí)別的格式返回處理結(jié)果給HTTP服務(wù)器;
     、蹾TTP服務(wù)器將數(shù)據(jù)返回客戶端處理,并通過(guò)瀏覽器顯示CGI執(zhí)行的結(jié)果。

      圖5顯示了上述瀏覽器和服務(wù)器通過(guò)CGI程序?qū)崿F(xiàn)交互的全過(guò)程。



      服務(wù)器端附件(SSI)是一種簡(jiǎn)單的動(dòng)態(tài)Web頁(yè)面生成技術(shù)。SSI定義了一組可以嵌于HTML文本中的標(biāo)記,在送往客戶端瀏覽器前,Web服務(wù)器先作預(yù)處理?梢园裇SI想象成嵌于HTML頁(yè)面的特殊程序。

      下面舉一個(gè)藍(lán)牙數(shù)據(jù)采集系統(tǒng)進(jìn)行藍(lán)牙芯片初始化的例子,其中SSI的命令字為exec,參數(shù)為showinitial,通過(guò)HttpSpec http_flashspee[]里的{ HTTPSPEC _ FUNCTION, “ showinitial”,0. show_initial,0,NULL,NULL}語(yǔ)句與主程序里面CGI函數(shù)中的int show_initial(Http-State*state)建立關(guān)系,并返回此函數(shù)結(jié)果在HTML文本里面顯示。
      

      
    <1NPUT TYPE=”SUB-MIT”VALUE=”初始化”></TD>
      
      </TR></TABLE>
      </FORM></TD>
    3.4 后臺(tái)DynamicC程序?qū)崿F(xiàn)
      EPA協(xié)議中采用了UDP協(xié)議來(lái)傳送報(bào)文,不需要證實(shí),滿足工業(yè)現(xiàn)場(chǎng)的實(shí)時(shí)要求。使用DynamicC編譯環(huán)境實(shí)現(xiàn)UDP報(bào)文傳輸通信程序主框架代碼如下:
      htp_init();
      init_dateform(); //設(shè)置靜態(tài)數(shù)據(jù)
      init_dynamicwebdata();//初始化動(dòng)態(tài)Web數(shù)據(jù)
      tcp_reserveport(80); //標(biāo)志80端口為服務(wù)器端
      while(1){
      tcp_tick(NULL);
      http_handler(); //處理HTTP
      costate{
      waitfor(udp_peek(&sock, &udi));
      tcp_tick(NULL);
      Handle_Udp(&sock,&udi);
      }
      }
      在Web服務(wù)器程序中編寫(xiě)用戶的自定義函數(shù),用來(lái)處理從用戶端瀏覽器發(fā)送過(guò)來(lái)的CGI請(qǐng)求。在DynamicC中通過(guò)結(jié)構(gòu)HTTPSPEC_FILE將動(dòng)態(tài)網(wǎng)頁(yè)與靜態(tài)網(wǎng)頁(yè)結(jié)合起來(lái),通過(guò)結(jié)構(gòu)HTTPSPEC_FUNCTION將用戶自定義函數(shù)和每一個(gè)CGI請(qǐng)求聯(lián)系起來(lái)。這樣,當(dāng)一個(gè)CGI請(qǐng)求被觸發(fā)且送到Web服務(wù)器上時(shí),服務(wù)器程序就將尋找相應(yīng)的函數(shù)進(jìn)行處理,并返回結(jié)果。
      {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,“藍(lán)牙地址”);
      sspec_setfvdesc(form,var,“藍(lán)牙本地地址”);
      sspec_setfvlen(form,var,12);

    結(jié) 語(yǔ)

      文章重點(diǎn)探討了基于嵌入式Web服務(wù)器的EPA藍(lán)牙數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)方法與實(shí)現(xiàn)中的一些關(guān)鍵問(wèn)題。此系統(tǒng)的測(cè)試充分表明,利用嵌入式技術(shù)在嵌入式系統(tǒng)中開(kāi)發(fā)基于EPA協(xié)議的藍(lán)牙數(shù)據(jù)采集系統(tǒng)的嵌入式Web服務(wù)器是切實(shí)可行的。工控系統(tǒng)基于嵌入式Web服務(wù)器的遠(yuǎn)程監(jiān)控維護(hù)方式將有效降低監(jiān)控運(yùn)行維護(hù)成本、提高監(jiān)控運(yùn)行維護(hù)效率,因而具有很大的應(yīng)用前景和推廣價(jià)值。
    作者:諶震文 占軍 鄧曉紅 易明華   來(lái)源:?jiǎn)纹瑱C(jī)及嵌入式系統(tǒng)應(yīng)用

    微信掃描分享本文到朋友圈
    掃碼關(guān)注5G通信官方公眾號(hào),免費(fèi)領(lǐng)取以下5G精品資料
  • 1、回復(fù)“YD5GAI”免費(fèi)領(lǐng)取《中國(guó)移動(dòng):5G網(wǎng)絡(luò)AI應(yīng)用典型場(chǎng)景技術(shù)解決方案白皮書(shū)
  • 2、回復(fù)“5G6G”免費(fèi)領(lǐng)取《5G_6G毫米波測(cè)試技術(shù)白皮書(shū)-2022_03-21
  • 3、回復(fù)“YD6G”免費(fèi)領(lǐng)取《中國(guó)移動(dòng):6G至簡(jiǎn)無(wú)線接入網(wǎng)白皮書(shū)
  • 4、回復(fù)“LTBPS”免費(fèi)領(lǐng)取《《中國(guó)聯(lián)通5G終端白皮書(shū)》
  • 5、回復(fù)“ZGDX”免費(fèi)領(lǐng)取《中國(guó)電信5GNTN技術(shù)白皮書(shū)
  • 6、回復(fù)“TXSB”免費(fèi)領(lǐng)取《通信設(shè)備安裝工程施工工藝圖解
  • 7、回復(fù)“YDSL”免費(fèi)領(lǐng)取《中國(guó)移動(dòng)算力并網(wǎng)白皮書(shū)
  • 8、回復(fù)“5GX3”免費(fèi)領(lǐng)取《R1623501-g605G的系統(tǒng)架構(gòu)1
  • 本周熱點(diǎn)本月熱點(diǎn)

     

      最熱通信招聘

    業(yè)界最新資訊


      最新招聘信息

      <button id="uoems"></button>