步驟1:用品
還在計劃建立這個裝置嗎?以下是您的需求:
Raspberry Pi 3
Micro SD卡
3對母對母線
1振動傳感器
移動電源
命令條
如果您計劃為多個門構建此項目,請將每個項目相乘根據您需要的設備數量來提供耗材。
如果您正在構建/測試此設備,則無需擁有以下設備。..。..但是,它肯定會非常有幫助。
電腦顯示器
USB鍵盤
Micro USB充電套件
第2步:接線
雖然Raspberry Pi是一個包含許多不同傳感器和外圍設備的漂亮設備,但我們需要添加Pi的接線的主要傳感器,因此它可以進行我們需要的測量。本項目中使用的主傳感器如上圖所示 - 它是一種高靈敏度的振動傳感器。雖然我們可以使用面包板或其他安裝設備將此傳感器放置并穿過我們的電線,但我們只需通過母對母線將其直接連接到Raspberry Pi設備上的引腳。
上面可以找到接線示意圖(源自http://www.piddlerintheroot.com/vibration-sensor/)。只需連接所有電線,如圖所示,您的振動傳感器應該很好。另請注意,您最終需要為此項目使用電池組,但如果您正在測試它可能有助于將設備插入墻上插座。
步驟3:設置填充
恭喜!你已經做到了這一點。讓我們繼續吧!
我們現在要開始直接與Pi合作了。以下所有內容都可以通過鍵盤和顯示器在設備上完成(如果您感覺舒適,可以通過SSH完成)。
有大量的初步設置可以讓任何GPIO傳感器使用皮和燒瓶。耐心是一種美德。你必須首先安裝相當多的Python庫。這可以通過Pip(Python的庫/包管理器)來完成。要使用,請鍵入`pip install`命名您需要的一些庫:
requests
RPi.GPIO
flask
flask_restful
flask_wtf
wtforms
電子郵件
mandrill
您可能希望在等待安裝時喝咖啡 - 這可能需要一些時間。
現在已經安裝了所有庫,您已準備好啟動Flask項目。 Flask是一個輕量級框架,可以運行正在運行的設備上的頁面。在這種情況下,Raspberry Pi成為服務器。很漂亮,嗯?您可以在此處學習如何設置非常簡單的 Flask應用程序。請在嘗試此后的任何說明之前執行此操作。
步驟4:編碼并運行
完成此操作后,您已做好準備開始構建項目文件。我已經包含了下面你需要的所有文件 - 你可能應該重寫代碼,而不僅僅是復制文件(你要了解更多!)。
這是什么目錄組織應如下所示:
。
+-- iotapp
| +-- appFolder
| +-- templates
| +-- index.html
| +-- __init__.py
| +-- forms.py
| +-- mcemail.py
| +-- routes.py
| +-- iotapp.py
| +-- vibes.py
以正確的順序放置所有這些文件,您應該能夠立即啟動并運行您的項目。為了運行Flask服務器,您應該導航到根目錄。然后您應該鍵入:
$ export FLASK_APP=iotapp.py
$ python -m flask run --host 0.0.0.0
這樣,您應該收到一條消息,指示您的服務器正在運行,您應該能夠將該設備的頁面提供給網絡上的另一臺設備。
現在是查看文件的好時機,并且真正嘗試獲取代碼正在執行的操作。當然,沒有一個代碼是一成不變的。..。..它可以全部更新/更改以滿足項目特定的需求。例如,截至目前,當設備在接收到來自振動傳感器的輸入時進行POST時,它發送輸入發生時的時間戳。但是,服務器不保存此數據。如果用戶喜歡保留歷史信息并希望在某處顯示,那么可以完成。
您可能會注意到的一件事是代碼不完整。該項目利用外部API在振動(開門)時發送通知電子郵件。要進行此設置,您需要創建一個Mandrill帳戶并創建一個API密鑰。
一旦您驗證了發送域并擁有API密鑰,就可以將密鑰放在`mcemail中。 py`文件(其中《輸入有效的API-KEY here》)并調整發送信息(通過更改同一文件中的默認參數或通過傳遞`routes.py`文件中的其他電子郵件。如果你想要更多關于Mandrill的文檔以及如何使用它,你可以在這里找到它。
第5步:測試
在將設備安裝到其永久位置之前,測試它正在進行的所有事情可能是個好主意。以下是運行這些內容的方法。
設備實際上運行兩個程序:`vibes.py`和Flask服務器。前者應該先在后臺運行,然后運行Flask服務器。`shans.py`只是POST到服務器,服務器解釋POST請求。
$ python vibes.py &
$ python -m flask run --host 0.0.0.0
然后您應該能夠導航到corr ect URI/IP并設置您要將所有通知發送到的電子郵件地址。您應該點擊振動傳感器嘗試發送一些測試電子郵件并確保項目正常運行。
一切都很好看?好的,我們已準備好開展業務了!
第6步:掛載
掛載設備非常明顯。基本上,您只需確保將設備連接到電池組并使用命令條將設備固定到門上。
注意:設備必須與振動傳感器垂直放置到達傳感器的門,以便抓住門的運動。
完成后,您應該可以通過SSH連接到設備并運行上一步驟中提到的程序,等待入侵者!
對于額外的積分,嘗試隱藏電線/設備,這樣入侵者就不會懷疑你的聰明設備!。..。..或者只是不要把它放在玻璃門上。
-
樹莓派
+關注
關注
121文章
2007瀏覽量
107463
發布評論請先 登錄
評論