虚拟设备与表达式
# 进阶
本节学习当真实的设备无法满足客户的需求时,如何使用虚拟设备或者表达式来实现客户的需求。
# 项目一
# 项目需求
某项目安装了三个温湿度设备分别为温湿度#2、温湿度#3、温湿度#4。其设备号分别为2、3、4
需要在一个设备中同时获取三个温湿度设备的温度数据
若温湿度#2的温度比温湿度#3的温度高5度则报警。
# 操作步骤
- 添加三个温湿度设备
添加三个温湿度设备
- 添加虚拟设备
操作步骤
- 在设备管理页面选择产品管理,点击新增产品按钮。
- 选择驱动文件GWVirtualEquip.STD.dll。
- 填入其它必填项
- 点击确认按钮
- 为刚添加的虚拟产品添加三个遥测量,遥测量的操作命令应填入对应真实设备的设备号,操作参数,应填入对应真实设备测点的测点号。
操作步骤
添加三个测点完成后可以在设备管理中添加一个虚拟设备
添加完成后可以在设备列表中的虚拟温度设备中看到三个温湿度设备的温度实时值。
- 添加一个虚拟数值计算设备
操作步骤
- 在设备管理页面选择产品管理,点击新增产品按钮。
- 选择驱动文件GWExpression.STD。
- 填入其它必填项
- 点击确认按钮
- 为刚添加的虚拟数值计算产品添加遥信量。遥信量的操作命令里填入表达式 $C1(2,1)-$C1(3,1)<=5其中 $C1(2,1) 表示2号设备的1号遥测点不带单位的数值,$C1(3,1) 表示3号设备的1号遥测点不带单位的数值。
操作步骤
添加遥信量后,在设备管理中添加一个虚拟数值计算设备
在设备列表上选择虚拟温湿度#2,通过设置“温湿度#2”设备的温度为99度,效果如下所示:
# 附:敢为物联网平台中的表达式:
有效的一元运算符: -,~,!
有效的二元运算符:*,/,%,+, - ,<,<=,>,> =,==,=,&,^,&&,||。
括号是最优先的运算
说明:
$E(8)---表示8号设备的实时状态:返回值意义0(不通讯),1(通讯正常),2(有报警),3(正在进行设置),4(正在初始化),5(撤防)
$C(3,2)---表示3号设备2号测点的实时模拟量(包括单位)。
$C1(3,2)---表示3号设备2号测点的实时模拟量(不包括单位)。
$C2(3,2)---表示3号设备2号测点的实时模拟量(包括测点名称+单位)。
$ASC(3,2)---表示3号设备2号测点的报警状态。(报警为true)
$X(1,3)---表示1号设备3号测点的实时状态量(包括测点名称)。
$X1(1,3)---表示1号设备3号测点的实时状态量(不包括测点名称)。
$ASX(1,3)---表示1号设备3号测点的报警状态。(报警为true)
至此通过实现使用虚拟设备和表达式来实现真实设备不能满足的客户需求,学习了虚拟设备和表达式的使用方法。
上次更新: 2024/1/9 17:23:44