以Thunderboard Sense 2創(chuàng)建智能家居的藍(lán)牙照明應(yīng)用示例
Silicon Labs Thunderboard? Sense 2是一個高集成度、緊湊型的多傳感器和多協(xié)議無線開發(fā)套件。該工具包具有廣泛的傳感器,基于強(qiáng)大的EFR32? Mighty Gecko無線系統(tǒng)芯片(SoC)。它還包括四個高亮度的RGB LED。對于開發(fā)電池驅(qū)動的物聯(lián)網(wǎng)(IoT)設(shè)備而言,Thunderboard Sense 2是一個非常理想的平臺。
EFR32 Mighty Gecko無線SoC支持專有協(xié)議棧和常見的物聯(lián)網(wǎng)無線標(biāo)準(zhǔn)協(xié)議,如Zigbee、Thread和Bluetooth®低功耗。在這個項目中,我們將使用幾個Thunderboard Sense 2板建立一個藍(lán)牙網(wǎng)狀網(wǎng)絡(luò)。將供應(yīng)兩塊板作為燈,一塊板作為開關(guān)。由Silicon Labs開發(fā)的藍(lán)牙網(wǎng)狀智能手機(jī)應(yīng)用程序,可以控制單個燈或群體燈。此外,所供應(yīng)的設(shè)備可以控制同一組中的所有燈。
藍(lán)牙網(wǎng)狀網(wǎng)絡(luò)
藍(lán)牙網(wǎng)狀網(wǎng)絡(luò)是藍(lán)牙低功耗設(shè)備的一種新拓?fù)浣Y(jié)構(gòu)。該技術(shù)于2017年發(fā)布,允許多對多設(shè)備通信。藍(lán)牙m(xù)esh能夠在更大規(guī)模的藍(lán)牙設(shè)備之間實現(xiàn)多跳通信,這使得它成為智能家居應(yīng)用的理想選擇,例如照明和無線傳感器節(jié)點(diǎn)。在藍(lán)牙m(xù)esh之前,所有的藍(lán)牙設(shè)備都必須連接到一個中心集線器,也就是所謂的“星形網(wǎng)絡(luò)”拓?fù)?。這意味著恒星網(wǎng)絡(luò)中的節(jié)點(diǎn)之間不能相互通信。以前,所有消息都位于節(jié)點(diǎn)和中心集線器之間。但有了網(wǎng)狀網(wǎng)絡(luò),所有設(shè)備都可以互相通信。這允許以數(shù)千個節(jié)點(diǎn)的數(shù)量擴(kuò)展網(wǎng)絡(luò)的范圍。
入網(wǎng)配置
添加到網(wǎng)狀網(wǎng)絡(luò)的設(shè)備必須首先通過Provisioning的程序配置給網(wǎng)狀網(wǎng)絡(luò)。供應(yīng)主要是一個安全過程,在此過程中,供應(yīng)者發(fā)現(xiàn)未供應(yīng)的設(shè)備并向設(shè)備發(fā)送加入網(wǎng)絡(luò)的邀請。然后,提供程序和要提供的設(shè)備交換公鑰。然后,每個設(shè)備生成一個會話密鑰,用于保護(hù)連接以交換供應(yīng)數(shù)據(jù)。供應(yīng)數(shù)據(jù)包括網(wǎng)絡(luò)密鑰、設(shè)備密鑰、稱為IV索引的安全參數(shù)及其單播地址。在此之后,未供應(yīng)的設(shè)備現(xiàn)在稱為網(wǎng)狀網(wǎng)絡(luò)中的節(jié)點(diǎn)。
發(fā)布和訂閱
藍(lán)牙Mesh中使用的通信機(jī)制稱為發(fā)布和訂閱。在藍(lán)牙網(wǎng)狀網(wǎng)絡(luò)中,節(jié)點(diǎn)通常被配置成組。例如,房間里所有的燈可以組合在一起。這意味著組中的所有節(jié)點(diǎn)都可以接收相同的消息。在網(wǎng)狀網(wǎng)絡(luò)中,每個組分配一個組地址,多播消息用于向所有設(shè)備發(fā)送消息。
軟件設(shè)置
在這個演示中,我們將使用三個Thunderboard Sense 2傳感器來演示一個基本的藍(lán)牙網(wǎng)狀網(wǎng)絡(luò)照明應(yīng)用程序。至少需要兩塊TBS2板才能構(gòu)建網(wǎng)狀網(wǎng)絡(luò)。
首先,您需要下載由Silicon Labs提供的Integrated DriveElectronics (IDE) Simplicity Studio,并展開以下步驟:
1、安裝藍(lán)牙Mesh SDK,打開simple Studio并注冊或登錄,如果您已經(jīng)有一個帳戶。您必須登錄才能訪問藍(lán)牙Mesh SDK。
2、點(diǎn)擊“幫助”和“更新軟件”,安裝管理器應(yīng)該出現(xiàn)。單擊“按產(chǎn)品組安裝”。用于安裝SDK的安裝管理器。
3、在Wireless & RF下選擇“Bluetooth”進(jìn)行藍(lán)牙包的安裝,后單擊“Next”接受條款和條件,完成安裝。
演示固件
通過Micro-B USB將Thunderboard Sense 2連接到PC上。在Simplicity Studio中,面板將出現(xiàn)在左側(cè)頂部面板的“調(diào)試適配器”下。選擇它,您應(yīng)該會看到演示軟件開始加載在啟動程序中。
在“demo”下,打開藍(lán)牙Mesh SDK。對于這個項目,您將需要用“SOC - BT Mesh Light”示例,用“SOC - BT MeshSwitch”示例。
Thunderboard Sense 2配置
在這個步驟中,我們將把設(shè)備配置到網(wǎng)絡(luò)并將它們分組在一起。在智能手機(jī)上安裝藍(lán)牙m(xù)esh移動應(yīng)用程序。該應(yīng)用程序適用于iOS和Android。安裝應(yīng)用程序后,打開它并創(chuàng)建一個新的網(wǎng)絡(luò)。為此,我們創(chuàng)建了一個名為“Demo Smart Home”的網(wǎng)絡(luò)。你可以通過點(diǎn)擊右上角的“+”按鈕來創(chuàng)建一個新的網(wǎng)絡(luò)。如果選擇網(wǎng)絡(luò),可以創(chuàng)建新的組。該小組將代表智能家居中的一個房間。
將設(shè)備配置為Light節(jié)點(diǎn)
單擊“Provisioning”選項卡將設(shè)備供應(yīng)到網(wǎng)絡(luò)。所有未供應(yīng)的設(shè)備都將出現(xiàn)在列表中。選擇藍(lán)牙設(shè)備,點(diǎn)擊“設(shè)置”。配置完成后,您將被引導(dǎo)到設(shè)備配置頁面,在那里您可以選擇更改設(shè)備的名稱、將其添加到一個組并賦予其功能。為簡單起見,我們將light節(jié)點(diǎn)的名稱更改為“Lamp 1”。接下來,選擇要添加light節(jié)點(diǎn)的組。最后,選擇“Light CTL Server”作為Light節(jié)點(diǎn)的功能。CTL表示顏色可調(diào)光,這意味著我們的光節(jié)點(diǎn)可以接收開/關(guān)、色溫和亮度信息。
將設(shè)備配置為開關(guān)節(jié)點(diǎn)
返回到未供應(yīng)設(shè)備列表并選擇一個switch節(jié)點(diǎn)。按照與配置light節(jié)點(diǎn)相同的步驟,但是選擇“l(fā)ight CTL客戶端”作為開關(guān)的功能。與light節(jié)點(diǎn)不同,switch節(jié)點(diǎn)將發(fā)布事件,這意味著它將發(fā)送on/off、色溫和亮度消息,而不是接收消息。
開始演示
藍(lán)牙網(wǎng)狀網(wǎng)絡(luò)現(xiàn)在可以進(jìn)行測試了。作為light節(jié)點(diǎn)的Thunderboard Sense 2板上的高亮度LED用于演示這些燈。這些light節(jié)點(diǎn)可以通過藍(lán)牙m(xù)esh智能手機(jī)應(yīng)用程序進(jìn)行分組或單獨(dú)控制。要以開關(guān)形式來控制light節(jié)點(diǎn),請使用兩個按鈕,PB0和PB1。
PB0按鈕
短按: 減少光亮度10%
中壓: 降低CTL值
長按: 發(fā)送信息
PB1按鈕
短壓: 增加光亮度10%
中壓: 提高CTL值
長按: 發(fā)送信息
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點(diǎn),不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!