資料介紹
描述
概述
我有一扇帶電鎖的門,當(dāng)我沒有帶鑰匙時,或者當(dāng)我想讓別人進來但我不在時,我也想打開它。

該項目的最佳候選者是Shelly 1 繼電器,因為:
- 它價格低廉,在亞馬遜上很容易買到
- 它很小,帶有小塑料外殼(因此可以安裝在現(xiàn)有的電箱中)
- 它提供了一個干接點(所以它可以直接驅(qū)動我的24V電鎖)
對于軟件方面的事情,我決定使用 Arduino 的IoT Remote 移動應(yīng)用程序,它是免費的,允許您創(chuàng)建一個簡單的界面而無需編寫任何代碼。該解決方案為我處理所有網(wǎng)絡(luò)部分,因此我不必擔(dān)心設(shè)置 Web 服務(wù)器、將其暴露在公共互聯(lián)網(wǎng)、處理身份驗證、編寫遠程通信協(xié)議等。一切都已由 Arduino Cloud 管理,并且我的代碼變得非常簡單。
關(guān)于安全的幾句話
當(dāng)談到打開一扇真實世界的門時,我們都應(yīng)該有點偏執(zhí)。Arduino IoT Remote 應(yīng)用程序需要身份驗證,您可以將 Arduino 帳戶配置為需要兩步身份驗證以提高安全性,因此這已經(jīng)是一個好的開始。但是,我想通過實施一種簡單的一次性密碼 (OTP) 機制來做更多事情,就像您用來訪問銀行帳戶的機制一樣。我確實信任 Arduino Cloud,但使用此解決方案,即使有人可以以某種方式進入我的手機和設(shè)備之間的通信通道,他們也無法打開門,因為他們需要由 Google 生成 OTP在我的手機上配置的身份驗證器應(yīng)用程序。
第一步:配置Arduino Cloud
這部分很簡單,按照以下步驟操作即可(有疑惑的可以看看官方教程):
1. 在Arduino Cloud中創(chuàng)建一個免費帳戶
2. 創(chuàng)建一個新設(shè)備,選擇“Generic 8266 Module”作為板類型。您將獲得一個密鑰:將其復(fù)制粘貼到某處。
3. 創(chuàng)建一個新東西,并使用您的 WiFi 憑據(jù)和您剛剛獲得的密鑰對其進行配置。
4. 為事物添加一個變量,稱為“ access_code ”。使它成為一個字符串變量并保持所有默認值不變。
5. 創(chuàng)建一個新的儀表板并向其添加一個“信使”小部件。將小部件鏈接到 access_code 變量。
就是這樣!很容易吧?
第 2 步:將 Shelly 1 連接到您的電腦
1. 獲取您的 USB-TTL 串行適配器并確保它在 3.3V 下工作。
2. 拆除 Shelly 1 外殼以接觸到編程引腳。
3、查看Shelly網(wǎng)站上的pinout ,按如下方式連接其引腳[Shelly -> USB-TTL adapter]:
- 接地 -> 接地
- GPIO0 -> 接地
- 3.3V -> VCC
- RXD -> TXD
- TXD -> RXD
為了將 GND 和 GPIO(在 Shelly 上)連接到 GND(在 USB-TTL 適配器上),您可能需要使用面包板,但任何其他方法都可以。
現(xiàn)在將 USB-TTL 適配器插入您的 PC。
第三步:配置谷歌身份驗證器
為了使用一次性密碼方法,您需要在手機上設(shè)置 Google 身份驗證器,這非常簡單,因為它只需要一個 QR 碼就可以完成所有操作。
要生成二維碼,您可以使用Luca Dentella(TOTP Arduino 庫的作者)提供的這個非常方便的在線頁面。配置字段如下:
- 賬戶名:空(無所謂)
- 頒發(fā)者:您希望在 Google 身份驗證器中看到的名稱(例如“我的門”)
- 秘密:一系列隨機字符,確保它非常隨機并且沒有人知道。你不需要把它寫在別處。
- 算法:SHA256
現(xiàn)在按下“Go”按鈕,您將獲得一個漂亮的二維碼:使用 Google Authenticator 掃描它,一切就緒!
最后,將“Arduino HEX array”和“Key length”字段的值復(fù)制到本頁提供的草圖代碼中。您的手機和 Arduino 代碼現(xiàn)已配對。
第 4 步:對 Shelly 1 進行編程
現(xiàn)在按照以下步驟操作:
1. 在 Arduino IoT Cloud 的 Web 界面中,將草圖代碼復(fù)制并粘貼到您剛剛創(chuàng)建的東西的“草圖”部分。
2.點擊“打開完整編輯器”;然后單擊三個點并選擇“下載草圖”以將草圖下載到本地。
3. 使用 Arduino IDE 打開草圖。
4. 在 arduino_secrets.h 選項卡中填寫值(您的 WiFi 憑據(jù)和您在步驟 #1 中獲得的密鑰)。
- 打開首選項
- 從 Tools > Board 菜單打開 Boards Manager 并找到“GenericESP8266Module”板
- 點擊安裝安裝最新的核心
6. 安裝以下庫:
- Arduino 的ArduinoIoTCloud
- Luca Dentella 的TOTP 庫
7. 選擇板卡串口。
8.點擊“編譯并上傳”
此時,您的 Shelly 1 設(shè)備應(yīng)該已刷入并可以使用了!
注意:使用 Arduino Cloud 通常不需要下載草圖和使用 Arduino IDE,因為一切都可以從 Web 界面完成(順便說一下,它預(yù)裝了所有內(nèi)核和庫)。然而,這個項目需要一個最新的 esp8266 核心,它在 Arduino Cloud 上尚不可用。一旦 Arduino 團隊在云端升級了 esp8266 核心,這一段就可以被更簡單的基于網(wǎng)絡(luò)的程序所取代。
第 5 步:安裝您的 Shelly 1
此時,您已準(zhǔn)備好安裝所有內(nèi)容:
1. 從 Shelly 1 上拆下所有電線。
2. 確保根據(jù)所需電壓設(shè)置 Shelly 上的跳線(請參閱Shelly 文檔,這一點非常重要)。
3. 將 Shelly 1 連接到您的電鎖并輸入電源。
第 6 步:測試所有內(nèi)容
此時您應(yīng)該能夠從 Google Authenticator 生成 OTP 代碼并將其寫入您之前創(chuàng)建的儀表板小部件:您的門將打開!

如果它似乎不起作用,這里有一些故障排除提示:
- 董事會是否在儀表板小部件中回復(fù)“無效代碼”?如果是這樣,您需要更仔細地重新進行與 Google Authenticator 的配對。確保在將其閃爍到 Shelly 之前將十六進制數(shù)組復(fù)制到草圖中。
- 如果發(fā)送代碼后 Messenger 小部件完全沒有聲音,則表示看板未連接到云端。打開物聯(lián)網(wǎng)云中的“物”頁面,查看看板是否在線標(biāo)有綠點。如果不是,請仔細檢查您在草圖中寫入的 WiFi 憑據(jù)。
- 此外,仔細檢查 Shelly 的輸入電源:應(yīng)根據(jù)所需的輸入電壓(AC 與 DC)設(shè)置跳線,并且必須遵守極性(L/N 用于 AC,+/- 用于 DC)。如果您將跳線設(shè)置到錯誤的位置,您很可能會炸毀您的 Shelly!
- 如何通過智能手機控制和監(jiān)控MKR1000
- 探究LRC產(chǎn)品在智能手機中的應(yīng)用.pdf 13次下載
- 多場景下的智能手機人機交互動效設(shè)計體驗 24次下載
- 蘋果智能手機點膠的具體步驟及資料 33次下載
- 智能手機元器件的認識資料說明 35次下載
- 如何解決智能手機EMI的干擾問題 8次下載
- Android智能手機木馬實現(xiàn) 6次下載
- 智能手機信號的優(yōu)化 14次下載
- 智能手機系統(tǒng)設(shè)計 20次下載
- 智能手機應(yīng)用 0次下載
- 智能手機應(yīng)用 0次下載
- 智能手機在車輛安全輔助系統(tǒng)中的新型應(yīng)用 130次下載
- 最新智能手機操作系統(tǒng)詳細介紹 106次下載
- 基于智能手機的校園短信網(wǎng)關(guān)系統(tǒng)設(shè)計 56次下載
- 智能手機白皮書 0次下載
- IPX8防水測試機如何檢測智能手機 557次閱讀
- 智能手機到底能使用多久 5962次閱讀
- 談智能功率音頻放大器對智能手機的重要性 1864次閱讀
- 智能手機耳機電路工作原理 2.2w次閱讀
- STM8S單片機通過藍牙與智能手機實現(xiàn)串口通訊的設(shè)計 5842次閱讀
- 智能手機有哪些系統(tǒng) 1.1w次閱讀
- 對未來智能手機的展望 9303次閱讀
- 智能手機也能測量血壓? 2.7w次閱讀
- 在智能手機地圖里能夠精確定位的電子羅盤 7661次閱讀
- 未來十大趨勢不可不知 人工智能手機將會更智能! 702次閱讀
- 智能手機的低功耗設(shè)計介紹 3329次閱讀
- 智能手機的硬件體系結(jié)構(gòu)簡介 1w次閱讀
- 淺析智能手機“一小時充電”的充電保護方案 3529次閱讀
- 智能手機電池為什么總是不給力? 2739次閱讀
- 基于嵌入式Linux的智能手機省電設(shè)計 1118次閱讀
下載排行
本周
- 1DD3118電路圖紙資料
- 0.08 MB | 1次下載 | 免費
- 2AD庫封裝庫安裝教程
- 0.49 MB | 1次下載 | 免費
- 3PC6206 300mA低功耗低壓差線性穩(wěn)壓器中文資料
- 1.12 MB | 1次下載 | 免費
- 4網(wǎng)絡(luò)安全從業(yè)者入門指南
- 2.91 MB | 1次下載 | 免費
- 5DS-CS3A P00-CN-V3
- 618.05 KB | 1次下載 | 免費
- 6海川SM5701規(guī)格書
- 1.48 MB | 次下載 | 免費
- 7H20PR5電磁爐IGBT功率管規(guī)格書
- 1.68 MB | 次下載 | 1 積分
- 8IP防護等級說明
- 0.08 MB | 次下載 | 免費
本月
- 1貼片三極管上的印字與真實名稱的對照表詳細說明
- 0.50 MB | 103次下載 | 1 積分
- 2涂鴉各WiFi模塊原理圖加PCB封裝
- 11.75 MB | 89次下載 | 1 積分
- 3錦銳科技CA51F2 SDK開發(fā)包
- 24.06 MB | 43次下載 | 1 積分
- 4錦銳CA51F005 SDK開發(fā)包
- 19.47 MB | 19次下載 | 1 積分
- 5PCB的EMC設(shè)計指南
- 2.47 MB | 16次下載 | 1 積分
- 6HC05藍牙原理圖加PCB
- 15.76 MB | 13次下載 | 1 積分
- 7802.11_Wireless_Networks
- 4.17 MB | 12次下載 | 免費
- 8蘋果iphone 11電路原理圖
- 4.98 MB | 6次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935127次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191390次下載 | 10 積分
- 5十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183342次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81588次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73815次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65989次下載 | 10 積分
評論