如何从VISSIM的COM接口获取探测器信息

How to get the detector information from the COM interface of VISSIM

如何从VISSIM的COM接口获取探测器的状态?

检测器,或者如 Vissim 所称,可以使用以下命令从 COM 获取数据收集测量值:

Detector = Vissim.Net.DataCollectionMeasurements.ItemByKey(detector ID) 

然后你可以检查所需的值,如果配备使用这个命令:

Speed = Detector.AttValue('Speed(Current,Avg,All)')

这将检索所有车道的当前平均速度。

我不懂 C#,但我知道如何从 VISSIM 的 COM 接口获取探测器的状态。

sim = CreateObject("VISSIM.Vissim.700")

Detector=sim.net.Detectors

Set deton = dets.itembykey(1)

想知道探测器是不是脉冲

a=deton.attvalue("Impulse")

如果你想知道这个检测器检测到的车辆速度,那么

b=detup1.attvalue("VehSpeed")

然后输出resu

guiSheet.Range("a1").Value = a
guiSheet.Range("b1").Value = b

请注意,您必须如下定义guiSheet

guiSheet = Worksheets("VISSIM")

然后就可以在VISSIM中获取检测器的状态了。除了速度和脉冲状态,你还可以找到很多其他状态,例如占用。

我也是VISSIM COM-Interface的初学者,希望回答对你有帮助:)