智能家居信息監控網絡系統設計論文_第1頁
智能家居信息監控網絡系統設計論文_第2頁
智能家居信息監控網絡系統設計論文_第3頁
智能家居信息監控網絡系統設計論文_第4頁
智能家居信息監控網絡系統設計論文_第5頁
已閱讀5頁,還剩55頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、摘 要目前我國智能家居產業總體上存在3個方面的問題:一是由于智能家居產業國家還沒有統一的行業標準,相互間的產品不具兼容性;第二,產品實用性差,操作復雜,與市場需求脫節;第三,產品價格居高不下。結合課題內容,針對目前國內智能家居產業存在的問題,其監控網絡系統應該具有結構簡單、成本低廉、操作簡單、穩定性好、抗干擾能力強、主機與子機之間聯系緊密簡潔等優點。本論文將針對這些方面進行設計。信息監控網絡系統采用星形拓撲結構。中央控制器為中心節點,它采用cgi技術通過web服務器連接到internet,并通過由單片機和nrf905構成的無線傳輸模塊與各個功能子系統進行點對點數據傳輸。用戶可以上網訪問中央控制

2、器,從而對其下達命令,來了解和控制家中各個家電的工作狀態。各個子功能系統完成用戶命令以后,會返回執行結果給中央控制器,由中央控制器將執行結果上傳至internet給用戶。根據功能需求設計出的智能家居信息監控網絡系統,解決了目前國內智能家居產業實用性差、操作復雜、成本高的問題。關鍵詞: 無線通信; cgi技術; nrf905; 通信協議;at89c51單片機abstactsmart home industry, our country there are three general aspects: first, smart home industry as a unified state ha

3、s not industry standard among non-compatibility of products; second, poor product availability, operational complexity, and the demand of the market ; third, high prices. combination of subject content for the current domestic intelligence home there is an industrys problems, the monitoring network

4、should have a simple structure, low cost, simple operation, good stability, anti-jamming capability jiang, links between the host and zi machine simple deng youdian close. this paper will address these aspects of design.information and control system of using star topology. central controller for th

5、e central node, it uses cgi technology through the web server to connect to the internet, and through a microcontroller and a wireless transmission module nrf905 constitute each functional subsystem with point to point data transmission. internet users can access the central controller to its orders

6、, to understand and control home appliances work in all states. completion of each sub-function system after the user command, the implementation of the results will be returned to the central controller, the result will be implemented by the central controller uploaded to the internet to the user.a

7、ccording to the functional demand design information out of intelligent home monitoring network system, solves the intelligent home chanye practical difference, complex operation, and high cost problems.key words: wireless communications; cgi technology; nrf905; communication protocol; at89c51 micro

8、controller目 錄第一章 緒 論11.1研究背景及意義11.1.1國內智能家居系統的功能狀況11.1.2 研究意義21.2 設計思路及優勢31.3 論文的主要內容和組織結構31.4 本章小結4第二章 智能家居信息監控網絡系統的總體設計方案52.1 智能家居信息監控網絡系統的需求分析52.2 信息監控網絡系統的總體設計方案52.3 構成無線數據傳輸模塊的器件選取62.3.1 單片機的選取62.3.2 無線收發芯片的選取62.4本章小結7第三章 信息監控網絡系統的硬件設計83.1 單片機最小系統的搭建83.2 無線數據傳輸模塊的電路連接93.2.1 nrf905芯片概述93.2.2基于nr

9、f905傳輸系統的硬件設計113.2.3 at89c51單片機與nrf905接口電路123.4 本章小結12第四章 信息監控網絡系統的軟件設計144.1 通信協議和用戶操作字的設計144.1.1 地址位和數據位的定義144.1.2 用戶操作字定義164.2 無線數據傳輸模塊的軟件設計164.2.1 數據傳輸過程164.2.2uart串口軟件設計174.2.3spi接口軟件設計194.2.4主程序流程圖194.3 web服務器的設計與實現204.3.1 web服務器原理204.3.2 cgi原理214.3.3 設計思想及工作流程224.4 本章小結23第五章 智能家居信息監控網絡系統的抗干擾設計

10、245.1 單片機硬件電路的抗干擾設計245.1.1 造成干擾的原因245.1.2 單片機硬件抗干擾措施245.2 單片機軟件的抗干擾設計265.2.1 程序運行混亂時使程序重入正軌265.2.2 系統故障處理、自恢復程序的編寫275.3 本章小結29第六章 智能家居信息監控網絡系統的測試與調試306.1 調試目標306.2 調試方案306.3 調試過程316.3.1 單片機最小系統的測試與調試316.3.2 無線數據傳輸模塊的測試與調試316.3.3 各項性能指標的測量326.3.4 智能家居信息監控網絡系統總體功能的測試與調試336.4 本章小結33總 結.34參考文獻.36附 錄.37附

