查看: 4586|回复: 13

[分享] 吸顶灯接入物联网(基于Blinker与wifi开发板)

[复制链接]
发表于 2018-8-22 16:20 | 显示全部楼层 |阅读模式
本帖最后由 Creeper666 于 2018-9-25 17:02 编辑

(2018,9,15日:我改用了esp12s模块,因为开发板在灯罩里面实在是显得累赘。。要注意的是,最小系统用的是3.3v,记得降压)最小系统接线参考如下:

暑假开始接触Blinker和esp8266开发板,一直在捣鼓。。开学是肯定没空碰了,于是趁现在把一个吸顶灯改造了。用esp8266开发板+blinker控制,用一个学期,寒假再拆下来,研究其他项目。
准备材料:

esp8266开发板一个(我用的是WeMos D1,官方也有WiFiduino)
5v继电器模块一个(有分高/低电平触发,要留意自己的是高电平触发还是低电平触发,后期记得在程序里面改。图片所示为接线参考。这里例程为高电平触发)


一盏吸顶灯
5v电源适配器一个
Micro USB电源线一条
LED若干
杜邦线若干
备用电线0.5m左右
(五金店里那种红黄交替的电线)
扎带少许(若有需要,可以使用)
接线:
开发板:
5V---------继电器电源+(DC+)
GND-------继电器电源-(DC-)
GPIO3-----继电器信号输入端(IN)
GPIO16-----LED电源+GPIO5-----LED电源+
GND-------LED电源-这里LED有两组,共负极

市电:
火线-----电源适配器,继电器输入(COM)
零线-----电源适配器,灯光模组
继电器:
常开端(NO)-----灯光模组




程序:
这里使用MQTT接入

kittenblock中小学创客名师推荐的图形化编程软件

#define BLINKER_MQTT
#include <Blinker.h>

char auth[] = "mqtt密钥";
char ssid[] = "WiFi名称";
char pswd[] = "wifi密码";

// 新建组件对象
BlinkerButton Button1("btn-led");//LED组件名
BlinkerButton Button2("btn-jdq");//继电器组件名


// 按下按键即会执行该函数
void button1_callback(const String & state) {

  if (state == "on")
  {
    digitalWrite(5, HIGH);
    digitalWrite(16, HIGH);

    Blinker.print("开小夜灯");
  }
  else if (state == "off")
  {
    digitalWrite(5, LOW);
    digitalWrite(16, LOW);
    Blinker.print("关小夜灯");
  }
}
void button2_callback(const String & state) {

  if (state == "on")
  {
    digitalWrite(3, HIGH);
    Blinker.print("开大灯");
  }
  else if (state == "off")
  {
    digitalWrite(3, LOW);
    Blinker.print("关大灯");
  }
}

void setup() {

  // 初始化IO
  pinMode(LED_BUILTIN, OUTPUT);
  digitalWrite(LED_BUILTIN, HIGH);//板载LED,经测试要输出高电平才熄灭
  pinMode(3, OUTPUT);//继电器
  pinMode(5, OUTPUT);//LED
  pinMode(16, OUTPUT);//LED
  digitalWrite(3, HIGH);//继电器高电平
  digitalWrite(5, LOW);//LED低电平
  digitalWrite(16, LOW);//如上

  // 初始化blinker
  Blinker.begin(auth, ssid, pswd);
  Button1.attach(button1_callback);
  Button2.attach(button2_callback);

}

void loop() {
  Blinker.run();

}
注意:
IO口要以开发板背面的GPIOxx为准,不是正面的D1,D2等端口

IO1是板载LED的IO口

LED需要并联,串联点不亮












1.jpg
2.jpg
APP界面.png
发表于 2018-9-10 21:28 | 显示全部楼层
这么说吧,我直接把你的源码写进去了,也能控制,但问题是我不控制的时候它就开始自己瞎搞,一会开一会关,什么问题?
发表于 2018-9-11 09:07 | 显示全部楼层
yhydengni 发表于 2018-9-10 21:28
这么说吧,我直接把你的源码写进去了,也能控制,但问题是我不控制的时候它就开始自己瞎搞,一会开一会关, ...

更新app,这个是mqtt broker的bug
发表于 2018-9-11 17:12 | 显示全部楼层
本帖最后由 yhydengni 于 2018-9-11 17:15 编辑

