宿舍远程关灯神器:低成本ESP8266 WIFI+舵机+blinker方案
创作时间:
作者:
@小白创作中心
宿舍远程关灯神器:低成本ESP8266 WIFI+舵机+blinker方案
引用
CSDN
1.
https://blog.csdn.net/weixin_53631107/article/details/136792642
在宿舍里,有时候我们希望能够在离开时远程关闭灯光,但又不想进行复杂的电路改装。本文将介绍一个低成本的解决方案,使用ESP8266和舵机实现远程关灯功能,整个项目预算控制在20元以内,非常适合DIY爱好者尝试。
一、材料清单
- esp8266MCU开发板一块(10元左右)
- sg50舵机一个(6元左右)
- 数据线一根
- 公转母杜邦线3根(2元)
- 充电宝或者220v转5V充电器一根
二、Arduino IDE配置ESP8266环境
首先从Arduino官网下载最新版本的Arduino IDE软件并安装。安装完成后,进入首选项(Preferences),找到附加开发板管理器地址(Additional Board Manager URLs),并在其后添加如下信息:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
之后点击工具 - 开发板 - 开发板管理器,选择NodeMcu1.0(esp-12E Module)。硬件连接时,端口选择COM3或者COM5,如果端口没选对的话上传会显示"COMX不成功"。
三、WIFI配置
在代码中需要修改以下三个地方:
char auth[] = ""; //!key! 代码需更改的地方
char ssid[] = ""; //!wifi名称! (不要有中文和空格,如果使用热点需要设为2.4G频)
char pswd[] = ""; //!wifi密码!
四、点灯科技设置
手机打开点灯科技APP,进入设备设置界面。设置三个按钮和四个滑块,具体设置如下:
- 三个按钮的数据键名分别为btn-max、btn-min、btn-pw
- 四个滑块的数据键名分别为max-num、min-num、ser-num、time-num
- 最后一个滑块(time-num)的最大值最小值可以根据需求设置,代表循环的间隔时间,单位为毫秒。
五、接线
接线图如下:
设备在线以后进入控制界面,将位置2的滑块设置到适当位置,再点击位置2的按钮,可以看舵机转动。
六、附录(代码)
#include <Servo.h>
#define BLINKER_WIFI
#include <Blinker.h>
char auth[] = ""; //!key! 代码需更改的地方
char ssid[] = ""; //!wifi名称!
char pswd[] = ""; //!wifi密码!
// 新建组件对象
BlinkerButton Button1("btn-max"); //位置1 按钮 数据键名
BlinkerButton Button2("btn-min"); //位置2 按钮 数据键名
BlinkerButton Button3("btn-pw"); //循环模式 按钮 数据键名 开关模式
Servo myservo;
BlinkerSlider Slider1("max-num"); //位置1 滑块 数据键名 范围1-180
BlinkerSlider Slider2("min-num"); //位置2 滑块 数据键名 范围1-180
BlinkerSlider Slider3("ser-num"); //实时位置 滑块 数据键名 范围1-180
BlinkerSlider Slider4("time-num"); //循环模式间隔时间 滑块 数据键名 范围单位毫秒
bool xunhuan_mode = false;
int servo_max, servo_min, ser_num, time_num;
void button1_callback(const String &state) { //位置1按钮
BLINKER_LOG("get button state: ", servo_max);
myservo.write(servo_max);
Blinker.vibrate();
}
void button2_callback(const String &state) { //位置2按钮
BLINKER_LOG("get button state: ", servo_min);
myservo.write(servo_min);
Blinker.vibrate();
}
void button3_callback(const String &state) { //位置3按钮 开关模式
if (state == "on") {
xunhuan_mode = true;
Button3.print("on");
Blinker.delay(100);
} else if (state == "off") {
xunhuan_mode = false;
Button3.print("off");
Blinker.delay(100);
}
}
void slider1_callback(int32_t value)
{
servo_max = value;
Slider1.color("#1E90FF");
Slider1.print();
BLINKER_LOG("get slider value: ", value);
}
void slider2_callback(int32_t value)
{
servo_min = value;
Slider2.color("#FFF8DC");
Slider2.print();
BLINKER_LOG("get slider value: ", value);
}
void slider3_callback(int32_t value)
{
ser_num = value;
myservo.write(ser_num);
Blinker.delay(100);
BLINKER_LOG("get slider value: ", value);
}
void slider4_callback(int32_t value)
{
time_num = value;
Blinker.delay(100);
BLINKER_LOG("get slider value: ", value);
}
void xunhuan()
{
myservo.write(servo_max);
Blinker.delay(time_num / 2);
myservo.write(servo_min);
Blinker.delay(time_num / 2);
}
void setup()
{
Serial.begin(115200);
BLINKER_DEBUG.stream(Serial);
Blinker.begin(auth, ssid, pswd);
Button1.attach(button1_callback);
Button2.attach(button2_callback);
Button3.attach(button3_callback);
Slider1.attach(slider1_callback);
Slider2.attach(slider2_callback);
Slider3.attach(slider3_callback);
Slider4.attach(slider4_callback);
myservo.attach(5); //servo.attach():设置舵机数据引脚
myservo.write(10); //servo.write():设置转动角度
servo_max = 70;
servo_min = 120;
time_num = 500;
}
void loop()
{
Blinker.run();
if (xunhuan_mode == true) {
xunhuan();
}
}
热门推荐
HoRain云--Nginx处理一HTTP请求的全过程演示
42岁女子反复胸闷发烧,竟是因为"狼"来了?!
好吃又营养的牛奶凤梨释迦果
华为手机发烫怎么办?全方位解决方案来了
华为董事长:去年营收超8600亿
唐玄奘去印度取经,为什么要舍近求远、绕了近三倍远的路?
【史话】孙猴子500年前“大闹天宫”,500年前到底是哪一年?
家里采光不好,摆上几盆红背椒草,漂亮好养轻松爆盆,适合北阳台
去劳动仲裁需要哪些资料和手续
诉前调解是什么?流程、优缺点及适用范围全解析
债务纠纷诉前调解期限是多久
全面解析健康管理师:职业前景、技能要求与成长路径
F-4“鬼怪”战斗机在韩国服役55年后正式退役 结束辉煌的服役生涯
F-4战斗机:“鬼怪”,第二代战斗机代表
云南鹤庆蝙蝠洞遗址小哺乳动物揭示的古环境信息
灵魂潮汐柯露雪儿技能详解:SSR辅助王女的全方位解析
AI对《雍正王朝》《走向共和》《大明王朝1566》三部剧进行排名
肝癌“转化疗法”争取根治性、治愈的手术,有哪些注意事项?
电脑黑屏无法进入系统的原因有哪些?如何排查?
没头没脑的自媒体狂赞霍家两件事,我也没头没脑地挤出了两滴泪珠
法院立案阶段流程及费用标准详解
伊通法院:当天立案当天调,高效为民解纷
土壤水分测量技术
肝脏彩超检查结果怎么解读
北京大兴国际机场接机、送机指南
齐邦媛:最后的知识贵族
数据分析在客户关系管理中的应用
过量怕中毒,不补怕缺乏,AD滴剂该怎么补?
云中漫步尽览长沙美 岳麓山新索道游览攻略请收好
岳麓山新索道游览攻略带你尽览长沙美