|
SummerMentorshipProgram 2014 RoutesMobilityModel - Mobility trace generation using the Google Maps API.
Mobility trace generation in ns-3 is done either by using the Mobility module included in NS-3 or by importing mobility traces generated by third party programs in a compatible format. The Mobility module included in ns-3 gives programmers the building blocks to create simple or complex traces, but is hindered by the fact that creating complex traces using the current module alone takes too long, even for simulations with just a couple of mobility capable nodes. As for mobility traces generated by third party programs, such as SUMO, they can involve too much work for their generation, especially when the researcher's interest - and expertise - is more on the data communication than on the traffic simulation. Using the Google Maps API it is possible to generate complex mobility traces, simply by providing a start and end point. Since the API is robust, well documented and supported, it can be assumed it will be available in the future.
This patch covers my development from the beginning of the project.
This module supports the following features:
* Mobility trace generation for nodes
* Mobility traces with dynamic redirection
* Automatic creation of mobility for a node container
* Create mobility traces for nodes using local XML files
One test was developed, to test for the conversion of the WSG84 coordinates to Cartesian coordinates, the time placement of the |ns3::Waypoints| and the polyline conversion algorithm.
Three examples illustrate typical uses for this module
* routes-mobility-example.cc
* routes-mobility-automatic-example.cc
* routes-mobility-offline-example.cc
A Google Maps API key must be created in order to use this module. Information on how to create a Google Maps API key is on the module sphinx documentation.
The API key must be placed in the file src/mobility-service-interface/conf/api-key.txt
More information on this module can be found in the file src/mobility-service-interface/doc/mobility-service-interface.rst and on the project wiki [1].
[1] - http://www.nsnam.org/wiki/RoutesMobilityModel
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+5042 lines, -1 line) |
Patch |
 |
M |
doc/models/Makefile
|
View
|
|
1 chunk |
+11 lines, -1 line |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/doc/figures/ChooseRouteAutomaticSD.pdf
|
View
|
|
Binary file |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/doc/figures/ChooseRouteBaseSD.pdf
|
View
|
|
Binary file |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/doc/figures/MobilityServiceClassDiagram.pdf
|
View
|
|
Binary file |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/doc/figures/MobilityServiceUC.pdf
|
View
|
|
Binary file |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/doc/figures/MobilityTraceExample.pdf
|
View
|
|
Binary file |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/doc/mobility-service-interface.rst
|
View
|
|
1 chunk |
+621 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/examples/mobility-service-interface-example.cc
|
View
|
|
1 chunk |
+26 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/examples/routes-mobility-automatic-example.cc
|
View
|
|
1 chunk |
+92 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/examples/routes-mobility-example.cc
|
View
|
|
1 chunk |
+92 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/examples/routes-mobility-offline-example.cc
|
View
|
|
1 chunk |
+91 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/examples/wscript
|
View
|
|
1 chunk |
+18 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/helper/routes-mobility-helper.h
|
View
|
|
1 chunk |
+213 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/helper/routes-mobility-helper.cc
|
View
|
|
1 chunk |
+363 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/directions-api-connect.h
|
View
|
|
1 chunk |
+54 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/google-maps-api-connect.h
|
View
|
|
1 chunk |
+147 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/google-maps-api-connect.cc
|
View
|
|
1 chunk |
+211 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/google-maps-decoder.h
|
View
|
|
1 chunk |
+128 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/google-maps-decoder.cc
|
View
|
|
1 chunk |
+240 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/google-maps-places-api-connect.h
|
View
|
|
1 chunk |
+121 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/google-maps-places-api-connect.cc
|
View
|
|
1 chunk |
+180 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/leg.h
|
View
|
|
1 chunk |
+92 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/leg.cc
|
View
|
|
1 chunk |
+79 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/place.h
|
View
|
|
1 chunk |
+92 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/place.cc
|
View
|
|
1 chunk |
+82 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/places-api-connect.h
|
View
|
|
1 chunk |
+43 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/point.h
|
View
|
|
1 chunk |
+135 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/point.cc
|
View
|
|
1 chunk |
+136 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/routes-mobility-helper.h
|
View
|
|
1 chunk |
+213 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/routes-mobility-helper.cc
|
View
|
|
1 chunk |
+359 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/sax-handler.h
|
View
|
|
1 chunk |
+64 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/sax-handler.cc
|
View
|
|
1 chunk |
+196 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/sax-places-handler.h
|
View
|
|
1 chunk |
+63 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/sax-places-handler.cc
|
View
|
|
1 chunk |
+200 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/step.h
|
View
|
|
1 chunk |
+92 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/step.cc
|
View
|
|
1 chunk |
+94 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/model/strategy-api-connect.cc
|
View
|
|
1 chunk |
+21 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/test/examples-to-run.py
|
View
|
|
1 chunk |
+23 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/test/mobility-service-interface-test-suite.cc
|
View
|
|
1 chunk |
+68 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/test/routes-mobility-model-test.cc
|
View
|
|
1 chunk |
+147 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/test/routes-mobility-model-xml-test.xml
|
View
|
|
1 chunk |
+183 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/mobility-service-interface/wscript
|
View
|
|
1 chunk |
+52 lines, -0 lines |
0 comments
|
Download
|
Total messages: 1
|