Search code examples
omnet++inet

choose random initial position for sensors but in a specific area


In a network simulation with omnet++5.4 inet 3.6, I need to choose random initial position for sensors but in a specific area to ease setting destination for UDP Application.

The complete scenario can be watched in this question.(consider comments too)

How can I do that?


Solution

  • In StationaryMobility the area may be limited. One may define a rectangle area for a group of hosts, for example:

    **.host[*].mobilityType = "StationaryMobility"    
    **.host[*].mobility.constraintAreaMinZ = 0m
    **.host[*].mobility.constraintAreaMaxZ = 0m
    
    # area 1
    **.host[0..9].mobility.constraintAreaMinX = 0m
    **.host[0..9].mobility.constraintAreaMaxX = 200m
    **.host[0..9].mobility.constraintAreaMinY = 0m
    **.host[0..9].mobility.constraintAreaMaxY = 200m
    
    # area 2
    **.host[10..19].mobility.constraintAreaMinX = 200m
    **.host[10..19].mobility.constraintAreaMaxX = 400m
    **.host[10..19].mobility.constraintAreaMinY = 0m
    **.host[10..19].mobility.constraintAreaMaxY = 200m
    
    # ...