<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 消費電子 > 設計應用 > 基于STM32的智能家居系統應用研究

基于STM32的智能家居系統應用研究

作者: 時(shí)間:2016-10-15 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要 系統以STM32F103為控制核心,用戶(hù)通過(guò)手機或其它手持設備經(jīng)發(fā)送數據到STM32上,STM32接收到指令處理后經(jīng)發(fā)送到終端設備上。實(shí)現家居的智能控制,整個(gè)系統具有較強的抗干擾能力及可靠性,可適用于應用領(lǐng)域。

本文引用地址:http://dyxdggzs.com/article/201610/307095.htm

關(guān)鍵詞 ;;

是以住宅為平臺,利用綜合布線(xiàn)、網(wǎng)絡(luò )通信、智能家居系統設計方案、安全防范、自動(dòng)控制、音視頻技術(shù)將家居生活有關(guān)的設施集成,構建高效的住宅設施與家庭日程事務(wù)的管理系統,提升家居安全性、便利性、舒適性、藝術(shù)性,并實(shí)現環(huán)保節能的居住環(huán)境。

1 智能家居系統硬件平臺

STM32的智能家居的系統拓撲結構如圖1所示,STM32系列基于專(zhuān)為要求高性能、低成本、低功耗的嵌入式應用專(zhuān)門(mén)設計的ARM Cortex-M3內核。該系統采用STM32F103“增強型”系列的STM32芯片,設計的總體思路通過(guò)手機或其它手持設備的藍牙通信模塊與STM32上的進(jìn)行通信,接收到的數據進(jìn)行處理,再通過(guò)發(fā)送到受控終端上。受控終端接收到紅外指令后執行指定的操作,如電視、風(fēng)扇、空調等電器設備的開(kāi)關(guān)等操作。紅外模塊可以學(xué)習到各種遙控器的指令,通過(guò)學(xué)習遙控器的指令儲存到QT軟件所編寫(xiě)的界面中,解決了遙控器過(guò)多的煩惱,從而實(shí)現家居的智能化控制。通過(guò)報警模塊可以實(shí)現火災時(shí)的報警,保障了家居安全。

基于STM32的智能家居系統應用研究

1.1 藍牙模塊

藍牙HC05是主從一體的藍牙串口模塊,即當藍牙設備與藍牙設備配對連接成功后,可以忽視藍牙內部的通信協(xié)議,直接將藍牙當作串口用。當建立連接,兩設備共同使用一通道也就是同一個(gè)串口,一個(gè)設備發(fā)送數據到通道中,另外一個(gè)設備便可以接收通道中的數據。當然,對于建立這種通道連接有一定條件,那就是對藍牙設置好能進(jìn)行配對連接的AT模式。

HC05藍牙模塊與STM32的串口3相連接。HC05的RDX與STM32芯片的第55管腳USART3-TX連接,TXD與第56管腳USART3-RX連接,GND與Vcc連接到相應的GND與Vcc上,KEY與第65管腳PC8連接。模塊上電后,通過(guò)KEY接Vcc,使模塊進(jìn)入AT指令,模塊的波特率設置為38400。

1.2 紅外模塊

BC7210芯片由海外知名廠(chǎng)商制造,比高公司擁有版權的紅外遙控解碼專(zhuān)用芯片。BC7210可以完成目前國內市場(chǎng)上常用的飛利浦RC5和NEC兩種紅外編碼信號的解碼。BC7210的輸出可以設置為并行輸出或者串行輸出,串行輸出方式兼容SPI和UART兩種接口,可以輕松完成與各種MCU的接口相連接,完成與MCU的通信。BC7210與STM32連接的硬件設計方法如圖2所示。

基于STM32的智能家居系統應用研究

BC7210的串行輸出兼容于“波特率9 600 bit·s-1,1個(gè)起始位,1個(gè)停止位,無(wú)奇偶校驗”的USART,只需D7與STM32的87管腳USART2-RX連接。MOD與S/P分別與PB3和PB5相連接。這種接口方式只需占用1根口線(xiàn),微處理器的數據接收可以由硬件完成,占用CPU資源少。

1.3 報警模塊

無(wú)線(xiàn)收發(fā)模組,采用射頻技術(shù),也叫RF433射頻小模塊,采用全數字科技生產(chǎn)的單IC射頻前段與ATMEL的AVR單片機組成,可高速傳輸數據信號的微型收發(fā)信機,無(wú)線(xiàn)傳輸的數據進(jìn)行打包、檢錯、糾錯處理。元器件都采用工業(yè)級標準,工作穩定可靠,體積小便于安裝。適用于安全報警、無(wú)線(xiàn)自動(dòng)抄表、家居及工業(yè)自動(dòng)化、遠端遙控、無(wú)線(xiàn)數傳等領(lǐng)域,433報警模塊與STM32的串口1相連接。

SM30型433MHz微功率無(wú)線(xiàn)串口通信模塊,是上海上志電子信息技術(shù)有限公司生產(chǎn),可以動(dòng)態(tài)管理無(wú)線(xiàn)通信方式:將STM32和無(wú)線(xiàn)模塊JP1引腳的1(GND),2(Vcc),3(RXD/TTL),4(TXD/TTL),9(RESET)共5個(gè)引腳連接好,1腳接GND,2腳接VCC,3和4兩腳分別接STM32的串口上,通過(guò)串口發(fā)送給模塊設置命令,設置完成以后,置SETEN為高電平或與地斷開(kāi),上電復位或RST(如果8腳接在用戶(hù)STM32的I/O口上)低電平(10 ms)復位,及可以用新的參數工作。

2 軟件系統設計

