去评论
距米网-精简版

一篇文章来了解PTC的产品生态链

JUMU
2019/07/22 21:29:51



大家知道PTC是著名的CAD软件公司,其拳头产品Pro/E(现命名为Creo)在模具设计、汽车发动机和零部件设计中得到了
广泛应用

但是近几年来,特别是在14年后收购了ThingWorx和Kepware之后,PTC越来越多地进入制造运营过程。

01 PTC的产品矩阵

● CAD/设计:CREOparametric(Pro/ENGINEER)

● CAE/分析:CREOsimulate(Pro/MECHANICA)

● PLM/产品生命周期管理:Windchill

● ALM/软件生命周期管理:Integrity

● MOM/制造运营:ThingWorx

● SLM/服务生命周期管理:Servigistics


这些产品覆盖了设计、制造、售后的完整过程。

在制造方面,ThingWorx由3大产品组成:ThingWorx、Kepware、Vuforia,这3大产品分别收购自不同公司,最后统一整合到ThingWorx平台和解决方案下面。



这其中,ThingWorx是物联网开发平台,Kepware是OPC服务器和物联网网关,Vuforia是AR开发平台。

从PTC的发展轨迹可以看到,PTC首先是一家设计解决方案供应商,然后才是一家制造解决方案供应商,也就是说先有数字化,再有制造。

这点和达索比较类似,先有Catia和Solidworks,然后借助收购Apriso进入MES领域。


02 重点介绍ThingWorx平台

为什么要说ThingWorx是数字化制造全家桶呢?因为PTC把Kepware和Vuforia都纳入ThingWorxa工业物联网解决方案了。

Vuforia是在AR/VR概念最火的时候收购的,主要是用于增加现场运维的体验。

Kepware大家都很熟悉,是应用最广泛的OPC服务器,借助其IoT Gateway可以很方便地搭建物联网网关。PTC给它另起了个名字ThingWorx Industrial Connectivity,然后在Kepware和ThingWorx之间建立了一个高速通信协议AlwaysOn,这样ThingWorx可以方便快速地从Kepware获取远程数据。

而ThingWorx本身是一个开发平台和运行环境。ThingWorx借鉴了面向对象建模的理念,支持对象(Thing)、类(Template)、属性(Property)、方法(Service)、事件(Event),此外还提供一个SCADA开发和运行环境(Mashup)。

ThingWorx通过IndustrialConnection实现和控制层集成,通过Integration Connection实现和应用系统集成。

ThingWorx平台本身提供一个PostgreSQL数据库,也可以通过安装ODBC扩展库的方式,实现和主流数据库的集成。

此外,PTC还官方提供了一个ManufacturingApp扩展库,包括:

基本上涵盖了SCADA的典型应用场景。

利用此扩展库,可以很方便地对一个小型工厂快速建模执行监控。

03 ThingWorx平台的一些特点

① 特点一:对Kepware的完美支持。
你可以把ThingWorx看成一个OPC Client,无需借助任何编程,就可以对OPC TAG进行远程读写处理。

但是这里有一个限制。由于ThingWorx是面向对象的,任何一个属性必须指定对应的Thing,因此在进行常规读写的时候,必须要为每一个OPC TAG绑定ThingWorx.Thing.Property。因此TAG必须是静态的,如果要进行动态读写,则必须另外编写Service,调用Kepware REST Server进行读写。

② 特点二:对REST API的完美支持。
ThingWorx平台创建的Thing/Template/Mashup等对象都可以通过REST API直接开放给外部系统,且可以直接点击查看属性、方法等。但这里也有一个限制,外部看到的接口已经没有了继承的信息,所以一些对象的属性、方法会非常之多。

③ 特点三:实时数据存储非常方便。
ThingWorx内建的ProgreSQL数据库主要包含2类数据:对象模型和业务数据,均采用NOSQL的数据结构,通常包括以下字段:模型(如Stream)、数据引用对象(如某台机床)、时间戳、数据类型、数据名称(如某工艺参数)、数据值。这种方式和关系型数据库差异非常大。比如一台机床有多个参数,通常在关系型数据库中我们用多个字段记录,数据会记录在同一行内。但是在ThingWorx,每个参数对应一行记录。这种方式非常有利于对所谓实时数据的处理,如设备温度值始终在变化,而其它参数变化很少,那么用关系型数据库记录的话就会非常浪费,而用NOSQL记录的话只记录变化的字段,有效节省了存储空间,提升了查询效率。限制是,系统只记录当前各字段(属性)的关系,而所有历史关系则丢失了。因此如果有复杂的业务逻辑,还是需要用关系型数据库进行补充。

④ 特点四:项目的组成部分关系松散。
在开发项目时,所有的组成部分如Thing、Stream、Mashup并没有一个严格的、层级明确的结构,而是通过Model Tag和Project Tag进行标记,因此较为分散,缺乏项目整体感。