《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 業(yè)界動(dòng)態(tài) > 一種基于嵌入式Internet的控制系統(tǒng)

一種基于嵌入式Internet的控制系統(tǒng)

2009-03-03
作者:徐毓軍 楊佃福

  摘? 要: 嵌入式Internet技術(shù)被廣泛應(yīng)用于現(xiàn)場儀表和工業(yè)設(shè)備層是工業(yè)控制網(wǎng)絡(luò)的發(fā)展趨勢。介紹了一種基于該技術(shù)的控制系統(tǒng)的軟、硬件構(gòu)成以及基于嵌入式Internet實(shí)現(xiàn)的一些細(xì)節(jié)問題,并說明了其意義和市場前景。?

  關(guān)鍵詞:? 嵌入式Internet? 現(xiàn)場總線? 以太網(wǎng)? 控制系統(tǒng)?

?

  今天,計(jì)算機(jī)和網(wǎng)絡(luò)已經(jīng)進(jìn)入后PC時(shí)代,嵌入式系統(tǒng)被廣泛應(yīng)用。最近在IT行業(yè)特別流行的就是嵌入式操作系統(tǒng),如Windows CE和一些公司用Linux開發(fā)的嵌入式操作系統(tǒng)。還有一些公司提供了易于開發(fā)、性價(jià)比較高的嵌入式開發(fā)工具。它們一般都支持TCP/IP協(xié)議,可以實(shí)現(xiàn)Web 服務(wù)器功能。家電和儀表上網(wǎng)是嵌入式系統(tǒng)極大發(fā)展的動(dòng)力和原因。?

  在現(xiàn)場儀表和工業(yè)設(shè)備層應(yīng)用嵌入式Internet技術(shù)是工業(yè)控制網(wǎng)絡(luò)的一個(gè)發(fā)展趨勢。與現(xiàn)場總線相比,這些技術(shù)不僅為開發(fā)者提供了大量的工具和函數(shù)庫,而且沒有傳統(tǒng)的客戶端,減少了二次開發(fā)的工作量;完全實(shí)現(xiàn)了分布式的系統(tǒng)結(jié)構(gòu),系統(tǒng)可靠性大大提高;另外,以太網(wǎng)一般都基于TCP/IP協(xié)議,使得整個(gè)網(wǎng)絡(luò)只有一種底層通訊協(xié)議,可以滿足控制系統(tǒng)各個(gè)層次的要求,不僅使得企業(yè)信息網(wǎng)絡(luò)和控制網(wǎng)絡(luò)得到統(tǒng)一,而且易于和Internet實(shí)現(xiàn)無縫連接;通過Web瀏覽器,用戶可以在任何時(shí)候、任何地方監(jiān)控現(xiàn)場數(shù)據(jù)和設(shè)備,還可以在遠(yuǎn)方對現(xiàn)場設(shè)備進(jìn)行診斷和軟件升級[1~2]。?

1 系統(tǒng)構(gòu)成和功能?

  整個(gè)系統(tǒng)的結(jié)構(gòu)如圖1所示。該系統(tǒng)包括數(shù)據(jù)庫服務(wù)器、Web服務(wù)器、Internet 客戶端和現(xiàn)場節(jié)點(diǎn)。?

?

?

  服務(wù)器包括數(shù)據(jù)庫服務(wù)器和Web 服務(wù)器,它們并不是必需的??紤]到某些工業(yè)企業(yè)要求存放大量的歷史數(shù)據(jù),并且要和管理信息系統(tǒng)交換數(shù)據(jù),在設(shè)計(jì)時(shí)我們把它們加入了系統(tǒng)。它們可以是在兩臺機(jī)器上,當(dāng)系統(tǒng)規(guī)模比較小時(shí),也可以在一臺PC機(jī)上。在軟件上,數(shù)據(jù)庫服務(wù)器實(shí)現(xiàn)了與現(xiàn)場節(jié)點(diǎn)的Socket通訊,并通過VC編的應(yīng)用程序?qū)崿F(xiàn)了各種高級的控制功能塊。用戶可以在網(wǎng)頁上通過Web服務(wù)器利用Java Applet和Java Beans組件技術(shù)監(jiān)控實(shí)時(shí)數(shù)據(jù),并且可以通過JSP和JDBC技術(shù)修改系統(tǒng)的組態(tài)信息。本文重點(diǎn)介紹現(xiàn)場節(jié)點(diǎn)(嵌入式系統(tǒng))的軟硬件構(gòu)成及其Internet功能實(shí)現(xiàn)的細(xì)節(jié)。?

