AIRIOT物联网平台开发框架应用与实战
上QQ阅读APP看书,第一时间看更新

1.1 AIRIOT概述

1.1.1 AIRIOT的产品定位及特性

1.AIRIOT定位

社会上有越来越多的专注行业的物联网平台纷纷涌现,这些平台纷繁复杂,琳琅满目。但是各行各业都需要建设符合行业特点的物联网应用平台,企业管理者对于平台的应用变更得不到快速响应,大量的开发时间用在企业管理者、专业技术人员与程序员之间的沟通上,企业需要一种用户可快速实现物联网应用的开发工具,AIRIOT就是一款拥有完全自主知识产权的低代码物联网平台开发工具,可快速生成物联网应用平台。

AIRIOT是Accelerate Industry Relationship Internet of Things的缩写,意为加速工业关系变革的物联网工具,根据工业物联网平台标准架构设计,抽象了很多基础概念、基本元素、通用组件,同时丰富了通用接口,能够满足各行业用户快速构建定制化应用的需求,降低了对平台开发人员的编程能力要求,快速响应用户需求的频繁变更,让平台运维变得更加简单便捷。

通过简单的学习,不管是终端设备商、平台服务商、通信运营商、网络设备服务商、解决方案提供商的技术人员,还是企业管理人员,都能够基于AIRIOT快速构建物联网应用平台,不仅可节约开发的时间成本和人工成本,也让企业自己的人员能够自主开发物联网应用平台,让平台开发人员更加关注企业的业务本身和物联网平台的实用效果,而不是开发编程。

AIRIOT的可视化功能使其成为一款所见即所得的物联网平台通用开发工具,是快速开发稳定健壮的物联网应用平台的必备软件;此外,AIRIOT内部集成了丰富的驱动,已成为各类物联网设备驱动翻译器,也是为万物互联赋能的新型平台开发工具。

2.AIRIOT特性

(1)模型化管理

AIRIOT采用模型化管理设计,将一类事物或设备属性抽象为统一的模型,通过一次模型配置,实现同类型设备复用的效果,配置的属性包括基础属性、设备配置、报警配置、流计算数据点、画面配置、地理信息配置、网络检查、自定义属性、事件配置等,模型化的实现增强了管理的统一性、便捷性和高效性。

(2)快速的图形化业务流程开发

AIRIOT采用React+Antd技术,并支持移动端H5技术,支持任意组件进行动画配置、布局配置、事件配置等,用户可以通过拖曳组件的方式实现业务流程开发,大幅缩减开发成本和周期,提高开发效率。

(3)自定义报表

AIRIOT的报表是系统参数显示的记录表格,支持用户自定义,可根据实际需要显示参数,并可随时修改。报表可以制作二级表头,同时报表筛选也支持用户自定义,提升了报表的灵活性。

(4)智能报警

AIRIOT支持简单和复杂逻辑报警规则自定义,用户可根据业务需求定制报警规则和报警信息的全方位推送,实现精准报警,避免误报漏报。同时,AIRIOT支持报警信息大数据分析,通过报警模型优化设计,实现资产的智能预诊。

(5)高效的数据自由采集

AIRIOT支持两百余种常见的主流驱动及私有协议,包括通用驱动(Modbus/TCP、OPC-DA、OPC-UA、MQTT等)、无线驱动(Lora、OneNet等)、厂商驱动(AB、西门子、倍福等)、行业驱动等,目前已覆盖市场在用设备的95%以上,可实现各类设备、系统数据的快速接入;同时,支持基于SDK快速开发驱动,提供便捷的在线调试工具,提高开发效率。

(6)海量数据高效处理

AIRIOT适配国产时序数据库涛思TDEngine、兼容influxDB等国内外主流时序数据库。其中,TDEngine采用分布式高可靠架构设计,完全去中心化的时序数据处理引擎,写入速度达100万数据点/秒,读取速度达1000万数据点/秒,适用于高速增长的物联网大数据应用场景,还提供缓存、数据订阅、流式计算等功能,最大程度降低研发和运维的复杂度。