整個(gè)智能家居系統以STM32微處理器為控制核心,使用C語(yǔ)言編寫(xiě)。智能家居系統的軟件可分為手機、STM32系統2個(gè)部分,主要由藍牙驅動(dòng)程序、紅外驅動(dòng)程序和433報警程序組成。QT的軟件控制流程如圖3所示。當一個(gè)特定事件發(fā)生時(shí),一個(gè)信號被發(fā)射。QT的窗口部件有多種預定義的信號,但可以通過(guò)繼承來(lái)加入自己的信號。槽就是一個(gè)可以被調用處理特定信號的函數。信號與槽是寬松地聯(lián)系在一起:一個(gè)發(fā)射信號的類(lèi)無(wú)需已知哪個(gè)槽要接收這個(gè)信號。QT信號和槽可以保證如果將一個(gè)信號與一個(gè)槽連接起來(lái),槽會(huì )在正確的時(shí)間使用信號的參數而被調用。信號和槽可以使用任何數量、任何類(lèi)型的參數。

基于STM32的智能家居系統應用研究

2.1 手機軟件設計

通過(guò)調用Qobject對象的connect函數來(lái)將某個(gè)對象的信號與另一個(gè)對象的沐曹函數相關(guān)聯(lián),這樣當發(fā)射者發(fā)射信號時(shí),接收者的槽函數將被調用,該函數的定義為:

boolQObjeet::eonnect(eonstQOb—ieet*sender,eonstchar*signal,

eonstQObjeet*reeeiver,eonstehar*mexnber)

conneet函數將sender對象中的信號signal與reeeiver中的member槽函數相關(guān)聯(lián),這里的sender和receiver都是指向QObject類(lèi)型對象的指針。QT的宏signal()用于指定信號signal;宏slot()用于指定槽函數。

當對象內部發(fā)生某些事件時(shí),它有可能發(fā)出信號。如果這個(gè)信號連接到槽,那么相應的槽函數就被執行??梢詫⒍鄠€(gè)槽連接到同一個(gè)信號,那么這些槽就將一一被執行,其執行順序是任意的。

2.2 STM32系統軟件設計

STM32系統軟件設計首先對STM32系統的初始化,采用Rtthread系統并創(chuàng )建了3個(gè)子進(jìn)程,分別為藍牙模塊子進(jìn)程、紅外模塊子進(jìn)程、報警模塊子進(jìn)程,設定任務(wù)的優(yōu)先級并初始化各子進(jìn)程。編寫(xiě)相應的初始化及數據處理函數實(shí)現系統的正常運行,通過(guò)Rtthread進(jìn)行系統的線(xiàn)程調度。

基于STM32的智能家居系統應用研究

STM32的軟件控制流程如圖4所示。

基于STM32的智能家居系統應用研究

(1)藍牙子進(jìn)程程序設計,KEY位置高電平進(jìn)入AT指令模式,通過(guò)發(fā)送AT指令進(jìn)行藍牙模塊的設置,例如USART_Send_Cmd(“%srn”,atstr);設置完成后KEY位置低進(jìn)入數據透傳模式,進(jìn)行數據傳輸。接受到指令后返回數據,手機端對返回數據進(jìn)行分析,如果接受錯誤數據,則手機端重新發(fā)送數據。接收到正確數據后發(fā)送給相應的模塊,執行相應的操作。藍牙軟件設計流程如圖5所示。

基于STM32的智能家居系統應用研究

(2)紅外子進(jìn)程程序設計,先初始化紅外模塊,對要發(fā)送的數據解碼后編碼再經(jīng)過(guò)紅外模塊發(fā)送出去。判斷是否發(fā)送結束,未發(fā)送完整則繼續發(fā)送。紅外軟件設計流程如圖6所示。

基于STM32的智能家居系統應用研究

(3)報警子進(jìn)程程序設計,初始化報警模塊,將一個(gè)家用煙感探測器與報警模塊相連,一旦超過(guò)設定值報警模塊通過(guò)STM32系統將報警信息,發(fā)送送到手機或其他終端設備上實(shí)現智能報警。判斷是否有報警信息,如果有報警信息則通過(guò)串口1將數據發(fā)送給STM32芯片,再執行報警函數。

2.3 該系統在智能家居系統中的應用

要控制紅外設備必須先學(xué)習控制該設備的紅外碼。首先,通過(guò)半口工具連接到該模塊,將該設備的遙控器對準紅外接收頭,通過(guò)半口工具發(fā)送對應的報文,按下需要學(xué)習的鍵,然后就可以收到該控制鍵對應的紅外碼。將學(xué)習到的紅外碼保存在QT的槽函數內。實(shí)現了一個(gè)手機或終端設備智能的控制家電,并且實(shí)現了智能報警。

3 結束語(yǔ)

綜上所述,可知基于STM32的智能家居系統實(shí)現簡(jiǎn)單,應用廣泛。而藍牙技術(shù)的成熟和普及,可以將各種遙控器由一個(gè)Android手機軟件所代替,實(shí)現了智能化的控制電視、風(fēng)扇、空調等設備。通過(guò)在室內安裝多個(gè)STM32系統,可以實(shí)現對每間房間的控制?;赟TM32的智能家居系統綜合了多門(mén)技術(shù),主要包括視藍牙通信、紅外遙控技術(shù)、433報警等,隨著(zhù)這些技術(shù)的發(fā)展,該智能家居系統將擁有更為廣闊的發(fā)展空間。

  • STM32單片機中文官網(wǎng)
  • STM32單片機官方開(kāi)發(fā)工具
  • STM32單片機參考設計


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>