要构建这个 IoT 解决方案,您需要基本熟悉 JavaScript 和 MQTT。
我使用 MacBook Pro 作为开发环境,但是任何拥有 Wifi 和等效软件的 Linux 或 Windows PC 应该都可以。我使用了以下软件和硬件来构建我的家庭自动化系统。
我要运行的家庭自动化设备由接入主电源的 USB 电源线供电,所以我无需考虑电池或电源管理方面的事情。由主电源供电还意味着,我不需要优先选择通常在商用家庭自动化系统中采用的低功耗网络技术,比如 Zigbee。
Wifi 是我为这个项目首选的网络技术,因为我家里已有 Wifi 网络,而且我的家庭自动化系统的作用范围只需要涵盖家里的局域网 (LAN)。Wifi 的另一个优势是具有高数据吞吐量,这意味着我应该能够顺利地从连接的传感器收集数据。要了解有关选择网络技术的更多信息,请参阅我的文章“连接物联网中的所有事物”。
我选择使用 Raspberry Pi Zero W,但是您可以使用任何带 Wifi 的 Raspberry Pi。Raspberry Pi Zero W 是一个容易获取的、小型且便宜的单板计算机,其中内置了蓝牙和 Wifi,这使它成为需要接入现有 Wifi 网络或使用蓝牙集成用户设备的 IoT 解决方案的理想选择。Raspberry Pi 是电子爱好者中非常流行的一种开发板,所以有许多在线资源和兼容设备可为开发人员提供支持。我将运行的这个设备由接入主电源的 USB 电源线供电,所以我无需考虑电池或电源管理方面的事情。
要更详细了解为 IoT 项目选择硬件时要考虑的硬件需求,请阅读我的 IoT 硬件指南。
我选择了一个现成的无源红外 (PIR) 传感器来检测运动,选择了一个 DHT-11 数字温度和湿度传感器模块与我的设备相连。这些传感器都是便宜的 5V 数字传感器,而且同时兼容 Arduino 和 Raspberry Pi。Raspberry Pi 没有板载硬件模数转换器,所以与需要额外的模数转换器的模拟传感器相比,数字传感器是个不错的选择。我使用的输出元件包括一个压电式蜂鸣器元件和一个 5V 继电器及 12V LED 灯带。只要在原型设计期间检测到运动,蜂鸣器就会发出嘟嘟声;在系统的最后迭代期间,运动将触发继电器点亮灯带。
按照此视频中的步骤连接 PIR 传感器、蜂鸣器及 DHT11 温度和湿度传感器。使用视频后面的图和表格帮助组装电路。
家庭自动化教程 - 组装电路
点击查看大图
点击查看视频演示查看抄本
如果 Raspberry Pi 没有附带 GPIO 引脚,您需要首先在开发板上焊接这些引脚。我使用的电路如 图 2所示。
点击查看大图
对于每个元件,正引脚连接到 5V,负引脚接地 (GND),数据引脚连接到 Raspberry Pi 引脚排线座上的 GPIO 引脚,如表 1所示。在表 1中,排线座中引脚的编号包含在中间列,而 Raspberry Pi GPIO 引脚标识符显示在第 3 列。表后的 图 3中提供了 Raspberry Pi 引脚的布局。
传感器/设备 | 引脚排线座编号 | GPIO 引脚编号 |
---|---|---|
PIR 传感器 (显示在 图 2 的左上侧) | 7 | GPIO4 |
压电式蜂鸣器 (显示在 图 2 的中间) | 11 | GPIO17 |
DHT-11 传感器 (显示在 图 2 的右侧) | 40 | GPIO21 |
继电器 (显示在 图 6 的右侧) | 13 | GPIO22 |
将元件与 Raspberry Pi GPIO 排线座相连时,请参阅 图 3中的引脚图。
来源: http://www.ibm.com/developerworks/cn/analytics/library/iot-deep-learning-anomaly-detection-2/index.html