构建煤矿物联网大数据平台思路(1)

10 篇文章 9 订阅
6 篇文章 1 订阅

最近要构建一个综合自动化分析平台,需求是实现煤矿十几个子自动化系统的数据收集、分析、报表、统计功能。
现在的趋势是构建物联网大数据平台。但是现有系统是基于传统的EF5+PSpace实时数据库。
先从实时数据库开始下手分析。拿到 sdk 是.net、java、c三种。最后一种不会。分析前两种。

pSpace

pSpace 是一个高性能、高吞吐能力、可靠性强、跨平台的实时/历史数据库系统,可以用于采集、压缩、存储、加工、分析任何带有时间特性的生产信息,产品提供全系列的工业通讯接口及ERP 业务接口,实现生产监控到调度管理的完美整合,极大地提高企业智能化及决策的精度和速度。

下面是pSpace的架构图,我们做到项目应该是在最上层,首要的是读取PSpace的数据。
![image.png](https://img-blog.csdnimg.cn/img_convert/58afaf66774fdbeb15ce3e1b1d6e86e9.png#clientId=u5870e369-c58b-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=428&id=uccca5cae&margin=[object Object]&name=image.png&originHeight=428&originWidth=547&originalType=binary&ratio=1&rotation=0&showTitle=false&size=152901&status=done&style=none&taskId=u3302fcda-8d7f-4c1b-bd69-db09f2e3061&title=&width=547)
在pSpace SDK设计中采用了分层架构的思想,分别包含psAPISDK.dll、pSpaceAPI.dll、psNetClient.dll模块,其中psAPISDK.dll为外部接口模块,pSpaceAPI.dll为内部实现接口模块,psNetClient.dll为服务器客户端模块。主要实现了以下功能:
![yuque_diagram.jpg](https://img-blog.csdnimg.cn/img_convert/77c6a49b826050fc204b81e7ed01edef.png#clientId=ubf8592fc-4329-4&crop=0&crop=0&crop=1&crop=1&from=drop&id=u81cf4086&margin=[object Object]&name=yuque_diagram.jpg&originHeight=888&originWidth=1613&originalType=binary&ratio=1&rotation=0&showTitle=false&size=144496&status=done&style=none&taskId=u87ef217c-5769-4c88-a2c8-466ca949e07&title=)

.Net SDK

![image.png](https://img-blog.csdnimg.cn/img_convert/5e5c5076ddeb7340f5c15c5fe69b876f.png#clientId=u40c96261-0459-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=271&id=u43d4eff7&margin=[object Object]&name=image.png&originHeight=851&originWidth=1091&originalType=binary&ratio=1&rotation=0&showTitle=false&size=176244&status=done&style=none&taskId=u01422bbf-4e98-408a-9223-ff3759a158e&title=&width=347)

Java SDK

![image.png](https://img-blog.csdnimg.cn/img_convert/bdc51e4c6dfb6fe03f17e9d5c74d96f9.png#clientId=ubf8592fc-4329-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=344&id=ucd382c62&margin=[object Object]&name=image.png&originHeight=778&originWidth=1098&originalType=binary&ratio=1&rotation=0&showTitle=false&size=110228&status=done&style=none&taskId=u55f95624-4597-4018-a916-73f099ca4fa&title=&width=486)

开发

pSpace的数据分为实时数据和历史数据。历史数据可以做成API接口形式提供给Web前端。实时数据如果采用短连接,也能行,毕竟项目面向用户少。但总感觉不太优雅。也想了几种方式:SDK提倡用发布/订阅模式订阅实时数据,研究后也实现了,避免了短连接对数据库性能的影响。
简单的demo(跑了一下午,数据没中断,证明这种方式可行):

....
tagTree = TagTree.CreateInstance(dbConnector);
                rootNode = tagTree.GetTreeRoot();
                tagManager = tagTree.GetMgr();

                vector = new TagVector();
                vector.Add((ITag)rootNode.SelectSingleNode("/电力监控总/中央变电所/J1高开Uab@PV"));
                RealDataSet dataSet = new RealDataSet();
                realSubscriber = new RealSubscriber();
                realSubscriber.CreateAndRead(dbConnector, vector, dataSet);
                var evt = new RealDataChangedEventHandler(realSubscriber_RealDataChanged);
                realSubscriber.RealDataChanged += evt;
                realSubscriber.Enabled = true;
...

![image.png](https://img-blog.csdnimg.cn/img_convert/e19b2eeb763fbc051c7e3ba888e36ff3.png#clientId=u7e19d6f9-113c-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=193&id=u5d970f35&margin=[object Object]&name=image.png&originHeight=193&originWidth=427&originalType=binary&ratio=1&rotation=0&showTitle=false&size=6358&status=done&style=none&taskId=u0db7ecd5-12cf-4b5b-b70a-f68feaf3505&title=&width=427)
java、windows service也尝试,都可以实现,唯一不足是无法使用.net core。用.net core需要配合windows service或者.net framework。有时间用.net core把sdk重写。

实现的web+移动端
![image.png](https://img-blog.csdnimg.cn/img_convert/419523fcf9774530e8bfbd4a885f48c9.png#clientId=u9ca18fec-0ea3-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=667&id=u68acb8e2&margin=[object Object]&name=image.png&originHeight=667&originWidth=375&originalType=binary&ratio=1&rotation=0&showTitle=false&size=31142&status=done&style=none&taskId=u73e8298a-17f5-4661-914d-8ed61636c0f&title=&width=375)
![2022-04-01_223849.png](https://img-blog.csdnimg.cn/img_convert/dfa32d88311fe43e5f63b61bc3d03e10.png#clientId=u9ca18fec-0ea3-4&crop=0&crop=0&crop=1&crop=1&from=drop&id=uc64e02cf&margin=[object Object]&name=2022-04-01_223849.png&originHeight=703&originWidth=1240&originalType=binary&ratio=1&rotation=0&showTitle=false&size=71537&status=done&style=none&taskId=u81a7d532-4d27-4bc4-8ce0-a97991eb6fe&title=)

后面的架构(参考别人设计v)
![image.png](https://img-blog.csdnimg.cn/img_convert/8fd5b064f012712d6c8f92150eabd227.png#clientId=u85ee28d6-fad1-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=615&id=u3096b073&margin=[object Object]&name=image.png&originHeight=615&originWidth=1246&originalType=binary&ratio=1&rotation=0&showTitle=false&size=376306&status=done&style=none&taskId=u79633724-3f19-4526-a1a1-2939c8a6f4f&title=&width=1246)

关于物联网

现在物联网技术发展火热,大部分可以直接基于MQTT协议写入实时数据库。后面准备试用TDengine+EMQX。也有很多可以参考,阿里云、华为云等云厂商都有物联网平台。但限于数据安全性,目前实施性不大,私有部署平台还行。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值