admin管理员组

文章数量:1655525

        初次接触blynk,摸索了两天,终于点亮了板载的Led,也是掌握了如何学习blynk开发的IOT项目,写下第一个点灯模块,以供借鉴。

目录

BLYNK平台介绍:

         BLYNK平台入门:

           创建项目模板电脑端步骤:

        创建项目模板手机端步骤:

开始点灯:

        电脑端添加按钮控件:

        移动端添加按钮控件:

        添加代码:


 

BLYNK平台介绍:

        官网地址:Blynk: a low-code IoT software platform for businesses and developershttps://blynk.io/

        目前国内好像是不能直接访问blynk官网,不然网页版的控制台首页功能也很齐全,但要是做IOT项目的话,就必须具备移动端APP,但国内似乎是不能直接下载,所以我把APP(安卓版本,因为我的手机是安卓的。苹果版本我没下载,有需要的可以私我,帮忙下载。)存放在百度网盘,文末自取即可,如果对你有用的话请为我点个赞吧,后续会更新更多的blynk项目。

        PS:后续更新,安卓的APP居然不用梯子也能使用,那么直接使用APP进行操作就最为方便了。

        上手流程建议:下载安卓APP,注册并登录设备,然后按下面的流程烧录代码至Node Mcu!

        根据我这几天的使用体验,这个平台可以大大的减少物联网项目的开发门槛。首先平台提供很多的小控件,比如按钮、开关、对话框、滑块等等,这些控件可以根据开发需要直接为你在移动端做好界面设计,让你不必为了界面适配而烦恼,可以专心的开发逻辑框架。

        平台适配了很多的芯片逻辑,又提供集成的库,非常方便开发。这里我是用的是Arduino IDE,直接搜索blynk下载最新版本即可。blynk支持的开发板有很多,区分方法是根据板载芯片来的,目前支持的芯片在开发手册可以自行查看,开发人员手册链接如下(全英文版):应用发布流程和时间线 - Blynk Documentation

        英语基础好的推荐看开发人员手册,少走弯路,我的英语就不太行,惨。 

        

开发人员手册(硬件支持)

         本次使用的Node Mcu上板载的是ESP-01S,也在blynk的支持芯片中。介绍一下整套流程的运行逻辑:

不知道形容的对不对,希望对你们有帮助。

 

         BLYNK平台入门:

        电脑端和移动端的步骤各选其一复刻即可,效果都是一样的。完成创建项目之后即可为Node

Mcu 烧录代码,上线设备了。 

           创建项目模板电脑端步骤:

        去上述的官网使用邮箱即可注册:注册之后即可立即使用:

        注册好的首页:

都说要开开发者模式,我一来就自动开了,要是有异常自己看看图中的标注开了没有。

               点击Developer Zone —> New Template 。意思是创建工程模板。如下图,选择对应的型号和联网方式:分别是ESP8266和WIFI。

        然后点击右侧 Devices ——> New Device  。意思是添加设备,随后弹出的对话框,第一个是选择对应的模板,第二个是为工程起名字。

添加设备,之后回到Device,就会看到刚刚创建的项目,但是显示的是offline。

        创建项目模板手机端步骤:

         

        打开APP,开屏如图 :

首页

 

        按步骤注册登录即可(qq邮箱就行)。

        登录后如图:

 

从上至下依次是:共享模板、添加新设备、开发区域

        点击Developer Zone,进行新建模板,输入模板名称Node Mcu,选择Continue。即可完成创建。

创建模板

 

 

        接着打开blynk代码生成网站:Blynk Example Browser 

选择ESP8266和ESP8266WIFI、Blynk Blink,如下图。

Blynk Blink是空模板,里面只有适用于blynk的代码框架。

         将生成的代码复制到Arduino中,回到blynk,找到自己账号下对应的设备id,点击复制。

点击右上角即可复制。

        

替换选中部分。

        再输入你所在环境的WIFI的用户名和密码。 

例:ssid:MERCURY_B9BD  pass:12345678

         完成以上步骤就可以并上传代码,回去刷新一下设备列表即可看到设备状态由offline变为了online,即设备在线了。到这一步为止,设备总算是连上了网络!

