智能家居系統(tǒng)現(xiàn)在發(fā)展很快。人們希望生活更便利。各種家用設(shè)備需要連接起來。這些設(shè)備可以自動(dòng)工作。它們能相互通信。用戶可以通過手機(jī)控制設(shè)備。這樣的系統(tǒng)需要硬件支持。硬件設(shè)計(jì)很關(guān)鍵。它決定了系統(tǒng)性能。本設(shè)計(jì)完成一個(gè)智能家居控制系統(tǒng)的硬件部分。
系統(tǒng)需要控制燈光。燈光控制很常見。晚上回家自動(dòng)開燈。出門自動(dòng)關(guān)燈。這樣可以省電。系統(tǒng)需要控制窗簾。早上窗簾自動(dòng)打開。晚上自動(dòng)關(guān)閉。系統(tǒng)還要監(jiān)控環(huán)境。比如溫度太高自動(dòng)開空調(diào)。濕度太低自動(dòng)加濕。空氣不好自動(dòng)開凈化器。這些功能都需要硬件。
硬件系統(tǒng)采用模塊化設(shè)計(jì)。模塊化設(shè)計(jì)好處多。每個(gè)功能一個(gè)模塊。模塊之間獨(dú)立工作。一個(gè)模塊壞了不影響其他模塊。這樣系統(tǒng)更穩(wěn)定。維修也方便。模塊之間通過總線連接。總線就像一條路。數(shù)據(jù)在總線上跑。所有模塊共享這條路。
主控制器是系統(tǒng)的大腦。我們選擇STM32單片機(jī)。這個(gè)單片機(jī)性能足夠。它價(jià)格便宜。資料很多。開發(fā)容易。單片機(jī)有多個(gè)IO口。IO口可以連接其他設(shè)備。單片機(jī)有串口。串口可以連接無線模塊。單片機(jī)還有AD轉(zhuǎn)換功能。AD轉(zhuǎn)換可以讀取傳感器數(shù)據(jù)。
傳感器模塊很重要。傳感器是系統(tǒng)的眼睛。溫度傳感器測量室溫。我們使用DS18B20。這個(gè)傳感器精度高。它直接輸出數(shù)字信號(hào)。連接很簡單。濕度傳感器測量空氣濕度。我們使用DHT11。這個(gè)傳感器同時(shí)測溫度和濕度。它也是數(shù)字輸出。光照傳感器測量光線強(qiáng)度。我們使用光敏電阻。光敏電阻價(jià)格低。它的電阻隨光線變化。需要配合電路使用。
執(zhí)行模塊負(fù)責(zé)動(dòng)作。燈光控制使用繼電器。繼電器是一個(gè)開關(guān)。單片機(jī)給小信號(hào)。繼電器控制大電流。這樣安全。繼電器連接燈泡。單片機(jī)輸出高電平繼電器吸合。燈就亮了。輸出低電平繼電器斷開。燈就滅了。窗簾控制使用步進(jìn)電機(jī)。步進(jìn)電機(jī)可以精確控制位置。單片機(jī)發(fā)出脈沖信號(hào)。電機(jī)轉(zhuǎn)動(dòng)固定角度。這樣窗簾可以停在任意位置。
無線通信模塊實(shí)現(xiàn)遠(yuǎn)程控制。我們選擇ESP8266模塊。這個(gè)模塊支持WiFi。它可以連接家庭路由器。手機(jī)通過互聯(lián)網(wǎng)發(fā)送命令。命令傳到路由器。路由器傳給ESP8266。ESP8266再傳給單片機(jī)。單片機(jī)控制執(zhí)行模塊。這樣用戶不在家也能控制設(shè)備。
電源模塊給系統(tǒng)供電。整個(gè)系統(tǒng)需要5伏電壓。部分模塊需要3.3伏。我們使用220伏轉(zhuǎn)5伏的電源適配器。這個(gè)適配器很常見。手機(jī)充電器就是這種。然后使用穩(wěn)壓芯片AMS1117。它把5伏轉(zhuǎn)成3.3伏。這樣所有模塊都有合適電壓。
電路設(shè)計(jì)使用AltiumDesigner軟件。這個(gè)軟件畫電路圖很方便。首先畫原理圖。原理圖表示元件怎么連接。電阻、電容、單片機(jī)都畫上去。線連起來表示電氣連接。然后畫PCB圖。PCB圖是實(shí)際電路板的樣子。元件要擺放在正確位置。線不能交叉。線有寬度要求。電源線要粗一些。信號(hào)線可以細(xì)一些。最后交給工廠制作電路板。
焊接元件需要小心。先焊接單片機(jī)底座。底座是塑料的。直接焊單片機(jī)不好維修。焊接溫度不能太高。太高會(huì)損壞元件。焊錫不要太多。太多可能短路。短路就是不該連的地方連上了。焊接完要檢查。看看有沒有虛焊。虛焊就是看起來焊上了實(shí)際沒連通。用萬用表測量通斷。
程序編寫使用Keil軟件。程序用C語言寫。C語言適合單片機(jī)。程序首先初始化。設(shè)置IO口方向。配置串口參數(shù)。開啟定時(shí)器。然后進(jìn)入主循環(huán)。主循環(huán)一直運(yùn)行。它讀取傳感器數(shù)據(jù)。檢查無線模塊有沒有新命令。根據(jù)命令和執(zhí)行條件控制設(shè)備。
系統(tǒng)測試分步驟進(jìn)行。先測試每個(gè)模塊單獨(dú)工作。給溫度傳感器加熱。看讀數(shù)會(huì)不會(huì)變。用手電筒照光敏電阻。看光照值變化。給繼電器信號(hào)。聽有沒有咔嗒聲。測試步進(jìn)電機(jī)。看它轉(zhuǎn)不轉(zhuǎn)。然后測試模塊之間通信。手機(jī)發(fā)送開燈命令。看燈會(huì)不會(huì)亮。設(shè)置溫度閾值。超過閾值自動(dòng)開風(fēng)扇。最后長時(shí)間測試。看系統(tǒng)穩(wěn)定不穩(wěn)定。
測試中發(fā)現(xiàn)一些問題。有時(shí)無線連接會(huì)斷開。檢查發(fā)現(xiàn)是天線接觸不良。重新焊接后問題解決。步進(jìn)電機(jī)有時(shí)失步。原因是驅(qū)動(dòng)電流不夠。更換驅(qū)動(dòng)芯片后正常。電源模塊發(fā)熱較大。增加散熱片后改善。
本設(shè)計(jì)實(shí)現(xiàn)了基本功能。燈光可以遠(yuǎn)程控制。窗簾可以自動(dòng)開關(guān)。環(huán)境可以自動(dòng)調(diào)節(jié)。系統(tǒng)成本不高。普通家庭能夠承受。安裝比較簡單。用戶使用方便。系統(tǒng)還有改進(jìn)空間。可以增加更多傳感器。比如煙霧傳感器。發(fā)生火災(zāi)可以報(bào)警。可以增加門磁傳感器。有人非法進(jìn)入可以通知主人。這些是以后的工作。
硬件設(shè)計(jì)需要考慮實(shí)際情況。元件要選常見的。這樣采購方便。價(jià)格也便宜。電路要留出測試點(diǎn)。維修時(shí)方便測量。接口要標(biāo)準(zhǔn)化。不同廠家設(shè)備可以互換。結(jié)構(gòu)要牢固。放在家里不能輕易損壞。
智能家居是未來趨勢。好的硬件設(shè)計(jì)是基礎(chǔ)。本設(shè)計(jì)提供了一個(gè)可行方案。這個(gè)方案經(jīng)過實(shí)際驗(yàn)證。它工作穩(wěn)定。成本可控。適合普通家庭使用。隨著技術(shù)發(fā)展,智能家居會(huì)越來越普及。