🎉driver-box v0.5.0 发布,开源免费的边缘网关框架

一、介绍

设备接入是物联网(IoT)生态系统的关键组成部分,而不同厂商的设备之间缺乏统一的标准和规范,对接时需要进行大量的适配工作,增加了开发难度和时间成本。

为了应对这一挑战,美的楼宇科技研究院团队专门打造了一款具备泛化协议接入的边缘产品:driver-box

它基于插件化的架构设计,将主流的通信协议(Modbus、Bacnet、HTTP、MQTT 等)和私有化 TCP 协议完美的融合在一个应用服务中。并结合动态解析脚本,以一种灵活的方式提供设备数据的解析、清洗、再加工等能力。

Gitee:https://gitee.com/iBUILDING-X/driver-box

文档:https://ibuilding-x.gitee.io/driver-box/

二、优点

  1. 高效接入:标准协议配置化接入,非标协议低代码动态适配,实现设备快速接入。

  2. 接入即标准:设备数据采集之后立即执行标准化加工:统一模型、统一服务、统一流程。

  3. 数据降噪:感知并消除异常数据、重复性无意义数据,提升数据采集质量。

  4. 资源优化:基于对 IoT 的理解和经验,提供定向调优策略。

三、更新内容

虽然 driver-box 的定位是作一款边缘网关框架,用户可基于它打造专属的边缘解决方案。

但同时,driver-box 亦可以是一套开箱即用的产品。对于一些简单的设备、协议,通过些许的配置工作,便可完成设备接入和数据上云。

本次发布的版本主要在于改进 driver-box 使用体验,提供了全平台、多架构的发行包;以及快速上手示例。

更新内容

  1. 默认的数据转发层提供MQTT的实现。

  2. 将采集到的点位值同设备影子作比较,缩减重复上报数据量。

  3. 改进工程打包编译工具。

  4. 提供多平台、多架构的发行包。

四、快速上手

本小节将通过一个简单的示例,来讲述如何快速接入一个通信协议为 http 的设备。

环境准备

Linux、Windows、Mac 均可

使用步骤

  1. 下载发行包 ,现支持架构包括:

    • Windows:amd64、arm64

    • Linux:amd64、arm64

    • Mac:amd64、arm64

  2. 解压发行包。(Windows环境为zip包)

    tar xvf driver-box-<os>-<arch>.tar
  3. 启动 driver-box

    ./driver-box -broker=mqtt://<mqtt_ip>:<mqtt_port> -clientId=<任意字符串> -exportTopic=/driverbox/export/

     

  4. 启动 MQTTX 客户端,充当物联网云平台的角色。并订阅topic:/driverbox/export/

  5. 发送模拟请求
    发行包中已预先配置了一个使用 HttpServer 插件的设备,以方便快速上手。该设备为一个传感器设备,仅一个开关点位,可通过 HTTP 请求模拟设备点位变化。

    # 模拟 “开”
    curl http://localhost:8080/sensorModel/sensor_1/on
    
    # 模拟 关“”
    curl http://localhost:8080/sensorModel/sensor_1/off

     

  6. 观察 MQTTX 客户端接收到的报文

    topic: /driverbox/export/
    payload: {"device_name":"sensor_1","values":[{"name":"onOff","type":"","value":1}]}
    
    topic: /driverbox/export/
    payload: {"device_name":"sensor_1","values":[{"name":"onOff","type":"","value":0}]}

如果用浏览器发送的请求,可能会收到两个报文。因为脚本逻辑不够严谨,浏览器默认发送的/favicon.ico请求命中on条件。

五、最后

driver-box 适用于各种不同的应用场景,包括且不限于智慧城市、智慧工厂、智慧园区、智慧家居、智慧医院等。我们期望通过开源这种开放、共享和协作的组织文化,促进创新和创造力的释放,从而推动社会的进步和发展。在此,非常欢迎更多的社区同学,共同参与到 driver-box 的项目建设中来。

优秀的个人博客,低调大师

微信关注我们

原文链接:https://www.oschina.net/news/251967/driver-box-0-5-0-released

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Apache Tomcat7、8、9(Java Web服务器)

Apache Tomcat7、8、9(Java Web服务器)

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。