中年|工业软件是一个脑力装配行业,需要生态体系建设


来源:知识自动化
工业软件活力不断
经过六十多年的发展 , 工业软件不仅没有看到任何衰退的拐点 , 反而从产品深度和新技术的融入 , 呈现了年轻人一般的活力 。 可以说 , 工业软件是正当壮年 。 各种工业软件公司 , 在其已经构建的工业学科基础上 , 突破屏障 , 向生命科学、智慧城市、增材制造、纳米材料等更多领域突破 。
工业软件 , 呈现了知识软件化 , 和空间数字化的结合 。 软件化是把产品从市场开发到制造的整个过程 , 所涉及的知识与流程都实现固化的特征 , 而数字化是把物理世界的对象及其关系 , 都通过数据方式进行呈现 。 工业软件的发展历史进程中 , 随着产品对象和制造设备的不同 , 会产生出不同的软件形态 。
工业软件 , 由于以代码的形式躲在硬件的后面 , 无形无影 , 很少有人会去思考的它的形状和构成 。 就像水流一样 , 既无法区分它的形状身段 , 也难以对它进行切分 。
然而令人惊讶的是 , 工业软件其实是一个以组件为主的装配行业 。 它的构成 , 呈现了强烈的积木特征 , 从而构成了一个极其独特的隐形组件形态 。
软积木的装配行业
从产业角度看 , 工业软件的开发过程是在加速的 。 这是因为 , 它的共性部分 , 逐渐被抽离出来定义商业化 。 这一点本来并不值得奇怪 。 早在CAD刚刚诞生不久 , 它的几何内核就被逐渐剥离出来 。 英国剑桥大学CAD实验室是英国CAD的源头 , 1973年IanBraid在此完成了“体素设计”的博士论文 , 以此为基础创建了后来被称为Parasolid的几何内核 。 1986年美国Spatial Technology公司成立 , 同样邀请Ian Braid以及其导师与同窗合作 , 并以其名字首字母命名其产品ACIS, 促进了工业软件核心的组件化与产业化的进程 。 几何内核可以看成是工业软件之CAX软件“宇宙原力”的建模引擎 , 并且成功地商业化 。 Parasolid当前属于西门子工业软件PLM Components事业部 , 全球有近200多家软件公司使用Parasolid几何内核 。 2000年 , Spatial被达索系统收购 , 全球有近100多家软件公司使用 。 绝大部分CAD软件公司 , 都会使用这些几何内核 , 在此基础上开发自己的产品 。
这种将功能组件进行剥离并且商业化的思路 , 大大推动了工业软件社会化分工的发展 。
近60年的发展 , 工业软件早已经成为一个成熟的产业 。 跟汽车、飞机等一样 , 有着不同层面的成熟供应商与基于新技术发展中的供应商 。 一个机械CAD软件 , 可以分解成几十个组件 。 每个组件其实并没有想象中那么大的团队在维护 , 人数大概在30-200人之间 , 大部分是几十人的团队 。 各个有独特技术的公司都可以分一杯羹 。 这使得工业软件产品 , 正在由大部分自主研发 , 走向组合式的发展 。
过去传统的机械CAD软件公司 , 需要长达十年周期才可能商业化 。 而今天 , 只需投入200人左右花费2年的时间 , 就可以开发出面向行业的比较全面的基础模块(零件、装配体、工程图) 。 开发难度 , 正在降低 。
工业软件的四层组合
就像自然界一样 , 简单的食物链随着时间 , 也逐渐以分层的方式进行分化 。 时至今日 , 整个工业软件的产业界 , 已经发展出成熟的产业提供商(组件)的生态 。 分别为系统层、组件层、应用层和人机交互层 。