11、件一:無線數據傳輸模塊程序源代碼37附件二:無線數據傳輸模塊硬件電路圖43附錄三:intelligent home control system44謝 辭.55第一章 緒 論1.1研究背景及意義由于中國的居住模式和文化與發達國家有很大的區別,所以智能家居在中國的發展也體現出其獨具的特色。中國人口眾多,城市住宅建設也多選擇密集型的住宅小區方式,因此很多房地產商會站在整個小區智能化的角度來看待家居的智能化,也就出現了目前一統天下、無所不包的“智能小區”的模式。而歐美由于獨體別墅的居住模式流行,因此住宅多散布城鎮周邊,沒有一個很集中的規模,類似國內的“住宅小區”這樣規模的居住區較少,因此,國外的住宅

12、多與市政系統直接相同。這一點也可解釋為什么美國仍盛行adsl、cable modem等寬帶接入方式,而國內光纖以太網到小區、到樓的發展已經如火如荼。因此歐美的智能家居多獨立安裝,自成體系,比如美國的x10,歐洲的eib協議(包括澳洲的c-bus)等都是以獨立的家庭為目標設計的。而國內習慣上將智能家居當作智能小區的一個子系統來考慮,這種做法在智能家居概念初始引進階段應該說還是可行的,但隨著智能家居的推廣與需求的不斷深入,人們開始“拷問”智能家居的真正意義與價值時,才發現“人性化“與“個性化”是智能家居的意義所在。因此,智能家居勢將從現在的“千家一面”的一統模式中獨立出來,成為一個可完全由業主自行

13、選配的個性張揚空間。1.1.1 國內智能家居系統的功能狀況智能家居系統可以有多種分類形式,依據其體系結構為特征進行劃分,比較常見。目前國內市場上多數存在以下幾類不同結構形式的系統類型:1拼湊型(功能間無關聯的孤立)控制系統:各個功能子系統獨立設計、自主工作。例如安防系統、燈光系統。各子系統相互之間互不相連,不能交換數據;2主機式集中控制系統:在住宅內安裝一臺“智能控制中心”,它可以是一臺普通計算機、嵌入式或者單片計算機系統。一般采用星形拓撲結構,從控制中心引出多種控制與數據線,連接到住宅中所有需要實施控制或者獲取數據的監控節點,現場設備與中央控制單元,使用標準模擬信號(420ma、05v等)傳

14、輸現場信息。每個監控節點不安排任何數據處理能力,只是單純地完成對繼電開關控制(例如控制燈光或電源),或者采集無源的數據(例如門磁開關信號)。系統的邏輯關系固定在主控制器上,有的可以通過軟件修改。添加新設備需修改主控制器。3分級集中控制系統:是前一類型的擴展,同樣也采用在住宅內安裝一臺“智能控制中心”,星形拓撲結構。如果現場采集量較大,通常在中央控制單元和現場設備之間加入現場級的控制單元(plc,單片機等),現場控制單元與中央控制單元之間使用rs-232。以上三類系統的顯著缺點是:各子系統不能相互協調,統一控制,網絡的潛能與優勢未能開發。這是將原有各獨立系統簡單堆砌在一起的方式,嚴格意義上講,不

15、符合智能家居系統的含義。仍然屬于相對獨立的智能家居系統。目前我國智能家居產業總體上存在3個方面的問題:一是由于智能家居產業國家還沒有統一的行業標準,很多中小企業各自為政,相互間的產品不具兼容性;第二,由于技術人員沒有做深入的市場調查,開發出的產品雖然技術上具有先進性,但實用性差,操作復雜,與市場需求脫節;第三,由于技術上需要投入大量研發資金,一些中小企業沒有能力持續創新,更難形成規模生產,造成產品價格居高不下。1.1.2 研究意義結合課題內容,本論文主要研究智能家居信息監控網絡系統的設計與實現。針對目前國內智能家居產業存在的問題,其監控網絡系統應該具有結構簡單、成本低廉、操作簡單、穩定性好、抗

16、干擾能力強、主機與子機之間聯系緊密簡潔等優點。本論文將對目前智能家居信息監控網絡系統的不足,提出方案并進行設計調試,以改進不足,并為以后的研究打下基礎。1.2 設計思路及優勢智能家居包括中央控制器、室內防火防盜監控器、室內煤氣檢測報警器等系統,用戶欲通過internet了解或者控制各個系統,可以將命令發給中央控制器,由中央控制器根據用戶命令對各個功能系統進行操控。所以,采用星形拓撲結構構建智能家居信息監控網絡系統,中央控制器是整個智能家居的中央節點,各個功能系統為各個站點。用戶與中央控制器通過internet通信,中央控制器與其它功能系統通過無線數據傳輸模塊進行點對點通行。星形拓撲結構因為采用