2 現(xiàn)場節(jié)點(diǎn)的軟硬件構(gòu)成?

  現(xiàn)場節(jié)點(diǎn)包括傳感器、執(zhí)行機(jī)構(gòu)或其它智能儀表,也可以是控制器。而這種控制器可以通過RS485、開關(guān)量或模擬量信號和儀表相連。它們都嵌入了美國Z_WORLD公司的RCM2100系列嵌入式開發(fā)系統(tǒng)(我們不選用嵌入式操作系統(tǒng)首先是出于成本的考慮,帶有TCP/IP協(xié)議庫和Web 服務(wù)器功能的實(shí)時(shí)操作系統(tǒng)報(bào)價(jià)一般都要700~800美元以上)。事實(shí)上在很多場合并不需要帶有這么強(qiáng)大功能的實(shí)時(shí)操作系統(tǒng)。很多嵌入式系統(tǒng)的核心都由8位微處理器硬件和嵌入式軟件構(gòu)成,這些微處理器的片內(nèi)資源比較少,相應(yīng)的軟件也不會太龐大,完全可以完成一些簡單的網(wǎng)絡(luò)通訊和控制功能。?

  該開發(fā)板的硬件組成如圖2所示。它由5V直流供電,溫度范圍為-40~70℃,濕度可以達(dá)到5~95%RH,非常適合于工業(yè)控制的要求。它集成了速度達(dá)30MHz的Rabbit 2000微處理器、512K Flash RAM、512K SRAM和RJ-45以太網(wǎng)接口。它有5個(gè)8位并行接口,其中D口和E口的一部分用于和Realtek的以太網(wǎng)卡控制芯片相連;C口預(yù)留出來,可以用于RS485或RS232串行通訊。在原開發(fā)板基礎(chǔ)上,把應(yīng)用程序放在Flash RAM里,其它要經(jīng)常修改的參數(shù)和實(shí)時(shí)數(shù)據(jù)放在SRAM里,加入I/O采集的硬件電路和總線相連,然后利用該公司的Dynamic C開發(fā)包就可以方便地開發(fā)出自己的帶Web服務(wù)器功能的智能儀表。另外Z_WORLD公司本身還在此基礎(chǔ)上開發(fā)出了一系列PLC模塊和遠(yuǎn)程I/O模塊,可供選用[3]。?

?

?

  Dynamic C是一個(gè)嵌入式軟件開發(fā)語言,符合ASCII C標(biāo)準(zhǔn),提供了編譯、調(diào)試、仿真和程序加載功能。與一般的C語言不一樣的是,它在語言和函數(shù)上都是為嵌入式系統(tǒng)開發(fā)考慮的,如方便地支持對I/O口的操作、包含一個(gè)底層的BIOS庫、在一個(gè)程序內(nèi)支持多進(jìn)程、支持中斷服務(wù)和匯編語言的嵌入、支持函數(shù)鏈等。并且提供了一系列函數(shù)和宏來支持嵌入式系統(tǒng),支持串口通訊和網(wǎng)絡(luò)操作,包括TCP/IP、Http、Telnet和Ftp協(xié)議,支持CGI(Comm Gateway Interface) ,即公共網(wǎng)關(guān)接口,可以方便地與硬件打交道并實(shí)現(xiàn)Web服務(wù)器功能。該設(shè)備上的軟件結(jié)構(gòu)可參見圖1的相關(guān)部分,包括對現(xiàn)場I/O數(shù)據(jù)的采集、利用Socket與數(shù)據(jù)庫服務(wù)器進(jìn)行通訊、實(shí)現(xiàn)與控制計(jì)算有關(guān)的一些功能塊、提供Web服務(wù)器功能這四個(gè)主要模塊。?

  數(shù)據(jù)采集模塊可以直接讀寫I/O,也可以通過串口通訊取得數(shù)據(jù),將數(shù)據(jù)放入指定的文件供Java Applet訪問。在與服務(wù)器通訊方面,我們利用其提供的TCP/IP開發(fā)包所帶的宏和函數(shù)與服務(wù)器進(jìn)行比較可靠的通訊,通過宏MY_IPADRESS,MY_GATEWAY和MY_NETMASK可以對網(wǎng)絡(luò)配置,進(jìn)行Socket通訊。定義功能塊主要包括用戶名和密碼權(quán)限管理、各種輸入輸出量定義和報(bào)警、設(shè)備管理、計(jì)算功能、PID調(diào)節(jié)和其它一些先進(jìn)的控制功能塊,其定義可以通過數(shù)據(jù)庫服務(wù)器或者網(wǎng)頁進(jìn)行組態(tài)和修改[4~5]。?

3 嵌入式Internet的實(shí)現(xiàn)?

  嵌入式Internet(這里主要指Web服務(wù)器)功能塊主要是通過CGI程序來獲取用戶的請求、查詢條件并利用應(yīng)用程序?yàn)槠涮峁┑暮笈_服務(wù),結(jié)果使用HTML方式描述,并直接回送到客戶端的瀏覽器。CGI是Web服務(wù)器在調(diào)用外部程序時(shí)的接口規(guī)范協(xié)議,它規(guī)定了一套標(biāo)準(zhǔn)的參數(shù)格式和環(huán)境變量,擴(kuò)展Web服務(wù)器的功能,使之能夠執(zhí)行一些Web服務(wù)器本身不能完成的任務(wù),如與各類應(yīng)用服務(wù)器通訊、訪問數(shù)據(jù)庫等。這里我們通過CGI和HTML Form機(jī)制可以從瀏覽器中得到用戶組態(tài)和控制輸出等簡單操作的輸入信息。作為Web服務(wù)器外部進(jìn)程運(yùn)行的CGI程序與Web服務(wù)器之間的通訊屬于進(jìn)程間通信,開銷大、速度低;當(dāng)有多份并發(fā)的同樣請求時(shí),必須為每個(gè)請求建立一個(gè)進(jìn)程;若Web服務(wù)器重復(fù)收到多個(gè)同樣的請求,必須不斷重復(fù)準(zhǔn)備地址空間、建立運(yùn)行進(jìn)程、回收空間、撤銷進(jìn)程的過程。因此與當(dāng)前流行的ASP、JSP和PHP方式比起來,CGI方式的進(jìn)程本質(zhì)上效率不高。Dynamic C只支持CGI,但考慮到工業(yè)控制的實(shí)際情況,不會有大量請求同時(shí)并發(fā),因此CGI完全可以滿足要求。?

  我們還使用了Java Applet技術(shù),在客戶端實(shí)現(xiàn)更為友好的交互式顯示模式并提供實(shí)時(shí)數(shù)據(jù)。圖3給出了Web服務(wù)器功能塊在客戶端實(shí)現(xiàn)的層次結(jié)構(gòu)。?

?

