[WiFi] 【萤火虫ESP32体验】+筑巢二:连接ONENET平台,上传温湿度

[复制链接]
1003|3
 楼主 | 2018-2-28 21:50 | 显示全部楼层 |阅读模式
本帖最后由 冒险武者 于 2018-2-28 21:51 编辑

OneNET简介:

支持设备采用遵循HTTP协议的数据封装结构以及接口形式等连接平台进行数据传输,用户可以实现终端数据的上传和保存。


特点功能

  • 短连接协议

  • 终端数据点上报,支持的数据点类型包括:


    • 整型(int)

    • 浮点数(float)

    • 字符串(string)

    • JSON格式

    • 二进制数据



原理

简介通信协议:

HTTP方法

POST

URL

//api.heclouds.com/devices/device_id/datapoints

URL参数
type=1    //上传数据类型(可选,默认为1(完整JSON型),见HTTP内容示例)

HTTP头部

(示例)

api-key: 242RprHyALimOZLCKiXeT7IRdLM=  //masterkey 或者 设备apikey

Content-Type: application/json


现在开始写指令,发送数据到ONENET平台
  1. void sendOnenet(void)
  2. {
  3.         char TXbuf[256];
  4.         
  5.         memset(TXbuf, 0, sizeof(TXbuf));
  6.         
  7.         OneNet_FillBuf(TXbuf);
  8.         
  9.         Serial.println(TXbuf);
  10.         client.print(TXbuf);
  11.         
  12. }
复制代码

但数据的填充主要在OneNet_FillBuf函数中
  1. void OneNet_FillBuf(char *buf)
  2. {
  3.         char text[24];
  4.         char buf1[128];
  5.         
  6.         memset(text, 0, sizeof(text));
  7.         memset(buf1, 0, sizeof(buf1));
  8.         
  9.         strcpy(buf1, "{");
  10.                
  11.         memset(text, 0, sizeof(text));
  12.         sprintf(text, "\"Temperature\":%0.2f,", dataInfo.tempreture);
  13.         strcat(buf1, text);
  14.         
  15.         memset(text, 0, sizeof(text));
  16.         sprintf(text, "\"Humidity\":%0.2f", dataInfo.humidity);
  17.         strcat(buf1, text);
  18.                
  19.         strcat(buf1, "}");
  20.         
  21.         sprintf(buf, "POST /devices/%s/datapoints?type=3 HTTP/1.1\r\napi-key:%s\r\nHost:api.heclouds.com\r\n"
  22.         "Content-Length:%d\r\n\r\n",DEVID, APIKEY, strlen(buf1));
  23.         
  24.         strcat(buf, buf1);

  25. }
复制代码

代码如下所示:
由于刷新速度最快为3S,所以延时3S,不停调用sendOnenet函数就可以
如果要连接网络等,请参考该帖
http://bbs.21ic.com/icview-2480596-1-1.html



在ONENET开发平台新建一个设配,建立好大致如下所示
新建过程请参考https://open.iot.10086.cn/doc/art243.html#66


搭建好平台,运行代码可以看到程序稳定上传的数据图


反了,不知道怎么搞,但还是可以看出数据上传
还可以通过手机APP查看环境温湿度,在这里就不展示了客户端了

如有疑问,可以留言交流





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
| 2018-3-7 10:25 | 显示全部楼层
亲,筑巢这个主题实在是太赞了,哈哈
 楼主 | 2018-3-7 11:38 | 显示全部楼层
巧克力娃娃 发表于 2018-3-7 10:25
亲,筑巢这个主题实在是太赞了,哈哈

对我的肯定就是支持
等ESP32官方蓝牙固件库完善,再来个蓝牙系列
| 2018-4-28 15:21 | 显示全部楼层
有空学习一下,物联网。。。
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式
我要创建版块 申请成为版主

论坛热帖

关闭

热门推荐上一条 /5 下一条

快速回复 返回顶部 返回列表