5049| 0
|
[高级教程] 将数据上传到OneNET云平台 |
在了解了怎么用TinkerNode下发指令后,我们来学习如何上传数据到云平台 所需硬件 所需软件 TinkerNode开发板驱动,具体安装方法参考TinkerNode Wiki 1、创建产品 协议选择MQTT(旧版),然后点击右上角的 添加产品,在弹出页面中,按照提示填写产品的基本信息,进行产品创建。 请您按照提示尽可能完整、全面地填写相应内容,这样更方便您后期对产品进行管理 点击 确定,完成产品创建。 2、添加设备 接下来点击我们新建的产品,进入产品详情 点击左侧 设备列表,进入设备列表,点击右侧 添加设备 我们选用的空气质量传感器是DFRobot出品的最新款CCS811空气质量传感器, 它能准确的测量二氧化碳浓度和TVOC(Total Volatile Organic Compounds,总挥发性有机物),而且具有较短的加热时间,使用比较方便。 3、添加数据流 点击左侧的数据流模板,再点击右侧的添加数据流模板 分别添加两个数据流模板,名字分别为CO2和TVOC,单位分别为ppm和ppb 4、编写代码1、修改参数 在示例>DFRobot_NBIOT>BC20_MQTT>OneNET>Publish_Topic路径运行demo 将代码中的参数修改为产品概况中的参数。 WIFI_SSID和WIFI_PASSWORD分别是室内的wifi名和密码 其中ProductID是产品概况中的产品ID,ApiKey是Master-APIkey DeviceId是设备列表中的设备ID,pubTopic改为$dp,这是OneNET官方Topic。 2、添加传感器代码 接着,我们将CCS811读取数据的代码加进这个程序中
这段代码加在开头
这段代码加在图中的位置
这段代码加在void setup()中
这段代码加在void loop()中 3、包装数据 为了将代码上传到云端,我们需要对上传的数据进行一些处理 我们上传的数据是一段Jason字符串,需要按照一定的格式上传,并且还有OneNET自身的协议的限制,因此我们需要将数据做一定的“包装”。
将这段代码加入到上一段代码的后面 4、上传数据 client.publish(pubTopic,(uint8_t *) str.c_str(),str.length()); 最后将上传的代码改为上方的代码 上传代码到TinkerNode中,连接成功后设备显示为上线状态 5、应用开发 和上一篇文章中的LED一样,在应用管理中选择添加应用,命名为空气质量监测 点击进入应用详情,再点击编辑应用 为应用添加两个折线图,分别命名为CO2和TVOC 为两个折线图关联设备和数据流 点击右侧的样式,还可以修改图表的颜色,参数等信息 然后,我们可以点击预览查看数据 最后点击保存>发布即可完成应用 这次的教程主要难点在于上传数据的封装,OneNET只能识别固定格式的上传数据,如果大家还想深入学习上传数据 可以到OneNET的开发文档中查阅资料 感谢大家的阅读 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed