新聞中心

EEPW首頁 > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > IPv6環(huán)境下信息家電系統(tǒng)網(wǎng)絡(luò)終端設(shè)計(jì)

IPv6環(huán)境下信息家電系統(tǒng)網(wǎng)絡(luò)終端設(shè)計(jì)

作者: 時間:2008-05-08 來源:微計(jì)算機(jī)信息 收藏

  1 概述
  
  所謂(IA—Information Appliance),也稱網(wǎng)絡(luò)家電,是指將微型計(jì)算機(jī)和通信技術(shù)融入到傳統(tǒng)的家用電器中,使之智能化并具有網(wǎng)絡(luò)終端的功能,可以隨時隨地獲取與處理信息。目前的產(chǎn)品大多是基于的,而面臨著地址資源緊缺的困境,下一代互聯(lián)網(wǎng)協(xié)議---的誕生彌補(bǔ)了這方面的不足。首先,它擴(kuò)大了地址空間,使用128bit表示一個地址,可以保證家庭內(nèi)的冰箱、空調(diào)等所有家電都擁有一個獨(dú)立的IP地址,而不必?fù)?dān)心地址不足的問題。其次,利用的地址自動配置功能,與網(wǎng)絡(luò)連接的每個裝置均可自動獲得IP地址,可以簡化家庭網(wǎng)絡(luò)的構(gòu)建和IP地址的管理,降低用戶操作的難度。另外,IPv6全面支持IPSec安全協(xié)議,利用認(rèn)證擴(kuò)展報(bào)頭和加密擴(kuò)展報(bào)頭可以提高網(wǎng)絡(luò)互連和訪問的安全性[1]。因此,在中引入IPv6將具有更為廣闊的前景,它必將對信息家電行業(yè)產(chǎn)生深遠(yuǎn)的影響。
  
  本文給出了一種基于IPv6的信息家電系統(tǒng)網(wǎng)絡(luò)終端的軟、硬件設(shè)計(jì)方法。該方法以高性能的32位ARM核微處理器S3C2410為硬件平臺,通過移植嵌入式操作系統(tǒng)linux,并在配置操作系統(tǒng)內(nèi)核時加入對TCP/IPv6協(xié)議棧的支持,然后在其上開發(fā)應(yīng)用程序,實(shí)現(xiàn)了基于IPv6的信息家電網(wǎng)絡(luò)終端。
  
  2 信息家電系統(tǒng)結(jié)構(gòu)
  
  信息家電系統(tǒng)一般由客戶機(jī)、交換機(jī)、網(wǎng)絡(luò)終端和家電控制器組成。其結(jié)構(gòu)示意圖如圖1所示:

本文引用地址:http://2s4d.com/article/82294.htm

  圖1  系統(tǒng)結(jié)構(gòu)示意圖
  
  圖1中客戶機(jī)是遠(yuǎn)程用戶和該系統(tǒng)的接口部分,任何一臺連入互聯(lián)網(wǎng)的PC機(jī)均可作為客戶機(jī);網(wǎng)絡(luò)終端模塊接收來自網(wǎng)絡(luò)的控制信息并通過RS232串口與家電控制模塊通信;家電控制模塊連接家電的執(zhí)行機(jī)構(gòu),它接收來自網(wǎng)絡(luò)終端模塊的控制命令,并對家電進(jìn)行操作。以上各模塊中,網(wǎng)絡(luò)終端模塊是信息家電系統(tǒng)的核心,它使家電接入IPv6網(wǎng)絡(luò),并作為一個嵌入式Web服務(wù)器來響應(yīng)客戶端的請求,完成控制數(shù)據(jù)在網(wǎng)口和串口之間的相互轉(zhuǎn)換。
  
  3 硬件設(shè)計(jì)
  
  本文所設(shè)計(jì)的網(wǎng)絡(luò)終端主要由ARM內(nèi)核的微處理器模塊、存儲器模塊、串行口模塊、以太網(wǎng)模塊、電源管理和復(fù)位電路模塊、LCD及觸摸屏模塊和JTAG模塊幾部分組成。其結(jié)構(gòu)示意圖如圖2所示。

