点灯科技实现 “ESP8266-01/01s + 继电器” 远程开关

news/2024/5/18 22:03:29 标签: 科技, iot, c++, arduino, 硬件

教程视频

ESP-01S继电器插座怎么使用?

所需硬件

继电器

ESP-01S继电器插座

WIFI模块

esp8266-01s wifi模块

烧录器

软件准备

Arduino IDE需安装好esp8266扩展

点击下载

下载并安装blinker APP

Android下载:
点击下载 或 在android应用商店搜索“blinker”下载安装

IOS下载:

点击下载 或 在app store中搜索“blinker”下载

安装blinker Arduino库

通过Arduino IDE 菜单>项目>加载库>添加.ZIP库 导入到库,如图:

导入esp8266扩展的.zip库

完整示例程序(从官网Copy过来的)


#define BLINKER_PRINT Serial
#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)); // LED引脚的编号
}

// 如果未绑定的组件被触发,则会执行其中内容
void dataRead(const String & data)
{
    BLINKER_LOG("Blinker readString: ", data);
    counter++;
    Number1.print(counter);
}

void setup() {
    // 初始化串口
    Serial.begin(115200);

    #if defined(BLINKER_PRINT)
        BLINKER_DEBUG.stream(BLINKER_PRINT);
    #endif
    
    // 初始化有LED的IO
    pinMode(LED_BUILTIN, OUTPUT);
    digitalWrite(LED_BUILTIN, HIGH); // LED引脚的编号
    // 初始化blinker
    Blinker.begin(auth, ssid, pswd);
    Blinker.attachData(dataRead);
    Button1.attach(button1_callback);
}

void loop() {
    Blinker.run();
}

需要更改的地方

更改digitalWrite输出的引脚

因为在上述完整实例代码中默认控制的引脚是LED_BUILTIN

ArduinoBlink程序中,使用LED_BUILTIN而不是具体的引脚编号(如13)是因为Arduino板上的LED灯是内置的,其接口电路已经经过设计。使用LED_BUILTIN函数,无论LED灯连接在哪个具体的引脚上,都能被正确地识别并控制。这就使得程序的可移植性更强,不受具体硬件设计的影响。

如果LED灯是连接在13号引脚上,你当然可以使用13来代替LED_BUILTIN。但在其他板型或者自定义硬件中,LED灯可能连接在其他引脚上,这时使用LED_BUILTIN就会更有优势。


而在ESP8266-01s模块中,0号引脚是GPIO(通用输入输出),我们只需要将LED_BUILTIN全部替换为0即可。

根据ESP8266-01s说明书我们可以看到ESP01s芯片通过GPIO0引脚控制的继电器工作,且是高电平有效。

使用Ctrl+H一键替换

更改点灯秘钥

将秘钥改为自己的秘钥

char auth[] = "Your Device Secret Key";

需要在点科技APP上面添加独立设备选择网络接入,生成出秘钥

更改WIFI名称与密码

char ssid[] = "Your WiFi network SSID or name";
char pswd[] = "Your WiFi network WPA password or WEP key";
  • ssid[] 对应着WIFI的名称
  • pswd[] 对应着WIFI的密码

远程开关控制

之后就可以在点灯APP上面,等设备上线之后,手动添加开关按钮,来进行远程控制

注意

需要注意的是,添加设备按钮的时候,名称需要和代码中一致

参考文章

使用Blinker控制esp01s Relay继电器模块


http://www.niftyadmin.cn/n/5026011.html

相关文章

jq弹窗拖动改变宽高

预览效果 <div classtishiMask><div class"tishiEm"><div id"coor"></div><div class"topNew ismove"><span class"ismove">提示</span><p onclick"closeTishi()"></p&…

2024年山东高企申报注意事项

1、分析企业技术及财务报表 分析财务数据及企业主营产品和技术点。用以确定申报材料的撰写方向。一般耗时1周左右。&#xff08;纺织厂、服装厂等传统行业面临申报中的面临研发人员比例不达标&#xff0c;研发费用不达标&#xff0c;高新技术产品比例不达标等难题。&#xff09…

分享!JetBrains IDE中的GitLab支持

GitLab是流行的基于git的软件开发和部署平台之一&#xff0c;虽然很长一段时间以来&#xff0c;所有基本git操作都已经可以通过GitLab实现&#xff0c;但GitLab集成仍是JetBrains社区的一大最热门请求。为此&#xff0c;JetBrains团队今年与GitLab联手提供了这种类型的集成。 …

Pinctrl子系统_02_使用Pinctrl要掌握的重要概念

本节说明使用Pinctrl子系统时&#xff0c;要掌握的重要概念。 上节我们说到&#xff0c;我们通过Pinctrl子系统来控制设备的引脚&#xff0c;但实际上&#xff0c;大多数芯片都没有一个单独的Pinctrl。引脚的复用、配置等操作&#xff0c;实际上是在GPIO子系统内部实现的。 但…

生产消费者模型的介绍以及其的模拟实现

目录 生产者消费者模型的概念 生产者消费者模型的特点 基于阻塞队列BlockingQueue的生产者消费者模型 对基于阻塞队列BlockingQueue的生产者消费者模型的模拟实现 ConProd.c文件的整体代码 BlockQueue.h文件的整体代码 对【基于阻塞队列BlockingQueue的生产者消费者模型…

《PostgreSQL物化视图:创建、维护与应用》

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f405;&#x1f43e;猫头虎建议程序员必备技术栈一览表&#x1f4d6;&#xff1a; &#x1f6e0;️ 全栈技术 Full Stack: &#x1f4da…

K8S------kube-apiserver Webhook令牌 客户端认证

一、简介 Webhook 身份认证是一种用来验证持有者令牌的回调机制。持有者令牌请看我的另一篇blog,webhook回调详解看我的另一篇blog 二、使用详解 k8s系统要开启webhook令牌验证,需要在kube-apiserver启动的时候启用如下参数: –authentication-token-webhook-config-file…

合宙Air724UG LuatOS-Air LVGL API控件-表格(Table)

表格&#xff08;Table&#xff09; 示例代码 --创建表格Table1 lvgl.table_create(lvgl.scr_act(),nil)--设置表格为4行5列lvgl.table_set_row_cnt(Table1,4)lvgl.table_set_col_cnt(Table1,5)--给每个单元格赋值lvgl.table_set_cell_value(Table1, 0, 0, "选手")l…