AIRIOT实时流计算功能支持用户可以根据自身数据需求,通过自定义算法,实时地对平台数据进行统计、计算及映射,实现对数据的实时统计与计算。

(7)便捷、友好的二次开发

AIRIOT提供Go、Java、Node、Python等多语言SDK工具包、丰富的API及相关文档,用户可进行组件、接口服务、任务(计算)服务和驱动程序的快速开发、发布与运行。

(8)强大的系统集成能力

AIRIOT目前已集成了地理信息系统(Geographic Information System,GIS)、视频监控系统(海康威视、大华等)、安防系统、工单系统等数十种主流应用系统。

1.1.2 AIRIOT的系统架构

物联网系统架构是物联网系统组成的抽象描述,AIRIOT采用B/S架构,符合工业物联网国家标准GB/T 33474--2016,实现了包括数据采集、设备接入、资源管理、建模分析和应用开发、可视化展示等方面的功能。AIRIOT的系统架构如图1-1所示,从底层到上层包括边缘层、基础层、平台层、应用层和展示层等。

图1-1 AIRIOT的系统架构

1.边缘层

物联网使用大量的联网传感器和执行器来监视和控制生产及运行过程,这些传感器和执行器的集合称为边缘层,典型的边缘层节点位于或接近它所服务的机器。AIRIOT边缘层接入提供设备、传感器及仪器仪表、PLC/DCS及第三方系统接入。

2.基础层

基础层又称基础服务层(Infrastructure as a Service,IaaS),为系统提供基础设施服务,如处理器、内存、存储、网络及其他基本计算资源,用户可在该层部署和运行任意软件,包括操作系统和应用程序。

3.平台层

平台层又称平台服务层(Platform as a Service,PaaS),为系统提供平台服务,用户不需要管理或控制IaaS层的基础设施,但能控制部署应用程序,也能控制运行应用程序的托管环境配置。AIRIOT平台层提供通用PaaS平台资源部署和管理、大数据存储、建模分析、应用开发环境和微服务库等服务,保证用户方便、快捷地构建物联网平台。

4.应用层

应用层又称软件服务层(Software as a Service,SaaS),主要为用户提供各种业务和管理服务,用户可以在各种设备上通过Web浏览器、APP等客户端访问系统资源,无须关注基础设施。AIRIOT应用层提供了大量业务服务和基础服务程序,用户可根据实际需要,方便地构建应用。

5.展示层

展示层是基于浏览器的前端展示界面,显示所有的设备信息、资产信息、生产数据报表等以及实时报警信息,并提供交互友好的前端操作界面。可实现包括可视化大屏在内的多终端无缝切换展示,多终端包括PC终端、移动终端等,展示内容支持用户自定义。同时,支持3D技术或集成3D模型,对应用场景、资产实现统一化展示和管理。

1.1.3 AIRIOT的安装部署

AIRIOT平台部署基于容器技术,使用容器技术将应用打包成镜像文件,应用容器化管理,实现应用服务独立、灵活的自动化部署,从而快速构建安全、高性能的物联网应用平台。AIRIOT支持多种部署方式:①支持分布式集群部署与单机部署,适应不同业务场景,为用户带来更多选择;②支持跨平台部署,可在Linux、Windows等操作系统及ARM、X86处理器架构部署运行;③持公有化及私有化部署,可将应用部署到公有云、私有云和混合云中。

1.单机部署

单机部署将应用、采集、中间件、支撑服务、数据库等全部部署在一台服务器上,通过执行安装包脚本程序,一键式安装部署并自动启动。单机部署结构如图1-2所示。

2.分布式集群部署

分布式是将不同的业务分布在不同的服务器上,以缩短单个任务的执行时间来提升效率,集群是将若干台服务器集中在一起实现同一业务,通过提高单位时间内执行的任务数来提高效率。分布式集群部署适用于数据量大、性能要求高的大规模应用场景。AIRIOT支持分布式集群部署,根据系统应用规模将应用程序、数据库、采集程序等服务分布式部署在独立的服务器上,从而提高数据接入能力、数据库存储能力、可靠性、可用性和扩展性。分布式部署架构如图1-3所示。

