基于STM32F107微控制器的家庭智能系統開發_第1頁
基于STM32F107微控制器的家庭智能系統開發_第2頁
基于STM32F107微控制器的家庭智能系統開發_第3頁
基于STM32F107微控制器的家庭智能系統開發_第4頁
基于STM32F107微控制器的家庭智能系統開發_第5頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

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

文檔簡介

1、基于STM32F107微控制器的家庭智能系統開發黃友文,汪波濤摘 要:本文簡要敘述了智能家居的發展及應用,采用了基于Cortex-M3內核的STM32f107互聯型微控制器作為主控芯片,兩塊STC89C51單片機作為從機,通過RS485實現內部控制網絡的建立,達到本地控制的目的。同時經分析得出采用紅外線遙控實現室內單個房間的電器控制具有較好的實用性與抗干擾能力,設計簡單,成本較低,功能拓展方便。本課題同時利用STM32f107的以太網10/100 MAC模塊實現遠程登錄,使用STM32f107單片機構建Web Sever,并在單片機上移植了精簡的TCP/IP協議,實現了嵌入式Web Sever

2、與遠程瀏覽器的動態交互,使用戶可以在任何時間和任何地點利用標準的Web瀏覽器(如IE瀏覽器)進行遠程訪問和控制。極大地方便了家庭生活,提升了家居生活的智能化程度。關鍵詞 : STM32;RS485;智能家居;以太網;Web Sever;遠程登錄;TCP/IP。中圖分類號:TP2 文獻標識碼:AThe Development of Intelligent Home System Based on the Microcontroller of STM32F107 Huang Youwen,Wang BotaoABSTRACT: The article briefly describes the d

3、evelopment and application of the smart home, which adopts the Internet microcontroller of STM32F107 based on Cortex-M3 as the master chip, and two STC89C51 microcontroller as a slave. It achieves to establish the internal control network through the RS485 and gains the goal of local control. Meanwh

4、ile, according to the analysis, using the infrared remote electrical to control single room has good practicality and anti-jamming capability. The system is designed to be simple, cost-effective, and easy to expand the functionality.The subject not only takes the advantage of the STM32F107 of Ethern

5、et 10/100 MAC module to realize the remote login, but also uses STM32F107 microcontroller to build Web Sever and transplants the streamlined TCP / IP protocol in SCM to achieve the dynamic interaction of the embedded Web Sever and remote browser, so that users can use a standard Web browser (such as

6、 IE browser) for remote access and control at any time and any place.Key Words:STM32; RS485; smart home; Ethernet; Web Sever; remote login; TCP / IP.0 引 言隨著經濟的發展和社會的進步,人民對物質生活與精神生活的要求也逐日高漲,對生產、生活場所的條件越來越要求方便、舒適、高效、安全以及環保節能,這些需求極大地促進了智能家居的應用。智能家居這個概念的形成并引入國內不過十來年的時間,但已在國內興起持續的浪潮,它的應用范圍包括了各個行業。智能家居是在物

7、聯網的影響之下物聯化體現1。智能家居通過物聯網技術將家中的各種設備連接到一起,提供家電控制、照明控制、窗簾控制、電話遠程控制、室內外遙控、防盜報警、環境監測、暖通控制、紅外轉發以及可編程定時控制等多種功能和手段。與普通家居相比,智能家居不僅具有傳統的居住功能,兼備建筑、網絡通信、信息家電、設備自動化,集系統、結構、服務、管理為一體的高效、舒適、安全、便利、環保的居住環境,提供全方位的信息交互功能,幫助家庭與外部保持信息交流暢通,優化人們的生活方式,幫助人們有效安排時間,增強家居生活的安全性,甚至為各種能源費用節約資金2。1 系統整體設計為了實現家庭燈光、窗簾以及其他電氣設備的控制,本系統采用基

