企业用户在运营中心中创建工厂模型和工艺路径,工厂模型包括企业所有的工厂、车间、产线、加工中心,加工中心下再指定生产设备,工厂模型参考ISA95中的模型定义:

工厂模型查询

如果第三方应用业务需要用到工厂模型,可以通过API查询工厂模型或者采用订阅方式获得工厂模型变更通知。工厂模型集成的说明请参看创建工厂模型统一接口

工厂模型的集成可以分为如下几步:

创建工厂模型

在集成工作台或者数字工厂->设置中心-数据中心->工厂建模里面手动创建需要的模型,如下:

名词解释:

发布:发布的目的是确定此条数据不能修改编码,不能删除,数据发布后才能被三方应用使用,也就是只有发布的数据才能通过OPEN API读到。

归档:已发布不想使用的数据可以归档,归档后无法修改无法删除,数据归档后三方应用不能再使用。

查询工厂模型数据

参数解释:

参数名 描述 备注
id 元数据ID 唯一ID,主键,整个生命周期都不会变化
code 编码 租户维度唯一,发布后无法编辑,
name 名称 -
parentId 父节点ID 父亲节点ID,例如车间的parentId就是上一级工厂的ID
parentType 父亲节点类型 factory-工厂workshop-车间beltline-产线machiningCenter-加工中心technology-工艺路径process-工序step-步骤
flag 条目的发布状态 unpublish-未发布publish-已发布archive-已归档
orderIndex 条目的排序序号 -
attrs 扩展属性 扩展属性包括:属性名称、属性标识、属性值三个主要字段
deps 关联关系 产线可以关联到工艺路径加工中心可以关联到工序,deps主要是从工艺路径和工序维度查到的关联关系
pageId 分面查询时的页号 -
pageSize 分面查询时的页大小 -
appId 应用的实例ID(uuid) -
employeeId 阿里云账号的子账号ID -

工厂模型树可以用 查询工厂模型接口

{
  "code": 200,
  "message": "success",
  "localizedMsg": null,
  "data": {
    "factories": [
      {
        "id": 11063,
        "name": "注塑工厂",
        "code": "code_factory",
        "workShops": [
          {
            "id": 184,
            "name": "注塑车间",
            "code": "code_workshop",
            "beltlines": [
              {
                "id": 7382,
                "name": "注塑生产线",
                "code": "code_beltline",
                "machiningCenters": [
                  {
                    "id": 136,
                    "name": "注塑中心",
                    "code": "code_center",
                    "equipments": [
                      {
                        "name": "设备001",
                        "id": 22,
                        "code": "code-01",

                      }
                    ]
                  }
                ]
              }
            ]
          }
        ]
      }
    ],
    "page": {
      "pageid": 1,
      "pageSize": 1500,
      "total": 1
    }
  },
  "success": true
}

工厂、车间、产线、加工中心每一级都可以按照ID或者code来查询指定条目的详细信息,具体数据格式:

{
  "code": 200,
  "message": "success",
  "localizedMsg": null,
  "data": {
    "desc": "这是个工厂",
    "createTime": "2019-08-22 21:58:13",
    "modifyTime": "2019-10-15 19:49:58",
    "orderIndex": 11063,
    "id": 11063,
    "name": "注塑工厂",
    "code": "code_factory",
    "flag": "unpublish",
    "attrs": [
      {
        "enName": "factory_address",
        "value": "深圳南山区",
        "createTime": "2019-10-15 19:50:40",
        "modifyTime": "2019-10-15 19:50:40",
        "parentId": 11063,
        "parentType": "factory",
        "id": 39577,
        "name": "工厂位置",
        "code": null,
        "flag": null
      }
    ]
  },
  "success": true
}

可以获取指定加工中心下绑定的设备,具体数据格式:

{
  "equipments": [
    {
      "iotDeviceId": "",
      "usableCondition": "新建",
      "assetNum": "equipment2",
      "name": "生产设备2",
      "description": "equipment2",
      "id": 2,
      "equipmentModel": "2",
      "equipmentModelName": "日常模拟用设备型号",
      "brevityCode": "equipment2",
      "parentId": 136,
      "parentType": "machiningCenter"
    }
  ]
}

