工业软件的云端综合实战

这篇具有很好参考价值的文章主要介绍了工业软件的云端综合实战。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

工业软件简介

“工业软件是工业技术/知识、流程的程序化封装与复用,能够在数字空间和物理空间定义工业产品和生产设备的形状、结构,控制其运动状态,预测其变化规律,优化制造和管理流程,变革生产方式,提升全要素生产率,是现代工业的灵魂。”(2020年中国工业技术软件化产业联盟发布的《中国工业软件产业白皮书》给工业软件的定义)。

工业软件分类

业界常规分类方法,按照所服务的业务环节,工业软件通常可以分为四大类,分别是研发设计类(如CAD)、生产制造类(如MES)、经营管理类(如ERP)和运维服务类。

工业软件的特点

管理软件强,工程软件弱,低端软件多,高端软件少。

大家都用过有金蝶的产品,比如ERP、CRM这一类的,在国内有蛮多产品,但是CAD等卡脖子的工程软件国内却很少见。为什么会这样?我认为,首先是管理类软件的技术门槛较低,而工程软件的技术门槛和投入时间成本都比较高,长期下来,追赶不易。

专业性强而易用性差。

企业累积了所在行业的工业知识,形成了一系列算法,从而打造出工业软件,但很容易出现一些架构问题,比如在追求功能的时候忽略了它的易用性。

源码庞大,历史债务重,学习成本高,迭代速度慢。

以上问题同时也导致它的代码整体上缺乏一个整体的架构,代码逻辑会容易出现一种混乱的状态,长期下来它会容易出现技术债,使得企业积累不够,且新人学习成本过高,进而导致研发团队迭代速度相对较慢。

工业软件的“上云”挑战

首先,代码量复杂性高,各个库、应用间关系复杂,甚至耦合到需要重构的程度,当中还存在多种编程语言,学习成本不是一般的高。部分代码一旦要重构解耦,更会反过来影响产品的稳定性。

其次,在软件重构上云期间,旧的业务还在持续迭代,旧的代码还在膨胀,如何稳定过渡又是一个难题。

最后,解决迭代问题还需要解决不同业务团队DevOps不一致的问题,每个团队的认知不一样,技术水平不一样,管理水平也不一样,这会影响到团队间的协同性,最终影响迭代速度。如果还缺乏有效的协同工具,这是问题会呈几倍甚至几十倍的放大。

工业软件云端实战(三维家)

搭建整体云端架构

技术架构分为数据层,核心服务层,应用层
  1. 数据层
    根据产品形态和技术要求,从最初采用阿里云演变到目前的混合云。从最初的SQL数据库,演变到目前SQL、NoSQL、文档数据库、图数据库多种数据源。我们认定未来3-5年里大数据是我们的核心技术方向之一。因此,我们建立了大数据平台,统一管理数据,提供高可用分布式集群服务,进行相关的大数据挖掘,为客户提供更加精准的服务。

  2. 核心服务层
    核心服务层里,我们的3D云设计、3D云制造、3D建模等都是云原生的服务,根据业务特点,采用了Serverless、Service Mesh、边缘服务等服务形式。

  3. 应用层
    从一开始重前端,到现在重后端,始终贯彻着云工业软件的理念。对外提供WebAssembly应用、Node.js插件、API、小程序插件等等即插即用,独立发版的服务或应用。

在这演变过程中,技术栈划分后端技术栈、前端技术栈、渲染技术栈、AI技术栈、建模技术栈,完成团队体系搭建。同时搭建自己的项目质量管理体系PMS,建立自己的研发双流模型。建立自己的DevOps,提供敏捷统一的迭代发版服务。

