我是靠谱客的博主 贪玩小伙,最近开发中收集的这篇文章主要介绍OneNET edp协议上报设备数据1 产品介绍2 应用场景举例3 产品性能4 产品逻辑介绍5 代码逻辑介绍6 云平台数据可视化,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在这里插入图片描述
联系电话:15712339322

1 产品介绍

终端设备在该版本中提供对经纬度(longitude/latitude)、实时温度(temperature)、时间戳(timestamp)等信息的实时上传。产品由Linux开发板实现,具有性能稳定可靠、扩展性强等特点,类似产品举例,可应用于工厂设备、农场牲畜上,可针对客户提供定制化服务。

2 应用场景举例

2.1 农场监控

终端采集设备佩戴上牛脖子上,可以实时采集奶牛信息,用户实时获取。
在这里插入图片描述

2.2 井盖监控

井盖移位、倾斜、松动、溢水等状态告警,帮助用户实现井盖资产的远程管理。对城市所管辖的井盖设施实施智能化监控、数字化、网络化和空间可视化管理;建立一套科学完善的监督评价体系,实现政府信息化建设现有相关资源的共享;提高城市管理水平,创建宜居城市,提升城市品味,构建和谐社会。
在这里插入图片描述
在这里插入图片描述

2.3 燃气表、水表

基于OneNET平台为多厂家、多类型、多网络设备提供接入支持,实现数据采集、数据存储、设备管理、机卡一体化等功能,同时开放API以及数据推送功能,与水务、燃气公司的集抄系统对接实现抄表数据的集抄、指令下发以及统计分析等功能。OneNET平台在整个解决方案中作为一个中立的平台,帮助燃气水务公司解决技术对接问题,实现多厂家海量设备的接入,同时保障数据的安全稳定。
在这里插入图片描述

3 产品性能

产品由宽温级ARM板搭建,操作系统Linux,处理器Cortex-A7,主频528MHz,内存512MB,Flash 8G eMMS。

4 产品逻辑介绍

4.1 OneNET物联网云平台sdk(开发依赖)

OneNET定位为PaaS服务,即在物联网应用和真实设备之间搭建高效、稳定、安全的应用平台:面向设备,适配多种网络环境和常见传输协议,提供各类硬件终端的快速接入方案和设备管理服务;面向应用层,提供丰富的API和数据分发能力以满足各类行业应用系统的开发需求,使物联网企业可以更加专注于自身应用的开发,而不用将工作重心放在设备接入层的环境搭建上,从而缩短物联网系统的形成周期,降低企业研发、运营和运维成本。
开发文档地址:https://open.iot.10086.cn/doc/introduce/
在这里插入图片描述

4.2 OneNET协议

多协议接入为开发者提供多种物联网行业常见协议接入服务,适配多种网络环境和常见传输协议,提供各类硬件终端的快速接入方案和设备管理服务,对外提供API接口便于实现设备即时命令下发,支持用户通过规则引擎对接OneNET增值服务,灵活地实现服务的扩展
协议文档地址:https://open.iot.10086.cn/doc/multiprotocol/

4.3 OneNET edp上传协议

协议文档地址:
https://open.iot.10086.cn/doc/multiprotocol/book/develop/edp/device/doc-tool.html
edp协议同时支持多种语言。基于性能和设备特点考虑,采用Qt+edp方案。该方案应用程序支持跨平台开发调试,可操作性更佳。

5 代码逻辑介绍

5.1 终端设备发起对云平台的连接

/* m_devid: 已注册的设备id;m_auth_key: 秘钥信息 */
EdpPacket* send_pkg = PacketConnect1(m_devid, m_auth_key);
/* create a socket and connect to server */
int sockfd = m_socket->Open(m_ip, atoi(m_port));
if (sockfd < 0)
{
        qDebug() << "socket connect error: " << sockfd;
}else
{
        int ret = m_socket->DoSend(sockfd, (const char*)send_pkg->_data, send_pkg->_write_pos);
        qDebug() << "socket connect success: " << sockfd << ret;
}
DeleteBuffer(&send_pkg);

5.2 终端设备上报实时温度

cJSON *json_data = cJSON_CreateObject();
    cJSON_AddNumberToObject(json_data, "temperature",ui->lineEdit->text().toFloat() );
    EdpPacket* send_pkg = PacketSavedataJson(devid, json_data, kTypeSimpleJsonWithoutTime, 0);
    /*发送存储包数据,上传数据点*/
    int ret1 = m_tmysocket.DoSend (m_sockfd, (const char*)send_pkg->_data, send_pkg->_write_pos);
    /*使用完后必须删除send_pkg , 否则会造成内存泄漏*/
DeleteBuffer(&send_pkg);

5.3 终端设备上报实时经纬度

cJSON *json_data = cJSON_CreateObject();
    cJSON* loc_data=  cJSON_CreateObject();
    cJSON_AddItemToObject(json_data, "location", loc_data);
    cJSON_AddNumberToObject(loc_data, "lon", ui->lineEdit_2->text().toFloat());
    cJSON_AddNumberToObject(loc_data, "lat", ui->lineEdit_4->text().toFloat());
    EdpPacket* send_pkg = PacketSavedataJson(devid, json_data, kTypeSimpleJsonWithoutTime, 0);
    /*发送存储包数据,上传数据点*/
int ret1 = m_tmysocket.DoSend(m_sockfd, (const char*)send_pkg->_data, send_pkg->_write_pos);

5.4 终端设备上报时间戳

cJSON *json_data = cJSON_CreateObject();
    cJSON_AddStringToObject(json_data, "Time", ui->lineEdit_3->text().toLocal8Bit().data());
    EdpPacket* send_pkg = PacketSavedataJson(devid, json_data, kTypeSimpleJsonWithoutTime, 0);
    /*发送存储包数据,上传数据点*/
    int ret1 = m_tmysocket.DoSend(m_sockfd, (const char*)send_pkg->_data, send_pkg->_write_pos);

6 云平台数据可视化

在这里插入图片描述

在这里插入图片描述

最后

以上就是贪玩小伙为你收集整理的OneNET edp协议上报设备数据1 产品介绍2 应用场景举例3 产品性能4 产品逻辑介绍5 代码逻辑介绍6 云平台数据可视化的全部内容,希望文章能够帮你解决OneNET edp协议上报设备数据1 产品介绍2 应用场景举例3 产品性能4 产品逻辑介绍5 代码逻辑介绍6 云平台数据可视化所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部