我正在通过 java、bacnet4j 项目使用 bacnet。我可以意识到如何获得我的设备的值,我的模拟值和数字值。
但我怎样才能改变它们?如何使用 bacnet4j 获取/设置值?
最好的问候,瓦尔特·恩里克。
我正在通过 java、bacnet4j 项目使用 bacnet。我可以意识到如何获得我的设备的值,我的模拟值和数字值。
但我怎样才能改变它们?如何使用 bacnet4j 获取/设置值?
最好的问候,瓦尔特·恩里克。
我认为您应该查看第 199 行和第 214 行的 WritePropertyRequest 和 WritePropertyMultipleRequest,例如在 bacnet4j Test.java 示例文件(在测试文件夹中查找)中使用的。
这是这些行的一个片段:
// Write a value:
System.out.println(send(d,
new WritePropertyRequest(created, PropertyIdentifier.presentValue, null, new UnsignedInteger(5), null)));
// Write multiple values:
List<WriteAccessSpecification> writeSpecs = new ArrayList<WriteAccessSpecification>();
List<PropertyValue> pvs = new ArrayList<PropertyValue>();
pvs.add(new PropertyValue(PropertyIdentifier.presentValue, new Real(6.7f)));
pvs.add(new PropertyValue(PropertyIdentifier.highLimit, new Real(10f)));
pvs.add(new PropertyValue(PropertyIdentifier.lowLimit, new Real(0f)));
writeSpecs.add(new WriteAccessSpecification(created, new SequenceOf<PropertyValue>(pvs)));
System.out.println(send(d,
new WritePropertyMultipleRequest(new SequenceOf<WriteAccessSpecification>(writeSpecs))));