注意:本教程可能已过时,请到此处获取更新版本。
在本教程中,我们将围绕 Arduino 的新物联网云套件进行测试,该套件具有MKR WiFi 1010、环境屏蔽和MKR 继电器原型屏蔽(在 LED、面包板、LED 和电线中)。
我们将使用流行的自下而上 DIY 监控应用程序Blynk来控制和监控来自设备的所有数据。
创建帐户/登录应用程序后,系统会要求您输入您正在使用的硬件。
Blynk 拥有庞大的用户群,并努力使硬件列表保持最新。然而,当您被要求选择硬件时,您不会在列表中找到 Arduino MKR1010。即使我们使用的是 Arduino MRK1010,您也可以在此阶段选择 Arduino MKR1000。
给项目起个名字:我会选择env-test。从今天开始我是一名黑客,我会选择DarkTheme !
如果您一切正常,您将收到一个身份验证令牌到您在注册时指定的邮件地址。为您保留此代码,不要将其分享给任何人!
在 Arduino IDE 中,打开 Library Manager,然后查找 Bkynk 库。
然后打开File>Examples>Blynk>Boards_wifi>Arduino_MKR 1010
输入您的数据(ssid、密码和令牌),然后将代码上传到开发板。
为了检查 Blynk 服务器和你的主板之间的连接是否真的正常工作,你必须按下右上角的播放按钮,检查菜单右下角的小红点是否消失,以及通知区域为空。
我想通过创建两个按钮来控制 D1 和 D2 上的继电器来测试连接是否真的有效。
如果一切正常,按我可以听到继电器在板上滴答作响。
正如您可能注意到的那样,在定义 PIN 时,您可以决定它是数字的、模拟的还是虚拟的。我们将导入Arduino_MKRENV
库并将我们的数据作为虚拟引脚发送。
#include
// Environmental Shield Data
float t;
float h;
float p;
float l;
在 setup() 函数之前,我们将声明这个函数:
// This function sends Arduino's up time every second to Virtual Pin (5, 6, 7, 8).
// In the app, Widget's reading frequency should be set to PUSH. This means
// that you define how often to send data to Blynk App.
void sendSensor()
{
float h = ENV.readHumidity();
float t = ENV.readTemperature();
float p = ENV.readPressure();
float l = ENV.readLux();
// You can send any value at any time.
// Please don't send more that 10 values per second.
Blynk.virtualWrite(V5, h);
Blynk.virtualWrite(V6, t);
Blynk.virtualWrite(V7, p);
Blynk.virtualWrite(V8, l);
}
在 中setup()
,我们只是提醒 te board 在一定的时间间隔内更新 Blynk。
// Setup a function to be called every second
timer.setInterval(1000L, sendSensor);
最后但同样重要的是,我们需要更新我们的loop() function
使用计时器。
void loop()
{
Blynk.run();
timer.run();
}
如果你想监控数据,Blynk 真的很方便。如果您想收到通知或根据数据行为创建操作,则必须在 Blynk Cloud 上创建此启发式。
例如,如果我希望在光线超过某个阈值时关闭继电器,我将不得不创建一个事件。
或者 Blynk 应用程序现在是这样的:
与 IoT Cloud Kit 一起快乐闪烁!
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !