找回密码
 立即注册

QQ登录

只需一步,快速开始

本帖最后由 lou 于 2020-5-7 15:47 编辑

Blynk物联网系列(1)-远程控制LED灯
(基于Blynk平台+WeMos D1 WIFI开发板)



一、  搭建物联网开发环境
(1)安装电脑端编程软件Mixly/Arduino IDE

Arduino IDE的安装可以参考WeMos D1 WIFI开发板的基础资料。

(2)安装Blynk APP及注册Blynk账号
安卓用户可以在手机应用商城、iOS用户可以在AppStore中搜索“Blynk”下载安装。 213.jpg

打开APP后,单击Create New Account(注册新用户),然后在注册页填写自己的邮箱和密码即可完成注册。

17.png

二、  项目实践-远程控制LED灯
(1)思路分析

一个完整的物联网控制系统需要包含以下几个模块:
  • APP端:通过APP接收数据、发送命令;
  • ESP8266开发板:作为整个物联网控制系统的核心,ESP8266开发板承担着采集数据、发送数据、处理数据等任务;
  • Blynk服务器:用于存储信息,作为APP端与开发板的中介;
  • 路由器:路由器是ESP8266开发板连入网络的第一道门槛。将开发板连接到路由器后,才能连上Blynk服务器。


(2)硬件连接

将LED模块连接到开发板D10口(GPIO15)。

(3)创建项目


打开手机上的Blynk APP,点击“New Project”新建项目,在“Create New Project”页面输入项目名称“远程控制LED灯”,选择ESP8266硬件类型,然后单击“Create”按钮,即可创建项目。创建完成后,系统会给您的邮箱发送一封包含授权码的邮件,也可以在项目设置中再次找到该授权码。

18.png

在“Project Settings”(项目设置)中,找到AUTH TOKENS(授权码),可以选择“Email all”(发送全部授权码到邮箱)或“Copy all”(复制授权码到剪贴板)。

(4)添加组件


点击项目顶部的“⊕”,可以在出现的组件栏里选择需要的组件

19.png

Buttom(按钮组件)

选择“Button”,页面上会出现一个Buntton组件,用于控制LED灯的亮灭。单击Button组件,进入设置页面,各项参数设置如下:

  
设置项
  
推荐值
说明
设置组件名称
开关
设置组件名称,建议少于4个字
OUTPUT
GPIO15
组件要控制的管脚号,此项目中LED灯连接的为GPIO15管脚
OFF
0
当按钮处于关闭状态时,发送电平值设置为0
ON
1
当按钮处于开启状态时,发送电平值设置为1
MODE
SWITCH
SWITCH为切换开关,按下发送ON,再按一次发送OFF;PUSH为轻触开关,按下发送ON,松开发送OFF
OFF  LABELS
按钮关闭状态时的标签文本,此处设置为“关”
ON  LABELS
按钮开启状态时的标签文本,此处设置为“开”

Slider(滑杆组件)

在组件列表选择Slider组件,用于控制LED灯的亮度。Slider组件可以让开发板输出一个模拟值,这个模拟值一般可以用来控制灯的亮度、电机的转速灯。具体参数设置如下:

  
设置项
  
推荐值
说明
设置组件名称
开关
设置组件名称,建议少于4个字
OUTPUT
GPIO15
组件要控制的管脚号,此项目中LED灯连接的为GPIO15管脚
MIN
0
设置组件发送最小值
MAX
1023
设置组件发送最大值
SEND  ON RELEASE
ON
松开滑杆发送数据,可以设为关闭或开启
SHOW  VALUE
ON
在项目页面显示滑杆对应的数值,可以设为关闭或开启

(5)程序实现

用Mixly编写程序

打开Mixly软件,首先选择开发板类型“Arduino ESP8266”,

222.png

然后选择开发板连接对应端口,端口可以在计算机管理—设备管理器—端口中查看。

223.png

然后在Mixly模块栏中选择“Blynk物联网”,将“服务器信息”模块拖动到代码区,需要依次填入服务器地址、需要连接的WIFI名称和密码、Blynk授权码,如下图所示:

224.png

服务器地址为:blynk-cloud.com

225.png

服务器地址为:blynk-cloud.com
检查开发板类型和端口是否正确后,点击上传,上传程序。
程序上传完成后,打开串口监视器,按下开发板上的RESET按键,如果出现如下图示类似信息,则说明已经成功连接到Blynk服务器。

226.png

Arduino IDE编写程序
打开Arduino IDE软件,选择“文件”->“示例”->“Blynk”->“GettingStarted”->“BlynkBlink”,打开示例项目。
代码如下:

  1. #define BLYNK_PRINT Serial // 开启串口监视
  2.   #include <ESP8266WiFi.h>//引入ESP8266库
  3.   #include <BlynkSimpleEsp8266.h>//Blynk库
  4. char auth[] = "0k49gDdJq6pGASPirhlzBCPZWKSdzhsc";//授权码
  5. char ssid[] = "SSID";//wifi名称
  6. char pass[] = "PASS";//wifi密码
  7. void setup()
  8. {
  9.         Serial.begin(9600);
  10.    Blynk.begin(auth, ssid, pass,"blynk-cloud.com", 8080);//官方服务器
  11.   //Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 8080);//自建服务器域名模式
  12.   //Blynk.begin(auth, ssid, pass, IPAddress(192, 168, 1, 158), 8080);//自建服务器ip模式
  13. }
  14. void loop()
  15. {
  16.         Blynk.run();
  17. }
复制代码

上传程序前,要根据所使用的物联网开发板进行设置。选择“工具”->“开发板:“WeMos D1 R1””,在右侧列表中选择“WeMos D1 R1”。

227.png

再选择开发板连接的端口。

228.png

完成以上两项设置后,就可以将程序上传到开发板,点击Arduino IDE软件左上角“上传”按钮,完成上传

229.png

程序显示上传成功后,在Arduino IDE软件右上角,打开串口监视器,查看。

230.png

打开串口监视器后,按下开发板上的“RESET”按钮,如果串口监视器上看到如下画面,则说明开发板已经成功连接到Blynk服务器了。

231.png

如果没有看到Ready消息,则说明开发板没有连接成功,请再次检查WIFI信息和授权码是否正确。

(6)效果演示

当程序上传完成后,打开Blynk APP,此时可以在“远程控制LED灯”项目中可以通过BUTTON组件开启关闭LED灯,通过SLIDER滑杆组件控制LED灯的亮度。
分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册