當前位置:首頁 > 物聯(lián)網(wǎng) > 《物聯(lián)網(wǎng)技術》雜志
[導讀]摘 要:基于TCP/IP協(xié)議和433 MHz射頻無線通信技術,設計了一種用戶遠程家電控制系統(tǒng)。該系統(tǒng)選用 STM32F103VCT6單片機作為核心控制芯片,采用DM9000AEP網(wǎng)絡接口芯片(以太網(wǎng)控制器)實現(xiàn)單片機與互聯(lián)網(wǎng)服務器 之間的通信,同時使用CC1101芯片實現(xiàn)單片機與家電微控制器的射頻無線通信,并通過433 MHz無線通信網(wǎng)絡構建家庭內部 網(wǎng)絡,運用TCP/IP協(xié)議構建家庭外部網(wǎng)絡。網(wǎng)絡服務器可同時接收多個用戶請求,并用網(wǎng)絡服務程序處理與對應客戶端的通 信。通過對風扇進行的測試證明,該方案能夠通過互聯(lián)網(wǎng)遠程控制風扇。

引言

物聯(lián)網(wǎng)是多網(wǎng)融合時代的必然產(chǎn)物,它將人與人之間的 溝通連接擴展到了人與物、物與物之間的溝通連接,智能化、 網(wǎng)絡化的生活將讓人們工作、生活更加便捷和人性。智能家居 是物聯(lián)網(wǎng)的一個重要應用,智能家居控制系統(tǒng)主要實現(xiàn)了家庭 智能網(wǎng)關對家庭各種設備的控制及設定。用戶可以通過手持 控制器或各種控制面板在家庭內部進行家電設備控制,完成 家庭內部的閉環(huán)控制,也可以通過手機、上網(wǎng)等方式實現(xiàn)對 家電的遠程控制。用戶可以根據(jù)自己的需求自由地增加/刪 減家電控制節(jié)點并可通過全圖形化向導設置家電,使用方便、 操作簡單。

用戶利用手機、電腦等終端登錄網(wǎng)絡服務器,輸入用戶 名和密碼后,通過互聯(lián)網(wǎng)連接到家中的智能控制器(控制中心)。 智能控制器調用相關的程序,將控制信息或查詢信息通過RF 無線通信網(wǎng)絡傳送給家電微控制器,家電微控制器收到數(shù)據(jù) 后,進行相應的處理,產(chǎn)生接口數(shù)據(jù),然后將接口數(shù)據(jù)上傳至 網(wǎng)絡服務器,最終實現(xiàn)用戶通過瀏覽器可以看到家里各種家 電設備的狀態(tài)信息,并可以通過點擊瀏覽器頁面上的各種與家 電設備相關聯(lián)的按鈕來控制。

1系統(tǒng)總體設計

本系統(tǒng)基于物聯(lián)網(wǎng)而設計,系統(tǒng)可分為感知層、網(wǎng)絡層 和應用層等三層。系統(tǒng)的層次結構如圖1所示。

本系統(tǒng)的感知層采用STM8S103單片機作為微控芯片,CC1101芯片作為RF無線收發(fā)芯片,該層功能是對終端電器 進行數(shù)據(jù)采集、數(shù)據(jù)收發(fā)以及狀態(tài)監(jiān)控,將電器的實時監(jiān)控 數(shù)據(jù)通過RF無線網(wǎng)絡傳送到家庭控制中心。具體工作流程 為:CC1101無線收發(fā)芯片收到控制中心的數(shù)據(jù)后,對其進行 解調,格式正確則存入接收FIFO,通知MCU有新數(shù)據(jù)到達。 STM8S103微控芯片讀取數(shù)據(jù)并進行解碼,然后進行相應操 作,上傳家電狀態(tài)數(shù)據(jù)或則控制家電并更新數(shù)據(jù)上報控制中心。 STM8S103采集到家電狀態(tài)信息后,將數(shù)據(jù)進行編碼,將一定 格式的數(shù)據(jù)通過SPI寫入CC1101的發(fā)送FIFO,由CC1101芯 片負責將數(shù)據(jù)發(fā)送給控制中心。


基于TCP/IP協(xié)議的智能家居控制系統(tǒng)設計