17、中央控制器集權方式,所以控制簡單,故障診斷和隔離容易,便于維修和維護。各個站點與中央節點的數據傳輸各不相關,一個站點發生故障也不會影響其它站點的工作。用戶通過internet或者pstn訪問中央控制器,可以使用戶隨時隨地了解和控制家中各個家電的工作狀況。由此,解決了目前市場上大多產品實用性差、操作復雜、成本高等問題。1.3 論文的主要內容和組織結構智能家居信息監控系統的構建,需要構成無線數據傳輸模塊,以及將中央控制器連接到internet,用戶可以通過網絡實時的了解和控制家中各個家電的工作。設計的主要內容為:1 利用單片機和無線收發芯片構成無線數據傳輸模塊。2利用web服務器將中央控制器連接到

18、internet。3編寫通信協議,使系統可以根據用戶命令完成相應工作。本論文從第二章開始結構如下:第二章介紹信息監控網絡系統的總體設計方案,包括需求分析,以及滿足功能需求所設計的總體方案和器件的選取。第三章介紹系統硬件的設計,包括構建無線數據傳輸模塊的硬件電路的連接。第四章介紹系統軟件的設計,包括無線數據傳輸模塊的軟件設計和基于單片機的web服務器軟件設計第五章介紹系統的抗干擾設計方法;第六章對測試與調試過程并獲取相應技術指標。1.4 本章小結本章主要介紹了智能家居在國內外的研究與發展現狀,分析了主要存在的問題,并就現有問題針對智能家居信息監控系統的設計提出了新的思路,引出了研究內容和論文結構

19、。第二章 智能家居信息監控網絡系統的總體設計方案2.1 智能家居信息監控網絡系統的需求分析智能家居信息監控網絡系統是用戶通過智能家居中央控制器對各個子功能系統進行控制,并具有數據分析、數據儲存的平臺。因此,提出以下功能需求:1利用cgi技術將中央控制器通過web服務器連接到internet,實現用戶上網操控中央控制器。2設計無線數據傳輸模塊,實現中央控制器與各個子功能系統的點對點數據傳輸。3編寫通信協議,明確用戶命令含義。2.2 信息監控網絡系統的總體設計方案系統結構如圖2-1。系統采用星形拓撲結構,中央控制器通過web服務器與internet相連,各個子功能系統與中央控制器之間采用點對點無線

20、通信。用戶通過internet向中央控制器發送命令,中央控制器接受命令,然后通過無線傳輸模塊發送給子功能系統。子功能系統接收到命令后,根據協議規定來完成相應的操作。操作結束后,將操作結果返回給中央控制器,由中央控制器顯示給用戶。中央控制器internet子功能系統1子功能系統2子功能系統3用戶圖2-1 智能家居信息監控網絡系統結構圖例如:用戶想要查看室內電燈亮度,則上網將命令傳輸給中央控制器。中央控制器將指令無線傳輸給室內電燈控制系統。室內電燈控制系統收到指令,查看功能串口的亮度信息,將亮度數據返回給中央控制器。中央控制器將返回數據上傳到internet。2.3 構成無線數據傳輸模塊的器件選取

21、2.3.1 單片機的選取本設計所用單片機為at89c51單片機。它的主要性能如下:l 4kb flash存儲器。l 全靜態工作:0hz 24mhz。l 三級程序存儲器保密。l 128 8字節內部ram。l 32條可編程i/o線。l 2個16位定時器/計數器。l 6個中斷源。l 可編程串行通道。l 片內時鐘振蕩器。另外,at89c51單片機采用靜態邏輯設計,工作頻率可以下降至0hz,并且有空閑模式和掉電模式兩種省電方式。空閑模式下,cpu停止工作,ram、定時器/計數器、串行口和終端系統繼續工作;掉電模式下,片內振蕩器停止工作,從而使時鐘被“凍結”,一切功能暫停,只保存片內ram中的內容,直到下

22、一次硬件復位。這些功能特性完全可以勝任以其搭建最小系統并控制無線收發芯片的工作,而且價格便宜,使用方便。2.3.2 無線收發芯片的選取無線數據傳輸模塊采用nrf905芯片,它具有的特點如下:l 具有低功耗shock burst工作模式。l 工作電源電壓范圍低,1.9v3.6v。l 多通道工作,etsi/fcc兼容。l 通道切換時間小于650ms。l 極少的材料消耗。l 無需外部saw濾波器。l 輸出功率可調至10dbm。l “傳輸前監聽”的載波檢測協議。l 當正確的數據包被接收或發送時,有數據準備就緒信號輸出。l 當地址正確輸出地址匹配信號時,偵測接收的數據包。l 數據包自動重發功能。l 自動

23、產生crc和前導碼。所以,用單片機控制nrf905芯片進行數據傳輸,編程方便、連接簡易。因此,應用nrf905芯片構建無線數據傳輸模塊,有效的改進了目前國內智能家居網絡操作復雜、實用性差、各個子系統不能相互協調、可拓展性弱的短處。2.4本章小結本章主要對智能家居信息監控網絡系統的功能與指標需求進行了分析,并由此引出總體設計框架。并介紹了重要器件的選取。第三章 信息監控網絡系統的硬件設計第二章根據智能家居信息監控網絡系統的功能需求提出了總體設計方案,本章將分別介紹系統各個部分的硬件電路設計。主要圍繞最小系統、無線數據傳輸模塊兩部分來展開。3.1單片機最小系統的搭建最小系統由時鐘系統、測試調試接口

