“ 5月19日,IOTE 2023 第十九届国际物联网展·上海站圆满落幕!五月的上海,迎来了一场盛大的科技盛宴,5月17-19日三天,IOTE 国际物联网展吸引了世界各地的企业和友人在沪相识,展示了最前沿的物联网技术及应用,成为了物联网人必来的行业盛典。”

此次物联网展,亿琪软件公司展示了一整套解决方案:

  • 智能硬件
  • 边缘计算
  • 物联网平台

整体方案

2023-05-21T12:54:26.png

参展团队

2023-05-21T12:55:42.png

YiFUSION工业边缘智能融合一体机

2023-05-21T12:55:57.png

客户对于边缘计算的热衷

2023-05-21T12:56:07.png

聆听客户的需求

2023-05-21T12:56:16.png

展会视频剪辑

目录

最近一段时间,客户和社区都反馈了一些 ThingsBoard 问题,这个常见问题 FAQ 系列收到很多反馈,往期回顾:开源|ThingsBoard FAQ 使用和二次开发常见问题汇总一开源|ThingsBoard FAQ 使用和二次开发常见问题汇总二

ThingsBoard Web 超时机制是什么?

首先,要搞清楚 TB 的 Web 登录和会话保持机制。

  • 通过 Web 登录后,浏览器会获取 token,这个 token 是 JWT 机制,再次查询 Web 时,其实是完全依靠 JWT 了;
  • JWT 是无服务器回话保持机制的,也就是说,一旦拿到 JWT,就对此次登录回话有了完全的控制权,所以,强烈建议采用 HTTPS/SSL 的 Web 安全机制;
  • 由下图可以看出,这个 token 承载了与服务器之间的所有回话权限,尤其要保护好;
    X-Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJ5aWVkZ2VAeWlxaXNvZnQuY24iLCJzY29wZXMiOlsiVEVOQU5UX0FETUlOIl0sInVzZXJJZCI6IjQzNWYwMDYwLWFiN2ItMTFlZC05MzgxLTBmNDg4NzE5ODYwYyIsImVuYWJsZWQiOmZhbHNlLCJpc1B1YmxpYyI6ZmFsc2UsInRlbmFudElkIjoiM2Q5YmVmMzAtYWI3Yi0xMWVkLTkzODEtMGY0ODg3MTk4NjBjIiwiY3VzdG9tZXJJZCI6IjEzODE0MDAwLTFkZDItMTFiMi04MDgwLTgwODA4MDgwODA4MCIsImlzcyI6InRoaW5nc2JvYXJkLmlvIiwiaWF0IjoxNjgzODUwMDEyLCJleHAiOjE2ODM4NTkwMTJ9.c4mPoci7U41IHGT1AWhLnuNDV5W_0yQOfQDHpfLpMYCuNe9nKBz1AF5AHKL23O194q8Fg_b-2p9uzk3XsoFs_g

    2023-05-12T00:26:19.png

  • 用户名 sub 有了,超时时间 exp 也有了,不难看出(1683859012-1683850012=9000s),超时时间就是这里明确了;
  • 修改 JWT 超时时间, 配置文件里修改这个 9000 即可。
Parameter Environment Variable Default Value Description
security.jwt.tokenExpirationTime JWT_TOKEN_EXPIRATION_TIME 9000 User JWT Token expiration time in seconds

ThingsBoard 统计和报表功能使用

ThingsBoard 与 ThingsBoard Edge 如何配合?

  • TB Edge 就是一个精简版 TB,单租户而已,其实对边缘计算概念是一个歪曲的理解;
  • TB Edge 还是非常不错的选择,在边缘端实现 Dashboard 可能是唯一的优势吧;
  • TB Edge 的 telemetry 数据尽量不要同步到 Cloud 端,完全没有意义啊;
  • TB Edge 并不是完整的 边缘计算 框架,必须要配合 TB Gateway 或网关来实现数据采集;
  • 根据需求,自己来选择吧,没有对与错,人见人爱花见花开。

ThingsBoard 移动端二次开发

  • TB 移动端非常不错,Android 和 iOS 一次开发,通通搞定;
  • 通过与 服务器的配合设置,完全可以做到非常不错的效果,简单应用没问题了;
  • TB 移动端使用 Flutter 框架开发;
  • 看一个效果图:
    YiAPP移动端

