TraCI使用教程

1. 什么是TraCI

TraCI是"Traffic Control Interface"的缩写,是sumo给出的连接到交通仿真的一个接口,使得人们可以获取仿真中的参数还有实时控制仿真。Traci使用基于TCP的客户端/服务器体系结构,将SUMO作为服务器,python脚本是客户端。

2. TraCI 交通灯实例

这个实例时sumo给出的教程,代码可以在安装的sumo文件夹下的/ docs / tutorial / traci_tls目录中找到,如果找不到也可以留下邮箱,我发给你。

(1)示例描述

有一个十字交叉路口如下图,在南北方向放上环路传感器,它的控制逻辑是当南北方向有车通过时,东西方向切换为红灯,南北方向切换为绿灯,否则,保持东西绿灯,南北红灯。

TraCI使用教程_第1张图片

(2)代码流程

  • 在脚本中导入traci
import os, sys

 if 'SUMO_HOME' in os.environ:

     tools = os.path.join(os.environ['SUMO_HOME'], 'tools')

     sys.path.append(tools)

 else:  

     sys.exit("please declare environment variable 'SUMO_HOME'")

注意:一定要将SUMO_HOME加入环境变量中

  • 将python脚本与sumo接口连接

可以选择使用sumo,还是sumo-gui进行仿真

sumoBinary = checkBinary('sumo-gui') # 出现图像界面,

sumoBinary = checkBinary('sumo')

使用命令行

traci.start([sumoBinary, "-c", "data/cross.sumocfg",

                             "--tripinfo-output", "tripinfo.xml"])
  • 执行仿真步骤   
  • traci.simulationStep()
    

     

  • 关闭连接
traci.close()

 

你可能感兴趣的:(sumo使用教程)