凡是官网购买产品,均可以获得积分,(积分可以用来下载技术资料)还可以获得精致技术支持。澳门开元棋牌色情_澳门开元棋牌官网_开元棋牌输了25万实验室可提供全套电子方案定制服务,了解详情请咨询客服。???????????
查看: 2555|回复: 6
打印 上一主题 下一主题

传感器数据上传到云端-以SCD30采集CO2数据为例

[复制链接]

348

主题

2077

帖子

929

活跃值

管理员

Rank: 9Rank: 9Rank: 9

活跃值
929
跳转到指定楼层
楼主
发表于 2018-9-11 19:10:59 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
前面我们使用了SCD30模块采集到了室内空气质量-CO2的指标,为了更加的实用,我们将采集到的数据:CO2、温度、湿度数据上传到云端(这里以OneNet平台使用http协议上传做演示)。
1、首先我们在OneNet平台上建立好我们的设备。
我这里建立一个HTTP协议方式的设备、一个应用、三个数据流。
a、设备信息:


b、应用界面:


c、数据流:


2、上传数据测试:
使用网络调试助手,建立一个TCP client,发送如下HTTP包进行测试:
[HTML] 纯文本查看 复制代码
POST /devices/你的设备ID号/datapoints?type=3 HTTP/1.1
api-key:你自己的OneNet平台API KEY
Host:api.heclouds.com
Content-Length:49

{"SCD30_CO2":220;"SCD30_Humi":34;"SCD30_Temp":42}



网络调试助手如下设置:


注意上面的服务器IP填写对,还有Content-Length一定要填写正确,否则各种问题出现。发送后接受到{"errno":0,"error":"succ"}表示正确了,你再到OneNet查看数据,可以看到上传成功了一个数据点。

3、本地采集数据后联网上传到云
a、数据采集:
这里使用SCD30模块采集数据,该模块可以采集到CO2、温度、湿度信息,非常方便,使用的方法可以参考之前的使用SCD30采集CO2的帖子(http://www.lingzhilab.com/forum.php?mod=viewthread&tid=632&fromuid=2)。
b、联网:
这里采用ESP8266模块连接到WIFI热点后与OneNet云端进行TCP通信,在前面使用ESP8266的帖子有详细讲解,这里就不再赘述。(参考:http://www.lingzhilab.com/forum.php?mod=viewthread&tid=24&page=1&extra=#pid24

4、源码:
代码展示:


核心代码如下,实际上是ESP8266的一个示例和一个CO2采集示例合起来的代码,由此也可以看出使用这个平台搭建自己的产品是非常简单方便的。

[C++] 纯文本查看 复制代码
//获取传感器数据
        if (airSensor.dataAvailable())
  {
        value_co2 = airSensor.getCO2();
    serialDebug.print("CO2(ppm):");
    serialDebug.print(value_co2);//读取CO2

        value_temp = airSensor.getTemperature();
    serialDebug.print(" temp(C):");//读取温度
    serialDebug.print(value_temp, 1);

        value_humi = airSensor.getHumidity();
    serialDebug.print(" humidity(%):");//读取湿度
    serialDebug.print(value_humi, 1);

    serialDebug.println();


  //上传数据到OneNet平台
        int content_len = 49;//3位CO2,2位温度,2位湿度,如:{"SCD30_CO2":210;"SCD30_Humi":30;"SCD30_Temp":40} 一共49位
        //这里演示,就为了简单把数据到转为int类型
        int valueOfCO2 = (int)value_co2;
    int valueOfHumi = (int)value_humi;
    int valueOfTemp = (int)value_temp;
  
    sprintf(http_packet, packet_model,DEVICE_ID,API_KEY,oneNetHost,content_len,SENSOR_CO2,valueOfCO2,SENSOR_HUMI,valueOfHumi,SENSOR_TEMP,valueOfTemp);
        
        int state = wifi.getState();
        wifi.debugPrintln(String(state));
        switch (state) {
            case WIFI_NEW_MESSAGE: 
                        wifi.debugPrintln(wifi.getMessage());
                        wifi.sendMessage(http_packet);//这里进行发送http包
              break;
            case WIFI_CLOSED :                                                        //reconnet to the TCP server 
              wifi.debugPrintln("server is closed! and trying to reconnect it!");
              if (wifi.connectTCPServer(serverIP, serverPort)) {
                      wifi.debugPrintln("reconnect OK!");
                      wifi.setState(WIFI_IDLE);
              }
              else {
                      wifi.debugPrintln("reconnect fail");
                      wifi.setState(WIFI_CLOSED);
              }
              break;
            case WIFI_IDLE :                                                        
                    wifi.setState(wifi.checkMessage());
                        
                    break;
                }
        
        }



完整工程请到附件中下载。

5、我们上传完成后,可以在OneNet平台看到我们的数据变化了,作为扩展,可以直接使用OneNet云平台提供的HTTP的GET方法获取数据,然后自己做APP或者公众号就可以在任何地方看到我们的远程数据变化了,这样也就是一个完整的设备+终端+云架构的原型物联网产品了。



完整工程代码: 传输CO2数据到OneNet平台.zip (5.49 KB, 下载次数: 33)

澳门开元棋牌色情_澳门开元棋牌官网_开元棋牌输了25万开源-让电子制作变得更简单! --- 澳门开元棋牌色情_澳门开元棋牌官网_开元棋牌输了25万实验室

348

主题

2077

帖子

929

活跃值

管理员

Rank: 9Rank: 9Rank: 9

活跃值
929
来自 2#
?楼主| 发表于 2018-9-17 19:20:32 | 只看该作者
澳门开元棋牌色情_澳门开元棋牌官网_开元棋牌输了25万开源-让电子制作变得更简单! --- 澳门开元棋牌色情_澳门开元棋牌官网_开元棋牌输了25万实验室

348

主题

2077

帖子

929

活跃值

管理员

Rank: 9Rank: 9Rank: 9

活跃值
929
板凳
?楼主| 发表于 2018-9-11 19:46:00 | 只看该作者
应用数据查看连接:1、网页端:
https://open.iot.10086.cn/appvie ... 8c971e1659904acc1f6

2、手机端:在OneNet手机版上可以查看到我们这个应用-SCD30-CO2,在OneNet APP设备云的【发现】中搜索:SCD30即可看到我们的应用。

界面如下:


澳门开元棋牌色情_澳门开元棋牌官网_开元棋牌输了25万开源-让电子制作变得更简单! --- 澳门开元棋牌色情_澳门开元棋牌官网_开元棋牌输了25万实验室

2

主题

40

帖子

113

活跃值

管理员

Rank: 9Rank: 9Rank: 9

活跃值
113
地板
发表于 2018-9-11 22:04:12 | 只看该作者
这个不错很赞

35

主题

44

帖子

163

活跃值

注册会员

Rank: 2

活跃值
163
5#
发表于 2018-9-12 17:30:56 | 只看该作者
很不错哦??

11

主题

59

帖子

179

活跃值

注册会员

Rank: 2

活跃值
179
6#
发表于 2018-9-13 13:08:21 | 只看该作者
有空自己也捣鼓捣鼓

0

主题

2

帖子

24

活跃值

新手上路

Rank: 1

活跃值
24
7#
发表于 2018-10-22 14:52:40 | 只看该作者
标记一下,有空试试。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver| 手机版| 小黑屋| 澳门开元棋牌色情_澳门开元棋牌官网_开元棋牌输了25万实验室 ( 粤ICP备17040594号-3 )

GMT+8, 2019-10-20 16:10 , Processed in 0.098072 second(s), 24 queries .

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