ThingsBoard 如何做“边缘计算”?

  • 使用 ThingsBoard Gateway 作为边缘计算的确是最方便快捷的方法,当然 TB Gateway 只是简单数采功能;
  • 用 TB Edge 配合使用,实现一些低代码工作,也可以;
  • 使用第三方框架,也是非常不错的选择,比如: YiEDGE-亿琪边缘计算软件 ;
  • 既然是边缘计算,那肯定是要计算,Edge Computing 的概念要清晰,比如:规则,策略,等;
  • 使用具备边缘计算功能的硬件网关,把这个复杂的工作交给专业的厂商设备来实现;

ThingsBoard 资产和设备的区别是什么?

  • 要了解其区别,就是要首先明确理解 TB 的 entity 概念,可以说 TB 里面的逻辑很大一部分是以 entity 来定义的;
  • 其实,说实话,没什么大的区别,只是说设备有独立上传数据的功能 API,资产只是一个虚拟概念;
  • 还可以通过规则引擎,将设备的 telemetry 转化到资产中;
  • 资产可以称之为:组或集合;

例子

将资产的 telemetry 展示出来
2023-05-12T00:52:03.png
总比将所有的设备 telemetry 展示出来更加直观和全局
2023-05-12T00:52:24.png

ThingsBoard 如何在 Kubernetes(k8s) 部署?

ThingsBoard 如何实现 SSO 单点登录?

关于 亿琪软件

上海亿琪软件有限公司成立于2016年,专注于 5G 通信、AI 人工智能、边缘计算和大数据网络安全多项技术领域,致力于物联网领域前沿技术的创新,为用户提供全方位、智能化和安全的物联网解决方案。

2023年,公司发布“YiFUSION|工业边缘智能融合一体机”产品,为工业客户提供一整套的边缘计算+AI能力:高性能数据采集、多类型数据融合、AI算法集成、云端业务对接。在边缘网关的基础上,集成了 IoT 平台的边缘协同能力、本地Web SCADA 和 HMI 功能、本地数据存储、边缘 AI 视频分析、行业应用集成等。

2022年公司推出 “YiCLOUD|亿琪云”一站式物联网应用解决方案。公司的业务涵盖了智慧城市、智慧农业、智能工厂和智慧园区等多个领域,公司软硬件产品和解决方案获得华为技术认证,得到中国移动OCP认证,公司还是边缘计算产业联盟ECC成员。

感知物联,畅快无限。

联系我们
网站:http://yiqisoft.cn
邮件:support@yiqisoft.cn
电话:021-68863086
手机:186-1666-9123

前言

在物联网开发中对于数据可视是必须的一项工作,大家都清楚国内对于很数据驾驶仓和大屏展示有着效高的需求,如果用传统的方式来可视化需要逐句代码编写进行实现,这使得开发工作内容繁重且重复很多还不能应对各种需求的变化,
如果我们使用ThingsBoard的可视化进行开发这样就会极大的减少工作量提高效率和产出,我们可以通过部件方式将传统的HTML,JS,CSS进行代码开发做成自定义基础部件为后面我们的可视化添砖加瓦,效果图如下

2023-05-10T07:07:20.png

创建部件

导航部件库然后打开现有的部件包或创建一个新在部件包视图中单击屏幕右下角的大“ +”按钮然后单击“创建新的窗口部件类型”按钮。

2023-05-10T07:10:45.png

选择部件

选择窗口部件类型会弹出窗口选择你要开发的相应部件类型之后将根据先前选择的窗口部件类型打开“窗口部件编辑器”页面,该页面预填充了启动器窗口部件模板。

2023-05-10T07:11:08.png

编辑器

编辑器由工具栏和四个主要部分组成:

2023-05-10T07:12:03.png

  1. HTML面板:可以添加CSS,JS相关代码
  2. JavaScript:编写一些JS函数
  3. 设置:主要是JSON代码用于在部件中设置一些个性配置
  4. 预览:类型于仪表板的形式展示当前窗口部件

部件API

所有与部件相关的代码都位于JavaScript部分并提供了对部件实例的引用的内置变量self部件函数都必须定义主self变量的属性,self变量有ctx属性引用部件实例使用的所有API和数据的WidgetContext上下文对象。

参见以下表格:

属性 类型 描述
$container jQuery Object 部件的容器元素。可用于使用jQuery API动态访问或修改部件DOM。
$scope 动态部件组件 当前部件元素的角度范围对象。使用Angular方法构建窗口小部件时,可用于访问/修改范围属性。
width Number 部件容器的当前宽度(以像素为单位)。
height Number 部件容器的当前高度(以像素为单位)。
isEdit Boolean 指示仪表板是处于视图状态还是处于编辑状态。
isMobile Boolean 指示仪表板视图是否小于960px宽度(默认移动断点)。
widgetConfig Object 常见的窗口小部件配置,其中包含诸如颜色(文本颜色),backgroundColor(小部件背景颜色)等属性。
settings Object 根据定义的json模式包含小部件特定属性的小部件设置
units String 定义窗口小部件显示的值的单位文本的可选属性。对于简单的小部件(如卡片或仪表)很有用。
decimals Number 可选属性,用于定义应使用多少个位置来显示数值的小数部分。
hideTitlePanel Boolean 管理窗口小部件标题面板的可见性。对于具有自定义标题面板或不同状态的小部件很有用。
widgetTitle String 如果设置,将覆盖配置的窗口小部件标题文本。更改此属性后,必须调用updateWidgetParams()函数。
detectChanges() Function 介绍触发当前小部件的更改检测。由于窗口小部件数据更改而应更新窗口小部件HTML模板绑定时,必须调用此方法。
updateWidgetParams() Function 介绍使用运行时集属性(例如widgetTitlehideTitlePanel等)更新小部件。必须调用这些属性才能使这些属性更改生效。
defaultSubscription Object 请参阅对象订阅
timewindowFunctions Object 请参阅Timewindow功能
controlApi Object 请参阅Control API
actionsApi Object 请参阅Actions API
stateController Object 请参阅状态Controller
datasources 数组<数据源> 解析的窗口小部件数据源的数组。请参见订阅对象.

函数说明

函数 描述
onInit() 当widget准备好初始化时调用的第一个函数。应该用于准备小部件DOM,处理小部件设置和初始订阅信息。
onDataUpdated() 在部件订阅中有新数据可用时调用。可以从窗口部件上下文(ctx)的defaultSubscription object访问最新数据。
onResize() 调整窗口小部件容器的大小时调用。可以从窗口小部件上下文(ctx)获得最新的宽度和高度。
onEditModeChanged() 更改仪表板编辑模式时调用。最新模式由ctx的isEdit属性处理。
onMobileModeChanged() 当仪表板视图宽度超过移动断点时调用。最新状态由ctx的isMobile属性处理。
onDestroy() 当部件元素被销毁时调用。如有必要,应使用它来清理所有资源。
getSettingsSchema() 返回窗口小部件设置架构json的可选函数以替代设置部分设置标签
getDataKeySettingsSchema() 返回特定数据密钥设置方案json的可选函数,替代设置部分Settings schema section的数据密钥设置方案标签。
typeParameters() 检索描述窗口小部件数据源参数的对象。请参阅类型参数对象类型参数对象。
actionSources() 调用对象,该对象描述用于定义用户操作的可用窗口小部件操作源。请参阅操作源对象

部件开发

通过对前面了我们可以根据自身的需求开发一个部件,这里小编用一个静态部件展示开发过程。

  1. 编写HTML
<div class="header">
    <div class="header-left fl" id="time"></div>
    <div class="header-center fl">
        <div class="header-title" id="header-title" style=" font-size:{{font_size}}px">
            {{text}}
        </div>
        <div class="header-img"></div>
    </div>
    <div class="header-right fl"></div>
    <div class="header-bottom fl"></div>
</div>
  1. 编写JSON
{
    "schema": {
        "type": "object",
        "title": "Settings",
        "properties": {
            "text": {
                "title": "标题文本",
                "type": "string",
                "default": "可视化大屏"
            },
            "font_size": {
                "title": "标题字号",
                "type": "integer",
                "default": "18"
            }
        }
    },
    "form": [
        "text",
        "font_size"
    ]
}
  1. 编写JavaScript
