资料介绍
描述
概述
我有一扇带电锁的门,当我没有带钥匙时,或者当我想让别人进来但我不在时,我也想打开它。
该项目的最佳候选者是Shelly 1 继电器,因为:
- 它价格低廉,在亚马逊上很容易买到
- 它很小,带有小塑料外壳(因此可以安装在现有的电箱中)
- 它提供了一个干接点(所以它可以直接驱动我的24V电锁)
对于软件方面的事情,我决定使用 Arduino 的IoT Remote 移动应用程序,它是免费的,允许您创建一个简单的界面而无需编写任何代码。该解决方案为我处理所有网络部分,因此我不必担心设置 Web 服务器、将其暴露在公共互联网、处理身份验证、编写远程通信协议等。一切都已由 Arduino Cloud 管理,并且我的代码变得非常简单。
关于安全的几句话
当谈到打开一扇真实世界的门时,我们都应该有点偏执。Arduino IoT Remote 应用程序需要身份验证,您可以将 Arduino 帐户配置为需要两步身份验证以提高安全性,因此这已经是一个好的开始。但是,我想通过实施一种简单的一次性密码 (OTP) 机制来做更多事情,就像您用来访问银行帐户的机制一样。我确实信任 Arduino Cloud,但使用此解决方案,即使有人可以以某种方式进入我的手机和设备之间的通信通道,他们也无法打开门,因为他们需要由 Google 生成 OTP在我的手机上配置的身份验证器应用程序。
第一步:配置Arduino Cloud
这部分很简单,按照以下步骤操作即可(有疑惑的可以看看官方教程):
1. 在Arduino Cloud中创建一个免费帐户
2. 创建一个新设备,选择“Generic 8266 Module”作为板类型。您将获得一个密钥:将其复制粘贴到某处。
3. 创建一个新东西,并使用您的 WiFi 凭据和您刚刚获得的密钥对其进行配置。
4. 为事物添加一个变量,称为“ access_code ”。使它成为一个字符串变量并保持所有默认值不变。
5. 创建一个新的仪表板并向其添加一个“信使”小部件。将小部件链接到 access_code 变量。
就是这样!很容易吧?
第 2 步:将 Shelly 1 连接到您的电脑
1. 获取您的 USB-TTL 串行适配器并确保它在 3.3V 下工作。
2. 拆除 Shelly 1 外壳以接触到编程引脚。
3、查看Shelly网站上的pinout ,按如下方式连接其引脚[Shelly -> USB-TTL adapter]:
- 接地 -> 接地
- GPIO0 -> 接地
- 3.3V -> VCC
- RXD -> TXD
- TXD -> RXD
为了将 GND 和 GPIO(在 Shelly 上)连接到 GND(在 USB-TTL 适配器上),您可能需要使用面包板,但任何其他方法都可以。
现在将 USB-TTL 适配器插入您的 PC。
第三步:配置谷歌身份验证器
为了使用一次性密码方法,您需要在手机上设置 Google 身份验证器,这非常简单,因为它只需要一个 QR 码就可以完成所有操作。
要生成二维码,您可以使用Luca Dentella(TOTP Arduino 库的作者)提供的这个非常方便的在线页面。配置字段如下:
- 账户名:空(无所谓)
- 颁发者:您希望在 Google 身份验证器中看到的名称(例如“我的门”)
- 秘密:一系列随机字符,确保它非常随机并且没有人知道。你不需要把它写在别处。
- 算法:SHA256
现在按下“Go”按钮,您将获得一个漂亮的二维码:使用 Google Authenticator 扫描它,一切就绪!
最后,将“Arduino HEX array”和“Key length”字段的值复制到本页提供的草图代码中。您的手机和 Arduino 代码现已配对。
第 4 步:对 Shelly 1 进行编程
现在按照以下步骤操作:
1. 在 Arduino IoT Cloud 的 Web 界面中,将草图代码复制并粘贴到您刚刚创建的东西的“草图”部分。
2.点击“打开完整编辑器”;然后单击三个点并选择“下载草图”以将草图下载到本地。
3. 使用 Arduino IDE 打开草图。
4. 在 arduino_secrets.h 选项卡中填写值(您的 WiFi 凭据和您在步骤 #1 中获得的密钥)。
- 打开首选项
- 从 Tools > Board 菜单打开 Boards Manager 并找到“GenericESP8266Module”板
- 点击安装安装最新的核心
6. 安装以下库:
- Arduino 的ArduinoIoTCloud
- Luca Dentella 的TOTP 库
7. 选择板卡串口。
8.点击“编译并上传”
此时,您的 Shelly 1 设备应该已刷入并可以使用了!
注意:使用 Arduino Cloud 通常不需要下载草图和使用 Arduino IDE,因为一切都可以从 Web 界面完成(顺便说一下,它预装了所有内核和库)。然而,这个项目需要一个最新的 esp8266 核心,它在 Arduino Cloud 上尚不可用。一旦 Arduino 团队在云端升级了 esp8266 核心,这一段就可以被更简单的基于网络的程序所取代。
第 5 步:安装您的 Shelly 1
此时,您已准备好安装所有内容:
1. 从 Shelly 1 上拆下所有电线。
2. 确保根据所需电压设置 Shelly 上的跳线(请参阅Shelly 文档,这一点非常重要)。
3. 将 Shelly 1 连接到您的电锁并输入电源。
第 6 步:测试所有内容
此时您应该能够从 Google Authenticator 生成 OTP 代码并将其写入您之前创建的仪表板小部件:您的门将打开!
如果它似乎不起作用,这里有一些故障排除提示:
- 董事会是否在仪表板小部件中回复“无效代码”?如果是这样,您需要更仔细地重新进行与 Google Authenticator 的配对。确保在将其闪烁到 Shelly 之前将十六进制数组复制到草图中。
- 如果发送代码后 Messenger 小部件完全没有声音,则表示看板未连接到云端。打开物联网云中的“物”页面,查看看板是否在线标有绿点。如果不是,请仔细检查您在草图中写入的 WiFi 凭据。
- 此外,仔细检查 Shelly 的输入电源:应根据所需的输入电压(AC 与 DC)设置跳线,并且必须遵守极性(L/N 用于 AC,+/- 用于 DC)。如果您将跳线设置到错误的位置,您很可能会炸毁您的 Shelly!
- 如何通过智能手机控制和监控MKR1000
- 探究LRC产品在智能手机中的应用.pdf 13次下载
- 多场景下的智能手机人机交互动效设计体验 24次下载
- 苹果智能手机点胶的具体步骤及资料 33次下载
- 智能手机元器件的认识资料说明 35次下载
- 如何解决智能手机EMI的干扰问题 8次下载
- Android智能手机木马实现 6次下载
- 智能手机信号的优化 14次下载
- 智能手机系统设计 20次下载
- 智能手机应用 0次下载
- 智能手机应用 0次下载
- 智能手机在车辆安全辅助系统中的新型应用 130次下载
- 最新智能手机操作系统详细介绍 106次下载
- 基于智能手机的校园短信网关系统设计 56次下载
- 智能手机白皮书 0次下载
- IPX8防水测试机如何检测智能手机 300次阅读
- 智能手机到底能使用多久 5827次阅读
- 谈智能功率音频放大器对智能手机的重要性 1786次阅读
- 智能手机耳机电路工作原理 2.1w次阅读
- STM8S单片机通过蓝牙与智能手机实现串口通讯的设计 5575次阅读
- 智能手机有哪些系统 1w次阅读
- 对未来智能手机的展望 9203次阅读
- 智能手机也能测量血压? 2.6w次阅读
- 在智能手机地图里能够精确定位的电子罗盘 7555次阅读
- 未来十大趋势不可不知 人工智能手机将会更智能! 653次阅读
- 智能手机的低功耗设计介绍 3171次阅读
- 智能手机的硬件体系结构简介 1w次阅读
- 浅析智能手机“一小时充电”的充电保护方案 3394次阅读
- 智能手机电池为什么总是不给力? 2678次阅读
- 基于嵌入式Linux的智能手机省电设计 1040次阅读
下载排行
本周
- 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次下载 | 免费
评论
查看更多