中年|工业软件是一个脑力装配行业,需要生态体系建设
本文插图
图1工业软件的四层架构
系统层是由操作系统、图形标准等构成 。 今天CAX软件一般都是建立在Windows操作系统之上 , UnixLinux也有一些 。 由于历史演进的原因 , 一些软件依然可以运行在Unix之上, 但随着时代发展 , 一些软件公司为了降低维护成本 , 未来主要以Windows系统和基于云的方式部署为主 。
如图2灰色部分是最基本的组件 , 这是构建CAX软件最基础、最核心组件 , 构成其产品属性的组件 。 比如:最底层的组件 , 几何引擎 , 它包括曲面建模、小面片建模与实体建模引擎 。 不管是CAD、CAE、CAM软件 , 目前国际化的商业软件基本都包含有其此类组件 。分页标题
组件的价值是提供各种算法 , 但它属于通用的 。 因为几何建模 , 是数学、图形学、计算机科学的结合物 , 可以广泛应用 。 作为CAD软件 , 最为核心之一就是几何建模引擎(内核) , 它代表了一款软件的基础能力 , 主要有三种方式 , 实体建模、小面片和曲面建模 。 这是三种主要的建模引擎 , 从这个意义讲 , 几何内核的数学特性已经达到了巅峰地步 , 很难有所突破 。 但并不是所有的几何建模引擎都支持这三种建模技术 , 或者说CAX都需要有这三种内核 。 工业软件根据用途分为很多类型 , 很多软件只需要其中一种或者两种 。 例如:非常活跃的创成式设计 , 就是实体建模+小面片的结合 。
如果要开发一款CAD软件 , 那至少还需要加上几何约束器;如果是CAE软件 , 那至少还需要加上网格剖分的组件(求解器属于应用层);如果是CAM软件 , 还至少还需要加上加工路径规划的组件;如果是机器人离线编程软件OLP , 那还需要加上机器人路径规划的组件等等 。 当然光有这些还不够 , 有的时候还需要打开其他软件设计的模型 , 那么这个时候还需要数据转换的组件;有的时候需要对画好的模型进行渲染 , 那还需要渲染的组件 。 越往上的组件 , 有的时候既可以作为组件 , 也可以作为产品 , 但很多时候主要以软件模块的方式存在 。

中年|工业软件是一个脑力装配行业,需要生态体系建设
本文插图
图2CAX软件的组件框架
By Vincent LU
如果说组件层 , 是可以进行商业化的组合 。 那么应用层 , 就是真正考验一个软件公司的功力的时候 。 它直接决定了一个软件的功能特性 。 这完全靠时间堆砌 , 这也决定了软件的生死 。
工业软件产业链的组装特性 , 最为典型的 , 发生在上个世纪90年代的Solidworks软件 。 一方面它是抓住了Windows界面的机会 , 另外不为人所熟悉的就是它率先大胆地采用了组件的思想 。 这家公司在1993年成立 , 而在1995年就开发上市一套令人耳目一新的3DCAD软件 。 这背后就是组件思想 , 或者是“模块装配” 。 就是基于产业链思想进行开发 。 Solidworks在此思想上发挥的淋漓尽致 。 有现成组件 , 绝不会自己开发 。 正因为基于这种思想以及把精力放在应用层(市场用户的需求上) , 迅速被达索系统盯上 , 在1997年就被收购 , 这似乎让它失去了更好的独舞表演机会 。 而它的创始人 , 在2012年再次出山 , 成立了一家三维云CAD:Onshape 。 这是人们最早开始在云端来实现三维设计的尝试 , 它也较好地融合了协同设计的特性 。 到了2015年 , 第一款新品得以发布 。 如此快速的时间 , 都是得益于软件的装配属性 。
知识装配 , 组件走向极致化
就像汽车行业一样 , 既然有零部件的类别 , 那么就有主要的零部件供应商公司了 。 工业软件行业内同样也是如此 。
工业软件CAX , 一般主要有11类的基础组件的供应商 。 随着新技术的发展 , 还在源源不断的增加 。 几何引擎最主要的产品主要有:Parasolid , ACIS , 这两款组件几乎覆盖全球最主要的CAX/AEC厂家 , 而开源几何引擎Open CASCADE(OCC)非常受国内CAX厂家的青睐 , 基本模块免费与开源, 其他模块要收费 。
几何约束器在商业化的MCAD厂家中几乎都是以DCM为主;而全球90%以上的商业化CAM软件公司 , 都在使用ModuleWorks与MachineWorks这两家公司的产品 , 用来生成加工刀路的路径 。 CAE中 , 不少大型CAE厂家在使用MeshGems作为网格剖分的引擎 。 而在数据转换器 , 供应商主要有两家:HoopsExhange与InterOp 。 而作为三维CAD另一个非常重要的组件几何约束器 , 几乎都是西门子收购的D-Cube公司DCM的天下 。
【中年|工业软件是一个脑力装配行业,需要生态体系建设】
中年|工业软件是一个脑力装配行业,需要生态体系建设分页标题
本文插图
图3CAX软件的外围供应商
(By Vincent LU)
组件是构建CAX软件的基础 , 在行业中 , 即使包括工业软件巨头 , 也不会所有的组件和产品都自己来做 , 这是产业发展成熟度的标志 , 正如特斯拉不会整车和零部件都靠自己来造 。 而组件是一个在不断发展的产业链 , 随着新技术的到来 , 产业链中会发展出不同的组件 。 组件最大的一个特点 , 它是某一类技术的集合 , 由点发展到线 , 再发展到面 。 学术层面主要是到点的层次或者线的层次 , 而要组件化 , 则还需要有一个产业化的过程 , 通过产业化与商业化的结合 , 通过不断的完善 , 带动组件发展起来 。
这种以组件形式存在的软件供应链 , 就是为了成本 , 提高效率 。 当然 , 在当今的环境下 , 也可能会成为一种危险的软件供应链的封锁术 。
发展的形态
工业软件最大的工程量与最核心的竞争力主要是在应用层 , 用户很少会关心用哪些内核 , 哪些组件 。 用户最关心的是 , 有哪些针对性的功能模块 , 是否好用 。 而对于中国工业软件厂商 , 要选择突破口 , 需要有一个理性的判断 。
组件产业的发展 , 不仅仅是在商业模式上 , 在产品开发的成本上都具有产业发展的特点 , 它直接影响其产品对应用层的延伸能力、性能、稳定性、健壮性 。 但是它与行业应用场景(应用层)不会直接产生关系 , 中间还有应用层的功能 , 应用层与用户行业相关 , 所以需要通过大量的时间与用户交互 , 才能完善其功能 。 在这里还是以MCAD软件为例 , 目前国际上最主要的MCAD主流软件(面对中小型市场) , 差不多有40个模块左右 , 一款高端MCAD软件 , 差不多有150个模块左右 。 其中实体建模、曲面、装配等为基本模块 , 而钣金、焊件、管路、模具等等为行业的应用层 , 后面还其他扩展模块 , 比如渲染、工业设计、高级曲面、公差分析等 。
应用层因为其与行业相关性非常高 , 可以做出垂直的特点 , 因此也成为工业软件真正百花齐放的地方 。 与此相反 , 通用型CAD/CAE的发展窗口 , 正在越来越狭小 , 后来者的机会越来越少 。 通用软件正在以平台化的方式快速发展 。 某国外CAD软件公司生态合作伙伴分类 , 有520多个第三方应用层模块 , 并且把全球与其合作的生态合作伙伴分为11大类 , 每一大类中还分成若干小类 , 几乎覆盖基于MCAD的CAD领域全球所有的第三方应用层模块公司 。
这些公司产品通常分为两种形式 , 一种是有自己独立的图形用户界面GUI , 独立进行销售 。 还有一种方式 , 就是作为模块的插件 , 使用其他载体产品的GUI , 通常会针对数个同类产品进行开发 , 借用后者成熟的渠道进入市场 。 这是更加隐形的软件模块 。

中年|工业软件是一个脑力装配行业,需要生态体系建设
本文插图
图4某国外CAD软件公司生态合作伙伴分类
By Vincent LU
从应用生态公司的发展路线来看 , 这些公司通常最终的宿命会被那些大公司收购 , 这个方面可以通过前端章节中看到各大公司的收购史 , 其中很大一部分公司在没有收购之前是以这些公司的插件形式进入市场 , 甚至有些软件都放弃自己的独立GUI方式开发 , 直接基于某款载体软件如MCAD或者CAE软件进行开发 。
目前国际上知名的工业软件公司 , 主要投入放在应用层的开发与收购上 。 从主要工业软件公司的规模与收入、成立时间与人员投入来看 , MCAD类的公司 , 规模是属于第一梯队的;CAE类公司规模属于第二梯队;绝大部分CAM类公司与其他模块属于第三梯队类的公司 。

中年|工业软件是一个脑力装配行业,需要生态体系建设
本文插图
图5部分公司成立时间与人员
By Vincent LU 分页标题
小记:大鱼和虾米的故事
正是由于工业软件的组装特性 , 产生了大量精于做各种组件的公司 。 这些丰富的小鱼生态 , 围绕大鱼的发展 , 从而让工业软件这个行业成为一个繁忙的并购王国 。
对于中国的发展而言 , 如果上来就盯着第一梯队或者第二梯队的佼佼者直接追赶 , 其实是很难有胜算的机会 。 因此走垂直行业的特色路线 , 才会有更好的商业潜力 。 而与此同时 , 真要建立一套独立可控的工业软件体系 , 必须同步培养一个丰富的组件生态 , 这才符合工业软件的装配特性 。 忙于扶持一家大的头部公司 , 而不考虑软件供应链的微生态 , 国产工业软件是很难发展壮大起来 。