企业用户在运营中心中创建工厂模型和工艺路径,工厂模型包括企业所有的工厂、车间、产线、加工中心,加工中心下再指定生产设备,工厂模型参考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"
}