下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、基于以太網(wǎng)智能家居控制器的設計隨著現(xiàn)代 4c技術(計算機技術、控制技術、通信技術和圖形顯示技術)的快速進展以及人們生活水平的不斷提高,智能家居已經(jīng)成為智能建造的一個重要分支。本文旨在設計一種成本低廉、面對一般家庭的、集本地控制和遠程控制于一體的智能家居控制器,用于控制室內(nèi)家電的運行狀態(tài)和環(huán)境參數(shù)的采集。設計中本地控制采納技術,遠程控制通過開發(fā)精簡的 tcp/ip協(xié)議并結合 http協(xié)議,實現(xiàn) web服務器,從而用法戶通過隨意的掃瞄器便可對家居中的設備和環(huán)境舉行控制和監(jiān)測。 2 以太網(wǎng)智能家居控制器的硬件設計智能家居控制器采納 8位 w78e58b作為系統(tǒng)的核心處理單元,系統(tǒng)硬件框圖 1所示。本
2、地端以紅外通信技術為基礎,放射端采納 nb9148紅外編碼模塊,接收端采納 sj1838舉行接收解調(diào),并將控制信號傳送給 w78e58b。外部擴展 ram 62256以提高單片機的數(shù)據(jù)傳輸速度和復雜的 tcp/ip協(xié)議的處理。 rs232串口通訊主要用于程序的下載和調(diào)試,以及通訊轉(zhuǎn)換接口。gal器件 atf16v8b用于片選,以節(jié)省系統(tǒng)空間資源。ds18b20用于環(huán)境溫度采集。遠程控制的硬件平臺由 w78e58b和以太網(wǎng)控制器 rtl8019as等器件組成。rtl8019as是針對 isa設計的,用于實現(xiàn)網(wǎng)絡的物理層協(xié)議的專用以太網(wǎng)控制芯片。rtl8019as內(nèi)置了 10base-t,用法跳線
3、方式,通過可提高網(wǎng)絡通信的抗干擾能力的網(wǎng)絡 20f-01,再與 rj-45相連。 e2prom at24c512用于實現(xiàn)嵌入式 web服務器拜訪的網(wǎng)頁文件存儲,同時也用于存儲用戶的一些設置,如 ip地址、網(wǎng)關以及網(wǎng)卡芯片 mac地址等參數(shù)。3 以太網(wǎng)智能家居控制器的軟件設計以太網(wǎng)智能家居控制器的軟件實現(xiàn)是在單片機上完成的,主要包括虛擬 i2c總線讀寫程序、紅外接收和控制程序、溫度采集程序、網(wǎng)卡芯片 rtl8019as驅(qū)動程序、嵌入式 web服務器的實現(xiàn)以及其他處理程序。本文中只研究網(wǎng)卡芯片的驅(qū)動程序和嵌入式 web服務器的實現(xiàn)。3.1 以太網(wǎng)控制器 rtl8019as的驅(qū)動程序rtl8019a
4、s的驅(qū)動程序是 tcp/ip協(xié)議與底層物理設備的程序接口,它屏蔽了底層硬件處理的詳情,并向上層軟件提供與硬件無關的接口。 tcp/ip協(xié)議只要調(diào)用以太網(wǎng)驅(qū)動程序即可完成以太網(wǎng)數(shù)據(jù)的接收和發(fā)送。網(wǎng)卡芯片 rtl8019as的驅(qū)動程序包括 rtl8019as初始化程序、數(shù)據(jù)包接收程序和數(shù)據(jù)包發(fā)送程序。3.1.1 rtl8019as初始化rtl8019as通過 rstdrv管腳舉行復位操作。復位后,先對 rtl8019as初始化。初始化操作包含設置 pstart=0x4c,pstop=0x80,使 0x400x4b為網(wǎng)卡的發(fā)送緩沖區(qū),0x4c 0x7f為網(wǎng)卡的接收緩沖區(qū);設置 rcr=0xcc,僅接
5、收目標物理地址和設置物理地址全都的數(shù)據(jù)包、廣播地址數(shù)據(jù)包和多點播送地址包;設置 tcr=0xe0,工作在正常模式;設置 dcr=0xc8,用法 fifo緩存及 8位數(shù)據(jù) dma;設置 imr=0x00,屏蔽全部中斷;組播地址寄存器 mar0mar7,均設置為 0x00;設置網(wǎng)卡物理地址寄存器 par0par5;設置 cr=0x22,挑選頁 0的寄存器,進入正常工作狀態(tài);設置 isr0xff,清除全部中斷標記位。3.1.2 rtl8019as數(shù)據(jù)發(fā)送首先將待發(fā)送的數(shù)據(jù)按以太網(wǎng)數(shù)據(jù)幀格式封裝后,再置 cr寄存器為 12h,啟動遠程寫 dma,rtl8019as會自動將這幀數(shù)據(jù)送至 rtl8019a
6、s的數(shù)據(jù)發(fā)送緩沖區(qū),并將結果寫入狀態(tài)寄存器。最后將 cr置為 3eh,啟動本地寫 dma后將數(shù)據(jù)送入 fifo寄存器,并發(fā)送到以太網(wǎng)上。程序流程圖見圖 2所示。接收數(shù)據(jù)時,接收緩沖區(qū)構成一個循環(huán) fifo隊列。 pstart、pstop兩個寄存器限定了循環(huán)隊列的開頭和結束頁;curr為寫入指針,受芯片控制; bnry為讀出指針,由主機程序控制。程序通過查詢 curr和 bnry兩個寄存器的值來推斷是否收到一幀數(shù)據(jù)。程序流程見圖 3所示。3.2 嵌入式 web服務器的實現(xiàn)設計中采納的是 w78e58b型 8位單片機,因為單片機存儲空間有限、處理速度相對較慢,且在囫圇遠程控制中不需要實現(xiàn)完整的 t
7、cp/ip協(xié)議。因此,可以在遠程控制的網(wǎng)絡銜接和拜訪技術中采納精簡 tcp/ip協(xié)議。要實現(xiàn)交互功能,就要在精簡 tcp/ip協(xié)議的基礎上實現(xiàn) http協(xié)議,構建嵌入式 web服務器。本設計中的精簡 tcp/ip協(xié)議具有同 tcp/ip協(xié)議一樣的四層結構,各層實現(xiàn)的功能如下:鏈路層。設計中通過以太網(wǎng)接入到 internet,因此物理層和數(shù)據(jù)鏈路層要符合以太網(wǎng)的 ieee802.3標準。然而,以太網(wǎng)控制器 rtl8019as的硬件組成部分已經(jīng)實現(xiàn)了 csma/cd控制機制,屏蔽了底層硬件處理的詳情,并向上層軟件提供與硬件無關的接口,終于完成了數(shù)據(jù)在以太網(wǎng)中的接收和發(fā)送。因此,設計中物理層與數(shù)據(jù)鏈
8、路層的設計是通過 rtl8019as硬件和驅(qū)動程序共同實現(xiàn)的。網(wǎng)絡層實現(xiàn)了 arp協(xié)議、icmp協(xié)議和 ip協(xié)議。arp是地址解析協(xié)議,詳細處理過程是當接收到 arp數(shù)據(jù)包,處理器就查看 ip地址是哀求還是響應。假如是響應,則將響應中的網(wǎng)卡地址存到 arp高速緩存表中;假如是哀求,處理器將返回自己的網(wǎng)卡物理地址給對方。icmp是調(diào)試響應 ping的哀求,檢測網(wǎng)路是否通順。依照系統(tǒng)實際應用的要求, ip協(xié)議只需實現(xiàn)對數(shù)據(jù)報傳送和接收,無須實現(xiàn)路由挑選算法和差錯控制,同時也不需支持 ip數(shù)據(jù)報的分片和重組。傳輸層實現(xiàn) tcp協(xié)議。 tcp協(xié)議是面對銜接的、端對端的牢靠通信協(xié)議。設計中實行了 tcp
9、銜接的建立與關閉機制、超時重傳機制、數(shù)據(jù)包確認機制、流量控制機制來保證它的牢靠性。在超時重傳機制中,假如超時重傳定時器溢出后還沒有收到確認,則重傳該數(shù)據(jù)包,并復位重傳定時器。為容易起見,程序里每次只發(fā)送一個 tcp數(shù)據(jù)包,然后等待它確實認,惟獨收到確認后才會繼續(xù)發(fā)送下面的 tcp數(shù)據(jù)包。在本設計,程序重傳的間隔時光是固定的,沒有采納 tcp協(xié)議中的標準算法,當達到一定的次數(shù)后,發(fā)送方還沒有收到確認,則會放棄該包的發(fā)送并關閉 tcp銜接。tcp的流量控制是為了協(xié)調(diào)通信雙方的收發(fā)速率不均衡而設計的。設計中考慮到系統(tǒng)在用法 tcp協(xié)議時,只設置了一個中等 ip包大小接收緩存,因此接收窗口恒定設為 1
10、024。這樣遠端主機就會以較慢的傳輸速率與本端的 web服務器舉行通信,不會導致死機。應用層實現(xiàn)了 http協(xié)議。http是在 web服務器和掃瞄器之間通信的協(xié)議。為了簡化,設計中采納固定的 http報文頭封裝 http應答數(shù)據(jù)報文。格式如下:char code html_header /客戶端拜訪主頁時候服務器的響應頭部= "http/1.1 200 okn" /響應行( respond line),狀態(tài)為 ok,表示文件可以讀取"cache-control: no-cachen" /沒有高速緩存控制"connection: keep-ali
11、ven" /http/1.1的可持續(xù)鏈接"content-length: tag:len1n" /文件長度"content-type: text/htmlrnrn" ;/客戶端 get哀求的文件格式在響應 http哀求時,因為以太網(wǎng)數(shù)據(jù)包的數(shù)據(jù)部分不能超過 1500字節(jié),因此當發(fā)送數(shù)據(jù)超過 1500字節(jié),需要分組發(fā)送。3.3 以太網(wǎng)智能家居控制器遠程控制運行結果智能家居控制器接入以太網(wǎng)后,用戶只需在掃瞄器中輸入控制器的 ip地址,便可登錄遠程控制界面。當正確輸入用戶名和密碼后,便進入控制頁面,用戶可以拜訪并控制各子系統(tǒng)。圖 4為智能家電的控制頁面,系統(tǒng)用法 gif格式表示智能家電開關的狀態(tài)。當單擊控制頁面中相應的開關后,智能家居 web服務器收到 http哀求,執(zhí)行 cgi程序,將相反狀態(tài)的嵌入到網(wǎng)頁相應的位置中。與此同時,單片機會在相應家電的控制端口,輸出一個與之前狀態(tài)相反的電平,此時動作,家電運
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年道路危險貨物運輸安全協(xié)議范本3篇
- 2024建筑工程勞務承包合同協(xié)議書范本
- 2024版消防器材供貨合同
- 2024燃氣工程代建及后期維護服務合同3篇
- 2025年度新型城鎮(zhèn)化建設項目合作合同3篇
- 2024版水泥購銷合同參考樣本
- 二零二五年度租賃合同稅費承擔范本6篇
- 二零二五年度班主任新手跟崗學習與技能培訓合同3篇
- 二零二五版房地產(chǎn)交易兜底協(xié)議范本3篇
- 個性化資產(chǎn)抵押權利保障協(xié)議范本下載一
- 人教版(2025新版)七年級下冊英語:寒假課內(nèi)預習重點知識默寫練習
- 藝術品捐贈協(xié)議
- 網(wǎng)絡安全系統(tǒng)運維方案
- 2024年標準溝渠回填工程承包協(xié)議版B版
- 2024年專用:物業(yè)安全管理協(xié)議3篇
- 【公開課】同一直線上二力的合成+課件+2024-2025學年+人教版(2024)初中物理八年級下冊+
- 《政府采購業(yè)務培訓》課件
- 《醫(yī)療器械召回管理辦法》培訓2024
- 網(wǎng)絡安全培訓內(nèi)容課件
- 通信線路維護安全培訓
- 專業(yè)微信小程序開發(fā)協(xié)議范例版
評論
0/150
提交評論