網(wǎng)絡層采用STM32F103VCT6單片機作為核心處理芯 片,DM9000AEP芯片作為網(wǎng)絡接口控制芯片,該層功能主 要是處理來自應用層的TCP/IP數(shù)據(jù)包和來自感知層的RF 無線數(shù)據(jù)包。網(wǎng)卡芯片DM9000AEP實現(xiàn)接收和發(fā)送TCP/ IP數(shù)據(jù)包,CC1101無線通信模塊實現(xiàn)RF無線數(shù)據(jù)的收發(fā), STM32F103VCT6負責將收到的數(shù)據(jù)進行處理。DM9000AEP 收到來自應用層TCP/IP數(shù)據(jù)包后,STM32F103VCT6對數(shù)據(jù) 進行解調、解碼。再將數(shù)據(jù)封裝成一定格式的RF數(shù)據(jù)包, 傳給CC1101無線通信模塊,發(fā)送給感知層。反之為逆過程。

應用層包括網(wǎng)站應用程序和網(wǎng)絡應用程序,其功能是接 收用戶請求,以實現(xiàn)對電器的遠程控制。其中網(wǎng)站應用程序 主要實現(xiàn)人機對話接口,是用戶進行帳戶管理和家電控制的 綜合系統(tǒng),按照ASP的MVC模式進行開發(fā),網(wǎng)站用戶名密 碼通過MD5不可逆加密算法進行處理,目前世界上仍不能對 MD5加密后的數(shù)據(jù)進行解密,以確保對家電控制的安全操作。 網(wǎng)絡應用程序則是使用線程池處理來自多個網(wǎng)絡層通信芯片的 TCP/IP數(shù)據(jù)包,同時將網(wǎng)站用戶請求通過TCP協(xié)議發(fā)送給網(wǎng) 絡層的網(wǎng)卡芯片DM9000AEP。這種分層結構將大量用戶的控 制請求轉由服務器CPU進行處理,從而大大降低了網(wǎng)絡層單 片機STM32F103VCT6的負荷。

2系統(tǒng)硬件電路設計

2.1網(wǎng)絡接口電路設計

主控芯片選用增強型的STM32F103VCT6單片機,內置 256 KB FLASH 和 48 KB SRAM,工作頻率為 72 MHz,完 全可以滿足TCP/IP數(shù)據(jù)包發(fā)送速度和接收速度的要求。采 用外部SPI FLASH來保存需要斷電保存的數(shù)據(jù),例如IP地 址、子網(wǎng)掩碼、網(wǎng)關、客戶賬號及密碼等。STM32F103VCT6 內部有20 KB的運行空間(48 KB的SRAM),完全可以滿 足處理TCP/IP數(shù)據(jù)包所需要的10 KB左右的內存空間,無 需外部RAM,這樣保證了數(shù)據(jù)的接收速度與發(fā)送速度。 STM32F103VCT6集成了 FSMC模塊,具有四個片選輸出, 支持 PC 卡 /CF 卡,SRAM, PSRAM,NOR 和 NAND。

網(wǎng)卡芯片采用DM9000AEP以太網(wǎng)控制器,該芯片具有 快速以太網(wǎng)MAC控制器、10M/100M自適應的PHY和4K DWORD值的SRAM, IO管腳兼容3.3 V/5.0 V電壓,支持8位、 16位和32位接口訪問內部存儲器。

本設計為STM32F103VCT6單片機通過高速FSMC與 DM9000AEP網(wǎng)卡芯片進行通信,最高速度可達100 Mb/s。 DM9000AEP 的數(shù)據(jù)引腳 SD0-SD15 連接 STM32F103VCT6 的數(shù)據(jù)總線(FSMC_D0~FSMC_D15),通過CMD引腳區(qū)分 數(shù)據(jù)總線和地址總線,IOW引腳接單片機的寫信號引腳 (FSMC_NOE), IOR引腳接單片機的讀信號引腳(FSMC_ NEW),CMD引腳接單片機的PD11引腳(FSMC_A16),CS 引腳接單片機的片選信號引腳(LAN_NCS),PWRST引腳接 單片機的復位引腳(NREST),INT引腳接單片機的中斷引腳 (PB0/LANINT),RX+,RX-,TX+,TX-兩對差分信號線接 帶有隔離變壓器的RJ45座,LED2/LinkAct引腳和 LED1/Speed引腳用于顯示各種狀態(tài)。單片機通過FSMC總線 可以對DM9000AEP實現(xiàn)讀控制寄存器、寫控制寄存器、讀 緩沖器、寫緩沖器、位域置1、位域清零和軟件復位。網(wǎng)卡芯 片的連接電路如圖2所示。

2.2 RF無線通信電路設計

