那曲檬骨新材料有限公司

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>電子資料>智能家居安全系統開源分享

智能家居安全系統開源分享

2022-10-28 | zip | 0.07 MB | 次下載 | 免費

資料介紹

描述

描述

我們認為,沒有某種形式的安全系統,任何智能家居都是不完整的。這只是我們安全系統的原型,在設計最終確定之前,硬件和軟件將進行許多修改。無論如何,這里是我們一直在努力的一瞥。

過程

第 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 將不會亮起。**

使用下面列出的原理圖和面包板視圖作為參考。

?

?
?
?
pYYBAGNY07CALVbOAAA3GvIIzsk900.png
?
1 / 2
?

現在讓我們組裝觸發器電路。我們建議為該電路使用面包板,因為它可以更輕松地為所有組件供電

拿起你的面包板,將 GND 和 Vcc 導軌分別連接到 Builder Base 上的 GND 和 5V 端口。

?
?
?
poYBAGNY07WAXzxgAAAqoN9RacE144.png
?
1 / 2
?

現在,讓我們連接運動傳感器。將 VCC 和 GND 引腳連接到面包板上的 5V 和 GND 導軌。將數據引腳連接到 Builder Base,如下所示:

pYYBAGNY07eAYpVNAAATfu7OzsY241.png
?

現在,我們將連接蜂鳴器。將蜂鳴器上的 GND 引腳連接到面包板上的 GND 導軌,并將正極引腳連接到 Builder Base,如下所示:

poYBAGNY07mAOCr1AAASE06SDKo838.png
?

最后,我們將連接距離傳感器。再次,將距離傳感器上的 Vcc 和 GND 引腳連接到面包板上的 5v 和 GND 導軌。現在將 Echo 和 Trigger 引腳連接到構建器底座,如下所示:

poYBAGNY07uAI2YvAAAaDricqow198.png
?

恭喜!安全系統所需的所有電路現已完成!

第 2 步:構建固件

由于我們在這個項目中使用了兩個 Builder Base,我們需要構建兩個單獨的固件文件。

首先導航到固件生成器并創建一個名為“安全鍵盤”的新固件。

pYYBAGNY08CACuVsAAAczfpjo4k304.png
?

單擊“+添加硬件”按鈕并添加 LCD 和 4x3 鍵盤。

?
?
?
poYBAGNY08OAfXa8AAAZ1uQie_M600.png
?
1 / 2
?

?

poYBAGNY08aAHpUHAAA2QvZwlv8485.png
?

現在,單擊 LCD 設備并從驅動程序下拉菜單中選擇“Generic LCD2004 Display (I2C)”驅動程序。

pYYBAGNY08iAXiQ8AABBs9oRAZo154.png
?

配置驅動程序如下:

I2C 地址:0x27

布局:2x16

pYYBAGNY08qAGMweAABENPIPMKM187.png
?

現在,我們將配置 4x3 鍵盤。您會注意到 4x3 鍵盤有 12 種服務需要配置。您可以通過單擊左右箭頭來循環瀏覽這些內容。

?
?
?
poYBAGNY08-AbFHLAAAlW856Ans203.png
?
1 / 2
?

對于每項服務,您必須選擇驅動程序以及服務的行/列引腳。每個服務對應于鍵盤上的一個按鈕。按照下表配置所有 12 項服務。

poYBAGNY09KAAobtAACKZ8-QeQc973.png
?

配置完所有服務后,保存固件!

現在,創建另一個名為“Security Triggers”的固件文件。

?
?
?
poYBAGNY09WAGDHKAAAWHEEnbL0893.png
?
1 / 2
?

現在,單擊“+ 添加硬件”按鈕并將運動傳感器、距離傳感器和模擬輸出設備添加到您的文件中。像我們一樣命名它們。

?
?
?
pYYBAGNY09eASgNCAAAM--0qWTA382.png
?
1 / 3
?

對于運動傳感器,從驅動程序下拉菜單中選擇 HC-SR501 驅動程序。

poYBAGNY09yAWX0sAAB9tUf8pgI814.png
?

配置驅動程序如下:

引腳:GP0

poYBAGNY096AXrNXAAA4sglKvzY382.png
?

現在我們將配置蜂鳴器。從驅動程序下拉菜單中選擇“GPIO”驅動程序。

poYBAGNY0-GARXFDAAA7g2jpxSs744.png
?

現在我們將配置驅動程序如下:

引腳:GP1

pYYBAGNY0-OAIabbAAA53jUPPyM775.png
?

現在,我們將配置距離傳感器。

從驅動程序下拉菜單中選擇 HC-SR04 驅動程序:

poYBAGNY0-aAVnPhAAAy4mnZPAk579.png
?

現在我們將配置驅動程序如下:

回聲針:GP3

觸發引腳:GP2

分辨率(I):1

pYYBAGNY0-uAK9djAABBXfrx3gs960.png
?

**我們的系統在設置中設置為英制。如果您的設置為公制,您可能需要更改分辨率值。**

就是這樣,您的安全系統固件文件現已完成。保存并上傳您的固件文件。安全鍵盤固件應上傳到連接鍵盤和 LCD 的 Builder Base,安全觸發器固件應上傳到連接傳感器和蜂鳴器的 Builder Base。

第 3 步:對應用程序進行編程

對于這個應用程序,我們將引導您了解所涉及的基本邏輯。您可以按照我們的描述構建應用程序,或者您可以下載該應用程序并將其導入您的應用程序列表。

這是安全系統應用程序:

**請注意,此安全系統應用程序處于高度原型狀態,無法完美運行。我們將在未來幾個月內更新此應用程序以更有效地工作。**

在本說明中,我們將把應用程序分為四個主要部分:1. 代碼集,2. 代碼輸入/評估,3. 傳感器輸入,和 4. 布防警報倒計時

poYBAGNY0-6AUpgyAAC2TbdoQ-E668.png
?

在當前狀態下,當應用程序啟動時,您需要通過儀表板界面設置密碼。這發生在應用程序的代碼集部分。

?
?
?
pYYBAGNY0_CAM76fAAAnFR6KNwQ050.png
?
1 / 2
?

使用兩個自定義代碼塊設置引腳。一個將儀表板按鈕按下轉換為數字,另一個將數字存儲在全局上下文數組中。

對于Number Convert代碼和Set Pin 代碼,請查看我們的文檔

現在我們來看看程序的代碼輸入/評估部分。

poYBAGNY0_KAGfPlAABegWPIqkc141.png
?

在這里,我們有一個 4x3 鍵盤對象連接到另一個數字轉換自定義片段。這會從 4x3 鍵盤對象獲取數字輸出,并根據接收到的端口將其轉換為數字。此數字轉換自定義代碼段與上面使用的代碼段相同。

然后將此數字傳遞到名為“安全?”的自定義片段中。

?
?
?
poYBAGNY0_eAF17iAAAXG05NjWA412.png
?
1 / 2
?

“安全?” 片段從三個端口獲取輸入。第一個端口“InNode0”用作布防系統的一種方式。我們通過使用鍵盤上的“*”鍵來布防系統如果從該端口接收到觸發器,則執行以下代碼:

1.案例0:{

2. globalContext.safe = 0;

3.};打破;

第二個端口“inNode1”從數字轉換自定義片段中獲取數字并將它們存儲在輸入數組中。當通過此端口接收到值時,將執行以下代碼:

1.案例1:{

2. context.entr[context.i] = val2;

3.上下文.i++;

最后,第三個端口用作代碼評估的觸發器。第三個端口連接到 4x3 鍵盤對象上的“#”鍵。當按下“#”鍵時,它充當輸入按鈕。你可以在這里看到代碼:

pYYBAGNY0_qAJQRYAAB-KLce4CQ761.png
?

這是“安全?”的完整代碼 自定義片段:

?
?
?
poYBAGNY0_yALv5RAABbLcd_whQ094.png
?
1 / 2
?

每次按下 4x3 鍵盤上的一個數字時,此程序部分還會向 LCD 發送一個“*”。每按下一個數字,就會觸發“Send *”數據序列,然后將計數加一,范圍為 [10 → 16]。此計數對應于 LCD 上的列位置,因此每次輸入一個新數字時,在最后一個數字之后輸入一個新的“*”。此外,每次按下“#”鍵時,都會重置此計數。無論如何,這個數字被發送到 LCD 對象上的列位置端口。

然后數據序列觸發包含“*”的靜態字符串塊,并將其發送到 LCD 上的字符串端口。

最后,數據序列觸發 LCD 上的“Send to Display”端口,實際上使新消息出現在 LCD 上。

poYBAGNY0_-AH8nWAACdJ8u_puw389.png
?

我們現在來看看程序的傳感器輸入部分。

?

?
?
?
poYBAGNY1AGAMtz5AAB9W1nX37c110.png
?
1 / 2
?

我們有一個初始觸發器連接到一個名為“Set Safe”的自定義片段。當應用程序最初啟動時,系統被設置為安全位置,因此警報不會立即觸發。

poYBAGNY1AaAFp_bAAAbQA9JAOo577.png
?

這是代碼:

1.globalContext.safe = 1;

初始觸發器還觸發“輸入代碼”數據序列。此數據序列觸發“輸入代碼:”的靜態字符串并將其發送到 LCD 硬件對象。

pYYBAGNY1AmAEmrMAACH6ro-vYI562.png
?

現在,我們將看看所有傳感器如何用作警報的觸發器。

poYBAGNY1AuAFjxCAABofeOPWg8494.png
?

所有三個傳感器,門觸點、運動傳感器和距離傳感器,都通向一個 2 秒的超時對象。然后,此超時對象會導致一個名為 Sound Alarm 的自定義代碼片段。

pYYBAGNY1A6AIdQRAABpSul4Q6A664.png
?

此自定義代碼段檢查 globalContext.safe 變量是設置為 0 還是 1。如果設置為 1,則系統是安全的,并且沒有任何反應。但是,如果變量設置為 0,則字符串“Intruder Alert”通過端口“outNode0”發送到“Access G/D Data Sequence”,并通過第二個端口向“Beep Alarm”振蕩器對象發送觸發器“outNode1”。

pYYBAGNY1BKAPztbAAA_FEbcnJM718.png
?

然后觸發“拉伸脈沖”脈沖拉伸器,進而激活蜂鳴器。

pYYBAGNY1BWAeZZTAAAmk1-E6qU862.png
?

如果我們正在輸入代碼并試圖撤防系統,則采用 4x3 鍵盤上的“#”鍵的這條路線。

poYBAGNY1BeAE6B1AACIlQTLW3g628.png
?

在 4x3 鍵盤上“授予訪問權限?” 觸發自定義片段,如果 globalContext.safe 變量設置為 1,則將字符串“Access Granted”傳遞給 LCD,并觸發“Access G/D”數據序列。

poYBAGNY1BqAC165AABY34XOMDM467.png
?

這是“授予訪問權限?”的代碼。自定義片段:

1.if(globalContext.safe ===1){

2. return["Access Granted",new Date()];

3.}

最后,我們將看看應用程序的 Arm Alarm Countdown 部分。

pYYBAGNY1B6ASzfYAACeFPPRetE529.png
?

當按下 4x3 鍵盤上的“*”鍵時,會觸發“倒計時序列”對象,并觸發 20 秒超時。這些同時執行。20 秒超時結束后,系統將在“安全?”上設置為“inNode0”。我們之前討論的塊將被觸發。

poYBAGNY1CCARkhVAABKKfCT49s031.png
?

倒計時序列對象處理出現在 LCD 屏幕上的 20 秒倒計時。首先,清除 LCD,然后將字符串“Alarm Armed:”發送到“字符串合并”對象。

pYYBAGNY1COALlOhAABrBDaBB3M874.png
?

接下來,數字 20 被發送到數據計數器對象上的值端口。然后將該值傳遞到數據計數器上的“字符串 B”端口。“Alarm Armed:”+“20”的連接字符串然后通過任意數據序列發送到 LCD。

pYYBAGNY1CWAV-vwAABuc5RfmnE677.png
?

然后觸發振蕩代碼塊,計數設置為 20,間隔設置為 1000 毫秒。

然后這會觸發數據計數器 20 次,每秒遞減一次計數器,直到計數達到 0。每次計數遞減時,都會向 String Merge 對象發送一個新值,然后將新合并的字符串傳遞給“Any Data Sequence”,最終將新字符串“Alarm Armed:”+“(一些新的計數)”到液晶顯示器。

pYYBAGNY1CeAPgRCAABrW9pGbyw712.png
?

最后,已同時運行的超時塊完成其超時并觸發 LCD 上的“清除”端口和“輸入代碼:”序列。這使系統處于其布防狀態,準備好輸入密碼以解除其布防。

poYBAGNY1CyAM7UeAABwfLC8WME973.png
?

這就是對應用程序進行編程的過程。保存您的應用程序并返回應用程序頁面。

第 4 步:映射應用程序

您現在應該回到應用程序頁面。

找到您的“安全系統”應用程序并點擊播放按鈕。

pYYBAGNY1C6AFHD-AAAR7Hq1p8s353.png
?

包含應用程序中所有設備的列表將展開。

poYBAGNY1DGAbrF1AACDzy8l7Ig553.png
?

接下來單擊“運動傳感器”設備,客戶端下拉菜單將出現在右側。

從下拉菜單中選擇運動傳感器驅動程序并點擊“完成”。

poYBAGNY1DSAbeP5AACDjOUNuNs798.png
?

對其余設備重復相同的步驟。對于此應用程序,每個設備應該只有一個可選驅動程序。

請注意,除了一個狀態符號之外的所有狀態符號都已更改為綠色復選標記。我們在我們的應用程序中使用了門觸點設置,但目前我們沒有通過三星 SmartThings 或我們的 Builder Bases 之一設置。因此,您可以將此設備保留為未映射,或者您可以將一個設備與系統配對。

poYBAGNY1DeAK-I0AACEOzGzypk080.png
?

**將固件設備映射到您的應用程序中的對象時,請務必注意,只有相同類型的設備和對象才能映射在一起。例如,使用此應用程序,我們只能選擇將帶有按鈕固件的客戶端映射到按鈕對象。**

您現在已經完成了應用程序的映射!

第 5 步:運行應用程序!

接下來,點擊“保存+運行”

poYBAGNY1DeAK-I0AACEOzGzypk080.png
?

?

poYBAGNY1D2AZtdgAAAQwtdlrCg835.png
?

恭喜!您的安全系統現已完成,玩得開心!

?

?


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數據手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費
功夫百家乐官网的玩法技巧和规则 | 24山72向吉凶断| 百家乐永利娱乐场开户注册| 云鼎娱乐城怎么存钱| 百家乐官网变牌器| 贵宾百家乐的玩法技巧和规则| 澳门赌博技巧| 可以玩百家乐官网的博彩公司| 澳门百家乐下三路| 明升| 深圳百家乐官网的玩法技巧和规则| 威尼斯人娱乐官网| 百家乐官网长龙如何判断| 百家乐桌布| 立博百家乐官网游戏| 百家乐三路秘诀| 毕节市| 百家乐投注方法新版| 明升网址| 做生意门朝山| 瑞发国际| 百家乐技巧娱乐博彩| 足球现金投注网| 百家乐免费破解外挂| 金赞娱乐| 百家乐优博u2bet| 打百家乐官网的技术| 澳门百家乐技术| 百家乐官网视频交友| 百家乐游戏接口| 百家乐官网览| 水果机遥控器多少钱| 公海百家乐官网的玩法技巧和规则| 新塘太阳城巧克力| 小孟百家乐官网的玩法技巧和规则| 波音现金网投注| 名人百家乐官网的玩法技巧和规则 | 百家乐官网龙虎斗| 大发888真钱游戏娱乐城下载| 百家乐官网网络游戏信誉怎么样 | 百家乐官网英皇娱乐场开户注册|