admin管理员组文章数量:1573690
国外网站链接:https://community.thunkable/t/paid-mqtt-tcp-ip-extension-update-9-10-2017/7168
通过Dfrobot的OBLOQ物联网设备的Easy Iot有微信小程序,控制物联网设备时需要填写数据来发送指令,不方便。写出自己的手机APP,通过云端远程控制物联网设备。通过APPInventor并利用MQTT扩展(下载: https://download.csdn/download/acktomas/11805584),可以实现物联网数据的交互。
1. 软硬件准备
- 编程环境:App Inventor,Arduino,MQTT扩展:https://download.csdn/download/acktomas/11805584
- 硬件环境:arduino UNO,Gravity-OBLOQ物联网模块,手机
- 云端:Easy Iot:http://iot.dfrobot/
2. App
2.1 组件设计
2.2 逻辑设计
说明:ipAdress是Easy Iot的网站地址,port中1883是MQTT协议默认端口号(HTTP协议默认端口号是3001,不要混淆)。userName和password是Easy Iot注册账号时生成的Iot_id和Iot_pwd。idDevice随便填写,但一定要是数字,不能是字符串。topic是在EasyIot添加的网络设备,EasyIot会自动生成ID。
3. Arduino
3.1 设备连接
arduino | obloq |
---|---|
10(rx) | tx |
11(tx) | rx |
3.2 Arduino代码
3.2.1 obloq库:https://github/DFRobot/Obloq
- 关于obloq库的介绍:https://blog.csdn/acktomas/article/details/100070623#_1054
- 库中示例:https://blog.csdn/acktomas/article/details/100070623#62__1142
3.2.2 代码
#include "SoftwareSerial.h"
#include "Obloq.h"
SoftwareSerial softSerial(10, 11);
#define WIFIID "FAST_lib3000"
#define WIFIPWD "******"
#define IOTID "*****"
#define IOTPWD "*****"
#define IOTTopic "******"
Obloq oloq(&softSerial, WIFIID, WIFIPWD, IOTID, IOTPWD);
void msgHandle(const String &topic, const String &msg);
int number = 1;
long int prevTime = 0;
//long int currentTime=0;
void setup() {
pinMode(13, OUTPUT); //设置引脚;;
Serial.begin(115200);
softSerial.begin(9600);
oloq.setMsgHandle(msgHandle);
oloq.subscribe(IOTTopic);
randomSeed(analogRead(0));
}
void loop() {
String pubStr = "{\"temp\":";
oloq.update();
if (millis() - prevTime > 5000) {
pubStr += (number++);
pubStr += ",\"hum\":";
pubStr += (number++);
pubStr += "}";
oloq.publish(IOTTopic, pubStr);
prevTime = millis();
}
}
void msgHandle(const String &topic, const String &msg)
{
if (topic == IOTTopic) {
if (msg == "1") {
digitalWrite(13, 1);
}
if (msg == "0") {
digitalWrite(13, 0);
}
}
}
说明:
- 在程序中尽量不要用delay()函数,这样会影响物联网的检测,
- 程序发送JSON格式数据,方便App中获取数据并解析。
本文标签: 通信设备手机appAppinventor
版权声明:本文标题:利用APPInventor开发手机APP,实现OBLOQ-IOT与Arduino设备通信 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1727733967a1127269.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论