1

我正在通过 java、bacnet4j 项目使用 bacnet。我可以意识到如何获得我的设备的值,我的模拟值和数字值。

但我怎样才能改变它们?如何使用 bacnet4j 获取/设置值?

最好的问候,瓦尔特·恩里克。

4

1 回答 1

3

我认为您应该查看第 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))));
于 2012-03-31T00:52:18.083 回答