图1-2 单机部署结构

图1-3 分布式部署架构

3.云环境部署

云环境部署基于容器方式,依托IaaS云资源服务,将应用服务独立、灵活地部署在云环境中,具备自动化部署、大规模可伸缩、应用容器化管理能力,从而可构建安全、高性能的应用云平台;支持基于用户需求快速创建、自由组合、灵活复用的应用系统,从而提供特色化、规模化、定制化等服务。AIRIOT可将现有各种业务能力进行整合,具体可以归类为应用服务、业务能力接入、业务引擎、业务开放平台,向下根据业务能力需要提供测算基础服务能力,通过IaaS提供的API调用硬件资源,实时监控平台的各种资源,并将这些资源通过API开放给SaaS用户。云环境部署架构如图1-4所示。

图1-4 云环境部署架构

4.单机部署示例

(1)Windows系统部署AIRIOT

AIRIOT可在支持虚拟化的Windows专业版、企业版和家庭版等系统中部署,推荐Windows 10专业版或企业版,版本号为15063+,家庭版版本号为19018+,具体部署步骤如下。

1)查看系统版本:在Windows系统部署AIRIOT时应首先查看系统版本,Windows 10系统版本可在系统信息界面查看,打开系统信息界面步骤如图1-5所示,在桌面双击“此电脑”,在“此电脑”界面菜单栏单击“计算机”→“系统属性”,打开系统信息界面,如图1-6所示,在“Windows规格”项可以看到操作系统版本,此处版本为Windows 10专业版,版本号为19041.450,高于AIRIOT推荐的15063,满足部署要求。如果查询到的版本及版本号不满足部署要求,则需更新Windows操作系统。

图1-5 打开系统信息界面步骤

图1-6 系统信息界面

2)配置系统:通过http://airiot-edu.cn页面或扫描本书封底二维码下载安装包,解压安装包后进入安装包目录,首先右击“setup.bat”,选择以管理员身份运行,安装过程中请勾选Linux container模式(若有该选项),其余保持默认,安装完成后重启计算机。

3)安装AIRIOT:双击“install.bat”,完成AIRIOT安装。

4)查看IP:在命令行输入ipconfig,查看IP地址,如图1-7所示。

图1-7 命令行查看IP地址

5)打开系统:打开浏览器,在地址栏输入“IP地址:端口号/admin”(IP地址和端口号之间有英文冒号“:”,AIRIOT默认端口号为3030)后按<Enter>键,打开AIRIOT平台初始化界面,如图1-8a所示,在AIRIOT平台初始化界面设置管理员密码并提交。随后选择场景并提交,如图1-8b所示,场景有个人版和企业版,个人版主要用于教学、创新研究、工程技术人员等免费使用,企业版主要是服务于企事业单位用户,此处选择个人版。最后进行系统配置,输入“系统名称”“系统版权信息”,设置“系统logo”,选择“系统布局”和“系统主题”,如图1-8c所示。提交后进入登录界面,输入管理员账号(admin)及密码(之前设置的密码),进入AIRIOT后台页面,如图1-9所示。至此,系统安装完成。

图1-8 AIRIOT平台初始化界面

a)设置管理员密码 b)选择场景 c)系统配置

图1-9 AIRIOT后台页面

注意:安装容器时根据系统版本不同,会有开启“Hyper-V”或“WSL 2”的选项,此处为“WSL 2”,各项选择默认安装即可。如果为“Hyper-V”,则需先开启Hyper-V功能,步骤如下:“控制面板”→“程序”→“程序和功能”→“启用或关闭Windows功能”→勾选“Hyper-V”→“确定”。开启Hyper-V功能具体操作如图1-10所示,开启完成后按要求重启计算机。

图1-10 开启Hyper-V功能具体操作

(2)Linux系统部署AIRIOT

AIRIOT支持Linux系统安装部署,要求内核版本3.10.0及以上。在Linux系统部署较简单,步骤如下。