开始点灯:

        点灯操作很简单,只需要添加一个按钮控件,为按钮控件设置适当的数据,以及添加一下代码即可。       

        电脑端和移动端的控件系统是不同步的,在电脑端设置的只能在电脑端使用,所以手机端的需要使用也需要设置。

        电脑端添加按钮控件:

        

选中Edit Dashboard

        点击进入编辑控件之后,界面如下:长按右侧的Switch 控件,拖动至右侧的部署面板上,部署面板是一个自定义的控件显示区域,就像是汽车的仪表盘的作用,你可以拖放你需要的控件按照顺序拜访,也可以更改控件的大小,当然鼠标悬停右上角可以编辑控件的数据流,这是连接Node Mcu和blynk的灵魂。

添加按钮控件

        点击按钮控件右上角的设置按钮。

选择Virtual Pin(虚拟引脚),输入数据流的名称,保存即可。

        之后再点击右上角的SaveAnd Apply,保存当前控件设置。

        移动端添加按钮控件:

点击我们建立的工程Node Mcu,再点击右上角的扳手按钮,进入控件添加界面。

先点工程再点扳手否则进入的是模板管理界面

         点击底部的+号添加一个button控件,拖动可以缩放大小和位置,点击button控件可以添加数据源(Data Stream),这里数据源的设置是同步的,我们选择电脑端的GPIO2数据源。

按上图这样设置以可,Switch模式意为开关

以上步骤就分别再电脑端和移动端添加好了控件。做好了物联网的终端系统。接下来添加库函数,添加数据源V0的响应代码。

        添加代码:

/*************************************************************

  You’ll need:
   - Blynk IoT app (download from App Store or Google Play)
   - ESP8266 board
   - Decide how to connect to Blynk
     (USB, Ethernet, Wi-Fi, Bluetooth, ...)

  There is a bunch of great example sketches included to show you how to get
  started. Think of them as LEGO bricks  and combine them as you wish.
  For example, take the Ethernet Shield sketch and combine it with the
  Servo example, or choose a USB sketch and add a code from SendData
  example.
 *************************************************************/

/* Fill-in information from Blynk Device Info here */
#define BLYNK_TEMPLATE_ID "TMPL6G87YkY6h"
#define BLYNK_TEMPLATE_NAME "Node Mcu"
#define BLYNK_AUTH_TOKEN "uBsaLuy-MS0qU9L2mFv59P7EXQYXdSJv"

/* Comment this out to disable prints and save space */
#define BLYNK_PRINT Serial


#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>

// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "MERCURY_B9BD";
char pass[] = "12345678";

void setup()
{
  // Debug console
  Serial.begin(115200);

  //Node Mcu的板载LED灯由GPIO2控制,所以要先设置GPIO2为输出模式。
  pinMode(2, OUTPUT);

  Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass);
  // You can also specify server:
  //Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass, "blynk.cloud", 80);
  //Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass, IPAddress(192,168,1,100), 8080);
}

// 当虚拟引脚V0在blynk的云端被改变时,就会进入该函数,执行响应代码。
BLYNK_WRITE(V0) // Executes when the value of virtual pin 0 changes
{
  if(param.asInt() == 1)
  {
    // execute this code if the switch widget is now ON
    digitalWrite(2,HIGH);  // Set digital pin 2 HIGH
  }
  else
  {
    // execute this code if the switch widget is now OFF
    digitalWrite(2,LOW);  // Set digital pin 2 LOW
  }
}

void loop()
{
  Blynk.run();
  // You can inject your own code or combine it with other sketches.
  // Check other examples on how to communicate with Blynk. Remember
  // to avoid delay() function!
}

        添加完上述代码之后,上传至Node Mcu,回到任一控制界面,点击按钮就能实现丝滑的电子开关了!速度应该时基于网速,我家的Wifi挺普通的也能做到丝滑响应。 

        效果如下:

演示

        这下出门在外也能丝滑点灯了,舒服~。感谢看完所有要是本文对你学习blynk有用的话,请务必点个赞支持一下。 

        上述安装包以及代码源文件已打包:网盘链接http://xn--https-bl8js66z7n7i//pan.baidu/s/14jBSK6et-8N41EeaZOXX7A?pwd=0316%20%20%E6%8F%90%E5%8F%96%E7%A0%81%EF%BC%9A0316

 

 

 

 

 

 

 

本文标签: 入门BlynkMCUnode