8、于ARM Cortex-M3內核的STM32f107互聯型微控制器作為主控芯片。系統使用Keil-MDK集成開發環境作為程序設計的基本軟件,使用Altium Designer作為硬件設計軟件。整個系統同時使用2塊STC89C51單片機作為從機,得以控制不同的房間。整體上系統分為本地控制和遠程控制兩種控制方式:(1)本地控制利用紅外遙控的方式控制主機,主機再通過RS485接口發送指令給目的從機,從而實現內部局域控制網的建立;(2)遠程控制利用STM32f107的以太網接口,通過WebSever實現遠程登錄控制主機,主機進而通過RS485總線控制各個從機,從而實現遠程控制。各個從機利用自身的I/0

9、資源,進行燈光控制和繼電器的控制。本系統采用的核心芯片是意法半導體集團的STM32F107VCT6,該處理器基于ARM V7架構的Cortex-M3內核,主頻72M,內部含有256K字節的FLASH和64K字節的SRAM,LQFP100封裝。STM32F107屬于互聯型系列,資源非常豐富,比其他系列多了USB2.0 OTG全速接口和以太網IEEE1588接口。具有以太網接口是我選擇這款芯片的一大原因。Cortex-M3內核包含一個適用于傳統Thumb和新型Thumb-2指令的譯碼器、一個支持硬件乘法和硬件除法的先進ALU、控制邏輯和用于連接處理器其他部件的接口。Cortex-M3處理器是一個3

10、2位處理器,帶有32位寬的數據路徑、寄存器庫和基于傳統ARM7處理器的系統只支持訪問對齊的數據,沿著對齊的字邊界即可對數據進行訪問和存儲3。Cortex-M3處理器是專為那些對成本和功耗非常敏感但同時對性能要求又相當高的應用而設計的。憑借縮小的內核尺寸和出色的中斷延遲性能、集成的系統部件、靈活的配置、簡單的高級編程和強大的軟件系統,Cortex-M3處理器將成為從復雜的芯片系統到低端微控制器等各種系統的理想解決方案4。2 智能家庭系統硬件設計 整個系統模塊分為以下幾個個模塊:MCU主芯片最小板、STC89C51從機模塊、電源電路、LED顯示模塊、繼電器控制模塊、RS485模塊、紅外接收模塊、以

11、太網模塊。總體硬件系統框圖如圖1所示:紅外遙控總線STM32F107RS48589C5189C51RJ45接口繼電器繼電器燈光燈光圖 1 總體硬件系統框圖此智能家庭系統外部網絡采用了以太網技術,內部網絡采用基于RS485總線的主從網絡。所以本地控制的核心電路部分為RS485電路和紅外解碼電路。遠程控制的核心電路部分為以太網電路。下面對這兩部分電路進行詳細介紹。2.1 RS485模塊電路RS485標準接口是單片機系統種常用的一種串行總線之一。RS-485通信方式RS-485標準是由EIA(電子工業協會)和TIA(通訊工業協會)共同制訂和開發的。RS-485作為一種多點差分數據傳輸的電氣規范,已成

12、為業界最廣泛應用的標準通信接口之一。理論上,RS-485標準最多接入32個設備(受芯片驅動能力的影響),可以工作在半雙工或全雙工模式下,最大傳輸距離約為1219米,最大傳輸速率約為10Mbps。然而通常RS-485網絡采用平衡雙絞線作為傳輸媒體,平衡雙絞線的長度與傳輸速率成反比,只有在20Kbps的傳輸速率下,才可能達到最大傳輸距離。一般15米長的雙絞線最大傳輸速率僅為1Mbps。不過對于速率要求不是很高的控制系統來說已經足夠了5。本系統中主機通過RS485總線向各個從機發送數據,其應用框圖如圖2所示:STM32F107微控制器RS485總線信道通道RS485MCU控制信道通道RS485MCU

13、控制圖2 RS485應用框圖RS485通過A、B兩個線與從機的TXD、RXD相連,RS485總線電路如圖3所示:圖3 RS485電路圖2.2 以太網(Ethernet)模塊10/100以太網媒體訪問控制器(MAC)是基于ARM Cortex-M3的STM32互聯系列(Connectivity Line)微控制器的特色亮點之一。該以太網模塊支持兩種標準接口,連接到外接的物理層(PHY)模塊:IEEE802.3協議定義的獨立于介質的接口(MII)和簡化的獨立于介質的接口(RMII),提高了設計人員選擇最佳的PHY芯片的靈活性。STM32F107內部以太網模塊與外部PHY芯片采用RMII接口的連接圖

14、如圖4所示。本系統采用高性價比的DM9161作為10M/100M以太網PHY芯片,采用RMII接口與連接,標準RJ45接口,支持平行交叉網線自適應。DM9161A是用于100BASE-TX和10BASE-T以太網物理層的單芯片、低功耗收發器。在媒介一側,它提供了一個直接接口,對于100BASE-TX快速以太網使用非屏蔽5類雙絞線,對于10BASE-T以太網使用5類/3類雙絞線。圖4 STM32F107以太網RMII連接圖STM32F107內部以太網和以太網芯片相連接,其原理圖如圖5所示:圖5 以太網接口原理圖3 智能家庭系統軟件設計3.1家居系統工作軟件設計在整個系統中,控制方式只要分為兩種:

15、紅外遙控和以太網遠程登錄控制。軟件設計根據這兩種控制方式來進行,系統的軟件程序流圖如圖6所示。核心控制器接收信號分別來自紅外遙控器和以太網,同時根據不同的控制信號,通過RS485總線向下發送地址數據,當從機和該地址數據相匹配后,向主機回復應答數據,主機接收到應答信息后向該從機發送控制數據,而后,該從機根據接收到的數據向設備端發送設備控制指令,控制燈光或繼電器工作。核心控制器可以同時接收紅外遙控信號和網絡信號,但是會以遙控信號為優先控制信號,然后再處理網絡端傳輸過來的信號。開始系統初始化紅外遙控信號?YN紅外解碼指令解析Y以太網控制信號?YN等待信號讀取數據通過總線發送數據讀取地址N從機1?從機

16、2?向從機1發送數據向從機2發送數據YN等待信號控制房間1相應設備控制房間2相應設備循環等待圖6 系統的主程序流圖3.2 通訊協議當通訊命令發送至儀器時,符合相應地址碼的設備接通訊命令,并除去地址碼,讀取信息,如果沒有出錯,則執行相應的任務;然后把執行結果返送給發送者。返送的信息中包括地址碼、執行動作的功能碼、執行動作后結果的數據以及錯誤校驗碼。如果出錯就不發送任何信息6。發送數據時采用的信息幀包括地址碼、功能碼、數據碼和錯誤校驗碼,其結構如表1所示。表1 信息幀結構地址碼功能碼數據區錯誤校驗碼8位8位N × 8位16位地址碼:地址碼是信息幀的第一字節(8位),從0到255。這個字節

17、表明由用戶設置地址的從機將接收由主機發送來的信息。每個從機都必須有唯一的地址碼,并且只有符合地址碼的從機才能響應回送。表2列出了不同地址所代表的含義。表2 地址碼代碼含義操作011號從機地址選擇1號從機發送數據022號從機地址選擇2號從機發送數據功能碼:主機發送的功能碼告訴從機執行什么任務。表3列出的功能碼都有具體的含義及操作。表3功能碼代碼含義操作01開燈打開所選擇房間的燈光02關燈關閉所選擇房間的燈光10開設備1打開所選擇單片機所控制的1號繼電器連接的設備11開設備2打開所選擇單片機所控制的2號繼電器連接的設備12開設備3打開所選擇單片機所控制的3號繼電器連接的設備13開設備4打開所選擇單

