ESP8266物联网开关基础示例教程-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7197|回复: 5

[分享] ESP8266物联网开关基础示例教程

[复制链接]
发表于 2020-7-14 13:19 | 显示全部楼层 |阅读模式
本帖最后由 f969439474 于 2020-7-14 13:31 编辑

为方便像我这样零基础爱好者,制作出属于自己的第一个物联网开关,在这我分享一下,自己的制作之旅,只要按照步骤一步一步下来,相信大家可以跟我一样制作出第一个属于自己的物联网开关。
一、准备工作
入门初学者直接入手一块开发板,开发板的一个好处就是板子设计者已经给初学者排查了硬件连接错误,可以使初学者专注于软件开发,加快学习进度。目前比较火的一款ESP8266开发板就是NodeMcu,其核心芯片是ESP8266-12F,下载程序只需一根手机数据线就好,如下图所示:
1、硬件准备:ESP8266  Node mcu一个 、一路5V继电器模块(带光耦隔离),VV 接 DC+ , G 接DC- , 我用的是D4引脚,因此 D4 接 IN接好线。 (前者为Node mcu上的引脚,后者为继电器上的)
图片1.png 图片14.png
2、软件准备
①、Arduino IDE安装,我这提供免安装版
无法上传压缩包,需要请留言
下载解压后,file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7808\wps3.jpg
图片3.png

出现以下界面:
图片4.png


file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7808\wps4.jpg
②、安装esp8266扩展
点击文件,打开首选项
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7808\wps5.jpg
出现以下界面: 图片5.png

第一步: 图片6.png

file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7808\wps6.jpg
第二步:网址部分(http://arduino.esp8266.com/stable/package_esp8266com_index.json
图片7.png
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7808\wps7.jpg
完成后,点击“工具”→“开发板”→“开发板管理器”

图片8.png 图片9.png
安装时间较长,请静静等待。
③、下载并安装blinker Arduino库(需要的可以请留言)
解压到第①步中免安装包里的
图片10.png
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7808\wps10.jpg
④、下载并安装blinker APP
Android下载:
android应用商店搜索“blinker”下载安装
IOS下载:同上

⑤、在app中添加设备,获取Secret Key
进入App,点击右上角的“+”号,然后选择 添加设备
点击选择Arduino > WiFi接入
选择要接入的服务商
复制申请到的Secret Key
IMG_1215.PNG IMG_1216.PNG IMG_1217.PNG IMG_1218.PNG IMG_1219.PNG
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7808\wps11.jpgfile:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7808\wps12.jpgfile:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7808\wps13.jpgfile:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7808\wps14.jpgfile:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7808\wps15.jpg
因为我原先就有三个,所以再添加就成了四个。
点击第一个。
DIY界面
在设备列表页,点击设备图标,进入设备控制面板
首次进入设备控制面板,会弹出向导页
在向导页点击 载入示例,即可载入示例组件
IMG_1220.PNG IMG_1221.PNG
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7808\wps16.pngfile:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7808\wps17.jpg
⑥、编译并上传示例程序
打开Arduino IDE,通过 文件>示例>Blinker>Blinker_Hello>Hello_WiFi
打开例程如下图所示
图片11.png
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7808\wps18.jpg
在程序中找到如下变量,填入你申请到的Secret Key(auth)和要连接的WiFi热点名(ssid)、密码(pswd),如:
char auth[] = "abcdefghijkl"; //上一步中在app中获取到的Secret Key
char ssid[] = "abcdefg"; //你的WiFi热点名称
char pswd[] = "123456789"; //你的WiFi密码

例程中宏LED_BUILTIN为开发板厂家定义的连接板载LED的引脚,我们选择的开发板没有定义LED_BUILTIN,自行修改为你要使用的引脚我使用的是D4引脚,因此把程序中的LED_BUILTIN改为D4.在下面程序中重点标红
#define BLINKER_WIFI
#include <Blinker.h>
char auth[] = "Your Device Secret Key";
char ssid[] = "Your WiFi network SSID or name";
char pswd[] = "Your WiFi network WPA password or WEP key";
// 新建组件对象
BlinkerButton Button1("btn-abc");
BlinkerNumber Number1("num-abc");
int counter = 0;
// 按下按键即会执行该函数
void button1_callback(const String & state)
{    BLINKER_LOG("get button state: ", state);
    digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));}
// 如果未绑定的组件被触发,则会执行其中内容
void dataRead(const String & data)
{    BLINKER_LOG("Blinker readString: ", data);
    counter++;
    Number1.print(counter);}
void setup()
{    // 初始化串口
    Serial.begin(115200);
    BLINKER_DEBUG.stream(Serial);
    BLINKER_DEBUG.debugAll();
    // 初始化有LED的IO
    pinMode(LED_BUILTIN, OUTPUT);
    digitalWrite(LED_BUILTIN, HIGH);
    // 初始化blinker
    Blinker.begin(auth, ssid, pswd);
    Blinker.attachData(dataRead);
    Button1.attach(button1_callback);}
void loop() {    Blinker.run();}
完成后,
编译并上传
第一步: 图片12.png
第二步: 图片13.png

完成以上6步,
恭喜!一切就绪
APP中点击刚才你添加的设备,即可进入控制界面,点击“点我开关灯”按钮就可以控制继电器做出相应的动作,
另一个按钮也点下试试,放心,你的手机不会爆炸~
(新手出的新手教程,若有错误请指正)
发表于 2020-9-9 11:32 | 显示全部楼层
大神可以给我blinker Arduino库文件吗 juexin163@126.com这是我邮箱谢谢了
发表于 2020-9-9 12:05 | 显示全部楼层
13633647172 发表于 2020-9-9 11:32
大神可以给我blinker Arduino库文件吗 这是我邮箱谢谢了

网上有的
发表于 2020-11-30 08:26 | 显示全部楼层
您好  按照这个方法编程只能控制指示灯,无法控制继电器动作是怎么回事
 楼主| 发表于 2020-11-30 18:51 | 显示全部楼层
爷傲奈我何 发表于 2020-11-30 08:26
您好  按照这个方法编程只能控制指示灯,无法控制继电器动作是怎么回事

控制指示灯的两个引脚分别对应到继电器上就可以了
发表于 2021-9-29 13:34 | 显示全部楼层
按照操作步骤无法连接到WiFi,用Esplorer的lua语言可以成功连接WiFi,blinker有问题吧,我尝试很多次都这样
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 11:50 , Processed in 0.124618 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表