使用 MQTT 轻松进入物联网世界
MQTT 是一个物联网的消息传递协议。在此示例中,我们展示了无需一行代码即可快速启动和运行!
故事
物联网无处不在——因此更重要的是了解其背后的原理。在这个例子中,我们展示了每个人都可以多么容易地基于 Arduino、MQTT、Node-RED 等开放标准,以简单易行的“可视化”编码为数字世界构建自己的想法。您不会键入任何代码行 - 但当然您可以稍后根据需要对生成的草图进行修改。
准备好了吗?
让我们开始吧:您只需要下载链接中的“IoT Werkstatt”包,其中包括 Arduino 1.8.5 的便携式版本、所有需要的库以及更重要的 Ardublock——我们在这里为物联网创建了“超级块”。
#IoT Octopus – 带有 BME280 的 ESP8266
接下来,您应该启动并运行带有 Node-RED(预安装)的 Raspberry Pi – 唯一需要添加的是我们确实需要一个 https:// mosquitto.orgMQTT 代理已安装(只是谷歌教程)。
完成了吗?
让我们使用 MQTT 作为数据传输层构建从传感器到图形仪表板的数据流。
Arublock – 作为 Arduino IDE 的插件在 #IoT Octopus (ESP8266) 上运行的传感器客户端SSID/密码以及 Raspberry PI 上 MQTT 代理的设置。我们在这里使用的传感器是 Bosch Sensortec BME280,用于测量温度、气压和空气湿度。我们为每个人创建一个自己的“主题”。按“Hochladen auf Octopus”……Arduino IDE 现在应该编译生成的代码并将其上传到 ESP8266。我们的传感器设备现在将传感器数据发布到 MQTT 代理。大功告成!
在 Node-RED 中的 Flow 以从代理接收 MQTT 消息
复制并粘贴附加到您 Node-RED 中的 Flow……双击“红色”MQTT 接收器以设置您的安全性和网络MQTT 代理的设置。现在您应该会在调试面板(右)上看到消息。大功告成!
Node-RED Dashboard
如果您想在这样的图形中查看数据,您确实需要在 Node-RED 中安装 Node-RED 仪表板。此处使用的流程包括该部分的配置。您需要自己安装仪表板插件。
—完成—
备份: Raspian 安装和配置,通过 2018-06-27 版本测试
以防万一您不知道该由谁完成 raspberry Pi 的设置,那么就来
a.从 raspberry Pi 网页下载 raspian OS 并按照说明将其写入 SD 卡 (32GB)
b.在无头安装后启用 WiFi 和 SSH,您需要将这两个文件复制到 /boot 分区:
– ssh (只是一个名为 ssh 的空文件/没有附录)
– wpa_supplicant.conf 包含以下有关您的 Wifi 网络的内容:
country=US
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid=“YourNetworkSSID”
psk=“您的网络密码”
key_mgmt=WPA-PSK
}
c.将 raspian 操作系统更新到最新版本
sudo apt-get 更新
sudo apt-get 升级
d. MQTT 代理安装,在这种情况下,我们使用开放的 mosquitto
sudo apt-get install mosquitto mosquitto-clients
e.截至 2018 年 6 月,不再预装 Node-RED,您需要从菜单运行(如果您连接了显示器)或运行此程序(也用于更新):
bash <(curl -sL https://raw.githubusercontent.com/node-red/raspbian-deb-package/master/resources/update-nodejs-and-nodered)
f.在启动时为 Node-RED 设置自动启动
sudo systemctl 启用 nodered.service
f.立即安装 Node-RED 仪表板(您也可以使用 Node-RED 中的调色板来执行此任务,您可以跳过,只需使用 node-red-start 启动它)
sudo apt-get install npm
sudo npm install -g npm
hash -r
cd ~/.node-red
npm i node-red-dashboard
/ / 现在启动 node-RED
node-red-start
测试Node-RED打开 http://localhost:1880
测试 Node-RED 仪表板打开 http://localhost:1880/ui
—完成—
可选: 您您可以使用 httpNodeAuth 属性在 Node-RED settings.js 文件中以保护仪表板,因为它的创建方式与其他 HTTP 节点相同。详细信息可以在此页面底部的文档中找到 http://nodered.org/docs/security
管理 Node-RED 的有用工具
node-red-start
node-red-stop
sudo systemctl
// sudo systemctl disable nodered.service
sudo journalctl -f -u nodered -o cat
接下来……敬请期待……
首先在 Raspberry Pi 上安装 tensorflow(对于 Python3.n,检查 pip3 -V)
pip3 安装张量流
第二次安装带有 tensorflow 包的 Node-RED 机器学习:
cd ~/.node-red
npm i node-red-contrib-machine-learning
阅读更多详细信息:使用 MQTT 轻松进入物联网世界
制造工艺