24、、供電系統、存儲器系統和復位及復位配置系統五部分構成。信息監控網絡系統使用的最小系統硬件電路圖如圖3-1。圖3-1最小系統硬件電路圖l 時鐘系統:圖3-1中的晶振、電容c1與c2組成時鐘系統。外接晶振11.0592mhz。波特率公式如公式(3-1)。 (3-1)其中,smod為波特率倍增選擇,fosc = 11.0592mhz為主時鐘,k為定時器的計數器長度,n為定時器定時常數的初值。將11.0592mhz代入上式,得出的系統波特率均為整數,為以后的計算提供方便。l 供電系統:圖3-1中的vcc(5v)、電阻r5和r6組成了供電系統。at89c51單片機的電源電壓為5v,nrf905芯片的電源

25、電壓為3.3v。所以,用兩個電阻串聯分壓的方式為at89c51單片機和nfr905芯片分別供電。圖2-1中的電阻r5和r6分別為2kw和3kw。這兩電阻之間用導線引出后接到nrf905芯片的電源引腳即可。單片機電源引腳直接接vcc(5v)。l 復位及復位配置系統:圖3-1中的vcc(5v)、按鍵s7、電容c4和電阻r4組成了復位系統。其中,c4 = 10mf,r4 = 10kw。系統復位分為上電復位和按鍵復位。上電復位時間計算公式如公式(3-2): (3-2)將電源電壓vcc的值、電容c4的值和電阻r4的值代入上式,得出上電復位時間為t = 230ms。l 圖3-1中的jp為排針,為i/o口外

26、接設備時所用。at89c51單片機的p0口、p1口和p2口為外接其他設備預留。3.2 無線數據傳輸模塊的電路連接3.2.1 nrf905芯片概述nrf905單片無線收發器工作在433/868/915mhz的ism頻段。由一個完全集成的頻率調制器,一個帶解解調器的接收器,一個功率放大器,一個晶體振蕩器和一個調節器組成。shock burst工作模式的特點是自動產生前導碼和crc。可以很容易通過spi接口進行編程配置。電流消耗很低,在發射功率為-10dbm時,發射電流為11ma,接收電流為12.5ma。進入powerdown模式可以很容易實現節電。nrf905共有32個引腳。引腳圖見圖3-2。主要

27、引腳功能見表3-2。圖3-2 nrf905引腳圖nrf905有兩種活動模式和兩種節電模式,分別為shock burst rx、shock burst tx、掉電模式和standby模式。它們由trx_ce、tx_en、pwr_up的設置來設置。表3-2 nrf905主要引腳功能引腳名稱功能說明1trx_ce數字輸入使能芯片發射或接收2pwr_up數字輸入芯片上電6cd數字輸出載波檢測7am數字輸出地址匹配8dr數字輸出接收或發射數據完成10misospi接口spi輸出11mosispi接口spi輸入12sckspi時鐘spi時鐘13csnspi使能spi使能32tx_en數字輸入tx_en =

28、“1”tx模式;tx_en=“2”rx模式 nrf905的所有配置都通過spi接口進行,spi接口由五個寄存器組成,一條spi指令用來決定執行什么操作。spi接口只有在掉電模式和standby模式時是被激活的。五個寄存器分別為狀態寄存器、配置寄存器、發送地址寄存器、發送數據寄存器和接收數據寄存器。3.2.2 基于nrf905傳輸系統的硬件設計單片機需要連接主機和子機的信息輸出端以及nrf905的各個相關端口。其主要任務是用來獲取外部設備(主機與子機)的信息,并控制nrf905,設置傳輸數速率、波特率等。無線數據傳輸模塊結構如圖3-2所示。無線數據傳輸模塊無線數據傳輸模塊at89c51at89c

29、51nrf905nrf905外部設備中央控制器子功能系統無線傳輸圖3-2 無線數據傳輸模塊結構該系統由外部數據設備和無線數據傳輸模塊組成。外部設備為pc機或者數據采集等設備。無線數據傳輸模塊與外部數據設備之間采用rs-232接口。at89c51單片機的p00 p01口用于連接rs-232接口。pc機與單片機用兩根線方式進行全雙工異步通信。由于at89c51單片機的輸入輸出為ttl電平,pc機配置的是rs-232標準串行接口,二者電氣規范不一致,因此,使用icl3221收發芯片實現串口電平轉換。數據傳輸速率在板可設置或者通過外部數據設備設置。在板波特率利用at89c51單片機的p16和p17兩位