订阅工厂模型数据

除了主动查询工艺路径数据以外,工业应用也可以采用数据订阅的方式获取最新的工艺路径信息。

工厂建模变更通知数据格式:

(1)工厂建模数据格式:

{
  "action": "MODIFY",
  "code": "beltline_update_code",
  "id": 7203,
  "name": "beltline_update_name",
  "parentId": 151,
  "parentType": "workshop",
  "tenantId": "xxxxx",
  "type": "beltline"
}

参数

名称 类型 描述
action String 消息动作:INSERT-新增DELETE-删除MODIFY-修改
id Long ID
name String 名称
code String 编码
type String 类型:factory-工厂workshop-车间beltline-产线machiningCenter-加工中心equipment-设备technology-工艺路径process-工序step-步骤

通过type来区分是什么数据发生了变化,例如step就标识步骤数据发生了变化。

(2)扩展属性变更格式:

{
  "action": "INSERT",
  "enName": "attribute_en_name",
  "id": 37969,
  "name": "attribute_name",
  "parentId": 151,
  "parentType": "workshop",
  "tenantId": "xxxxxxxx",
  "type": "attribute",
   "tenantId": "xxxxxxx",
  "value": "attribute_value"
}

参数

名称 类型 描述
action String 消息动作:INSERT-新增DELETE-删除MODIFY-修改
id Long 属性ID
name String 属性名称
enName String 属性标识
value String 属性值
parentId Long 父节点ID
parentType String factory-工厂workshop-车间beltline-产线machiningCenter-加工中心technology-工艺路径process-工序step-步骤
type String 类型:attribute

(3)产线-工艺路径,加工中心-工序关联关系变更通知格式:

{
  "action": "INSERT",
  "id": 10120,
  "idType": "name0307",
  "depId": 10121,
  "depIdType": "",
  "depIdName": "",
  "depIdCode": "",
  "depIdDecs": "",
   "tenantId": "xxxxx",
  "type": "dependence"
}

参数

通过接口创建工厂模型

工业应用获得接口授权后,可以通过开放的API创建工厂模型,API说明文档参看创建工厂模型统一接口。创建工厂模型接口包括创建工厂、车间、产线、加工中心,关联设备,统一用此接口操作。输入参数的示例代码:

{
  "code":"xxxx",
  "name": "attribute_name",
  "parentCode": "xxx",
  "type": "workshop",
  "desc": "xxxxxxx"
}

通过接口更新工厂模型

工业应用获得接口授权后,可以通过开放的API更新工厂模型,API说明文档参看接口说明。更新工厂模型接口包括更新工厂、车间、产线、加工中心,关联设备的内容以及发布、归档该模型,统一用此接口操作。输入参数的示例代码:

{
  "code":"xxxx",
  "name": "name",
  "parentCode": "xxx",
  "type": "workshop",
  "desc": "xxxxxxx",
  "orderIndex":2,
  "flag":"publishSubNode"
}

或者

{
  "code":"xxxx",
  "name": "name",
  "parentId": "xxx",
  "type": "workshop",
  "desc": "xxxxxxx",
  "orderIndex":2,
  "flag":"publishSubNode"
}

通过接口删除工厂模型

工业应用获得接口授权后,可以通过开放的API删除还未发布的工厂模型,API说明文档参看接口说明。删除工厂模型接口包括删除工厂、车间、产线、加工中心,关联设备,统一用此接口操作。输入参数的示例代码:

{
  "code":"xxxx",
  "type": "workshop"
}

或者

{
  "id":"xxxx",
  "type": "workshop"
}

通过接口添加工厂模型属性

工业应用获得接口授权后,可以通过开放的API添加工厂模型属性,API说明文档参看文档说明。输入参数的示例代码:

{
  "name": "attribute_name",
  "enName":"属性标识",
  "value":"属性值",
  "parentCode": "xxx",
  "parentType": "workshop",//父节点类型,工厂:factory,车间:workshop,产线:beltline,加工中心:machiningCenter,工艺:technology,工序:process,步骤:step
  "desc": "xxxxxxx"
}