Changes between Version 5 and Version 6 of Internal/newTraceGenExtension


Ignore:
Timestamp:
Jun 6, 2017, 9:41:51 PM (7 years ago)
Author:
jkol
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Internal/newTraceGenExtension

    v5 v6  
    11[[TOC(Software/eAM*, depth=2, heading=Aggregate Managers)]]
    22
    3 == METIS II 5G Visualization - Trace Extension ==
     3== METIS II 5G Visualization - Trace Generation Extension ==
    44
    5 TODO Intro...
     5Using the METIS II 5G Visualization for simulation of an urban environment, time-variant attenuation (path loss) traces can be generated to approximate real world situations. These traces can then be used on an attenuator matrix based test bed, such as [wiki:foo Sandbox 4], for tightly controlled experiments with various protocol and connection methodologies. An extension to the simulator is available to generate these trace files through the selection of objects of interest (pedestrians, cars, base stations, etc.) and calculation of distance and occlusion based free space path loss at regular intervals. Note that these calculations do not take into account multi-path or sources of noise.
     6
     7The path loss between object pairs is calculated as follows:
     8
     9 Total Path Loss = Free Space Path Loss(d, f) + Object Attenuation(k)
     10
     11  Free Space Path Loss(d, f) = 20 log,,10,,(d) + 20 log,,10,,(f) - 27.55
     12
     13   Assuming f = 2385 MHz gives the “typical” path loss of approximately 40dB at 1 meter.
     14
     15  Object Attenuation(k) = a,,1,,n,,1,, + a,,2,,n,,2,, + ... + a,,k,,n,,k,,
     16
     17   a = attenuation factor in dB for object type “k”
     18   [[BR]]n = number of “k” type objects between the two objects of interest
     19
     20Addition of this extension to the simulator is done through minor modification of the simulator's source code as described below. Configuration of the desired trace generation is done through an XML file which can be created manually or through the [wiki:foo XML Generator].
     21
    622
    723[[BR]]
    8 === Adding the Trace Extension code to METIS II 5G Visualization source ===
     24=== Adding the Trace Generation Extension code to METIS II 5G Visualization source ===
    925
    1026The following documentation gives an overview of the changes that have to be made to the original METIS II simulator for it to have the ability to generate pairwise attenuation traces for selected objects in the simulator.
     
    4258=== XML Configuration File ===
    4359
    44 Sample XML configuration: [attachment:config.xml config.xml]
    45 
    46 Below is a brief overview of the different sections of the XML config file and how they function. The above sample file is used for reference.
     60The Trace Generation Extension requires an XML configuration file which is used to select object pairs for which path loss is to be computed as well as setting specific calculation related parameters. You can create your own config file manually, or use the TODO [wiki:foo XML Generator] to create one for Sandbox 4. Below is an overview of the different sections of the config file and how they function. A sample XML file ([attachment:config.xml config.xml]) is provided for reference.
    4761
    4862{{{
    4963<?xml version="1.0" encoding="utf-8"?>
    5064<config>
    51 <links>
    52     <link name="1" default_attn="9999" max_obj="9" />
    53     <link name="2" default_attn="9999" max_obj="5" />
    54 </links>
    55 }}}
    56  
    57 '''<links> ... </links>'''
    58 
    59 The links section defines how many independent sets of connections objects in the simulator may have (eg. multi-homing). It can be thought of in terms of [wiki:foo Sandbox 4] as the number of available attenuator matrices. Each matrix (ie. each link set) is independent of the other. The default attenuation (dB) per matrix (link set) is defined in this section and used in cases where maximum attenuation is calculated between a pair of objects or an object pair is not defined. The maximum number of objects per matrix (link set) is also defined here for proper formatting of the generated trace file.
    60 
    61 {{{
    62 <objects>
    63     <object name="1" type="Car" id="12">
    64       <link name="1">2,3</link>
    65       <link name="2">3,4</link>
    66     </object>
    67     <object name="2" type="Bus" id="4">
    68       <link name="1">5,6</link>
    69       <link name="2">3,5</link>
    70     </object>
    71 
    72 ...
    73 
    74 </objects>
    75 }}}
    76 
    77 '''<objects> ... </objects>'''
    78 
    79 This section defines the objects that the user wishes to track (and generate trace data for). The object "name" is a number used to map the object to the corresponding trace output values. In the case of Sandbox 4... The "type" determines the subset of objects to which the object of interest belongs and the "id" corresponds to the specific object in that subset.
    80 
    81   ||='''Object Type'''=||= '''Valid Id''' =||
    82   ||  Building  || ''none'' ||
    83   ||  Car  || 0 - 404 ||
    84   ||  Bus  || 0 - 5 ||
    85   ||  Pedestrian  || 0 - 115 ||
    86   ||  Microcell  || 0 - 5 ||
    87   ||  Macrocell  || 0 - 3 ||
    88   ||  Sensor  || 0 - 9 ||
    89 
    90 {{{
     65  <sim_parameters max_time="180" time_interval="1000" />
    9166  <attenuations>
    92     <attn factor="3" type="Bus" />
    93     <attn factor="2" type="Car" />
    94     <attn factor="1" type="Building" />
    95     <attn factor="2" type="Pedestrian" />
    96     <attn factor="6" type="Antenna" />
     67    <attenuation type="Building" value="60" />
     68    <attenuation type="Car" value="30" />
     69    <attenuation type="Bus" value="40" />
     70    <attenuation type="Pedestrian" value="10" />
     71    <attenuation type="Antenna" value="3" />
     72    <attenuation type="Lightpole" value="0" />
     73    <attenuation type="Sensor" value="0" />
    9774  </attenuations>
    98   <sim_parameters max_time="180" time_int="1000" frequency = "100"/>
     75  <links>
     76    <link name="1" max_obj="9" default_attenuation="99.9" frequency="2400" />
     77      <object index="1" type="Car" id="1">2,3,4</object>
     78      <object index="2" type="Car" id="2">1,3,4</object>
     79      <object index="3" type="Car" id="3">1,2,4</object>
     80      <object index="4" type="Car" id="4">1,2,3</object>
     81      <object index="5" type="Car" id="5">6,7,8,9</object>
     82      <object index="6" type="Car" id="6">5,7,8,9</object>
     83      <object index="7" type="Car" id="7">5,6,8,9</object>
     84      <object index="8" type="Car" id="8">5,6,7,9</object>
     85      <object index="9" type="Car" id="9">5,6,7,8</object>
     86    <link name="2" max_obj="5" default_attenuation="99.9" frequency="1800" />
     87      <object index="1" type="Antenna" id="1">2,3,4,5</object>
     88      <object index="2" type="Car" id="3">1,3,4,5</object>
     89      <object index="3" type="Car" id="4">1,2,4,5</object>
     90      <object index="4" type="Car" id="5">1,2,3,5</object>
     91      <object index="5" type="Car" id="6">1,2,3,4</object>
     92  </links>
    9993</config>
    10094}}}
    10195
    102 '''<attenuations> ... </attenuations>'''
     96'''<sim_parameters ... />'''
    10397
    104 Path loss attenuations of different objects in the simulation are defined here. These are the attenuations of objects obstructing line of sight between the two objects for which the pairwise attenuation is being calculated. These factors are not taken into account for the pair of objects themselves.
    105 
    106  ||= '''Type''' =||='''Description''' =||
    107  ||  Bus  || Path loss attenuation of a bus ||
    108  ||  Car  || Path loss attenuation of a car ||
    109  ||  Building  || Path loss attenuation of a building ||
    110  ||  Pedestrian  || Path loss attenuation of a pedestrian ||
    111  ||  Antenna  || Path loss attenuation of a rooftop antenna ||
    112 
    113 '''<sim_parameters> ... </sim_parameters>'''
    114 
    115 This section contains additional trace related simulation parameters.
     98 This section contains global trace related simulation parameters.
    11699
    117100 ||='''Parameter'''=||='''Description''' =||
    118101 ||  max_time  || Number of seconds to run the simulation ||
    119  ||  time_int  || Number of miliseconds between calculating pairwise attenuations ||
    120  ||  frequency  || Frequency (in MHz) to use as a baseline for attenuation calculations ||
     102 ||  time_int  || Time interval (miliseconds) for calculating pairwise attenuations ||
     103 
     104
     105'''<attenuation ... />'''
     106
     107 Insertion loss attenuations (in dB) of different objects in the simulation are defined here. These are the attenuation factors of objects obstructing line of sight between the two objects for which the pairwise attenuation is being calculated. These factors are not taken into account for the pair of objects themselves.
     108
     109
     110 ||='''Parameter'''=||='''Description''' =||
     111 ||  type  || Object type ||
     112 ||  value  || Insertion loss attenuation in dB ||
     113
     114'''<link ... />'''
     115
     116 The links define the independent sets of connections objects in the simulator may have (eg. multi-homing). In terms of [wiki:foo Sandbox 4], each link set is mapped to it's own RF attenuator matrix.
     117
     118 ||='''Parameter'''=||='''Description''' =||
     119 ||  name  || The identification number of the link (RF matrix number) ||
     120 ||  max_obj  || The maximum number of objects handled by this link (max number of ports on RF matrix) ||
     121 ||  default_attenuation  || The default (maximum) attenuation between undefined object pairs ||
     122 ||  frequency  || The center frequency being used on this link. This can affect path loss calculations by a few dB ||
     123
     124'''<object ...> ... </object>'''
     125
     126 This defines the objects and object pairs that the user wishes to track and generate trace data for. The comma separated list of numbers are the indices of other objects ''on the same link'' for which pairwise attenuations will be calculated. Because links are bidirectional, if object of index=1 has object of index=2 in its list, object of index=2 does not need to have object of index=1 in it's list. Note that the indices in different links are completely independent of each other.
     127
     128 ||='''Parameter'''=||='''Description''' =||
     129 ||  index  || Index of object on this link (port on RF matrix) ||
     130 ||  type  || Subset of objects to which the object belongs (Bus, Car, etc.) ||
     131 ||  id  || Specific id of the object being tracked (see valid id table below) ||
     132
     133 ||='''Object Type'''=||= '''Valid Id''' =||
     134 ||  Building  || ''none'' ||
     135 ||  Car  || 0 - 404 ||
     136 ||  Bus  || 0 - 5 ||
     137 ||  Pedestrian  || 0 - 115 ||
     138 ||  Antenna  || 0 - 3 ||
     139 ||  Lightpole  || 0 - 5 ||
     140 ||  Sensor  || 0 - 9 ||
    121141
    122142[[BR]]