self.onInit = function() {

    var settings=self.ctx.settings;
    self.ctx.$scope.text = settings.text || "可视化大屏";//京州省智慧城市大屏
    self.ctx.$scope.font_size = settings.font_size || 48;
}
  1. 效果图
    2023-05-10T07:47:31.png

注意事项:

  1. 如果部件中用到的静态资源(图片,css)可以放在前端项目
  2. 设置有时候可能不正确,请多尝试几次。

关于 亿琪软件

上海亿琪软件有限公司成立于2016年,专注于 5G 通信、AI 人工智能、边缘计算和大数据网络安全多项技术领域,致力于物联网领域前沿技术的创新,为用户提供全方位、智能化和安全的物联网解决方案。

2023年,公司发布“YiFUSION|工业边缘智能融合一体机”产品,为工业客户提供一整套的边缘计算+AI能力:高性能数据采集、多类型数据融合、AI算法集成、云端业务对接。在边缘网关的基础上,集成了 IoT 平台的边缘协同能力、本地Web SCADA 和 HMI 功能、本地数据存储、边缘 AI 视频分析、行业应用集成等。

2022年公司推出 “YiCLOUD|亿琪云”一站式物联网应用解决方案。公司的业务涵盖了智慧城市、智慧农业、智能工厂和智慧园区等多个领域,公司软硬件产品和解决方案获得华为技术认证,得到中国移动OCP认证,公司还是边缘计算产业联盟ECC成员。

感知物联,畅快无限。

联系我们
网站:http://yiqisoft.cn
邮件:support@yiqisoft.cn
电话:021-68863086
手机:186-1666-9123

目录

前言

对于很多公司或者开发者而言可能在一个物联网项目或者产品中开发和实施过程中一直关注点都在如果实现功能,提升性能等方面,可能会忽略交付过程中也是一个十分重要环节,笔者以前在物联网交付过程中都会为每个项目创建一个源代码管理仓库,这样做的好入是
团队成员可以在这里进行代码版本控制,文档管理,历史记录查询等。

我们在使用ThingsBoard过程发现在3.4的版中已经加入了GIT版本管理的相关功能,这一点是众多开源物联网平台不具备的一个优势。

思路

平台中通过实体的id做唯一标识如果有实体导出之后会有一个externalId也之匹配,这样两个id就具有了一定的关联性同时公根据实体生成对应的JSON文件用于保存实体的元数据信息(结构化)这样就会生成代码,然后将其推送到GIT即可。

支持实体

支持以下实体:设备、资产、实体视图、客户、仪表板、部件包、规则链、实体组、角色、转换器和集成。

仓库

首次将实体导出到Git时实体"id"用于命名git存储库中的文件。
当将实体从Git导入ThingsBoard时文件名中的"id"将成为实体的"externalId"。
"externalId"在租户范围内是唯一的因此可以在同一平台实例的租户之间或不同实例之间导入/导出实体每次执行导出和导入操作时通过"externalId"用于查找更新实体。

同步策略

平台支持两种导出到Git的同步策略:合并和覆盖。
“合并”是默认的同步策略它只是将选定的实体附加到存储库当你想要保存一个或多个文件而不从存储库中删除所有其他文件时此策略非常有用。
“覆盖”策略完全重写相应的存储库文件当你想要完全同步实例和Git存储库中的实体列表(例如控制面板)时此策略会覆盖之前保存到Git的实例中并删除平台不存在Git中的其它实体都。

导出设置

系统会省略了对用户实体的支持因为用户电子邮件在平台实例的范围内是唯一的如果将电子邮件和凭据导出到Git会存在错误。

导出实体时我们将实体的JSON表示形式存储在Git中还可以导出实体属性、关系和凭据(仅限设备)。

关于 亿琪软件

上海亿琪软件有限公司成立于2016年,专注于 5G 通信、AI 人工智能、边缘计算和大数据网络安全多项技术领域,致力于物联网领域前沿技术的创新,为用户提供全方位、智能化和安全的物联网解决方案。

2023年,公司发布“YiFUSION|工业边缘智能融合一体机”产品,为工业客户提供一整套的边缘计算+AI能力:高性能数据采集、多类型数据融合、AI算法集成、云端业务对接。在边缘网关的基础上,集成了 IoT 平台的边缘协同能力、本地Web SCADA 和 HMI 功能、本地数据存储、边缘 AI 视频分析、行业应用集成等。