30、設置,可設置為9.6kbit/s、19.2 kbit/s、38.4 kbit/s和115.2 kbit/s。利用外部數據設備設置波特率時,單片機的初始數據傳輸速率為9.6 kbit/s,p16和p17置為00狀態。當單片機收到波特率設置命令后,數據傳輸速率調整為設定值。在本設計中,采用在板設置數據傳輸速率為19.2kbit/s。3.2.3 at89c51單片機與nrf905接口電路at89c51單片機除了對寄存器讀寫外,還要對nrf905的工作模式切換進行控制。單片機與nrf905的信號連接圖見圖3-3。p20 p10 p11p21 p12 p13p22 p14p15p23 p16p17p32

31、p33tx_enpwr_upcdcsnammosimisoscktrx_cedrled0led3led2led1 at89c51 nrf905圖3-3 單片機與nrf905信號連接at89c51單片機與nrf905之間的雙向數據傳輸用spi接口。單片機的p06 p07與p20 p21連接nrf905的spi接口,p22 p27連接nrf905的控制信號和檢測信號,用于控制nrf905的模式切換以及通信過程中必須的信號指示。單片機的p05連接一個led指示燈,用來表示通信進行與否。3.4 本章小結本章主要介紹了智能家居信息監控網絡系統中的無線數據傳輸模塊的硬件電路的設計。其中包含了單片機最小系統

32、的搭建和單片機與nrf905連接的硬件電路的設計。完成了智能家居信息監控網絡系統總體功能實現的硬件基礎。第四章 信息監控網絡系統的軟件設計為實現智能家居信息監控網絡系統方案設計中提到的功能,其軟件設計上要完成通信協議的設計、無線傳輸程序的編寫和web服務器的設計與實現。本章將分別對以上三點給予介紹。4.1 通信協議和用戶操作字的設計無線數據傳輸模塊設計好后,主機與子機之間就可以完成正常的數據通信了。對數據包中的數據定義具體含義,就使主機與子機之間的對話有了實質性的內容。4.1.1 地址位和數據位的定義智能家居課題小組將智能家居的各項功能分成了:中央控制器、遙控器、ic卡門控制器、插座控制器、室

33、內防火防盜監控器、室內煤氣檢測報警器、室外led燈控制器、室內照明燈自動開關控制器和智能家居安全巡檢機器人。其中,中央控制器為主機,其它各個子功能系統為子機。每個系統都裝有無線數據傳輸模塊,可以根據需要自由收發數據包。現在,對每個系統規定地址,對數據包中的數據內容加以定義。各個子系統地址設置見表4-1。表4-1 子系統地址設置序號系統名稱地址設置1中央控制器0000 0000h2遙控器0000 0001h3ic卡門控制器0000 0010h4插座控制器0000 0011h5室內防火防盜監控器0000 0100h6室內煤氣檢測報警器0000 0101h7室外led燈控制器0000 0110h8室

34、內照明燈自動開關控制器0000 0111h9智能家居安全巡檢機器人0000 1000h數據包中數據位內容的定義以及說明如下:l 查詢指令:0000 0000;查詢子功能系統當前狀態。l 啟動指令:0000 0001;開啟子功能系統,使其開始工作。l 關閉指令:0000 0010;關閉子功能系統,使其停止工作。l 顯示啟動狀態:0000 1000;子功能系統返回指令,表示當前子功能系統為啟動狀態。l 顯示關閉狀態:0000 1001;子功能系統返回指令,表示當前子功能系統為關閉狀態。l 啟動成功指令:0000 1010;子功能系統返回指令,當收到中央控制器的啟動指令時,進行啟動工作,啟動成功后將

35、該指令返回給中央控制器。l 關閉成功指令:0000 1011;子功能系統返回指令,當收到中央控制器的關閉指令時,進行啟關閉工作,關閉成功后將該指令返回給中央控制器。l 啟動失敗指令:0000 1100;子功能系統返回指令,當收到中央控制器的啟動指令時,進行啟動工作,如果啟動失敗,將該指令返回給中央控制器。l 關閉失敗指令:0000 1101;子功能系統返回指令,當收到中央控制器的關閉指令時,進行關閉工作,如果關閉失敗,將該指令返回給中央控制器。例如:中央控制器想查詢插座控制器是否在運行,則通過無線傳輸模塊向插座控制器發送“0000 0011 0000 0000”。假設它是“關閉”的狀態 它就會

36、返回“0000 0000 0000 1001”。如果想啟動插座控制器,使其的運行,就發送“0000 0011 0000 0001”。插座控制器接收到命令后開始啟動,如果啟動成功的話,會向中央控制器返回“0000 0000 0000 1010”。4.1.2 用戶操作字定義由上述制定的協議,用戶也需要用規范命令輸入給中央控制器。用戶命令字安排如下:1各個子功能系統名稱安排遙控器remote controller; ic卡門控制器ic door controller;插座控制器socket controller; 室內防火防盜監控器fs monitor;室外led燈控制器led controller

