0

历时9个月重构iNeuOS工业互联网操作系统,打造工业领域的“Office” - iNeuOS工业互联网...

 1 year ago
source link: https://www.cnblogs.com/lsjwq/p/16998991.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

1.      概述... 1

2.      整体介绍... 2

3.      主要功能简介... 5


  1.   概述

    历时9个月的时间,对iNeuOS工业互联网操作系统进行全面重构,发布内部测试版本。重构的主要目的:工程化的框架优化,更好的聚焦工业领域业务发展。重构也是保障产品能够可持续发展的重要手段,同时兼顾产品的安全性和稳定性。此次重构的主要特点:

(1)代码层面,进一步统一框架,优化代码;功能层面,提高易用性;运行层面,提高执行效率。

(2)整体框架支持租户,全面支持云端化部署与应用。

(3)前端优化渲染引擎,渲染能力提高10%左右;后端代码执行效率提高3%-5%,实时数据存储空间降低5%。

(4)前后端全面采用模块化开发,提高二次开发效率和更好满足业务定制化开发的需求。

(5)重构系统70%的功能使用“低代码”平台完成开发,基本上具备了“机器”创造“机器”的能力。

2.   整体介绍

      开发或选择一款软件产品是一件很不容易的事情,很难同时兼顾满足高质量的代码、漂亮的界面和解决场景实际问题

    (1)大部分开发者都懂得对代码重构,但是大部分开发者又不具备推倒重构代码的勇气,特别是针对框架性的代码。此次对iNeuOS的前端框架、后台接口和后台服务进行了全面重构。经常有用户问我们需要什么样的技术要求才能够进行二次开发?有1年左右工作经验,大概1周左右就能够上手了。

      前端框架统一采用VUE框架,主要满足以数据驱动为核心的工程化的业务功能开发与应用,进行组件化开发,减少业务功能开发的代码量,同时增强代码的可读性。代码如下图:

279374-20221222160122498-1557811807.png

      后台接口主要采用NET6(C#)开发语言,框架进行模块化设计,系统功能就像搭建乐高积木一样,主要满足领域业务需求不固定、变化多的特点,能够很快实现功能需求的定制化,同时又能够满足功能之间共性需求的提炼与抽象,进一步形成产品设计。代码如下图:

279374-20221222160146542-1942121535.png

      后台服务主要采用NET6(C#)开发语言,算法和机器学习部分采用python开发语言。此次对后台服务进行重构的目标主要体现在执行效率上,优化内存分配机制,使变量和数组能够在连续的内存区域上,确保访问的安全性和高性能。代码如下图:

279374-20221222160206755-602794089.png

     (2)界面实现了传统菜单导航(Menu Navigation)和窗体应用(Windows)之间的切换。看似是样式上的改变,其实是对前端和后端代码的较大改动。系统默认采用Windows应用模式,但是也有很多用户喜欢传统菜单导航的模式,此次升级也做了兼容性适配。

      窗体应用(Windows),如下图:

279374-20221222164153181-1909446603.png

      传统菜单导航(Menu Navigation),如下图:

279374-20221222164209166-1940458194.png

       (3)在实际场景化应用方面,产品化+定制化能够解决现场的实际问题,做到落地可实施。

     从设计理念来看,它具备操作系统的特点:即接、即用、即分析、即显示,开放式的二次开发。

     从以数据为中心的角度看,数据流程化应用:设备驱动(数据交互驱动)、服务驱动(数据事务处理驱动)、设备模型(设备实时通信及处理)、业务模型(数据分组建模)、资产模型(数据空间规则提取)、计算平台(数据计算与预警)、数据分析、数据转发(多层级系统部署)、视图建模(2D/3D数据展示)、视频转换(视频数据展示)、工艺优化控制(数据联动控制)、算法分析(数据算法分析)、Excel报表设计(数据报表模板设计与应用)、表单开发(“低代码”开发业务功能)和用户权限等;

     从更高级的信息化系统建设来看,完全可以在iNeuOS平台基础上承建产线级、企业级、集团级或行业级的物联网平台、大数据平台或是工业互联网平台,进一步构建设备管理、能源管理、环保管理、安全系统、工艺管理等子系统一体化的平台管控系统;

     从部署及应用来看,系统完全支持跨平台部署在windows、linux、docker及国产操作系统,可以实现部署在嵌入式网关(资源少)、PC机、服务器上;

     从应用行业来看,已经应用在煤炭、钢铁、镍矿、环保、水务、纸业、加工制造、核能、设备厂家等领域。

3.   主要功能简介

   注:功能介绍功能图为测试环境下的截图

 (1)支持Modbus、PLC、机床和行业非标设备等共总119个设备驱动协议,支持高并发数据采集和反向控制。如下图:

279374-20221222160242429-1907672991.png

 

279374-20221222160320705-1295030795.png

   (2)视图建模组态,支持5500多个2D/2.5D的SVG矢量图元信息;支持obj、gltf和fbx格式的3D模型上传到组态中,关联数据驱动模型部件;支持标题、数据点、按钮、视频监控、容器、图片和时间等组件;支持折线图、柱状图、限值预警图、饼图、油表图、进度图、液位图、雷达图等;支持自定义画图元信息,包括:自由绘制、箭头、直线、虚线、圆、椭圆、长方形、直角、等边三角等;支持自定义动作规则,进行预警、改变颜色、闪烁、跳动、旋转等,支持动作响应优先级设置。如下图:

279374-20221222160338130-1599360001.png

   (3)报表设计支持秒、时、日、月和年自定义报表样式,自定义配置数据展示的模板,绑定数据源及配置数据的小数位、数据显示方向、填充数位(显示多少条数据)、统计(均值、和值、最小值、最大值、中位数和众数)。如下图:

279374-20221222160355541-1716465745.png

   (4)“低代码”线表单开发工具,支持的表单组件丰富。可让用户通过拖拽配置的方式配置表单的增删查改,支持添加\更新数据唯一性验证,解放用户对于基础表,父子表、多表关联父子表的开发编辑工作。如下图

279374-20221222160413307-1816937241.png

   (5)计算预警,支持数学运算符和函数对数据点进行复杂的计算,支持创建多个计算任务,支持逻辑规划推理,并对结果进行消息推送。如下图:

279374-20221222160431188-1863226474.png

   (6)算法分析,算法包括:快速傅里叶变换、包络分析、倒频谱和自相关等。会对当前数据点进行数据的基本汇总统计:数据量、均值、最大值和最小值等;还会对数据点的原始值和算法分析结果进行图形化展示。如下图:

279374-20221222160446670-438815118.png

   (7)资产模型(机器学习),支持通用机器学习算法和集成自定义模型算法,对工况的多维数据空间训练模型,提取工况对应的规则,结合数据空间的实时数据预测对应的工况。如下图:

279374-20221222160504363-1774087105.png

   (8)工艺优化联动控制支持在线开发业务脚本,支持多个生产过程联动控制任务, 脚本引擎支持内置函数:控制命令(ctrl)、控制延迟(delay)、获得当前参数(getpara)、保存中间变量值(save)、控制启动(start)、控制停止(stop)、最新数值(getvalue)和打印日志(log)。如下图:

279374-20221222160517140-2122044603.png

   (9)设备运维业务大屏统计功能主要统计当前系统设备数量、预警设备数量、通讯正常、通讯干扰、通讯中断及按设备区域统计和统计预警信息。展示效果,如下图:

279374-20221222160611303-136306717.png

物联网&大数据技术 QQ群:54256083

物联网&大数据项目 QQ群:727664080
QQ:504547114
微信:wxzz0151
博客:https://www.cnblogs.com/lsjwq


  购买《物联网软件架构设计与实现》:京东购买

279374-20221114160356094-1776711555.png

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK