This article is published in the "Open Source For you" magazine in India in this month August 2015 edition. This post will tell you how to create a real time traffic using SUMO and Openstreetmap.
I have used SUMO 0.22.0 for this simulation.
Prerequisite: SUMO required
Use openstreetmap to download your map
You need to select the map that you want to simulate and export it. After you export the map, it will ask for you to download it. Save the file.
Copy the downloaded file to your working directory.
Now run the following commands by seeing the video below
netconvert imports the road network stored in "map.osm" and stores the SUMO-network generated from this data into "map.net.xml":
netconvert --osm-files map.osm -o map.net.xml
OSM-data not only contains the road network but also a wide range of additional polygons such as buildings and rivers. These polygons can be imported using polyconvert and then added to a sumo-gui-configuration.
click here and copy the typemap file and save it to your working directory with the name typemap.xml
Using the file typemap.xml, polyconvert imports polygons from OSM-data and produces a Sumo-polygon file.
polyconvert --net-file map.net.xml --osm-files map.osm --type-file typemap.xml -o map.poly.xml
randomTrips.py generates a set of random trips for a given network (option -n). It does so by choosing source and destination edge either uniformly at random or weighted by length (option -l), by number of lanes (option -L) or both. The resulting trips are stored in an xml file (option -o, default trips.trips.xml) suitable for the DUAROUTER which is called automatically if the -r option (with a filename for the resulting route file) is given. The trips are distributed evenly in an interval defined by begin (option -b, default 0) and end time (option -e, default 3600) in seconds. The number of trips is defined by the repetition rate (option -p, default 1) in seconds. Every trip has an id consisting of a prefix (option --prefix, default "") and a running number.
python /home/kunal/sumo-0.22.0/tools/trip/randomTrips.py -n map.net.xml -e 100 -l
python /home/kunal/sumo-0.22.0/tools/trip/randomTrips.py -n map.net.xml -r map.rou.xml -e 100 -l
Now you need to make a sumo.cfg file for the configuration of sumo-gui. You can see that in the video below.
Now save the above file with a file name. I saved it with map.sumo.cfg
Now run the following command from terminal
sumo-gui map.sumo.cfg
After you enter the command, sumo GUI window will pop out.
You can have a look at this video for complete simulation
I have used SUMO 0.22.0 for this simulation.
Prerequisite: SUMO required
Use openstreetmap to download your map
You need to select the map that you want to simulate and export it. After you export the map, it will ask for you to download it. Save the file.
Copy the downloaded file to your working directory.
netconvert imports the road network stored in "map.osm" and stores the SUMO-network generated from this data into "map.net.xml":
OSM-data not only contains the road network but also a wide range of additional polygons such as buildings and rivers. These polygons can be imported using polyconvert and then added to a sumo-gui-configuration.
click here and copy the typemap file and save it to your working directory with the name typemap.xml
Using the file typemap.xml, polyconvert imports polygons from OSM-data and produces a Sumo-polygon file.
polyconvert --net-file map.net.xml --osm-files map.osm --type-file typemap.xml -o map.poly.xml
randomTrips.py generates a set of random trips for a given network (option -n). It does so by choosing source and destination edge either uniformly at random or weighted by length (option -l), by number of lanes (option -L) or both. The resulting trips are stored in an xml file (option -o, default trips.trips.xml) suitable for the DUAROUTER which is called automatically if the -r option (with a filename for the resulting route file) is given. The trips are distributed evenly in an interval defined by begin (option -b, default 0) and end time (option -e, default 3600) in seconds. The number of trips is defined by the repetition rate (option -p, default 1) in seconds. Every trip has an id consisting of a prefix (option --prefix, default "") and a running number.
python /home/kunal/sumo-0.22.0/tools/trip/randomTrips.py -n map.net.xml -e 100 -l
python /home/kunal/sumo-0.22.0/tools/trip/randomTrips.py -n map.net.xml -r map.rou.xml -e 100 -l
Now you need to make a sumo.cfg file for the configuration of sumo-gui. You can see that in the video below.
Now save the above file with a file name. I saved it with map.sumo.cfg
Now run the following command from terminal
sumo-gui map.sumo.cfg
After you enter the command, sumo GUI window will pop out.
You can have a look at this video for complete simulation
Share your experience with us, Any queries please comment below
No comments:
Post a Comment