实验步骤
登录IOC环境
使用Chrome浏览器访问并登录设施云IOC环境。
![]()
创建项目
点击左侧菜单【设备运维】->【设备开局】

点击【创建项目】图标。
![]()
输入【项目名称】,点【确定】,项目创建成功。
![]()
点击项目图标进入项目。
![]()
导入并注册设备
新建一个【设备信息表模板.xlsx】文件,将以下设备信息复制到文件中。
序号 |
*控制器类型 |
*设备名称 |
*设备编号 |
*设备型号 |
设备描述 |
*厂家ID |
*厂家名称 |
属性上报周期 |
*所属HLink网关序列号 |
1 |
DDC |
LABEQ1 |
LABEQ1-HW-SZ_J1_F2_1A05-1 |
HTFC-A-NO15 |
demo |
ShangFeng |
ShangFeng |
5秒 |
SimulatorGW03 |
需修改【设备名称】和【设备编号】为环境唯一的值,设备编号仅支持英文大写、数字、中划线和下划线,且必须包含三个中划线。
![]()
进入【机电设备】页签,点击【导入设备信息】,导入【设备信息表模板.xlsx】文件。
![]()
导入完成后点击【查询】,看到设备导入成功。
![]()
点击【注册设备】图标,显示设备注册成功,注册状态变为【注册到IoT平台成功】。
![]()
导入配盘表
进入【配盘表】页签,点击【创建盘号或控制器】图标。
![]()
填入盘号为【DDC-1】,点击【确定】。注意,盘号必须与之后导入的盘号匹配,因此不要修改。
![]()
点击创建出来的盘号,再点击创建图标。
![]()
输入控制器起始序号为【1】,点击【确定】。注意,控制器序号必须与之后导入的序号匹配,因此不要修改。
![]()
新建【通用配盘表模板.xlsx】文件,将以下配盘表信息复制到文件中。
*序号 |
*盘号 |
*控制器序号 |
*控制器类型 |
*控制器型号 |
*控制器点号 |
*点位类型 |
*点位名称 |
点位描述 |
*设备名称 |
控制器SN |
*信号类型 |
最小值 |
最大值 |
输入量程下限 |
输入量程上限 |
输出量程下限 |
输出量程上限 |
1 |
DDC-1 |
1 |
DDC |
DDC17 |
UI-4 |
BI |
RunState |
运行状态 |
LABEQ1 |
SIMDDC00300010001 |
Dry Contact Maintained |
|
|
|
|
|
|
2 |
DDC-1 |
1 |
DDC |
DDC17 |
UI-5 |
BI |
MA |
手自动状态 |
LABEQ1 |
SIMDDC00300010001 |
Dry Contact Maintained |
|
|
|
|
|
|
3 |
DDC-1 |
1 |
DDC |
DDC17 |
UI-6 |
BI |
FaultAlarm |
报警状态 |
LABEQ1 |
SIMDDC00300010001 |
Dry Contact Maintained |
|
|
|
|
|
|
4 |
DDC-1 |
1 |
DDC |
DDC17 |
UI-3 |
AI |
CO |
一氧化碳 |
LABEQ1 |
SIMDDC00300010001 |
0-10VDC |
0 |
100 |
0 |
10 |
0 |
100 |
5 |
DDC-1 |
1 |
DDC |
DDC17 |
BO-1 |
BO |
SetFanStartSwitch |
风机启停 |
LABEQ1 |
SIMDDC00300010001 |
24VDC Maintained |
|
|
|
|
|
|
导入前需修改【设备名称】为之前设置的值。
![]()
点击新创建出来的控制器,点击【导入配盘表】,导入【通用配盘表模板.xlsx】文件。
![]()
点击【查询】,看到导入成功。
![]()
创建场景并关联设备
进入【场景编排】页签,点击【创建场景】。
![]()
输入【场景名称】,点击【确定】。
![]()
点击【场景编排】按钮。
![]()
点击【场景编排】按钮。
![]()
新建【排风机COdemo.json】文件,将以下在MessageFlow开发好的编排逻辑粘贴到文件中。
[{"id":"49ffe281.ba9b8c","type":"tab","label":"业务流程1","disabled":false,"info":"","platforms":["x86_64"]},{"id":"46a87b32.66815","type":"Input","z":"49ffe281.ba9b8c","name":"1 - [排风机_V1.1]一氧化碳","deviceDef":"ExhaustAirFan_V1.1","deviceAttr":"CO","deviceNo":"1","pointType":"input","protocolType":"bacnet","ioAttribute":{"dataType":"Float"},"trigger":"ed9f79ba.5ff128","deviceId":"","gatewayId":"","ioInfo":{},"dataType":"Float","outputArr":[{"name":"I1","type":"float","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":0,"editable":true},"bacnetExposed":{"value":0,"editable":true},"emulation":{"value":"0"}},{"name":"Priority","type":"float","defaultValue":{"value":16,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":7,"editable":true},"bacnetExposed":{"value":0,"editable":true},"emulation":{"value":"0"}}],"test":{"emulation":0,"enable":false},"version":"0.9.0","x":165,"y":256,"wires":[["1b8c9284.1df423","31873696.cfbbf2"]]},{"id":"1b8c9284.1df423","type":"BA compare greater than","z":"49ffe281.ba9b8c","size":"0","name":"","active":false,"wire":[1,0,0],"inputArr":[{"name":"Input1","type":"float","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":6,"editable":true},"bacnetExposed":{"value":0,"editable":true}},{"name":"Input2","type":"float","defaultValue":{"value":30,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":6,"editable":true},"bacnetExposed":{"value":0,"editable":true}},{"name":"Differential","type":"float","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":6,"editable":true},"bacnetExposed":{"value":0,"editable":true}}],"outputArr":[{"name":"Present Value","type":"boolean","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":false},"displayPrecision":{"value":0,"editable":false},"bacnetExposed":{"value":0,"editable":true}}],"version":"0.9.0","x":511.5,"y":178.5,"wires":[["1e0a8f5b.b35245"]]},{"id":"31873696.cfbbf2","type":"BA compare less than","z":"49ffe281.ba9b8c","size":"0","name":"","active":false,"wire":[1,0,0],"inputArr":[{"name":"Input1","type":"float","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":6,"editable":true},"bacnetExposed":{"value":0,"editable":true}},{"name":"Input2","type":"float","defaultValue":{"value":20,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":6,"editable":true},"bacnetExposed":{"value":0,"editable":true}},{"name":"Differential","type":"float","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":6,"editable":true},"bacnetExposed":{"value":0,"editable":true}}],"outputArr":[{"name":"Present Value","type":"boolean","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":false},"displayPrecision":{"value":0,"editable":false},"bacnetExposed":{"value":0,"editable":true}}],"version":"0.9.0","x":510.5,"y":299,"wires":[["1e0a8f5b.b35245/1"]]},{"id":"1e0a8f5b.b35245","type":"BA timing latch","z":"49ffe281.ba9b8c","size":"0","name":"","active":false,"wire":[1,1],"inputArr":[{"name":"Input","type":"boolean","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":false},"displayPrecision":{"value":0,"editable":false},"bacnetExposed":{"value":0,"editable":true}},{"name":"Reset","type":"boolean","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":false},"displayPrecision":{"value":0,"editable":false},"bacnetExposed":{"value":0,"editable":true}}],"outputArr":[{"name":"Present Value","type":"boolean","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":false},"displayPrecision":{"value":0,"editable":false},"bacnetExposed":{"value":0,"editable":true}}],"version":"0.9.0","x":697.5,"y":224.5,"wires":[["dbe59f81.b427e"]]},{"id":"dbe59f81.b427e","type":"BA selection bool to enum trans","z":"49ffe281.ba9b8c","name":"","active":false,"attribute":[[0,0],[1,1]],"inputs":1,"wire":[0],"inputArr":[{"name":"I1","type":"boolean","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":0,"editable":true},"bacnetExposed":{"value":0,"editable":true}}],"outputArr":[{"name":"Present Value","type":"enum","defaultValue":{"value":0,"editable":true},"units":{"value":387,"editable":true},"displayPrecision":{"value":0,"editable":true},"bacnetExposed":{"value":0,"editable":true}}],"version":"0.9.0","x":929.5,"y":224.5,"wires":[["4ff160bb.0be8dc"]]},{"id":"4ff160bb.0be8dc","type":"Output","z":"49ffe281.ba9b8c","name":"1 - [排风机_V1.1]风机启停控制","deviceId":"","deviceDef":"ExhaustAirFan_V1.1","deviceService":"SetFanStartSwitch","deviceNo":"1","pointType":"output","protocolType":"bacnet","ioAttribute":{"dataType":"ENUM"},"gatewayId":"","ioInfo":{},"dataType":"ENUM","inputArr":[{"name":"O1","type":"enum","defaultValue":{"value":0,"editable":true},"units":{"value":387,"editable":true},"displayPrecision":{"value":0,"editable":true},"bacnetExposed":{"value":0,"editable":true}},{"name":"priority","type":"float","defaultValue":{"value":16,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":7,"editable":true},"bacnetExposed":{"value":0,"editable":true}}],"version":"0.9.0","x":1279,"y":224,"wires":[]},{"id":"ed9f79ba.5ff128","type":"device-trigger","z":"","name":"5s/次","repeat":"5000","version":"0.9.0"}]
点击以下图标,导入【排风机COdemo.json】文件。
![]()
导入成功后,点击【下一步】。
![]()
将之前新建的设备【LABEQ1】拖至左侧,点击【下一步】。
![]()
![]()
点击保存。
![]()
点击【生成】。
![]()
由于本实验使用的是模拟设备,此时需提供设备开局的【项目名称】、【场景名称】、【控制逻辑模板内容(和场景编辑时上传的json内容一致)】发邮件至hicampus@huawei.com邮箱,联系智慧园区运营进行控制逻辑模板导入。
之后,点击【部署】图标, 成功后,状态变为【部署成功】。
![]()
由于本实验使用的是模拟设备,此时需发邮件至hicampus@huawei.com邮箱,联系智慧园区运营部署仿真控制逻辑。
配置设备组态页
进入【系统管理】->【数据配置】->【设备组态配置】。
![]()
点击【新增设备组态】。
![]()
填入【设备组态名称】,可与设备同名,【组态图地址】为【/magno/render/HiCampus__BASProject_0000000000jZP4LkS8CO/A_01_01
】,其余如图所示,点击【确认】。
![]()
查看结果
进入【设施管理】->【设备列表】。
![]()
点击【详情】,即可看到【设备组态图】。
![]()
![]()
等待CO点位上报,发现当CO为36时,风机自动开启,当CO为16时,风机自动关闭。
![]()
![]()
智慧园区设施云组态配置实验
版本说明
本示例不涉及SDK。
实验简介
本实验基于AppCube上的智慧园区设施云系统,进行设备组态的相关配置。实现新增一个排风机设备,并根据模拟上报的一氧化碳CO浓度值,自动启停排风机的业务场景。当CO浓度高于30PPM,排风机启动,低于20PPM,排风机关闭。
实验前提
请发邮件至hicampus@huawei.com邮箱,联系智慧园区运营获取实验账号密码。
实验步骤
登录IOC环境
使用Chrome浏览器访问并登录设施云IOC环境。
创建项目
点击左侧菜单【设备运维】->【设备开局】
点击【创建项目】图标。
输入【项目名称】,点【确定】,项目创建成功。
点击项目图标进入项目。
导入并注册设备
新建一个【设备信息表模板.xlsx】文件,将以下设备信息复制到文件中。
需修改【设备名称】和【设备编号】为环境唯一的值,设备编号仅支持英文大写、数字、中划线和下划线,且必须包含三个中划线。
进入【机电设备】页签,点击【导入设备信息】,导入【设备信息表模板.xlsx】文件。
导入完成后点击【查询】,看到设备导入成功。
点击【注册设备】图标,显示设备注册成功,注册状态变为【注册到IoT平台成功】。
导入配盘表
进入【配盘表】页签,点击【创建盘号或控制器】图标。
填入盘号为【DDC-1】,点击【确定】。注意,盘号必须与之后导入的盘号匹配,因此不要修改。
点击创建出来的盘号,再点击创建图标。
输入控制器起始序号为【1】,点击【确定】。注意,控制器序号必须与之后导入的序号匹配,因此不要修改。
新建【通用配盘表模板.xlsx】文件,将以下配盘表信息复制到文件中。
导入前需修改【设备名称】为之前设置的值。
点击新创建出来的控制器,点击【导入配盘表】,导入【通用配盘表模板.xlsx】文件。
点击【查询】,看到导入成功。
创建场景并关联设备
进入【场景编排】页签,点击【创建场景】。
输入【场景名称】,点击【确定】。
点击【场景编排】按钮。
点击【场景编排】按钮。
新建【排风机COdemo.json】文件,将以下在MessageFlow开发好的编排逻辑粘贴到文件中。
[{"id":"49ffe281.ba9b8c","type":"tab","label":"业务流程1","disabled":false,"info":"","platforms":["x86_64"]},{"id":"46a87b32.66815","type":"Input","z":"49ffe281.ba9b8c","name":"1 - [排风机_V1.1]一氧化碳","deviceDef":"ExhaustAirFan_V1.1","deviceAttr":"CO","deviceNo":"1","pointType":"input","protocolType":"bacnet","ioAttribute":{"dataType":"Float"},"trigger":"ed9f79ba.5ff128","deviceId":"","gatewayId":"","ioInfo":{},"dataType":"Float","outputArr":[{"name":"I1","type":"float","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":0,"editable":true},"bacnetExposed":{"value":0,"editable":true},"emulation":{"value":"0"}},{"name":"Priority","type":"float","defaultValue":{"value":16,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":7,"editable":true},"bacnetExposed":{"value":0,"editable":true},"emulation":{"value":"0"}}],"test":{"emulation":0,"enable":false},"version":"0.9.0","x":165,"y":256,"wires":[["1b8c9284.1df423","31873696.cfbbf2"]]},{"id":"1b8c9284.1df423","type":"BA compare greater than","z":"49ffe281.ba9b8c","size":"0","name":"","active":false,"wire":[1,0,0],"inputArr":[{"name":"Input1","type":"float","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":6,"editable":true},"bacnetExposed":{"value":0,"editable":true}},{"name":"Input2","type":"float","defaultValue":{"value":30,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":6,"editable":true},"bacnetExposed":{"value":0,"editable":true}},{"name":"Differential","type":"float","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":6,"editable":true},"bacnetExposed":{"value":0,"editable":true}}],"outputArr":[{"name":"Present Value","type":"boolean","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":false},"displayPrecision":{"value":0,"editable":false},"bacnetExposed":{"value":0,"editable":true}}],"version":"0.9.0","x":511.5,"y":178.5,"wires":[["1e0a8f5b.b35245"]]},{"id":"31873696.cfbbf2","type":"BA compare less than","z":"49ffe281.ba9b8c","size":"0","name":"","active":false,"wire":[1,0,0],"inputArr":[{"name":"Input1","type":"float","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":6,"editable":true},"bacnetExposed":{"value":0,"editable":true}},{"name":"Input2","type":"float","defaultValue":{"value":20,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":6,"editable":true},"bacnetExposed":{"value":0,"editable":true}},{"name":"Differential","type":"float","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":6,"editable":true},"bacnetExposed":{"value":0,"editable":true}}],"outputArr":[{"name":"Present Value","type":"boolean","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":false},"displayPrecision":{"value":0,"editable":false},"bacnetExposed":{"value":0,"editable":true}}],"version":"0.9.0","x":510.5,"y":299,"wires":[["1e0a8f5b.b35245/1"]]},{"id":"1e0a8f5b.b35245","type":"BA timing latch","z":"49ffe281.ba9b8c","size":"0","name":"","active":false,"wire":[1,1],"inputArr":[{"name":"Input","type":"boolean","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":false},"displayPrecision":{"value":0,"editable":false},"bacnetExposed":{"value":0,"editable":true}},{"name":"Reset","type":"boolean","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":false},"displayPrecision":{"value":0,"editable":false},"bacnetExposed":{"value":0,"editable":true}}],"outputArr":[{"name":"Present Value","type":"boolean","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":false},"displayPrecision":{"value":0,"editable":false},"bacnetExposed":{"value":0,"editable":true}}],"version":"0.9.0","x":697.5,"y":224.5,"wires":[["dbe59f81.b427e"]]},{"id":"dbe59f81.b427e","type":"BA selection bool to enum trans","z":"49ffe281.ba9b8c","name":"","active":false,"attribute":[[0,0],[1,1]],"inputs":1,"wire":[0],"inputArr":[{"name":"I1","type":"boolean","defaultValue":{"value":0,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":0,"editable":true},"bacnetExposed":{"value":0,"editable":true}}],"outputArr":[{"name":"Present Value","type":"enum","defaultValue":{"value":0,"editable":true},"units":{"value":387,"editable":true},"displayPrecision":{"value":0,"editable":true},"bacnetExposed":{"value":0,"editable":true}}],"version":"0.9.0","x":929.5,"y":224.5,"wires":[["4ff160bb.0be8dc"]]},{"id":"4ff160bb.0be8dc","type":"Output","z":"49ffe281.ba9b8c","name":"1 - [排风机_V1.1]风机启停控制","deviceId":"","deviceDef":"ExhaustAirFan_V1.1","deviceService":"SetFanStartSwitch","deviceNo":"1","pointType":"output","protocolType":"bacnet","ioAttribute":{"dataType":"ENUM"},"gatewayId":"","ioInfo":{},"dataType":"ENUM","inputArr":[{"name":"O1","type":"enum","defaultValue":{"value":0,"editable":true},"units":{"value":387,"editable":true},"displayPrecision":{"value":0,"editable":true},"bacnetExposed":{"value":0,"editable":true}},{"name":"priority","type":"float","defaultValue":{"value":16,"editable":true},"units":{"value":0,"editable":true},"displayPrecision":{"value":7,"editable":true},"bacnetExposed":{"value":0,"editable":true}}],"version":"0.9.0","x":1279,"y":224,"wires":[]},{"id":"ed9f79ba.5ff128","type":"device-trigger","z":"","name":"5s/次","repeat":"5000","version":"0.9.0"}]
点击以下图标,导入【排风机COdemo.json】文件。
导入成功后,点击【下一步】。
将之前新建的设备【LABEQ1】拖至左侧,点击【下一步】。
点击保存。
点击【生成】。
由于本实验使用的是模拟设备,此时需提供设备开局的【项目名称】、【场景名称】、【控制逻辑模板内容(和场景编辑时上传的json内容一致)】发邮件至hicampus@huawei.com邮箱,联系智慧园区运营进行控制逻辑模板导入。
之后,点击【部署】图标, 成功后,状态变为【部署成功】。
由于本实验使用的是模拟设备,此时需发邮件至hicampus@huawei.com邮箱,联系智慧园区运营部署仿真控制逻辑。
配置设备组态页
进入【系统管理】->【数据配置】->【设备组态配置】。
点击【新增设备组态】。
填入【设备组态名称】,可与设备同名,【组态图地址】为【/magno/render/HiCampus__BASProject_0000000000jZP4LkS8CO/A_01_01
】,其余如图所示,点击【确认】。
查看结果
进入【设施管理】->【设备列表】。
点击【详情】,即可看到【设备组态图】。
等待CO点位上报,发现当CO为36时,风机自动开启,当CO为16时,风机自动关闭。
修订记录