本文采用低成本、超高頻無線收發(fā)器CC1101作為RF無 線收發(fā)芯片,工作在433 MHz頻率上,可編程控制的數(shù)據(jù)傳 輸率最高可達500 Kb/s。CC1101芯片的接收或發(fā)送模式可通 過微控制器STM8S103F3編程配置。CC1101芯片處于接收狀 態(tài)時,首先對收到的RF信號進行放大處理,然后通過混頻 器將高頻信號轉換為中頻信號,中頻信號再被ADC轉換為數(shù) 字信號,解調后的信號經(jīng)前向糾錯和數(shù)據(jù)包處理,正確無誤 的數(shù)據(jù)存人接收FIFO,產(chǎn)生脈沖信號通知MCU收到新數(shù)據(jù), MCU通過SPI 口讀取數(shù)據(jù)。在發(fā)射模式下,MCU將待發(fā)送 的數(shù)據(jù)寫入CC1101的發(fā)送FIFO, CC1101把需要發(fā)送出去的 數(shù)據(jù)通過GFSK載波的形式發(fā)送出去。

3系統(tǒng)軟件設計

3.1終端程序設計

終端系統(tǒng)執(zhí)行兩個任務:CC1101無線收發(fā)信息、四線制 查詢或控制家電狀態(tài)。上電初始化時設置T0定時器和開啟外 部中斷。微控制器周期性采集家電狀態(tài)信息,通過與存儲信 息比較,發(fā)現(xiàn)家電工作狀態(tài)異?;騽t改變,則將數(shù)據(jù)封裝成固 定格式幀,通過CC1101發(fā)射數(shù)據(jù),上報網(wǎng)絡層。當外部中斷0 接收到來自網(wǎng)絡層的控制命令時,微控制器解包后對家電進行 控制,并且回發(fā)狀態(tài)信息。

3.2網(wǎng)關(控制中心)程序設計

網(wǎng)關系統(tǒng)的功能主要有:通過DM9000AEP連接以太網(wǎng), 實現(xiàn)網(wǎng)關與服務器通信;通過CC1101無線收發(fā)模塊,實現(xiàn)網(wǎng) 關與終端通信;通過STM32F103VCT6實現(xiàn)數(shù)據(jù)處理、協(xié)議 轉換。網(wǎng)關系統(tǒng)初始化包括ARP初始化、TCP初始化、內 存初始化、定時器初始化和網(wǎng)卡芯片初始化。初始化完成后,設置網(wǎng)卡芯片的IP地址、子網(wǎng)掩碼、默認網(wǎng)關和本地監(jiān)聽的 端口。接著就開啟中斷,以便主動連接服務器,其中IO外部 中斷之一用來處理來自DM9000AEP的請求,以便收發(fā)來互聯(lián) 網(wǎng)的數(shù)據(jù)包;外部中斷之二則處理來自CC1101的請求以便接 收來自感知層的RF信號,若中斷沒有發(fā)生則進入節(jié)電模式。 網(wǎng)絡層的單片機控制流程如圖3所示。

3. 3應用層程序設計

在應用層,系統(tǒng)采用MVC模式進行系統(tǒng)設計??刂破?的Servlet程序分為兩部分:一部分與網(wǎng)站程序一起處理來自 瀏覽器的業(yè)務邏輯,包括用戶注冊、登錄和控制電器等操作; 另外一部分構建一個獨立的線程池,以便監(jiān)聽到指定端口, 等待來自網(wǎng)絡層中各個設備的TCP連接,完成與網(wǎng)絡層的會 話。ASP頁面是人機接口,完成顯示任務,其數(shù)據(jù)由Servlet 和JavaBean程序產(chǎn)生。JavaBean程序是處理用戶請求和電器 控制的事務邏輯程序,讀取數(shù)據(jù)庫中的數(shù)據(jù)并給予存儲和查 詢。

4通信協(xié)議設計

控制器通過RF無線通信技術與終端節(jié)點通信,考慮無 線通信的干擾以及保密,RF通信采用特定的幀格式,以確保 通信可靠。無線數(shù)據(jù)包的幀格式如表1所列,其無線數(shù)據(jù)包 包含的會話序號為控制通信流程;目的ID和源ID是判斷發(fā) 送方和接受方;節(jié)點類型用于判斷終端節(jié)點功能;控制命令用 于控制家電的工作狀態(tài);數(shù)據(jù)字段用于攜帶家電的工作狀態(tài)信 息;校驗字段用于校驗數(shù)據(jù)包是否收發(fā)正確。