?

  在Dynamic C里,通過結(jié)構(gòu) HTTPSPEC_FUNCTION將每一個(gè)CGI請求和特定的用戶自定義函數(shù)聯(lián)系起來。我們可以在函數(shù)里處理CGI請求,具體地說,所有的網(wǎng)頁都是通過這些自定義函數(shù)調(diào)用系統(tǒng)的cgi_sendstring函數(shù)來動(dòng)態(tài)生成的,這樣就可以實(shí)現(xiàn)訪問的安全控制,只有合法的用戶才能進(jìn)入主畫面來生成需要的網(wǎng)頁。一些網(wǎng)站Email用戶認(rèn)證也是通過這種方式實(shí)現(xiàn)的。與工業(yè)控制相適應(yīng),我們可以動(dòng)態(tài)生成開關(guān)量輸入輸出、模擬量輸入輸出、PID模塊配置、實(shí)時(shí)趨勢、實(shí)時(shí)報(bào)警和棒圖等頁面。另外所有輸出和用戶參數(shù)設(shè)置也是通過再次調(diào)用后臺的CGI程序進(jìn)行處理,將其寫入文件或直接作用于執(zhí)行機(jī)構(gòu),然后重新生成新的網(wǎng)頁來實(shí)現(xiàn)。用戶在進(jìn)行具體工程應(yīng)用的時(shí)候,也只要將實(shí)際工程的參數(shù)在此基礎(chǔ)上進(jìn)行組態(tài)就可以。?

  我們通過嵌在發(fā)送到客戶端的HTML語言里并在客戶端執(zhí)行的Java Applet程序訪問該現(xiàn)場結(jié)點(diǎn)文件,來刷新實(shí)時(shí)數(shù)據(jù),這樣通過Java語言可以在網(wǎng)頁上提供質(zhì)量比較高的畫面。Java Applet的類文件放在Flash RAM里,設(shè)備斷電后不會丟失。而實(shí)時(shí)采集的數(shù)據(jù)要以文件的形式放在SRAM里,供Applet 程序訪問。我們將不同類型的參數(shù)分別放在相應(yīng)的文件里。對于前者,可以在PC機(jī)上先編譯好,然后在編譯Dynamic程序時(shí)加載到設(shè)備的文件系統(tǒng)中去,如#ximport samples/http/pages/ailist.class就把Applet類放到了設(shè)備中。而ailist_class代表該文件的首物理地址,是一個(gè)長整型數(shù),我們可以通過該地址方便地訪問文件。對于后者我們可以先用xalloc函數(shù)開辟一段內(nèi)存地址,并返回其首址;然后用sspec_addxmemfile(char* name, long fileloc, word servermask)就可將文件名和內(nèi)存地址聯(lián)系起來。fileloc是首址,其開始的4個(gè)字節(jié)是一個(gè)長整型數(shù),用來表明文件的長度;name是文件名;然后利用xmem2root函數(shù)和root2xmem函數(shù)就可以方便地訪問內(nèi)存,對文件進(jìn)行讀寫。?

  現(xiàn)場總線設(shè)備昂貴,這種系統(tǒng)在價(jià)格上完全有優(yōu)勢,在智能家居和樓宇自動(dòng)化方面將會有一定的市場;同時(shí)它也是一些遠(yuǎn)程監(jiān)控的很好的選擇方案,特別是儀表上網(wǎng)的功能具有相當(dāng)大的吸引力。制定國內(nèi)的工業(yè)以太網(wǎng)標(biāo)準(zhǔn)和研發(fā)類似系統(tǒng)已被列入“十五“計(jì)劃。相信隨著寬帶網(wǎng)應(yīng)用在國內(nèi)的升溫和企業(yè)對信息集成度要求的提高,其應(yīng)用前景會更好。?

參考文獻(xiàn)?

1 Ohan Sakinnan.Integrate Internet Solutions into Your Energy Management Network. IEEE, 1998. 3?

2 Aacck W.Szymensky.Embedded Internet Technology in Process Control Device. IEEE, 2000.9?

3 Dynamic C TCP/IP 7.04T Dev Kit Docs.Z-World Inc.,1998?

4 王錦標(biāo).過程計(jì)算機(jī)控制.北京:清華大學(xué)出版社,1992?

5 柴廷躍.應(yīng)用軟件系統(tǒng)分析.北京:清華大學(xué)出版社, 2000
本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 天天躁日日躁狠狠躁一级毛片| 欧美大胆a级视频免费| 国产福利永久在线视频无毒不卡| 一本大道香蕉高清视频app| 李老汉的性生生活2| 人妻尝试又大又粗久久| 色屁屁一区二区三区视频国产 | 亚洲欧美国产精品| 美女在线免费观看| 国产成人av一区二区三区在线 | 无码人妻H动漫中文字幕| 亚洲中文字幕av在天堂| 男人j进女人p免费动态图| 国产一级做a爰片久久毛片男| 波多野结衣久久| 精品国产一区二区三区免费 | 国内精品视频在线播放一区| 东京热无码一区二区三区av| 日韩在线观看完整版电影| 亚洲小视频在线| 特级毛片a级毛片在线播放www| 四虎影院最新域名| 成人福利免费视频| 国产美女a做受大片观看| swag台湾在线| 成年免费视频黄网站在线观看| 久久香蕉国产线看精品| 欧美最猛黑人猛交69| 你懂的在线播放| 美国式禁忌矿桥矿17集| 国产在线播放你懂的| 三级黄色毛片视频| 国内自产少妇自拍区免费| 一区二区三区午夜| 护士与税务干部完整2av| 久久精品国产99精品国产亚洲性色 | 日韩高清一级毛片| 亚洲日韩乱码久久久久久| 狠狠操精品视频| 免费看男阳茎进女阳道动态图 | 色噜噜狠狠色综合日日|