国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于SOPC的智能家居網(wǎng)關(guān)設(shè)計

2019-12-05 08:40:44龔名茂徐思燕
無線互聯(lián)科技 2019年17期

龔名茂 徐思燕

摘 ? 要:隨著物聯(lián)網(wǎng)技術(shù)的逐步成熟,智能家居已經(jīng)進入實際運用階段,讓人們感受到科技帶來的高效、舒適、智能化的生活。但是現(xiàn)在智能家居設(shè)備品種繁多,并且存在著多種通信協(xié)議,導致各種家居設(shè)備無法實現(xiàn)互聯(lián)互通。在現(xiàn)有的物聯(lián)網(wǎng)協(xié)議中,ZigBee是一種比較完備的通信協(xié)議。因此,為了實現(xiàn)協(xié)議的相互轉(zhuǎn)換,在SOPC技術(shù)基礎(chǔ)上,文章設(shè)計并實現(xiàn)了將ZigBee通信協(xié)議和TCP/IP協(xié)議相互轉(zhuǎn)換的智能家居網(wǎng)關(guān)。

關(guān)鍵詞:可編程片上系統(tǒng);ZigBee通信協(xié)議;傳輸控制協(xié)議/因特網(wǎng)互聯(lián)協(xié)議;協(xié)議轉(zhuǎn)換

智能家居系統(tǒng)一般由智能家居業(yè)務(wù)平臺、智能家居網(wǎng)關(guān)、智能家居終端傳感器以及執(zhí)行機構(gòu)3個部分構(gòu)成,其中,家庭網(wǎng)關(guān)作為智能家居的核心部分,主要實現(xiàn)不同協(xié)議的相互轉(zhuǎn)換、協(xié)議數(shù)據(jù)轉(zhuǎn)發(fā)、節(jié)點管理,實現(xiàn)家庭外部網(wǎng)絡(luò)與室內(nèi)各種家居設(shè)備之間的信息互聯(lián)互通[1]。本文對原有的家庭網(wǎng)關(guān)方案進行研究和分析,在此基礎(chǔ)上,提出利用可編程片上系統(tǒng)(System-on-a-Programmable Chip,SOPC)技術(shù)實現(xiàn)家庭網(wǎng)關(guān)方案。

1 ? ?網(wǎng)關(guān)硬件平臺構(gòu)建

網(wǎng)關(guān)總體的硬件結(jié)構(gòu)如圖1所示。網(wǎng)關(guān)硬件由可編程邏輯控制器EP4CE15和外圍模塊兩部分組成[2]。在現(xiàn)場可編程邏輯門陣列(Field Programmable Gate Array,F(xiàn)PGA)內(nèi)部構(gòu)建了Nios Ⅱ處理器系統(tǒng)和時鐘模塊。外圍電路包括FLASH,同步動態(tài)隨機存儲器(Synchronous Dynamic Random Access Memory,SDRAM),以太網(wǎng)電路,ZigBee通信模塊,狀態(tài)顯示模塊和聯(lián)合測試行為組織(Joint Test Action Group,JTAG)電路[3]。其中,Nios Ⅱ處理器采用快速型內(nèi)核,并且加入一個全功能模式的定時器timer0。靜態(tài)隨機存取存儲器(Static Random Access Memory,SRAM)采用的是Hynix公司的HY57V2562GTR,F(xiàn)LASH芯片采用的是Altera公司生產(chǎn)的EPCS64。

網(wǎng)關(guān)與ZigBee模塊通信使用通用異步收發(fā)傳輸器(Universal Asynchronous Receiver/Transmitter,UART),通信協(xié)議為115200波特率,8位數(shù)據(jù)位,無奇偶校驗,無硬件流控制。

EP4CE15系統(tǒng)內(nèi)構(gòu)建三速以太網(wǎng)(Triple-Speed Ethernet,TSE)核實現(xiàn)媒體介入控制層(Media Access Control,MAC),它主要接收來自外部網(wǎng)絡(luò)的數(shù)據(jù),并將其數(shù)據(jù)解析后重新封裝成ZigBee協(xié)議,另外,也需要進行逆轉(zhuǎn)換。系統(tǒng)選擇的以太網(wǎng)芯片是PHY DP83848。根據(jù)本系統(tǒng)網(wǎng)關(guān)的需求,對Nios II處理器系統(tǒng)的IP進行設(shè)計和整合,最終生成Nios II的處理器系統(tǒng)。

2 ? ?網(wǎng)關(guān)軟件平臺設(shè)計

2.1 ?ZigBee通信協(xié)議設(shè)計

在智能家居控制系統(tǒng)中,為了實現(xiàn)智能家居網(wǎng)關(guān)對各種家居設(shè)備的管理和控制,需要有統(tǒng)一的通信協(xié)議作為信息交互的橋梁。ZigBee數(shù)據(jù)包協(xié)議格式如表1所示。