本系統(tǒng)通信會話流程如圖4所示。系統(tǒng)上電初始化后, 網(wǎng)絡層的網(wǎng)關主動連接服務器,建立一個基于TCP協(xié)議的 Socket連接來進行會話,并發(fā)送自身設備的序列號和密碼。 服務器監(jiān)聽到來自網(wǎng)絡層通信MCU的請求后,驗證序列號 和密碼是否在數(shù)據(jù)庫中存在,并將驗證后的狀態(tài)返回給通信 MCU,若驗證通過后將進行會話。若感知層有新的節(jié)點,控 制中心收到入網(wǎng)申請后,根據(jù)節(jié)點功能分配ID,并且儲存節(jié)點 信息。當控制中心收到外部中斷,首先判斷中斷來自應用層還 是感知層,進行數(shù)據(jù)處理和協(xié)議轉換后轉發(fā)出去。當感知層 接到外部中斷后,則根據(jù)信息直接報告當前工作狀態(tài),或則改 變工作狀態(tài)后再上報新的工作狀態(tài)。服務器收到信息后,將工 作狀態(tài)與用戶請求比對:若狀態(tài)相同則報告處理完畢,反之則 重新發(fā)送控制命令。若任務完成,服務器端斷開此條TCP連接, 則一次通信完成。用戶可在遠端通過手機或者電腦上網(wǎng)登錄自 己的客戶端,就可以完成對家電的遠程控制。

圖4通信流程圖

5系統(tǒng)測試

5.1測試環(huán)境

控制器與服務器通信測試使用已配置好IP的商用電腦進 行測試,控制器與路由器連接,路由器與商用電腦連接,上電 自動完成測試。

5.2遠程控制系統(tǒng)測試

5.2.1連通性測試

在網(wǎng)絡設備端,采用Windows XP系統(tǒng)的Ping命令對 網(wǎng)絡設備進行連通性測試。網(wǎng)絡層精簡的TCP/IP協(xié)議中同時 實現(xiàn)了 ARP和TCP協(xié)議,所以也可以使用APR、Telnet或 PathPing命令測試網(wǎng)絡層設備的連通性。網(wǎng)絡層設備能夠被 Ping通,說明設備協(xié)議實現(xiàn)正確。通過以上各種方法進行測 試都表明網(wǎng)絡層設備與互聯(lián)網(wǎng)連通性良好,能夠穩(wěn)定進行局域 網(wǎng)通信。

5.2.2監(jiān)聽測試

在服務器端使用SocketTest工具軟件監(jiān)聽服務器1000端口,開啟接收數(shù)據(jù)提示。網(wǎng)絡層微控制器STM32F103VCT6 主動向廣域網(wǎng)服務器1000端口發(fā)起TCP連接請求,并將此設 備的ID和Password封包發(fā)送給服務器。能夠將數(shù)據(jù)包準確 發(fā)送到服務器,說明網(wǎng)絡層設備與互聯(lián)網(wǎng)連通性良好,能夠與 廣域網(wǎng)通信。

6參數(shù)測試

微控制器STM32F103VCT6在使用8 MHz晶振時,用 Sniffer抓包軟件測得其與服務器最高通信速度可達25 KB/s。 使用Ping命令,向192.168.1.101發(fā)送500個包,無丟包現(xiàn)象。 這500個數(shù)據(jù)包當中,返回速度最快耗時為41 ms,最慢耗 時為93 ms,平均耗時為53 ms,完全能滿足家電遠程控制的 實時性要求。

通過瀏覽器瀏覽家電狀態(tài)信息,點擊頁面電燈、風扇的 開關按鍵,實現(xiàn)了遠程控制電燈、風扇的開關狀態(tài)。

7結語

隨著物聯(lián)網(wǎng)技術的深入發(fā)展,智能家居前景廣泛并已 經(jīng)得到了世界著名廠商的關注并將被運用于實際生活中,它 能夠造福人類,讓人們的生活更舒適、更便捷。本文針對基 于物聯(lián)網(wǎng)技術的智能家居系統(tǒng)進行了研究,主要完成了系統(tǒng) 的總體設計,該智能家居系統(tǒng)以STM32F103VCT6單片機與 DM9000AEP網(wǎng)卡芯片為硬件平臺,設計了 RF無線收發(fā)、家 電控制等模塊,通過無線網(wǎng)絡將各種家電設備連接在一起, 從而實現(xiàn)信息家電的網(wǎng)絡化和遠程監(jiān)控。家庭數(shù)字化道路在 我國還有漫長的路要走,智能家居系統(tǒng)具有廣闊的應用前景, 值得更深入地研究和探討。

20211222_61c2f12773ff9__基于TCP

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