本人是非专业领域内的学生,目前所作的项目需要用esp32将传感器数据上传至物联网平台,但传感器数据是频率扫描出来的一百个值,想知道如何将这些值同时上传至物联网平台。
目前只能将温度这类单个数据值上报到物联网平台,希望能够同时上传esp32串口收到的一串值到物联网平台。
在阿里云物联网控制台中的产品功能中的属性里有可以上报数组型数据,但不太清楚如何能够实现将数组上报。目前代码中每次只能上传一个数据值。
可以使用二进制数据的方式来上云。
之后点击产品->hex_light->数据解析。在此栏目可设置协议转换脚本。语言可选js/python2.7/php7.2。
数据解析请参考:https://help.aliyun.com/document_detail/68702.html
void user_post_raw_data(void)
{
int res = 0;
static int id = 0;
/*0x000000000100320100000000*/
unsigned char raw_data[] = {0x0,/*COMMAND_REPORT*/\
0x0, 0x0, 0x0, 0x01,/* id */\
0x0, 0x32, /* prop_int16 */\
0x01, /* prop_bool */ \
0x0, 0x0, 0x0, 0x0 /* prop_float */};
id ++;
raw_data[4] = id & 0xff;
raw_data[3] = (id>>8) & 0xff;
raw_data[2] = (id>>16) & 0xff;
raw_data[1] = (id>>24) & 0xff;
res = IOT_Linkkit_Report(EXAMPLE_MASTER_DEVID, ITM_MSG_POST_RAW_DATA,
raw_data, sizeof(raw_data));
EXAMPLE_TRACE("Post Raw Data Message ID: %d", res);
}
最重要的:使用ESP32做物联网开发,非常建议使用HaaS开发框架: https://haas.iot.aliyun.com/solution
优势是直接使用python开发设备端应用,集成了link sdk等连云功能,并且有非常多案例可以直接参考。
enjoy ~~~
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。