新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于深聯華單片機的無線智能插座

        基于深聯華單片機的無線智能插座

        作者: 時間:2017-10-21 來源:網絡 收藏

          一、項目設計背景及概述

        本文引用地址:http://www.104case.com/article/201710/367178.htm

          物聯網是新一代信息技術的重要組成部分。顧名思義,物聯網就是物物相連的互聯網。這有兩層意思:第一,物聯網的核心和基礎仍然是互聯網,是在互聯網基礎上的延伸和擴展的網絡;第二,其用戶端延伸和擴展到了任何物品與物品之間,進行信息交換和通信。物聯網就是“物物相連的互聯網”,其中智能家居是物聯網的一部分。

          隨著人們生活水平的不斷提高,人們對生活質量的要求不斷提高,方便快捷是人們永恒追求的目標。在家居娛樂和電器控制方面,智能家居有突出表現,包括背景音樂系統、數字網絡客廳、家居綜合布線、燈光控制和電器控制等功能在內的系統,使人們的生活從各個方面變得更加安全、舒適、簡單。

          目前市場上,智能家居的主要接受人群仍然是一部分高端人群。業內人士認為,阻撓智能家居發展腳步的主要是價格和消費理念兩方面的原因。智能家居還屬于高檔消費,一套系統要幾萬元不等。盡管接受度和認同度與以前相比已經大有提高,但仍主要局限于買別墅的高端人群和熱愛生活、享受生活的年輕白領一族。另外,目前許多人對智能家居系統功能的認識不足,許多設計師 也缺乏相應的專業知識去向業主推廣,導致一部分實際上有需求的業主對智能家居還一無所知。但是近年來,智能家居的普及度正在慢慢提高,隨著國外同行業產品不斷涌入我國,以及與國內智能家居行業的競爭加劇,客觀上逐漸加大了宣傳力度,并產生互補。今后我國的智能家居應走品質與服務并重的路線,未來智能家居發 展前景廣闊。

          2013年前三季度,我國網民數量達6.08億,互聯網普及率45.4%,基于以上分析,以及通用性方面的考慮設計了基于單片機的。安裝了ADSL寬帶的用戶簡單設置路由器以后就可以將插座接入互聯網,通過Android客戶端就可以實現遠程控制。該插座有四個單獨插座,用戶可以根據需求將需要控制的電器插到插座上。每個單獨的插座都可以單獨設定開啟和關閉,也可以設定定時開啟或者定時關閉,同時還有過流保護的功能,通過Android客戶端設定插座最大額定功率(四個單獨插座的總功率),如果實際額定功率大于設定額定功率時四個單獨插座全部關閉,同時關閉定時功能,這樣就能防止過流燒毀線路,避免更大的損失。

          二、項目設計原理

          1、原理概述

          基于單片機的由電源單元、功率輸出單元、控制單元、電流采集單元、存儲單元、實時時鐘單元、WIFI模塊以及手機客戶端組成。

          電源單元包括兩部分,一部分是將220V交流輸入轉換成12V直流輸出,為整個系統提供電源;另一部分是將12V直流電源轉換成正負5V,為控制單元,電流采集單元,存儲單元,實時時鐘單元,WIFI模塊提供電源。功率輸出單元控制插座的開啟和關閉,為要控制的電器提供220V電源。控制單元是整個系統的核心,為各個單元提供控制信號。電流采集單元用來采集插座的電流,然后將信號輸入給控制單元,用于電流檢測,防止過流。存儲單元用來保存四個單獨插座的狀態,系統下次上電的時候就會從存儲單元讀取數據。實時時鐘單元為定時功能提供時鐘信號,同時這個單元有備用電池保證系統掉電后時鐘單元正常計時。WIFI模塊負責插座和無線路由器的通信,使用之前將模塊的端口號在無線路由上做端口映射,這樣就能實現遠程控制。

          手機客戶端是基于Android系統的,可以向智能插座發送指令,智能插座接收到指令后執行相應的操作,同時向手機客戶端返回數據。

          2、硬件設計原理

          電源單元設計原理:

          電源單元由兩部分構成,其中220V交流電源轉12V直流電源模塊使用的是成品的開關電源模塊,可以提供最大1A的電流,滿足系統需求,并且開關電源體積小效率高。將這個模塊集成在系統上另一個原因是方便用戶使用,直接通上220V電源就可以使用。

          電源單元的另一部分是將12V直流轉換為正負5V。這部分使用兩片MC34063電源芯片,通過設計合理的外圍電路,可實現分別輸出+5V電壓和-5V電壓。其中電流采集單元需要雙極性電源,所以其中一路MC43063產生-5V電壓。MC34063電源芯片可以達到較高的效率,價格低廉,性能可以滿足系統設計要求,故而選該芯片作為電源芯片。

          功率輸出單元設計原理:

          功率輸出單元主要包括繼電器,三極管等。繼電器用來控制對應插座的電源通斷,三極管則用來控制繼電器的通斷,單片機通過控制三極管進而實現對插座的控制。其中繼電器型號為HJR-3FF,240V時可以通過7A電流,該繼電器需要12V電源供電,這樣可以起到與控制單元電氣隔離的作用。三極管采用8050,最大可以提供1A的驅動電流,完全可以滿足設計要。

          控制單元設計原理:

          該系統的主控芯片選用SC89F5162單片機,SC89F5162是一種高速高效率8051兼容單片機。在同樣的震蕩頻率之下,較之傳統的8051單片機它具有更快的速度,性能更優越。

          該系統的設計使用了單片機的定時器0、SPI、ADC、EUART1、IO資源。定時器是為串口接收數據提供定時時間,用來判斷一幀數據是否接收完畢;SPI控制93C46,保存和讀出插座的狀態數據;ADC用來采集電流采集單元的輸出電壓,為檢測是否過流提供數據;EUART1是和WIFI模塊進行通信的,接收來自手機客戶端的數據,并向客戶端返回數據。IO用來控制時鐘單元和功率單元等。

          控制單元是系統的核心,也是知識產權保護的核心,保護好單片機不被破解是重要方面,深聯華單片機采用了多種防破解技術,高達32位的密碼生成器,白噪聲密碼沒有規律可循等等這些特點決定了代碼的安全性很高,這就能很好的保護開發者的利益。

          電流采集單元設計原理:

          對交流電流進行采集需要用到交流互感器,該系統采用DL-CT03C1.0精密電流互感器,變比為1:1000,最大可測電流為10A,輸出端最大可接電阻為50歐姆,這里選擇47歐姆電阻。由于電阻上電壓很低,所以不可以直接對電阻上的交流電壓進行整流,因此在整流之前使用LM358對交流電壓信號進行7.8倍放大。運放所放大的信號為交流信號,需要一個雙極性電源進行供電,正好使用電源模塊提供的正負5V電源。將放大的電壓信號通過橋整流電路進行整流,然后使用電容濾波,再通過一個低通濾波電路將信號送入單片機AD引腳。

          存儲單元設計原理:

          存儲芯片選用93C46芯片,該芯片使用SPI通信方式,具有128個字節的容量。系統需要保存的數據量小,該芯片可以滿足需求。

          實時時鐘單元設計原理:

          實時時鐘單元采用DS1302芯片,該芯片在掉電時可以使用備用電源,數據通信使用串行方式,占用IO較少,芯片價格低廉計時精確,完全能滿足系統設計需求。

          WIFI模塊單元:

          WIFI模塊使用的是成品模塊,通過串口與單片機通信。該模塊可通過電腦設置參數,使用方便。

          3、軟件設計原理

          在單片機軟件設計時采用模塊化編程的方法以及分層設計的思想。首先設計使用到的單片機資源的驅動程序,然后設計使用到的芯片的驅動程序,最后設計應用層的程序。

          下面介紹各個.c文件的主要內容:

          Initial.c文件主要是單片機系統時鐘、定時0、串口1的初始化函數,以及串口發送數據的函數。

          SPI.c文件包括單片機SPI資源的初始化,以及93C46芯片的驅動程序。

          DS1302.c文件包括DS1302芯片的驅動程序,主要是對芯片的初始化,讀寫函數等。

          ADC.c文件主要包括對單片機ADC資源的初始化函數,以及對采集到的數據進行處理的函數,文件使用的是官網提供的,但是有些地方有問題,進修改后可以正常使用。

          OutletStatuePro.c文件主要是對插孔的結構體數據進行處理的函數,包括設置插孔的狀態,得到插孔的狀態,設置插到打開或者關閉的定時時間等等。

          Main.c文件是項目的主文件,這里首先是調用各個模塊的初始化函數,以及調用相應的驅動函數完成對應的功能。

          下面具體介紹程序執行流程:

          程序開始運行后首先調用各個模塊的初始化函數,完成對單片機以及其他芯片的初始化工作。下一步就是讀取93C46中數據,然后就是就如主循環。在主循環中首先判斷串口是否正在接收數據,如果正在接收數據則不執行解析,如果接收完畢則開始解析接收到的數據。根據不同的指令執行相應的操作,具體操作可看代碼注釋。解析工作完成后讀取一次DS1302的數據,然后開始根據各個插孔的當前狀態執行相應的操作,在這個處理過程中使用了狀態機的概念,根據插孔的狀態執行相應的操作,并且判斷是否有插座處于開啟狀態,如果有的話就啟動AD,判斷當前功率是否超過設定功率,如果超過了設定功率則關閉所有插孔。

          4、通信數據幀設計原理

          手機客戶端與智能插座的通信是通過互聯網實現的,在這個系統的設計中我們采用UDP協議,在這個基礎上設計了簡單的通信協議,下面就具體說明一下數據格式的定義。

          幀頭指令數據

          表2.41 幀結構

          表2.41表示的是基本的幀結構,一幀數據由三部分構成,幀頭為0xFF占用一個字節。指令占用一個字節,用來表示該幀數據的作用。數據部分表示傳輸的數據,占用的字節數不固定。


        表2.42 指令和數據說明

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 武鸣县| 房产| 寻甸| 博乐市| 东乡| 瑞丽市| 永平县| 莱州市| 琼海市| 南平市| 泸州市| 黎平县| 明水县| 浑源县| 左云县| 昌江| 绥德县| 潮州市| 长沙市| 松溪县| 宣汉县| 湖口县| 格尔木市| 华宁县| 东方市| 鸡西市| 红河县| 德安县| 曲靖市| 宁武县| 封开县| 朝阳区| 东安县| 嘉黎县| 高阳县| 永州市| 铜梁县| 余庆县| 松潘县| 竹北市| 乐东|