37、;室內煤氣檢測報警器gas alarm;智能家居安全巡檢機器人robort;室內照明燈自動開關控制器switch of indoor lights controller。2命令名稱安排查詢當前狀態inquire; 啟動start; 關閉close。3狀態返回數據名稱安排正在運行running; 待機狀態standby;操作成功operate success; 操作失敗operate failure。例如:查看室內煤氣檢測報警器當前狀態,則向中央控制器輸入“inquire gas alarm”。報警器正在運行,則顯示“running”;報警器處于待機狀態,則顯示“standby”。啟動室內煤氣檢

38、測報警器,則輸入“start gas alarm”;關閉啟動室內煤氣檢測報警器,則輸入“close gas alarm”。啟動或者關閉成功,中央控制器顯示“operate success”;啟動或者關閉失敗,則顯示“operate failure”。4.2 無線數據傳輸模塊的軟件設計4.2.1 數據傳輸過程如圖4-1。發送端的pc機(或其它外部設備)有數據傳輸或需要設計設備參數時,通過串口將數據發送給單片機。單片機接收數據后,將需要發送的數據(這里包括目標設備的地址和所需發送的數據)通過spi接口發送給nrf905。nrf905將數據加前導碼和crc碼,將數據包發送。當接收端的nrf905接收

39、到有效數據后,dr置高位。單片機檢測到dr位為高電平時,復位trx_ce引腳,使nrf905進入空閑模式,然后通過spi接口從nrf905中讀出接收數據,最后通過uart傳給pc機或者其它外部設備。軟件功能模塊由cpu寄存器初始化、串行口初始化、串口接收發送程序、spi初始化、spi接收發送程序、i/o口初始化、nrf905配置寄存器操作和nrf905接收程序、發送程序、主程序模塊組成。pc機等外部設備的串口uart spinrf905pc機等外部設備的串口uart spinrf905數 據 包單片機1單片機2發送端接收端圖4-1數據無線傳輸過程4.2.2 uart串口軟件設計1串口數據幀格外

40、部數據設備與無線數據傳輸設備間的雙向數據傳輸使用相同的幀格式。幀格式由幀頭、幀長、幀標志和數據組成。幀頭為數據幀開始的標志,固定為0ff81h,長度為2字節。幀長指從幀標志開始至本幀結束的所有數據的字節數,不包括幀頭和幀長本身,單位為字節,幀長占1字節。幀標志用以指示本幀數據的內容屬性,長度為1字節。不同類型幀的數據長度和幀標志的具體定義如表4-2所示。數據是指所傳輸的業務等內容。數據長度見表4-1。數據內容定義如下:(1)波特率設置:01h 0ah對應波特率(單位為kbit/s)為2.4、4.8、9.6、14.4、19.2、28.8、38.4、57.6、76.8、115.2。表4-2 幀的數

41、據長度和幀標志的定義方向內容數據長度/字節幀標志數值外部數據設備至無線設備波特率設置11h設備地址設置42h發射功率13h工作頻率14h發送數據不超過2545h無線設備至外部數據設備波特率已設置112h設備地址已設置413h發射功率已設置114h工作頻率已設置115h接收數據不超過25416h(2)設備地址設置:設備地址為00000000h ffffffffh。(3)發射功率:00h為低功率;01h為高功率。(4)工作頻率:433mhz頻段,信道間隔100khz。(5)發送數據:發送數據長度不定,最長不超過254字節。2uart初始化初始化uart包括波特率設置、數據格式和scon寄存器設置。

42、pcon寄存器與定時器相連接,可以構成波特率發生器。波特率計算公式見前文公式(3-1)。選擇定時器t1工作在串行口工作方式1,即k = 16,smod選擇為1,定時器定時常數的初值設置為fffah,代入公式(3-1)可得到波特率為9.6kbit/s。在串行口工作方式1下,字符幀格式為8為數據位、1位起始位和1位停止位。scon寄存器可以設置單片機串行口工作方式,使能串口發送和接收,并相應接收完成中斷。3數據發送和接收數據發送采用中斷方式。將ti位置位,允許數據發送。將需要發送的數據加載到發送緩沖區將啟動數據發送。發送數據時,按照幀格式在所需發送的數據前加上幀頭、幀長和幀標志,然后發送。數據接收

43、采用中斷方式。將ri位置位,允許數據接收。接收數據時,幀標志有效才開始接收一幀數據,并根據讀出的幀長信息完成接收規定長度的數據。4.2.3 spi接口軟件設計spi接口設置為主機模式,nrf905為從設備。將spi接口波特率設置為1/2系統時鐘。因此,spi速率可達5.5296mhz。根據nrf905的讀寫時序,spi接口的工作模式應設置為模式0。at89c51與nrf905同時進行雙向數據傳輸。at89c51通過將nrf905的csn引腳置低來實現與nrf905同步。spi時鐘由寫入到spi發送緩沖寄存器的數據啟動。mosi引腳上的數據發送次序時從最高位開始發送,同時接收到的數據傳送到接收緩