圖2  網(wǎng)絡(luò)終端模塊示意圖
  
  其中微處理器模塊采用三星公司32位ARM9內(nèi)核的微處理器S3C2410;存儲器模塊包括一片E28F640構(gòu)成的8MB容量的16位NOR型Flash存儲器和兩片HY57V281620構(gòu)成的32MB容量的32位SDRAM存儲器,F(xiàn)lash存儲器主要用于存儲操作系統(tǒng)內(nèi)核、引導(dǎo)啟動代碼bootloader、根文件系統(tǒng)以及應(yīng)用程序;以太網(wǎng)模塊選用8/16位以太網(wǎng)控制器DM9000AE;串行口模塊包括兩個異步串口,分別用于與家電控制模塊連接和用戶登錄系統(tǒng);LCD屏采用夏普公司生產(chǎn)的256色、分辨率為320×240的STN液晶模塊LM057QC1T01;JTAG模塊用于下載操作系統(tǒng)的引導(dǎo)啟動代碼bootloader。
 
  4 軟件設(shè)計(jì)
  
  S3C2410平臺上的軟件設(shè)計(jì)一般需要運(yùn)行嵌入式操作系統(tǒng)。linux具有穩(wěn)定、源碼開放、網(wǎng)絡(luò)功能強(qiáng)大的優(yōu)點(diǎn)。因此本文選用linux作為操作系統(tǒng)。
  
  4.1 linux開發(fā)環(huán)境的建立

  基于linux操作系統(tǒng)的應(yīng)用開發(fā)環(huán)境一般由硬件目標(biāo)板和宿主PC機(jī)構(gòu)成。目標(biāo)板用于運(yùn)行操作系統(tǒng)和應(yīng)用程序,而目標(biāo)板所用到的操作系統(tǒng)的內(nèi)核編譯、應(yīng)用程序的開發(fā)調(diào)試則需要通過宿主機(jī)來完成,雙方通過串口或以太網(wǎng)接口建立連接關(guān)系。
  
  本系統(tǒng)的開發(fā)環(huán)境建立在運(yùn)行Red Hat 9.0 linux的宿主機(jī)上,從網(wǎng)站下載并安裝交叉編譯工具鏈和linux源代碼包后就可以進(jìn)行操作系統(tǒng)內(nèi)核和應(yīng)用程序的編譯、調(diào)試。
  
  4.2 配置內(nèi)核
  
  目前IPv6的應(yīng)用尚處于實(shí)驗(yàn)階段,本文選用目前較新版本的內(nèi)核linux 2.6.14,它可以很好的支持IPv6。
  
  為了使遠(yuǎn)程用戶以IPv6訪問家電,本文選用開源的、支持IPv6和CGI的小型web服務(wù)器---mini_httpd,它可以很好的支持用戶的IPv6訪問,且編譯后的代碼體積很小。
  
  為了配置和測試IPv6網(wǎng)絡(luò)環(huán)境,需要有支持IPv6的配置工具,如ifconfig、ping、traceroute等。linux里自帶的網(wǎng)絡(luò)配置工具并不支持IPv6協(xié)議,因此需要重新編譯包含這些工具程序的源碼包,以確保其支持IPv6。本文選用的是busybox 1.1.2,它包含大多數(shù)支持IPv6的網(wǎng)絡(luò)配置工具,但體積卻很小。
  
  4.3 編寫CGI程序
  
  本文中客戶機(jī)與網(wǎng)絡(luò)終端間的信息交互,是利用公共網(wǎng)關(guān)接口(CGI)技術(shù)來實(shí)現(xiàn)的。CGI提供了客戶機(jī)與服務(wù)器交互的接口。通常,服務(wù)器響應(yīng)客戶端請求后執(zhí)行相應(yīng)的CGI程序,并把執(zhí)行結(jié)果返回給客戶端,從而實(shí)現(xiàn)了動態(tài)Web。編寫Web頁面代碼時,由ACTION屬性來指定服務(wù)器需要執(zhí)行的CGI程序,METHOD屬性指明客戶機(jī)提交數(shù)據(jù)的方法(POST或GET)。

  CGI程序分為以下幾部分:①根據(jù)POST方法或GET方法從提交的表單中接收數(shù)據(jù);②URL編碼的解碼;③用printf()函數(shù)來產(chǎn)生HTML源代碼,并將經(jīng)過解碼后的數(shù)據(jù)正確地返回給瀏覽器。[2]
  
  由于本系統(tǒng)中網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)量不大,因此采用了較為簡單的get方法來提交Web頁面數(shù)據(jù)。系統(tǒng)中網(wǎng)絡(luò)接口模塊和家電控制模塊之間采用串口通信,此串口對應(yīng)linux下的設(shè)備文件:/dev/ttySAC1。完整的CGI程序流程圖如圖3所示。