2022年公司推出 “YiCLOUD|亿琪云”一站式物联网应用解决方案。公司的业务涵盖了智慧城市、智慧农业、智能工厂和智慧园区等多个领域,公司软硬件产品和解决方案获得华为技术认证,得到中国移动OCP认证,公司还是边缘计算产业联盟ECC成员。

感知物联,畅快无限。

联系我们
网站:http://yiqisoft.cn
邮件:support@yiqisoft.cn
电话:021-68863086
手机:186-1666-9123

目录

概念理解

以下概念,摘录自 wikipedia。一旦提及工业二字,其实最主要的内容还是工业环境下的严苛条件和运行稳定可靠性要求。

工业物联网

工业物联网(Industrial Internet of Things)简称IIoT,是应用在工业上的物联网,是互联的感测器、仪表以及其他设备和电脑的工业应用程序以网络相连所成的系统,其中包括了制造以及能源管理。网络连线可以进行资料搜集、交换以及分析,有助于提升生产力以及效率,也有其他的经济效益。IIoT是由分散式控制系统(DCS)演进而成,利用云端运算完善和优化过程控制,达到较高程度的自动化

工业互联网/工业以太网

工业以太网是指在工业环境的自动化控制及过程控制中应用以太网的相关组件及技术。工业以太网会采用TCP/IP协议,和IEEE 802.3标准兼容,但在应用层会加入各自特有的协议

以太网在工业程序的应用需要有实时的特性,许多以太网的相关技术可以使以太网适用在工业应用中。由于利用标准的以太网,因此提升了工厂内由不同供应商设备的互连性,以太网的市场很大,相关组件的成本也较低、容易获取,因此工业以太网的成本也可以下降,而性能也可以随着以太网技术的进步而提升。

由于工业以太网应用在工业环境下,其对振动、温度、湿度和电磁干扰的适应要求都可能比一般的IT产业设备工作条件更严苛

应用场景

单一/垂直应用

复杂/综合应用

技术范畴

边缘感知

传感器,在感知层起到了非常重要的作用,一个数据感知点,比如:温度、湿度、一个开关信号、模拟量等,都是最最底层的反馈。

智能硬件

所谓智能硬件,在我司的定义下,是一个具备多项因素的感知层产品:

  • 自带传感器或外接传感器;
  • 自带处理能力;
  • 自带网络传输;
  • 自带电池或供电;
  • 独立工作;

2023-05-08T00:57:41.png
如图所示,从芯片(SoC芯片和传感器芯片),到智能模组(通讯作用),再到通讯板(产品原型),最后完成智能硬件产品。

如何选择智能硬件?

  • 完整的设计体系
  • 简单/直接的运行
  • 适合各种场景

传统硬件

一旦提及传感器硬件,都会想到:RS232/RS485,4-20mA,0-5V等产品连接方式,通过 Modbus 协议通讯,没错,这就是最最传统的传感器硬件,稳定可靠,的确是不错的选择。
传统硬件,有一些局限性:

  • 必须是物理连线,短距离通信;
  • 供电相比网络连线,令实施人员头疼;
  • 没有独立传输机制,还必须依靠一个 DTU 或网关;
  • 耗电量大。

数据采集

DTU

  • DTU 数据采集最简单,成本也是非常低廉,启动速度快,体积小,功耗低;
  • 由于其性能弱,在某些传感器数量少的情况下,还是比较有优势;

2023-05-08T01:27:10.png
YiDTU 产品,不仅具备了一般 DTU 的现场采集,还集成了工业现场协议:Modbus RTU,可以说是一款简易的边缘计算设备。

数采网关/边缘计算

相对于 DTU 网关设备,边缘计算设备具备更多的接口、更高的性能,突出能力可能还是在以太网的数据协议对接上,如:Modbus TCP,PLC,等各种工业协议。
YiGATE G 系列网关针对不同的场景,有多种型号可以选择,通讯上:RS232/485,以太网,2/3/4G,GPS等:

  • G100,能够支持300-500个测点数据采集,支持简单的脚本:python;
  • G200,能够支持更多网络接口,500-800个测点数据采集;
  • G300,更多的工业接口,更多的网络接口,支持1000个测点数据采集;