更新后,整个APP不会用了。以前至少可以控制,更新后设置了也没反应。 以前的APP还可以读取温湿度显示出来,现在好了,设置好了键值后完全没反应,好吧,我输了。请问我要怎么设置他才满意?
Screenshot_2018-09-11-17-13-39-912_iot.clz.me.png
Screenshot_2018-09-11-17-13-49-384_iot.clz.me.png
发表于 2018-9-11 19:33 | 显示全部楼层
三水 发表于 2018-9-11 09:07
更新app,这个是mqtt broker的bug

老版本的还好用点,新版本根本就用不了。

点评

库和app都要更新,2.0的程序和1.0的不一样,详见文档  详情 回复 发表于 2018-9-11 21:36
发表于 2018-9-11 21:36 | 显示全部楼层
yhydengni 发表于 2018-9-11 19:33
老版本的还好用点,新版本根本就用不了。

库和app都要更新,2.0的程序和1.0的不一样,详见文档
发表于 2018-9-12 22:18 | 显示全部楼层
本帖最后由 yhydengni 于 2018-9-12 22:23 编辑
奈何col 发表于 2018-9-11 21:36
库和app都要更新,2.0的程序和1.0的不一样,详见文档

2.0.4版APP的DEBUG已经接收到温湿度数据,可是所有的按钮什么的不管怎么设置都是显示不出来,毫无反应,但1.0.2版本APP一设置就自己显示出来了。你要跟我说什么库不同,我就不信了,明明APP已经接收到了数据,为什么2.0.4APP的文字、按键、数据我都试了就是显示不出来?  还有你这个最新版的库下载地址也太难找了吧,相反最新版的APP却是到处放的都是,那那都是下载地址,我现在下载的是283K的一个库,这是我能找到的最新版本了。

点评

2.0的库使用方法和1.0不同,详见文档  详情 回复 发表于 2018-9-12 22:35
blinker只有一个github发布地址: app: https://github.com/blinker-iot/app-release/releases arduino库: https://github.com/blinker-iot/blinker-library  详情 回复 发表于 2018-9-12 22:30
发表于 2018-9-12 22:30 | 显示全部楼层
yhydengni 发表于 2018-9-12 22:18
2.0.4版APP的DEBUG已经接收到温湿度数据,可是所有的按钮什么的不管怎么设置都是显示不出来,毫无反应,但 ...

blinker只有一个github发布地址:

app:
https://github.com/blinker-iot/app-release/releases
arduino库:
https://github.com/blinker-iot/blinker-library

blinker开发文档里也有app和库的下载地址,就是以上地址


另,应用商店因为都要审核,所以app版本是滞后的
发表于 2018-9-12 22:35 | 显示全部楼层
yhydengni 发表于 2018-9-12 22:18
2.0.4版APP的DEBUG已经接收到温湿度数据,可是所有的按钮什么的不管怎么设置都是显示不出来,毫无反应,但 ...

2.0的库使用方法和1.0不同,详见文档
发表于 2018-9-12 22:40 | 显示全部楼层
奈何col 发表于 2018-9-12 22:30
blinker只有一个github发布地址:

app:

哥 我尽力了,各种办法都试了,没办法显示出来,你在看看低版本的APP,好吧我已经阵亡了。
Screenshot_2018-09-12-22-12-24-065_iot.clz.me.png
Screenshot_2018-09-09-22-30-27-770_iot.clz.me.png

点评

更新库,然后看文档,先使用我们提供的例程学习 https://doc.blinker.app/?file=001-%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B/03-esp8266MQTT%E6%8E%A5%E5%85%A5  详情 回复 发表于 2018-9-12 22:56
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热门推荐

Blynk与m5stack basic以及uiflow的交互玩法
Blynk与m5stack basic以及
Blynk与m5stack basic以及uiflow的交互玩法 [准备工作我们假设玩家已经熟悉下面的准备
Arduino Ter什么时候上市购买
Arduino Ter什么时候上市
一直没人问 那我就来问问好了 深爱 Arduino 但目前的开发板资源有限 简单的就比如现有
blinker无法对ESP8266下发指令
blinker无法对ESP8266下发
blinker端的数据键名称是与代码对应的,连接wifi特显示arduino在线,但按键的话把8266
helloWifi上传出错
helloWifi上传出错
板子:Node mcu 已下载Blinker库,已下载对应ESP8266库(图二) 问题描述:编译出错
APP
APP
哪位大佬有这款 App ,求apk
Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
快速回复 返回顶部 返回列表