As far as I know traci.simulationStep calls simulationStep on your first connection created via traci.start, you need to also call conn2.simulationStep. Instead of calling traci.simulationStep you can get the its connection of the first client via traci.getConnection, see e.g.
traci.start(sumoCmd, port=8813, label="sim1")
conn1 = traci.getConnection("sim1")
conn1.setOrder(1)
The following snippets should work:
---------------
Client 1:
---------------
sumoBinary = "C:\\Projekte\\Sumo_Eclipse\\Releases\\sumo-win64-1.1.0\\sumo-1.1.0\\bin\\sumo-gui"
sumoCmd = [sumoBinary, "-c", cfg]
traci.start(sumoCmd, port=8813, label="sim1")
conn1 = traci.getConnection("sim1")
conn1.setOrder(1)
step = 0
while step < 1000:
conn1.simulationStep()
step += 1
conn1.close()
---------------
Client 2:
---------------
traci.init(port=8813, label="sim2")
conn2 = traci.getConnection("sim2")
conn2.setOrder(2)
step = 0
while step < 1000:
conn2.simulationStep()
step += 1
conn2.close()
okey, still not working, here are my to client-snippets:
# default port
PORT = 8813
client2 = Com()
class runner:
port = getFreeSocketPort()
# if getFreeSocketPort returns None, initialize with default value
if not port:
port = PORT
sumoBinary = "sumo-gui.exe"
# starting sumo
traci.start(cmd=[sumoBinary, "-c", "pathToConfig\\SUMO\\config.sumo.cfg", "--num-clients", "2"], port=8813)
# establishing client order
traci.setOrder(1)
# default port
PORT = 8813
class Com:
def traci_client2(self):
port = getFreeSocketPort()
# if getFreeSocketPort returns None, initialize with default value
if not port:
port = PORT
traci.init(port=8813, label="sim2")
conn2 = traci.getConnection("sim2")
conn2.setOrder(2)
while traci.simulation.getMinExpectedNumber() > 0:
traci.simulationStep()
so, as far as i understand, it stucks while it loads because sumo is waiting for client2?
Maybe you can see anything in my code.
Gesendet: Donnerstag, 20. Dezember 2018 um 15:13 Uhr
Von: "Benedikt Schott" <benedikt.schott@xxxxxxxx>
An: "'Sumo project User discussions'" <sumo-user@xxxxxxxxxxx>
Betreff: Re: [sumo-user] two clients, one SUMO connection (python - TraCI)
When the sumo gui has been started, it is waiting for the second client to connect. Note that you have to call setOrder for all clients and to call simulationStep for each client to proceed with the simulation
e.g. for the second client:
traci.init(port=xxxx, label="sim2")
conn2 = traci.getConnection("sim2")
conn2.setOrder(2)
step = 0
while step < 1000:
conn2.simulationStep()
step += 1
conn2.close()
thanks for the information Jakob!
So I implemented it, but when I start my runner script, it opens my sumo-gui as usually, but it's only displaying "starting server on port xxxx" and nothing happens, just loading. When I'm changing the --num-clients in the traci.start to "1" it starts normally.
Gesendet: Donnerstag, 20. Dezember 2018 um 11:31 Uhr
Von: "Jakob Erdmann" <namdre.sumo@xxxxxxxxx>
An: "Sumo project User discussions" <sumo-user@xxxxxxxxxxx>
Betreff: Re: [sumo-user] two clients, one SUMO connection (python - TraCI)
so i'm new to SUMO and want to connect two different clients (both python scripts, Interface: TraCI) to the same SUMO connection.
How can I do that exactly? I read about the simulationSteps from the post yesterday, but I can't manage to implement it.
_______________________________________________
sumo-user mailing list
sumo-user@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________ sumo-user mailing list sumo-user@xxxxxxxxxxx To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
_______________________________________________ sumo-user mailing list sumo-user@xxxxxxxxxxx To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/sumo-user
To change your delivery options, retrieve your password, or unsubscribe from this list, visit