44、沖寄存器中,cpu進行右對齊從接收緩沖寄存器中讀取接收到的數據。nrf905的所有配置都是通過spi接口進行的。nrf905的spi接口只有在掉電模式和standby模式下是激活的。當csn為低時,spi接口開始等待第一條指令。任何一條新指令都在csn由高到低的轉換開始。4.2.4 主程序流程圖 主程序流程圖如圖4-2所示。首先,將無線數據傳輸模塊設置為接收模式,判斷是否接受完一幀數據。如果未完成一幀數據的接收,則繼續接收數據,直到完成數據接收;如果已完成一幀數據的接收,則將無線數據傳輸模塊轉換為發送模式,發送結束后返回到初始階段。主程序無限循環。i/o、spi、uart初始化nrf905配置

45、寄存器初始化完成一幀的接收?根據幀標志完成不同功能配置向nrf905寫地址和數據nrf905設置成發射模式結束發送dr是否為高?從spi口讀取數據,置低am、dr將接收到的有效數據組幀發送到pc機nyny主程序開始圖4-2 主程序流程圖4.3 web服務器的設計與實現4.3.1 web服務器原理一個web服務器也稱為http服務器,它通過http協議與客戶端通信。這個客戶端通常指的是web瀏覽器。http是一種讓web服務器與瀏覽器(客戶端)通過internet發送與接收數據的協議。它是一個請求、響應協議客戶端發出一個請求,服務器響應這個請求。http運用可靠的tcp連接,通常用的tcp 80

46、端口。從功能上來講,web服務器監聽用戶端的服務請求,根據用戶請求的類型提供相應的服務,用戶端使用web瀏覽器和web服務器進行通信。用戶請求有兩種:get請求和post請求。web服務器在接收到用戶端的請求后,處理用戶請求并返回需要的數據。在http中,客戶端總是通過建立一個連接與發送一個http請求來發起一個事務。服務器不能主動去與客戶端聯系,也不能給客戶端發出一個回叫連接。客戶端與服務器端都可以提前中斷一個連接。例如,當用一個瀏覽器下載個文件時,我們可以通過點擊“停止”鍵來中斷文件的下載,關閉與服務器的http連接。4.3.2 cgi原理1cgi概述cgi(通用網關接口)定義了web服務

47、器與cgi腳本之間的接口標準。其主要功能是在web環境下,從客戶端傳送一些信息給web服務器,web服務器把接收到的有關信息放入環境變量,然后再去啟動所指定的cgi腳本以完成特定的工作,cgi腳本從環境變量中獲取相關信息來運行,最后以html格式輸出相應的執行結果返回給瀏覽器端。由于用戶能傳遞不同的參數給cgi腳本,所以cgi技術使得瀏覽器和服務器之間具有交互性。cgi在整個數據傳送的過程中,要從web服務器傳遞有關數據給cgi腳本,因此web服務器先將從瀏覽器接收到的有關數據轉換為各種環境變量,然后cgi腳本就可以從這些環境變量中讀取所需要的內容。也就是說,環境變量是web服務器和cgi腳本

48、進行數據傳遞的途徑。2cgi工作流程瀏覽器,web服務器跟cgi腳本之間的工作流程如圖4-3所示。瀏覽器web服務器cgi腳本get輸入數據post輸入數據運行結果啟動cgi圖4-3 web服務器跟cgi腳本之間的工作流程圖中,瀏覽器將用戶輸入的數據傳遞給web服務器,web服務器根據接收到的數據設置環境變量,并新開一子進程來執行cgi腳本。cgi腳本從環境變量中讀取所需要的數據,最后使用stdout輸出html形式的結果文件,經web服務器送回瀏覽器顯示給用戶。4.3.3 設計思想及工作流程1設計思想web服務器接收瀏覽器請求進行分析,如果是get請求即沒有從客戶端傳來參數,則調用https

49、erver 0函數取得設備的當前參數值顯示給客戶端瀏覽器,用戶可以通過操作界面設置設備的新參數,發回給web服務器;如果是post請求,web服務器利用cgi處理模塊分解出傳來的參數,設置設備的新的參數值,同時回送給客戶端,客戶端瀏覽器和web服務器實現了交互。2工作流程具體實現過程:網頁采用htmi,格式放在數組中,存貯在程序存儲器里面,通過普通的線性查詢技術尋找客戶端請求的文件。為使web服務器變得實用,則要求web服務器與瀏覽器之間具有交互能力,網頁中含有動態內容,允許在已存在的頁面中插入動態數據,這里采取了變量替換的方法。首先將網頁需要動態更新的變量用特定的標簽(如fag:myipin

50、)表示:ip:n當客戶端請求某一文檔時,web服務器則調用相應的http_server()函數,將該文檔從程序存貯器中裝載到內存ram中。然后在內存ram查找是否含有特定的標簽,一旦找到則用相應的變量值替代。網頁則會轉換為:ip:/tdn最后調用http_send()函數將網頁文檔發送出去。其流程如圖4-4所示。通常,發送的web頁面長度有幾百個字節,接收到的post請求數據包長度也有幾百個字節。若在8位mcu內存巾開辟一接收緩沖區和一發送緩沖區,則很容易超出其內存空間。唯一的實現方法就是緩沖區的地址共用。主程序開始讀請求,分析請求讀取當前參數值把數據封裝后放瀏覽器設置新參數值分析form數據