圖3  CGI程序流程圖
  
  5  IPv6信息家電系統(tǒng)的組網(wǎng)及測試
  
  本文根據(jù)信息家電系統(tǒng)特點(diǎn)和要求組建了一個純IPv6環(huán)境的小型信息家電系統(tǒng)測試網(wǎng)絡(luò),網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)與圖1類似,測試網(wǎng)絡(luò)沒有接入公網(wǎng)。
  
  它包括兩臺計(jì)算機(jī)、兩個HUB和冰箱、空調(diào)、風(fēng)扇、洗衣機(jī)四種家用電器及其相應(yīng)的網(wǎng)絡(luò)終端與控制電路。兩臺計(jì)算機(jī)中PC1安裝了Windows XP作為客戶端,PC2安裝了Windows Server 2003和雙網(wǎng)卡,并被配置為路由器,它用于為每個接入網(wǎng)絡(luò)的家電自動分配64位的IPv6路由前綴3FFE:FFFF:0:1::/64。兩臺PC機(jī)均配置IPv6協(xié)議,并且安裝了瀏覽器Firefox,這是因?yàn)槟壳暗腎E瀏覽器尚不支持IPv6訪問。
  
  各家電網(wǎng)絡(luò)終端均配置了由其MAC地址派生出來的64位IPv6接口標(biāo)識符。以空調(diào)的網(wǎng)絡(luò)終端模塊為例:其MAC地址為00-60-35-01-c1-10,根據(jù)IEEE EUI-64格式,其IPv6接口標(biāo)識符將為260:35ff:fe01:c110。當(dāng)家電接入該測試網(wǎng)時,可以自動獲得由IPv6路由器PC2分配的64位IPv6路由前綴,這樣連同已有的64位接口標(biāo)識符共同組成了每個家電全球唯一的128位IPv6地址。
  
  測試時,在PC1的瀏覽器里鍵入家電的IPv6地址后就可以進(jìn)入相應(yīng)的家電控制界面,用戶通過點(diǎn)擊按鈕可以對家電進(jìn)行操作,家電執(zhí)行用戶命令后會把執(zhí)行結(jié)果回傳給瀏覽器。以訪問空調(diào)為例,在瀏覽器里輸入空調(diào)的IPv6 地址http://[3ffe:ffff:0:1:260:35ff:fe01:c110]得到其操作界面,如圖4所示,用戶通過點(diǎn)擊相應(yīng)按鈕可以對家電進(jìn)行控制。

圖4  IPv6信息家電操作界面
  
  6 小結(jié)
  
  本文對IPv6在信息家電中的應(yīng)用進(jìn)行了探索,設(shè)計(jì)了一個基于IPv6的信息家電網(wǎng)絡(luò)終端。在IPv6局域網(wǎng)環(huán)境下,用戶可以通過網(wǎng)絡(luò)實(shí)現(xiàn)對家電的控制,系統(tǒng)運(yùn)行穩(wěn)定可靠。該方法具有一定實(shí)用價(jià)值。
  
  本文作者創(chuàng)新點(diǎn):設(shè)計(jì)了基于ARM和Linux的IPv6環(huán)境下的信息家電系統(tǒng)網(wǎng)絡(luò)終端
  
參考文獻(xiàn)

[1]  張瑾,顧軍. IPv6在信息家電中的應(yīng)用[J]. 計(jì)算機(jī)與信息技術(shù),2005;10(9)

[2]  劉國梅,鄭安平. uClinux下動態(tài)Web技術(shù)的實(shí)現(xiàn)方法[J]. 單片機(jī)與嵌入式系統(tǒng),2004;10(2)

[3]  周遜. IPv6--下一代互聯(lián)網(wǎng)的核心[M]. 北京:電子工業(yè)出版,2004

[4]  栗大超,宋光德,靳世久.嵌入式系統(tǒng)的Internet互連技術(shù)[J].微計(jì)算機(jī)信息, 2003;13(12)

[5]  李駒光,聶雪媛等. ARM應(yīng)用系統(tǒng)開發(fā)詳解--基于S3C4510B的系統(tǒng)設(shè)計(jì)[M]. 北京:清華大學(xué)出版社, 2003

[6]  O’Reilly Taiwan譯. 構(gòu)建嵌入式LINUX系統(tǒng)[M]. 北京:中國電力出版社,2004



關(guān)鍵詞: 信息家電 IPv4 IPv6

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