使用VTS读写deviceobject数值

工具:

bacserv:模拟一个bacnet device server,里面有相应的object

clip_p_w_picpath002

VTS(visual test shell)工具:bacnet的测试工具,可以当做一个bacnet device,也可以分析bacnet报文,但需要手动操作,其中报文扑捉需要winpcap

clip_p_w_picpath004

VTS依赖工具:

clip_p_w_picpath006

步骤:

先装winpcap,然后直接启动vts,如下:

在另一台电脑启动一个bacserv

clip_p_w_picpath008

设置vts的参数:

clip_p_w_picpath010

clip_p_w_picpath012

clip_p_w_picpath014

设置IP

clip_p_w_picpath016

选择要读的object,因为在bacserv里有analog-output,0的object,选择一个属性propert,这里是present-value,然后按send

clip_p_w_picpath018

下面是发送出去跟回来的报文:

clip_p_w_picpath020

绿色箭头是发送:

clip_p_w_picpath022

clip_p_w_picpath024

回收,可以看到其数值是real型的‘10’:

clip_p_w_picpath026

clip_p_w_picpath028

而在bacserv里也会有一个:“RP:Sending Ack!”的信息

clip_p_w_picpath030

然后在用writeproperty把analog-output,0这个object改掉其present-value的值为14。点writeproperty,然后选响应的选项,最后选value里选择real,数值为14.

clip_p_w_picpath032

clip_p_w_picpath034

点send,这时bacserv里会有一个回应:

clip_p_w_picpath036

而vts也会有两个报文:

clip_p_w_picpath038

发送:

clip_p_w_picpath040

clip_p_w_picpath042

回收:

clip_p_w_picpath044

clip_p_w_picpath046

这时在用readproperty来读analog-output,0的present-value的值,看到数值以改为14:

clip_p_w_picpath048

clip_p_w_picpath050