51、讀請求體get/post結束getpost圖4-4 web設計流程圖4.4 本章小結根據功能需求,本章主要進行了外部設備和無線數據傳輸模塊的軟件設計,以及通信協議和用戶操作字的編寫。至此,智能家居信息監控網絡系統基本功能已經設計完成。第五章 智能家居信息監控網絡系統的抗干擾設計由于居住環境不同,智能家居信息監控網絡系統會受到各種各樣的外界干擾。信息監控網絡系統包括外部設備、無線數據傳輸模塊等部分。其中單片機是敏感器件,最容易受到干擾。本章將介紹單片機的抗干擾設計。5.1 單片機硬件電路的抗干擾設計5.1.1 造成干擾的原因影響單片機系統可靠安全運行的主要因素主要來自系統內部和外部的各種電氣干擾

52、,并受系統結構設計、元器件選擇、安裝、制造工藝影響。這些都構成單片機系統的干擾因素,常會導致單片機系統運行失常,輕則影響產品質量和產量,重則會導致事故,造成重大經濟損失。 觀察整個系統,對系統中單片機造成干擾的情況可分為干擾源和傳播路徑。其中,雷電、繼電器、可控硅、電機、高頻時鐘等都可能成為單片機的干擾源;通過導線的傳導和空間的輻射,成為干擾的傳播路徑。干擾源產生的干擾信號是通過一定的耦合通道才對單片機產生作用的。耦合通道的耦合方式,有直接耦合、公共阻抗耦合、電容耦合、電磁感應耦合和漏電耦合。找到干擾原因,就可以針對其進行抗干擾設計。5.1.2 單片機硬件抗干擾措施增強單片機的抗干擾性能,就要

53、從單片機本身、干擾源和干擾傳播路徑三方面進行抗干擾設計。1對于單片機本身,為了盡量減少其對干擾噪聲的拾取,以及從不正常狀態盡快恢復的問題而采用的措施如下: (1)布線時減少了回路環的面積,以降低感應噪聲。 (2)布線時,電源線和地線要均選擇了粗線。除減小壓降外,更重要的是降低耦合噪聲。 (3)對于單片機閑置的i/o口,均接地或接電源。其它ic的閑置端在不改變系統邏輯的情況下接地或接電源。 (4)對單片機使用了電源監控及看門狗電路imp809。這樣,大幅度提高整個電路的抗干擾性能。 (5)在速度能滿足要求的前提下,降低了單片機的晶振并選用了低速的數字電路。 (6)ic器件直接焊在電路板上,很少用

54、到ic座。(7)i/o口采用了光電、磁電、繼電器隔離,同時去掉公共地。(8)增加了復位電壓檢測電路,來防止復位不充分, cpu就工作的問題和復位不充份會改變eeprom內容的問題。2在抑制干擾源方面,要盡可能的減小干擾源的du/dt, di/dt:為了減小干擾源的du/dt,在干擾源兩端并聯了電容;為了減小干擾源的di/dt,在干擾源回路串聯了電感或電阻以及增加了續流二極管。具體措施如下:(1)在有繼電器的各個功能系統中,為繼電器線圈增加了續流二極管,以消除斷開線圈時產生的反電動勢干擾。但是僅加續流二極管會使繼電器的斷開時間滯后,所以增加了穩壓二極管來使繼電器在單位時間內可動作更多的次數。 在

55、繼電器接點兩端并接火花抑制電路(采用rc串聯電路,電阻選20k,電容選0.01uf),以減小電火花影響。 (2)在有電機的各個功能系統中,為電機加了電容、電感引線很短的濾波電路。 (3)焊接單片機的電路板上每個ic并接了一個0.01f0.1 f高頻電容,以減小ic對電源的影響。并且高頻電容的連線盡量靠近了電源端并盡量的粗短,否則,等于增大了電容的等效串聯電阻,會影響濾波效果。 (4)布線時盡量避免了90的折線,以減少高頻噪聲發射。 (5)在有可控硅的各個功能系統中,將可控硅兩端并接了rc抑制電路,以減小可控硅產生的噪聲,并且防止噪聲嚴重時將會把可控硅擊穿。3在切斷干擾傳播路徑方面,采用了在導線上增加濾波器的方法來切斷高頻干擾噪聲的傳播;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論