首页 > 其他分享 >Thingsboard网关总结

Thingsboard网关总结

时间:2023-10-10 15:15:38浏览次数:37  
标签:总结 网关 配置文件 配置 连接器 Thingsboard tb 设备

1概述

Thingsboard网关是一个开放源代码的解决方案可让您使用Thingsboard集成连接到旧系统和第三方系统的设备。运行需要python3.7+的环境。

2安装

一般使用源码进行安装,其步骤如下:

1、从代码仓库克隆代码, 

2、进入代码目录,使用setup.py脚本安装python模块,python3 setup.py install。

注意:1)若是有第三方依赖下载慢,可以提前下载,或者是在相同目录下新建setup.cfg更改镜像源。2)若是要以开发模式安装调试,使用命令python3 setup.py develop 。

下面位置有一个打包好的Windows下的python环境和tb网关,下载下来使用python3 setup.py develop命令安装后可以直接使用..\Python39\python.exe tb_gateway_service.py运行。

3配置

配置文件分为常规配置文件和连接器配置文件。

常规配置文件

常规配置文件主要用来配置与ThingsBoard平台的连接信息和网关要使用的连接器,示例如下:

thingsboard:
  host: 127.0.0.1
  port: 1883
  security:
    accessToken: iI0vP0cd46dhC4mRsVmH
storage:
  type: memory
  read_records_count: 100
  max_records_count: 100000
#  type: file
#  data_folder_path: ./data/
#  max_file_count: 10
#  max_read_records_count: 10
#  max_records_per_file: 10000
connectors:



  # -
  #   name: MQTT Broker Connector
  #   type: mqtt
  #   configuration: mqtt.json

 -
   name: Modbus Connector
   type: modbus
   configuration: modbus.json

#  -
#    name: Modbus Connector
#    type: modbus
#    configuration: modbus_serial.json
#
#  -
#    name: OPC-UA Connector
#    type: opcua
#    configuration: opcua.json
#
#  -
#    name: BLE Connector
#    type: ble
#    configuration: ble.json

#  -
#    name: Custom Serial Connector
#    type: serial
#    configuration: custom_serial.json
#    class: CustomSerialConnector

具体参数说明,见ThingsBoard网关数据采集配置说明 - 产品研发 - 亚派软件知识管理系统 (app.net)

连接器配置文件

连接器配置文件主要用来配置需要连接的设备信息,下面以modbus连接器配置为例。

{
    "master": {
        "slaves": [
            {
                "unitId": "1",
                "deviceName": "Temp Sensor1",
                "host": "127.0.0.1",
                "port": "5021"
            },
            {
                "unitId": "2",
                "deviceName": "Temp Sensor2",
                "host": "127.0.0.1",
                "port": "5021",
                "sendDataOnlyOnChange": true,
                "attributes": [
                    {
                        "byteOrder": "BIG",
                        "tag": "test",
                        "type": "long",
                        "functionCode": 4,
                        "registerCount": 1,
                        "address": 4
                    }
                ]
            },
            {
                "unitId": "3",
                "deviceName": "Temp Sensor12",
                "host": "127.0.0.1",
                "port": "5021"
            },
            {
                "unitId": "4",
                "deviceName": "Temp Sensor12",
                "host": "127.0.0.1",
                "port": "5021"
            },
            {
                "unitId": "5",
                "deviceName": "Temp Sensor12",
                "host": "127.0.0.1",
                "port": "5021"
            },
            {
                "unitId": "16",
                "deviceName": "Temp Sensor12",
                "host": "127.0.0.1",
                "port": "5021"
            }
        ]
    }
}

在slaves中可以配置多个设备,具体参数说明,见ThingsBoard网关数据采集配置说明 - 产品研发 - 亚派软件知识管理系统 (app.net)

4网关设备配置接口

在应用中需要对设备采集到的测点在tb网关中做配置以便发送到tb平台,tb网关通过连接器配置文件来确定哪些设备要发送到tb平台,当tb平台设备中没有配置文件里配置的设备时会自动创建。tb网关会按配置的检测时间对连接器配置文件进行扫描,当tb连接器配置文件发生改变时,tb网关会自动重新读取并更新配置。因此对测点的配置只需更改连接器的配置文件即可。此功能可以不用更改tb网关的代码而是通过新建其他工程来实现。

设备配置的ui设计见 ▶ 页面 1 - TB网关设置 (js.design)