难点

  1. WebAssembly落地难点
  • 第一点

    关于WebAssembly的多线程限制问题,WebAssembly是支持多线程的,我们 编 译 时 指 定 一 些 编 译 参 数 就 行 。 但 WebAssembly 的 多 线 程 是 有 限 制 的 , 因 为 WebAssembly多线程设计的共享线性内存与sharedArraybuffer有关,而shareArraybuffer因 为目前存在Spectre和Meltdown安全漏洞而被一些浏览器禁用的,谷歌也要参数设置后才 能开启。因此WebAssembly多线程的广泛应用还需要等待一些大厂支持。

  • 第二点

    WebAssembly的初始化耗时一般较长,比如我们引擎的WebAssembly加载就达到秒级,这时候我们可以尝试利用WebAssembly的异步加载机制来提高速度,使用onRuntimeInitialized函数完成回调。

  • 第三点

    关 于 WebAssembly 的 内 存 和 垃 圾 回 收 这 个 老 大 难 问 题 。 目 前 , WebAssembly能使用的最大内存是有限制的,各个浏览器的限制都不同,一般为2G,最多支持4G。而且它的垃圾回收机制还在Roadmap里,仍然遥不可及。所以,对内存要求高的工业软件,需要考虑降低内存的要求和采取一些优化方法,比如严格的内存管理机制,大内存的转移或及时释放都是可行的手段。但需要注意一点是WebAssembly数据内存转移到浏览器JavaScript这层的是有巨大的性能开销的。

  • 第四点

    包体过大。这个主要是复杂应用遇到的问题,因为我们的代码量太大了,百万级的代码量,编译出来的WebAssembly大小达到了80-100多兆.我们采取的措施有调整Emscripten的编译参数,提前编译.a库利用llvm本身的优化管线,编译进行抖动和分步加载,最终达到我们可以接受的大小。

  • 第五点

    SIMD指令的使用,这个对三维家这种存在高密度计算的工业软件来说,是一个福音。我们在CAD高密度计算上进行了一些尝试,有着不错的实验性能的提升。但这个特性也是还没有被广泛支持,需要谨慎使用。

  1. AI落地过程中的问题
  • 没有统一的技术架构

    首先我们当初做AI的时候,也是从0到1的一个过程。其实最开始我们是没有一个统一的技术架构,迭代效率是偏慢的。刚开始也没有统一的训练平台,每个开发人员都各自搞一套。别人维护起来很困难。

  • 过度依赖深度学习

    我们前期过渡依赖深度学习,深度学习有一个特点就是它的结果无法解释,也无法控制,导致模型的准确性很依赖训练数据和标注,而且出现不正确结果时,无法向客户解释为什么会出现这样的结果,也无法定向修复。所以,后面我们改用深度学习+知识图谱解决了这个问题。比如我们的布局使用深度学习求得初始解,再用知识图谱进行推理得到最终布局。

  • 与业务过于耦合

    AI算法人员与业务过于耦合,也就是AI算法人员既要写算法也要管工程化落地。这就涉及我们之前提过的一点战术,搞好技术团队建设。我们后期将AI工程化落地团队和算法团队分开,采用业务架构师的方式完成两个团队间的整合,让专业的人干专业的事,这样,我们公司去年的AI还是取得了不错的成绩。

  • AI资产管理

    什么是AI资产,我认为数据集、AI算法模型、数据清洗算法、知识抽取算法等等都是AI资产,将来是可能形成市场生态的。我们原来的AI资产是散乱地放在各个开发的硬盘里,没有版本管理,没有备份,甚至人走了,这资产也跟着没了。当我们想对原算法进行重新训练迭代的时候,有时候我们竟然找不到原来的数据集,或者找到但已经被改得面目全非的数据集。可想这是多大的一种损失。所以,后期我们就在云端把AI资产管理起来,设置版本,存放备份等等。这些都有成熟的平台,我们尽量不要重新造轮子。华为、腾讯、百度这些大厂都有。

踩坑经验总结

战略层面

1.  知己知彼:知己是了解目前产品和代码现状,梳理目前产品涉及的技术和痛点。
    2.  磨刀不误砍柴工:做好顶层设计,做好体系建设,做好协作方式。
    3.  柿子挑软的捏:先做最小闭环MVP验证项目的可行性,再不断迭代优化。

战术层面

1.  基础体系建设:云原生Paas体系、项目质量管理体系、技术团队体系。
    2.  统一技术栈:梳理公司技术栈,统一公司大的技术栈,终止百家齐放,各自为政的局面。
    3.  确定新旧业务交互方式及数据流转:新旧业务既要做好隔离,也要做好兼容,对旧业务逐步替换。
    4.  拒绝重复造轮子:有意识地积极使用现有的成熟技术方案和工具,阿里云,腾讯云有的梯子可以使用,开源的工具如性能内存分析工具、语言转换工具也可以用。

展望-工业软件未来的的方向

云化

云化不仅让企业从硬件资源和运维部署中解放出来,还让企业从完善的云基础设施中获得产品迭代的提速,为集成化服务提供良好条件。同时,产品程序也将更加稳定。工业软件云化有两种核心形式,一是WebAssembly方式云化,一是云原生化。

AI化

最近,AIGC、ChatGPT等概念大热。随着AI技术的高速发展,AI与工业互联网也将更深度融合,推进工业设计、制造、物流、营销、决策等产品全生命周期的变革。

以家居行业为例,以前设计师做一张设计图需要几天时间。现在通过AI算法,三维家软件能进行户型识别,自动完成户型绘制,选择风格就能一键布置全屋,并完成精美的打灯效果。设计师在AI技术的赋能下,几分钟就可完成方案设计,效率提高几十倍,这就是AI带来的生产力变革。

在生产环节,三维家通过AI学习审拆单规则,能够一键完成审拆单,出错率远远低于人工,并帮助家居企业提高效率。

一体化

未来的工业软件是一体化的,提升企业效率需要一体化的工业软件。这是我从三维家全新的前后端一体化解决方案得到的启示。前后端一体化,指从设计到生产全链路一体化,数据和行业标准一体化,CAD/CAE/CAM等流程一体化。

虚实结合

随着VR/AR技术的进一步成熟,它将为工业领域提供数字化呈现、交互及协同支持,通过Web3D技术将虚拟空间和Web结合,将能让用户获取更真实的交互体验和更逼真的表现效果。而WebGPU的深化,可让工业软件在3D以及计算方面的能力大大的增强,虚实映射、虚实叠加、虚实联动构建起工业元宇宙,将会为我们展开更具想象力的未来图景。文章来源地址https://www.toymoban.com/news/detail-405829.html

到了这里,关于工业软件的云端综合实战的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 近40个开源的工业软件-工业4.0

    不同的工业流程,需要不同的工业软件。面向研发设计环节的开源软件,今天就来介绍一下面向生产控制环节的开源软件,主要为可编程逻辑控制器(PLC)、分布式控制系统(DCS)、生产执行系统(MES)、仓库管理系统(WMS)。 先从最靠近硬件端的 PLC 开始吧。 1、openPLC Open

    2024年02月04日
    浏览(41)
  • 专业140+总410+合工大合肥工业大学833信号分析与处理综合考研经验电子信息与通信工程,真题,大纲,参考书。

    一、专业课: 833信号分析与处理综合是两门,信号和数字信号处理,复习内容较多,大家专业课要早点开始,由于近年数学难度一再提高,专业课成了高分突破的法宝,我当时先准备报考中科大843也是信号和数字信号处理,一直跟Jenny老师的中科大843专业课辅导课,不熟悉

    2024年02月20日
    浏览(44)
  • 体验文心一言AI大模型生成防城港和南京工业大学简介

    防城港是广西壮族自治区辖地级市,地处中国大陆海岸线的最西南端,背靠大西南,面向东南亚,南临北部湾,与钦州市、南宁市、崇左市相连,西南与越南接壤,海岸线长584公里,陆地边境线长230公里,是北部湾畔唯一的海景生态城市,被誉为“西南门户、边陲明珠”。

    2024年02月11日
    浏览(52)
  • Baumer工业相机堡盟工业相机软件CameraExplorer常见功能使用说明

    Baumer工业相机堡盟相机是一种高性能、高质量的工业相机,可用于各种应用场景,如物体检测、计数和识别、运动分析和图像处理。 Baumer的万兆网相机拥有出色的图像处理性能,可以实时传输高分辨率图像。此外,该相机还具有快速数据传输、低功耗、易于集成以及高度可扩

    2024年02月04日
    浏览(45)
  • 昇腾工业质检应用实战

    随着新一轮科技革命和产业变革的加速演进,全球各国都在借助新技术推动制造业升级,从工业2.0自动化开始兴起,到工业3.0信息化普及,如今正迈向工业4.0智能化。借助IoT、工业大数据、人工智能等先进技术实现从低端劳动密集型产业向高端科技型产业的制造升级。 在应用

    2024年02月13日
    浏览(43)
  • [工业互联-12]:主流的工业以太网技术简介(PROFINET、POWERLINK、ETHERNET/IP、ETHERCAT、SERCOSIII、MODBUS TCP、CC-LINK IE)

    目录 前言: 1、工业通信要求 1.1 工业通信网络分层模型 1.2 工业控制的实时性要求 2.  以太网技术 2.1 协议分层 2.2 实时应用 3. 常见工业以太网技术 3.1 PROFINET通信 3.2 POWERLINK通信 3.3 EtherNet/IP通信 3.4 EtherCAT通信 3.5 SERCOSIII通信 4.  工业以太网技术比较 4.1 市场占有 4.2 实时性

    2024年02月10日
    浏览(57)
  • Baumer工业相机堡盟工业相机如何通过NEOAPISDK设置软件触发模式(C#)

    Baumer工业相机堡盟相机是一种高性能、高质量的工业相机,可用于各种应用场景,如物体检测、计数和识别、运动分析和图像处理。 Baumer的万兆网相机拥有出色的图像处理性能,可以实时传输高分辨率图像。此外,该相机还具有快速数据传输、低功耗、易于集成以及高度可扩

    2024年01月21日
    浏览(51)
  • 6个主流的工业3D管道设计软件

    3D 管道设计软件是大多数行业工程工作的主要部分,例如: 电力、石油和天然气、石化、炼油厂、纸浆和造纸、化学品和加工业。 全球各工程公司使用了近 50 种工厂或管道设计软件。 每个软件都有优点和缺点,包括价格点。 EPC 和业主部门当前的趋势是走向管理、设计、制

    2024年02月11日
    浏览(46)
  • Baumer工业相机堡盟工业相机如何通过NEOAPI SDK设置软件触发模式(C++)

    Baumer工业相机堡盟相机是一种高性能、高质量的工业相机,可用于各种应用场景,如物体检测、计数和识别、运动分析和图像处理。 Baumer的万兆网相机拥有出色的图像处理性能,可以实时传输高分辨率图像。此外,该相机还具有快速数据传输、低功耗、易于集成以及高度可扩

    2024年01月17日
    浏览(55)
  • hadoop实战(综合实验)

    导入数据集 数据预处理 删第一行 导入脚本 2.字段预处理 但是报错 awk: line 4: runaway string constant \\\" … sh文件有误 处理结果 导入数据库 启动hadoop txt上传hdfs中 3. 在hive上创建数据集 启动hive 创建数据库 创建外部表 查询相关数据 简单查询分析 第一次尝试,只有ok没输出数据 原因

    2024年02月09日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包