18、片機所控制的4號繼電器連接的設備數據區:數據區包含需要從機執行什么動作或由從機采集的返送信息。這些信息可以是數值、參考地址等等。例如,功能碼告訴從機讀取寄存器的值,則數據區必需包含要讀取寄存器的起始地址及讀取長度。對于不同的從機,地址和數據信息都不相同。錯誤校驗碼:主機或從機可用校驗碼進行判別接收信息是否出錯。有時,由于電子噪聲或其它一些干擾,信息在傳輸過程中會發生細微的變化,錯誤校驗碼保證了主機或從機對在傳送過程中出錯的信息不起作用。這樣增加了系統的安全和效率。錯誤校驗采用CRC-16校驗方法。注:信息幀的格式都基本相同:地址碼、功能碼、數據區和錯誤校驗碼。3.3以太網實現Telnet遠程登

19、陸 遠程登陸是指用戶使用Telnet命令,使自己的計算機暫時成為遠程主機的一個仿真終端的過程。仿真終端等效于一個非智能的機器,它只負責把用戶輸入的每個字符傳遞給主機,再將主機輸出的每個信息回顯在屏幕上。 Telnet(Teletype Network)用于遠程登錄,屬于客戶機/服務器模型的服務,使得在本地主機(Telnet客戶端)上操作和控制遠程服務器(Telnet服務器)。它提供遠程登錄功能,使用戶在本地主機上運行Telnet客戶端就可登錄到遠端的Telnet服務器。在本地輸入的命令可以在服務器上運行,服務器把結果返回到本地,就像直接在服務器控制臺上操作一樣,從而達到遠程操作與控制服務器的目

20、的。 Telnet分為Telnet客戶端和Telnet服務器程序。Telnet協議即是一種常見的遠程登錄應用協議。Telne協議是TCP/IP協議簇中的一員,是Internet遠程登陸服務的標準協議和主要方式。 本系統利用第2節所介紹的硬件平臺配合移植好的TCP/IP協議棧代碼成功實現了Telnet遠程登陸與HTTP內嵌網頁,支持平行交叉網線自適應,一根網線就可以很方便地與路由器或PC相連接,連接后可通過網絡訪問和控制板上的資源,從而實現遠程控制功能。 HTTP協議即超文本傳輸協議,是一種應用層協議。HTTP可以通過傳輸層的TCP協議在客戶端和服務器之間傳輸數據,其工作方式采用了請求/響應的工

21、作方式。客戶端在每次向服務器發出請求后,服務器就會向客戶端返回響應消息(包括請求是否正確以及所請求的數據),在確認客戶端已經收到響應消息后,服務端就會關閉網絡連接。在這個數據傳輸過程中,并不保存任何歷史信息和狀態信息,因此,HTTP協議也被認為是無狀態的協議,圖7描繪了HTTP協議的通訊過程:圖7 HTTP協議的通訊過程 本系統中,客戶機即為各種可聯網設備,包括電腦、手機等可通過瀏覽器瀏覽網頁的設備,服務器即為STM32F107微控制器模擬的Websever。用戶可通過瀏覽器登陸STM32F107所預設的HTML網頁,即可向服務器發送請求,進而開始一個請求/響應會話,從而可以進一步通過向服務器發送控制數據來達到控制家庭電氣設備的目的7。4 結論本文設計的智能家庭系統實現了家庭設備的智能化控制,包括本地控制和遠程控制,具有很好的應用性,能夠極大地滿足人們的生活需求,提高家居生活的方便性與高效性。在功能上實現了居家設備的可靠的自動控制,且其可控制的設備種類十分豐富,基本都能涵蓋生活所需。此系統應用了以太網,能夠很好的將家庭控制與網絡相連接,使人們能夠通過互聯網遠程控制自己的家庭設備,同時,也可在以后添加監控模塊,實時地通過網絡監控家庭的安全情況,使自己的家更加安全舒適。內部網絡采用紅外遙控的方式,采用了人們熟悉地控制方式

溫馨提示

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

評論

0/150

提交評論