其中,0xAA,0x55:幀頭,代表一幀數(shù)據(jù)的開始,接收端接收到該字段即表明數(shù)據(jù)來自于各個節(jié)點。

CMD:命令字,指定了這條指令將執(zhí)行何種操作。

Payload:有效載荷,傳輸指令的參數(shù),如溫度傳感器的溫度數(shù)據(jù)等。

CRC16:16位CRC校驗,該校驗確保數(shù)據(jù)通信的可靠性。

0x0D,0x0A:幀尾,標志著一條指令的結(jié)束。

本設(shè)計通過該通信協(xié)議,將ZigBee協(xié)議變成傳輸控制協(xié)議/因特網(wǎng)互聯(lián)協(xié)議(Transmission Control Protocol/Internet Protocol,TCP/IP),實現(xiàn)ZigBee家居設(shè)備與智能家居控制中心之間的通信以及控制中心對設(shè)備的控制和管理。

2.2 ?應(yīng)用程序設(shè)計

為了方便地使用TCP/IP網(wǎng)絡(luò)協(xié)議,在上述硬件系統(tǒng)中加入μClinux操作系統(tǒng),在該操作系統(tǒng)上進行ZigBee協(xié)議與TCP/IP協(xié)議轉(zhuǎn)換。在該操作系統(tǒng)中應(yīng)用程序設(shè)計主要包括串口和網(wǎng)口兩個部分。

由于在μClinux系統(tǒng)中已經(jīng)有串口驅(qū)動程序,因此,串口應(yīng)用程序設(shè)計只需利用μClinux操作系統(tǒng)中應(yīng)用層的open(),read(),write(),close()等函數(shù)對串口進行操作,其具體操作步驟如圖2所示。

網(wǎng)絡(luò)應(yīng)用程序的設(shè)計首先需對已有的驅(qū)動程序進行修改,把本文中的端口物理層(Physical Layer,PHY)芯片的設(shè)備和狀態(tài)信息、PHY和多址接入信道(Multiple Access Channel,MAC)配置信息加入到驅(qū)動程序中。在此基礎(chǔ)上,才能利用μClinux系統(tǒng)中的socket套接字進行網(wǎng)絡(luò)應(yīng)用程序設(shè)計。

3 ? ?實驗驗證

利用網(wǎng)絡(luò)助手和串口助手,對本文網(wǎng)關(guān)的功能進行驗證。首先,利用串口助手向網(wǎng)關(guān)的串口發(fā)送符合ZigBee協(xié)議規(guī)定的數(shù)據(jù),網(wǎng)絡(luò)助手接收數(shù)據(jù),然后利用網(wǎng)絡(luò)助手向網(wǎng)關(guān)的網(wǎng)口發(fā)送ZigBee格式的數(shù)據(jù),利用串口助手接收。經(jīng)過反復的測試,TCP/IP與ZigBee協(xié)議之間能正確轉(zhuǎn)換,在轉(zhuǎn)換過程中數(shù)據(jù)出錯次數(shù)為0,證明了本設(shè)計的可靠性和穩(wěn)定性。

4 ? ?結(jié)語

本文設(shè)計了一個基于SOPC技術(shù)的智能家居網(wǎng)關(guān),該網(wǎng)關(guān)能夠?qū)崿F(xiàn)ZigBee和TCP/IP協(xié)議轉(zhuǎn)換。首先,對SOPC技術(shù)進行簡介;其次,分別介紹網(wǎng)關(guān)的硬件設(shè)計和軟件設(shè)計;最后,對網(wǎng)關(guān)的功能進行驗證,證明本網(wǎng)關(guān)具備ZigBee和TCP/IP協(xié)議轉(zhuǎn)換的功能。

[參考文獻]

[1]趙海,邵士亮,朱劍,等.一種連接WSN與Intternet的多核嵌入式網(wǎng)關(guān)設(shè)計與實現(xiàn)[J].東北大學學報(自然科學版),2012(1):65-68.

[2]杜超,陳濟民.基于SoC的嵌入式網(wǎng)關(guān)的設(shè)計與實現(xiàn)[J].計算機工程與設(shè)計,2011(9):89-93.

[3]張杰.基于FPGA的嵌入式以太網(wǎng)接口設(shè)計[D].西安:西安電子科技大學,2014.

隆子县| 鄂托克前旗| 棋牌| 延寿县| 赤峰市| 读书| 青河县| 万州区| 台湾省| 方城县| 察隅县| 旬邑县| 藁城市| 伊春市| 渝北区| 康平县| 航空| 璧山县| 云浮市| 岳阳市| 百色市| 襄城县| 弋阳县| 湘阴县| 盖州市| 宁强县| 南丰县| 宜兰县| 德清县| 布尔津县| 伽师县| 泉州市| 隆昌县| 台东县| 张家口市| 开封市| 东方市| 吴堡县| 昭觉县| 仙桃市| 项城市|