2023-05-08T01:30:58.png

融合网关/边缘计算+AI

虽然,YiGATE G 系列网关具备了基础的数据采集,但是并不能称之为:智能,那么 YiGATE A 系列网关就横空出世。
A 系列网关,内置了 NPU 算力卡,支持人工智能相关的算法模型,多核处理器具备更高的性能,工业级设计,满足各种应用场景的边缘计算需求。

边缘计算软件

2023-05-08T01:51:49.png
边缘计算,顾名思义,应该是具备强大的边缘计算能力,需要的不仅仅是数据采集和计算,还需要具备其他一些计算,比如:规则引擎,数据总线,视频分析,外部通讯,本地UI,Web SCADA等。

智能融合

YiFUSION 工业边缘智能融合一体机,是软硬件一体的解决方案,采用工业级硬件,强大的边缘计算软件框架,来完成更加复杂的计算场景。YiGATE A 系列网关具备多种型号可选:

  • A600,具备高性能数采功能,还自带AI计算模块,可扩展;
  • A700,具备更高性能的AI计算模块;
  • A800,具备更高性能的AI计算模块,还可以扩展更强的计算能力;

2023-05-08T01:34:40.png

网络通信和基础设施

网络通信

  • 大无线:以2/3/4/5G为基础,运用移动运营商网络基站通信,覆盖更广,减少布线压力;
  • 小无线:Wi-Fi,ZigBee,LoRa,BLE,局部网络通信,方便快捷,低成本,但是可靠性不太适用于工业场景;
  • 固网:以太网,RS485,我司极力推荐使用,稳定可靠,传输距离远,适应性强。

基础设施

  • 私有云:私有云基础设施是工业物联网中极力推荐的架构,不仅是安全性问题,也是网络和性能的首选;
  • 公有云:如果有需要上云,提供互联网服务的业务,公有云基础设施是最佳选择,比自己建设互联网简便易行。

平台架构

能力范围

2023-05-08T02:34:41.png
如图所示,我司主要的产品和服务都是在彩色部分,刨去最底层客户现场设备和行业应用以外,我司能够将中间层完美解决。

  • 作为合作伙伴,只需要通过 SDK 完成数据对接,接口快速完成业务上线;
  • 作为直接客户,将现场调研清楚,业务描述清楚,我们可以运用以前的经验完成业务上线。

感知物联网套件

2023-05-08T03:01:20.png
如图所示,在各个层次中,我司具备多个领域的自有知识产权,能够从上到下解决一揽子问题。

  • 硬件:根据自身业务需要,选用合适的设备来完成感知层的建设;
  • 软件:根据业务下沉的需要,选择 XaaS 层里面的功能模块;
  • 方案:最大限度的描述完业务需求,完成业务模型建立。

行业应用

应用方案

2023-05-08T03:09:01.png
如图所示,我司在多个行业/领域具有项目实施经验。当然,在这些方案基础上,还可以延伸出更多。

案例分享

2023-05-08T03:11:43.png
如图所示,针对不同客户需求,完成一些特色的功能,结合业务,使项目快速落地。

关于 亿琪软件

上海亿琪软件有限公司成立于2016年,专注于 5G 通信、AI 人工智能、边缘计算和大数据网络安全多项技术领域,致力于物联网领域前沿技术的创新,为用户提供全方位、智能化和安全的物联网解决方案。

2023年,公司发布“YiFUSION|工业边缘智能融合一体机”产品,为工业客户提供一整套的边缘计算+AI能力:高性能数据采集、多类型数据融合、AI算法集成、云端业务对接。在边缘网关的基础上,集成了 IoT 平台的边缘协同能力、本地Web SCADA 和 HMI 功能、本地数据存储、边缘 AI 视频分析、行业应用集成等。

2022年公司推出 “YiCLOUD|亿琪云”一站式物联网应用解决方案。公司的业务涵盖了智慧城市、智慧农业、智能工厂和智慧园区等多个领域,公司软硬件产品和解决方案获得华为技术认证,得到中国移动OCP认证,公司还是边缘计算产业联盟ECC成员。

感知物联,畅快无限。

联系我们
网站:http://yiqisoft.cn
邮件:support@yiqisoft.cn
电话:021-68863086
手机:186-1666-9123