資料介紹
描述
描述
我們認為,沒有某種形式的安全系統,任何智能家居都是不完整的。這只是我們安全系統的原型,在設計最終確定之前,硬件和軟件將進行許多修改。無論如何,這里是我們一直在努力的一瞥。
過程
第 1 步:構建硬件
首先收集上面零件列表中列出的所有硬件。我們將從鍵盤和 LCD 電路開始,然后轉到觸發器(運動傳感器、距離傳感器和蜂鳴器)電路。
鍵盤和 LCD 的電路非常簡單。您可以使用面包板來構建此電路,但我們發現將所有組件直接連接到 Builder Base 更簡單。
使用 7 MM 跳線并從左到右將鍵盤的引腳連接到構建器底座上的端口。因此,鍵盤最左邊的引腳連接到 GP0,最左邊的第二個引腳連接到 GP1,依此類推。
現在,將 LCD 上的 Vcc 和 GND 端子連接到 Builder Base 上的 5V 和 GND 端口,然后將 LCD 上的 SDA 和 SCL 引腳連接到 Builder Base 上的 SDA 和 SCL 端口。
**在 I2C LCD 的背面應該有 6 個引腳。其中4個是5v、GND、SDA和SCL引腳,另外兩個用于亮度。這兩個引腳應該連接在一起,但如果不是,則需要連接它們。否則,您的 LCD 將不會亮起。**
使用下面列出的原理圖和面包板視圖作為參考。
?
現在讓我們組裝觸發器電路。我們建議為該電路使用面包板,因為它可以更輕松地為所有組件供電。
拿起你的面包板,將 GND 和 Vcc 導軌分別連接到 Builder Base 上的 GND 和 5V 端口。
現在,讓我們連接運動傳感器。將 VCC 和 GND 引腳連接到面包板上的 5V 和 GND 導軌。將數據引腳連接到 Builder Base,如下所示:
現在,我們將連接蜂鳴器。將蜂鳴器上的 GND 引腳連接到面包板上的 GND 導軌,并將正極引腳連接到 Builder Base,如下所示:
最后,我們將連接距離傳感器。再次,將距離傳感器上的 Vcc 和 GND 引腳連接到面包板上的 5v 和 GND 導軌。現在將 Echo 和 Trigger 引腳連接到構建器底座,如下所示:
恭喜!安全系統所需的所有電路現已完成!
第 2 步:構建固件
由于我們在這個項目中使用了兩個 Builder Base,我們需要構建兩個單獨的固件文件。
首先導航到固件生成器并創建一個名為“安全鍵盤”的新固件。
單擊“+添加硬件”按鈕并添加 LCD 和 4x3 鍵盤。
?
現在,單擊 LCD 設備并從驅動程序下拉菜單中選擇“Generic LCD2004 Display (I2C)”驅動程序。
配置驅動程序如下:
I2C 地址:0x27
布局:2x16
現在,我們將配置 4x3 鍵盤。您會注意到 4x3 鍵盤有 12 種服務需要配置。您可以通過單擊左右箭頭來循環瀏覽這些內容。
對于每項服務,您必須選擇驅動程序以及服務的行/列引腳。每個服務對應于鍵盤上的一個按鈕。按照下表配置所有 12 項服務。
配置完所有服務后,保存固件!
現在,創建另一個名為“Security Triggers”的固件文件。
現在,單擊“+ 添加硬件”按鈕并將運動傳感器、距離傳感器和模擬輸出設備添加到您的文件中。像我們一樣命名它們。
對于運動傳感器,從驅動程序下拉菜單中選擇 HC-SR501 驅動程序。
配置驅動程序如下:
引腳:GP0
現在我們將配置蜂鳴器。從驅動程序下拉菜單中選擇“GPIO”驅動程序。
現在我們將配置驅動程序如下:
引腳:GP1
現在,我們將配置距離傳感器。
從驅動程序下拉菜單中選擇 HC-SR04 驅動程序:
現在我們將配置驅動程序如下:
回聲針:GP3
觸發引腳:GP2
分辨率(I):1
**我們的系統在設置中設置為英制。如果您的設置為公制,您可能需要更改分辨率值。**
就是這樣,您的安全系統固件文件現已完成。保存并上傳您的固件文件。安全鍵盤固件應上傳到連接鍵盤和 LCD 的 Builder Base,安全觸發器固件應上傳到連接傳感器和蜂鳴器的 Builder Base。
第 3 步:對應用程序進行編程
對于這個應用程序,我們將引導您了解所涉及的基本邏輯。您可以按照我們的描述構建應用程序,或者您可以下載該應用程序并將其導入您的應用程序列表。
這是安全系統應用程序:
**請注意,此安全系統應用程序處于高度原型狀態,無法完美運行。我們將在未來幾個月內更新此應用程序以更有效地工作。**
在本說明中,我們將把應用程序分為四個主要部分:1. 代碼集,2. 代碼輸入/評估,3. 傳感器輸入,和 4. 布防警報倒計時
在當前狀態下,當應用程序啟動時,您需要通過儀表板界面設置密碼。這發生在應用程序的代碼集部分。
使用兩個自定義代碼塊設置引腳。一個將儀表板按鈕按下轉換為數字,另一個將數字存儲在全局上下文數組中。
對于Number Convert代碼和Set Pin 代碼,請查看我們的文檔。
現在我們來看看程序的代碼輸入/評估部分。
在這里,我們有一個 4x3 鍵盤對象連接到另一個數字轉換自定義片段。這會從 4x3 鍵盤對象獲取數字輸出,并根據接收到的端口將其轉換為數字。此數字轉換自定義代碼段與上面使用的代碼段相同。
然后將此數字傳遞到名為“安全?”的自定義片段中。
“安全?” 片段從三個端口獲取輸入。第一個端口“InNode0”用作布防系統的一種方式。我們通過使用鍵盤上的“*”鍵來布防系統如果從該端口接收到觸發器,則執行以下代碼:
1.案例0:{
2. globalContext.safe = 0;
3.};打破;
第二個端口“inNode1”從數字轉換自定義片段中獲取數字并將它們存儲在輸入數組中。當通過此端口接收到值時,將執行以下代碼:
1.案例1:{
2. context.entr[context.i] = val2;
3.上下文.i++;
最后,第三個端口用作代碼評估的觸發器。第三個端口連接到 4x3 鍵盤對象上的“#”鍵。當按下“#”鍵時,它充當輸入按鈕。你可以在這里看到代碼:
這是“安全?”的完整代碼 自定義片段:
每次按下 4x3 鍵盤上的一個數字時,此程序部分還會向 LCD 發送一個“*”。每按下一個數字,就會觸發“Send *”數據序列,然后將計數加一,范圍為 [10 → 16]。此計數對應于 LCD 上的列位置,因此每次輸入一個新數字時,在最后一個數字之后輸入一個新的“*”。此外,每次按下“#”鍵時,都會重置此計數。無論如何,這個數字被發送到 LCD 對象上的列位置端口。
然后數據序列觸發包含“*”的靜態字符串塊,并將其發送到 LCD 上的字符串端口。
最后,數據序列觸發 LCD 上的“Send to Display”端口,實際上使新消息出現在 LCD 上。
我們現在來看看程序的傳感器輸入部分。
?
我們有一個初始觸發器連接到一個名為“Set Safe”的自定義片段。當應用程序最初啟動時,系統被設置為安全位置,因此警報不會立即觸發。
這是代碼:
1.
globalContext.safe = 1;
初始觸發器還觸發“輸入代碼”數據序列。此數據序列觸發“輸入代碼:”的靜態字符串并將其發送到 LCD 硬件對象。
現在,我們將看看所有傳感器如何用作警報的觸發器。
所有三個傳感器,門觸點、運動傳感器和距離傳感器,都通向一個 2 秒的超時對象。然后,此超時對象會導致一個名為 Sound Alarm 的自定義代碼片段。
此自定義代碼段檢查 globalContext.safe 變量是設置為 0 還是 1。如果設置為 1,則系統是安全的,并且沒有任何反應。但是,如果變量設置為 0,則字符串“Intruder Alert”通過端口“outNode0”發送到“Access G/D Data Sequence”,并通過第二個端口向“Beep Alarm”振蕩器對象發送觸發器“outNode1”。
然后觸發“拉伸脈沖”脈沖拉伸器,進而激活蜂鳴器。
如果我們正在輸入代碼并試圖撤防系統,則采用 4x3 鍵盤上的“#”鍵的這條路線。
在 4x3 鍵盤上“授予訪問權限?” 觸發自定義片段,如果 globalContext.safe 變量設置為 1,則將字符串“Access Granted”傳遞給 LCD,并觸發“Access G/D”數據序列。
這是“授予訪問權限?”的代碼。自定義片段:
1.
if(globalContext.safe ===1){
2.
return["Access Granted",new Date()];
3.
}
最后,我們將看看應用程序的 Arm Alarm Countdown 部分。
當按下 4x3 鍵盤上的“*”鍵時,會觸發“倒計時序列”對象,并觸發 20 秒超時。這些同時執行。20 秒超時結束后,系統將在“安全?”上設置為“inNode0”。我們之前討論的塊將被觸發。
倒計時序列對象處理出現在 LCD 屏幕上的 20 秒倒計時。首先,清除 LCD,然后將字符串“Alarm Armed:”發送到“字符串合并”對象。
接下來,數字 20 被發送到數據計數器對象上的值端口。然后將該值傳遞到數據計數器上的“字符串 B”端口。“Alarm Armed:”+“20”的連接字符串然后通過任意數據序列發送到 LCD。
然后觸發振蕩代碼塊,計數設置為 20,間隔設置為 1000 毫秒。
然后這會觸發數據計數器 20 次,每秒遞減一次計數器,直到計數達到 0。每次計數遞減時,都會向 String Merge 對象發送一個新值,然后將新合并的字符串傳遞給“Any Data Sequence”,最終將新字符串“Alarm Armed:”+“(一些新的計數)”到液晶顯示器。
最后,已同時運行的超時塊完成其超時并觸發 LCD 上的“清除”端口和“輸入代碼:”序列。這使系統處于其布防狀態,準備好輸入密碼以解除其布防。
這就是對應用程序進行編程的過程。保存您的應用程序并返回應用程序頁面。
第 4 步:映射應用程序
您現在應該回到應用程序頁面。
找到您的“安全系統”應用程序并點擊播放按鈕。
包含應用程序中所有設備的列表將展開。
接下來單擊“運動傳感器”設備,客戶端下拉菜單將出現在右側。
從下拉菜單中選擇運動傳感器驅動程序并點擊“完成”。
對其余設備重復相同的步驟。對于此應用程序,每個設備應該只有一個可選驅動程序。
請注意,除了一個狀態符號之外的所有狀態符號都已更改為綠色復選標記。我們在我們的應用程序中使用了門觸點設置,但目前我們沒有通過三星 SmartThings 或我們的 Builder Bases 之一設置。因此,您可以將此設備保留為未映射,或者您可以將一個設備與系統配對。
**將固件設備映射到您的應用程序中的對象時,請務必注意,只有相同類型的設備和對象才能映射在一起。例如,使用此應用程序,我們只能選擇將帶有按鈕固件的客戶端映射到按鈕對象。**
您現在已經完成了應用程序的映射!
第 5 步:運行應用程序!
接下來,點擊“保存+運行”
?
恭喜!您的安全系統現已完成,玩得開心!
?
- 生成式AI對智能家居的影響 17次下載
- 智能家居安全隱患 智能家居安全性問題的重要性 0次下載
- Lifi安全系統開源設計
- 智能家居控制系統開源
- 家庭報警安全系統開源分享
- 智能家居門開源分享
- 如何借助德州儀器無線連接平臺創建強大的智能家居和樓宇安全系統
- 人臉驗證解鎖的安全系統開源分享
- 智能家居控制系統方案開源資料
- 智能家居開源項目
- 智能家居安全應用的電路保護,控制和傳感設計注意事項
- 基于ZigBee的智能家居安防系統設計方案 72次下載
- 智能家居的安全問題資料下載
- 如何使用Cubieboard和ZigBee實現智能家居系統設計 7次下載
- SUPCON智能家居系統(中控資料)
- STM32項目分享:智能家居(機智云)系統 2046次閱讀
- 繼電器在智能家居中的應用 1029次閱讀
- 智能家居系統的開發-基于米爾瑞薩RZ/G2UL開發板 1093次閱讀
- Python智能家居系統代碼介紹 1418次閱讀
- 智能家居控制系統原理與應用 3053次閱讀
- 基于CW32單片機的智能家居系統設計 1108次閱讀
- 如何保護智能家居電路 984次閱讀
- 一文帶你了解智能家居控制系統 3136次閱讀
- 電感在智能家居市場的重要性 1410次閱讀
- 智能家居中的無線技術解析 2150次閱讀
- 智能家居控制系統詳解_智能家居控制系統工作原理_智能家居控制系統有哪些 4.4w次閱讀
- 基于Android的智能家居終端控制系統 9924次閱讀
- 智能家居安全嗎_智能家居安全性分析 3148次閱讀
- 詳解智能家居的控制系統工作原理 1.1w次閱讀
- 智能家居的真正意義:連接家庭“點”安全 1140次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多