android+app+wifi+控制+协议,玩转OneNET物联网平台之MQTT服务④ —— 远程控制LED(数量无限制)+ Android App控制...

本文介绍了如何通过Android App利用MQTT协议远程控制无限数量的ESP8266 LED灯,讲解了设备自注册、ESP8266代码配置和Android App的使用,提供了一个理论和实践结合的物联网应用示例。
摘要由CSDN通过智能技术生成

授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力。但愿你们分享给你周边须要的朋友或者同窗,说不定大神成长之路有博哥的奠定石。。。android

若是以为有用,麻烦点赞收藏,您的支持是博主创做的动力。github

1.理论基础

参考博主线上博文:web

在前面的博文中,博主主要经过手动方式去建立设备。这种方式的缺点明显:json

人为手动控制,对于开发者来讲极度不友好;

若是设备数量不少,岂不是要手动操做很是屡次;

那么,如何实现设备自注册呢?所谓自注册就是设备连入网络后自动往OneNet云平台注册设备信息并获取设备Id。api

为了区分惟一性,咱们采用ESP-Mac地址的组合形式

同时为了操做方便,博主花了个周末的时间作了一个对应的app,理论上不限制ESP8266接入点的数量

本篇博文的目的就在于教会你们如何和app通讯,完成MQTT协议下的App远程控制LED灯,而且LED灯的数量能够随意接入,用户能够在app端修改设备名字以便方便操做。服务器

博主极度建议你们从第一篇看起,有个大概了解,由于本系列教程都是有相联系的

先上个概念图:

1304ff0cbb8730a3659ba1526a0ea691.png网络

2.远程控制LED,实现设备自注册

2.1 实验材料

ESP8266 NodeMcu

Android手机

OneNet平台

2.2 实验步骤

2.2.1 建立 ESP8266智能灯系统 产品(MQTT协议)

99cec64b69cd931403e6018a28a10bb3.png

注意点:app

务必选择MQTT协议

建立完毕后,咱们点击查看具体的产品信息:svg

b95853c4cf8c207f91177eb3ba4f31d7.png

注意点:

须要记录产品ID,其用来区分产品惟一标识符,这个ID待会须要填入App

Master-APIkey,网络请求鉴权信息,接口调用须要带入,这个ID待会须要填入App

2.2.2 NodeMcu烧录代码 —— MQTT设备端

为了明确区分代码功能,博哥命名工程名为P_OneNet_Exam05:

P_OneNet_Exam05.ino文件:

/**

* 功能:ESP8266 Mqtt客户端自注冊功能,经过配套App控制Led消息,理论上能够接入无数个esp8266

* 做者:单片机菜鸟

* 时间:2019-10-27

* 描述:

* 1.初始化工做:初始化网络配置,Mqtt客户端自注冊,链接鉴权,订阅主题

* 2.订阅消息:获取发送过来的消息(json格式),解析消息,实现控制亮灭灯

*/

#include

#include

#include

#include

#include

#include

#include "H_project.h"

#define MAGIC_NUMBER 0xAA

int state;

WiFiClient espClient;

//声明方法

void initSystem();

void initOneNetMqtt();

void callback(char* topic, byte* payload, u

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值