1)将安装包复制到“/root”目录下,执行解压缩,解压缩命令为“tar-zxvf xxx.tar.gz”,其中“xxx”为安装包名。

2)解压完成后在当前目录下出现“app”目录,进入“app”目录,命令为“cd app”。

3)在“app”目录下执行安装,命令为“./install.sh”。

4)安装完成后,用浏览器打开“IP地址:端口号/admin”,出现AIRIOT初始化界面,安装完成。

1.1.4 AIRIOT平台规划

AIRIOT规划分为前台和后台,两者相互分离,提供不同的入口。前台为现场用户入口,主要用于现场用户实时查看资产运行状态等。后台为开发工程师入口,开发工程师通过后台制作画面、配置模型及资产、配置权限等,同时可将二次开发的组件和服务部署于后台,最终在前台展示给用户。

AIRIOT前台入口为“IP地址:端口号”,前台页面如图1-11所示,前台页面显示的所有内容及页面结构均通过后台进行设置,默认页面为上下结构,上方为用户希望前台能够使用的菜单项,此处设置了系统Logo(标志)、名称、主菜单(资产管理、在线状态、报表查看和数据分析)、报警提示及时间,下方为页面内容。

图1-11 前台页面

AIRIOT后台入口为“IP地址:端口号/admin”,后台页面如图1-9所示,页面为左右结构,左侧为系统主菜单,右侧包括平台模块(常用)、平台操作流程和授权信息三部分内容。系统主菜单用图标表示,将光标置于图标处,图标右侧自动出现菜单名称。

主菜单从上往下依次如下。

1)模型管理978-7-111-67273-9-Chapter01-12.jpg:用于模型配置。

2)资产管理978-7-111-67273-9-Chapter01-13.jpg:用于资产配置。

3)权限管理978-7-111-67273-9-Chapter01-14.jpg:用于权限配置。

4)操作日志978-7-111-67273-9-Chapter01-15.jpg:用于查看操作日志。

5)工作表978-7-111-67273-9-Chapter01-16.jpg:用于设计工作表。

6)在线编辑978-7-111-67273-9-Chapter01-17.jpg:用于配置扩展项目。

7)授权信息978-7-111-67273-9-Chapter01-18.jpg:用于授权管理。

8)系统操作978-7-111-67273-9-Chapter01-19.jpg:用于重新加载驱动。

9)报警处理978-7-111-67273-9-Chapter01-20.jpg:用于报警管理。

10)画面管理978-7-111-67273-9-Chapter01-21.jpg:用于画面管理。

11)事件管理978-7-111-67273-9-Chapter01-22.jpg:用于事件管理。

12)地理信息978-7-111-67273-9-Chapter01-23.jpg:用于地理信息配置。

13)数据分析978-7-111-67273-9-Chapter01-24.jpg:用于数据分析。

14)功图数据978-7-111-67273-9-Chapter01-25.jpg:用于显示功图数据。

15)其他主菜单978-7-111-67273-9-Chapter01-26.jpg:该菜单与页面高度有关,包含了其他未被列出的主菜单。

16)用户管理978-7-111-67273-9-Chapter01-27.jpg:用于个人设置、修改密码和退出系统。

17)系统设置978-7-111-67273-9-Chapter01-28.jpg:用于系统设置。

1.1.5 AIRIOT的授权

AIRIOT部署完成后需首先查看授权,具体步骤如下。

(1)查看授权信息

单击主菜单“授权信息”978-7-111-67273-9-Chapter01-29.jpg图标,打开系统授权信息页面,如图1-12所示。授权信息包括“我的授权”“升级授权”和“我的驱动(网关)”三个部分,其中“我的授权”包含创建时间、有效时间、终端数、用户数量和模型节点数,图中有效时间为“36406/36500”,表示总有效时间36500天,剩余有效时间36406天。

图1-12 系统授权信息页面

(2)升级授

“升级授权”包含我的机器码、联系我们和上传文件。剩余有效时间为负值时,表示授权过期,需升级授权,可将机器码复制,发送至销售人员获取授权文件,并将授权文件拖至指定位置。