代码见Files · dev-yuanbo · yapai / yujingshan · GitLab

初始设备配置流程如下:

1)配置人员已经完成tb网关的常规配置,并已经启动网关。

2)导入或新增模板,模板的内容为连接器配置中的部分字段,其作用是进行批量配置。

3)配置人员使用准备好的点表进行导入,点表以设备为基本单位,内容为无需在模板中配置的字段。

4)勾选需要配置的设备,点击配置,选择模板进行批量配置,勾选设备时可以通过设备类型等维度进行筛选。

5)确认保存,提交配置。

 

修改设备配置流程如下:

1)根据类型或直接勾选要修改配置的设备。

2)点击修改配置,选择要使用的模板

3)保存修改

 

新增设备流程:

1)手动输入字段进行新增,或者使用模板进行新增。

2)保存新增

 

提供的接口如下:

1)设备列表查询接口

2)设备单个新增接口

3)设备配置批量修改接口

4)设备删除接口

5)设备测点csv文件导入接口

6)模板列表查询接口

7)模板单个新增接口

8)模板修改接口

9)模板删除接口

 

待添加接口:

1)模板文件批量导出导入

2)设备类型的CRUD接口

 

标签:总结,网关,配置文件,配置,连接器,Thingsboard,tb,设备
From: https://www.cnblogs.com/heroinss/p/17754706.html

相关文章

  • thingsboard介绍
    ThingsBoard可用于:设备管理,资产和客户并定义他们之间的关系。基于设备和资产收集数据并进行可视化。采集遥测数据并进行相关的事件处理进行警报响应。基于远程RPC调用进行设备控制。基于生命周期事件、RESTAPI事件、RPC请求构建工作流。基于动态设计和响应仪表板向你的客......
  • 10月9日总结
    一.今天做了什么上午上工程实训课,老师先讲了许多铁道的知识,接着讲解了如何为高铁办理发车,和如何开高铁。然后我们就实际上手操作。这节课收获很多。下午上java课,写数据库,感觉很难好在最后写出来了,以后有时间写个教程。二.遇到的问题,如何解决无......
  • STL总结
       STL(StandardTemplateLibrary)里有很多组成部分,但是主要有三个,容器、迭代器和算法   容器用来管理某个特定对象的集合。每一种容器都有自己的优点和缺点,在项目中根据不同的需求,使用不同的容器。容器可以是数组、链表或者类字典。   迭代器用于遍历对象集合的元素......
  • 每日总结
    今日收获学会了vue+echarts试下数据可视化;软考的题目又看了好多,解决了好几个题型;背单词,但是没做英语题;明天预计继续背单词!!!!肯定有大型数据库的作业啦!--写作业去~继续学习软考题目;攻一下英语薄弱的题型;......
  • 10.9 日模拟赛总结
    看T1,\(n\le10^7\),鉴定为\(\mathcalO(n)\)做法,不会,睡觉。睡醒,一眼T1,一通操作打完代码,过样例,过不了大样例。写暴力找问题,调调调,过大样例,此时已过去2h。看T2,不会,乱推一个\(\mathcal(n^2)\)暴力润了。看T3,不会,打了个指数级暴力和特殊性质润了。看T4,不会,但有个性质图......
  • 每日总结10月9日
    今天的睡眠严重不足,中午还被迫去开了评选会,下午的课程里,数据库的连接确实让我两眼一黑,但还是通过了自己的努力成功的关联了数据库,至于程序那可真不是我能做出来的了,html看都看不懂,真的没办法 ......
  • 每日总结1009
    今天上了软件设计模式,课上讲了职责链模式和命令模式两种。然后是人机交互技术,课上老师介绍了div和css。今日代码:代码量:60行学习时间:6h(算上课)晚上背了单词,做了一些软考的选择题。......
  • 今日总结
    今天完成了企业ERP的页面绘制 ......
  • API网关是什么
    API网关是什么?API网关很多人都知道它的实现原理,但是并不清楚它存在的意义和背景是什么,这里我给大家通俗易懂地讲解下!举个例子,假设你正在开发一个电商网站,那么这里会涉及到很多后端的微服务,比如会员、商品、推荐服务等等。那么这里就会遇到一个问题,APP/Browser怎么去访问这些后端的......
  • 2023.10.9——每日总结
    学习所花时间(包括上课):0h代码量(行):0行博客量(篇):1篇今天,上午学习,下午学习;我了解到的知识点:1.DIV+CSS;明日计划:学习......