StationaryMobility¶
Package: inet.mobility.static
simple module StationaryMobility
Mobility module for stationary nodes.
Usage diagram¶
Inheritance diagram¶
Used in compound modules¶
Name |
Type |
Description |
|---|---|---|
compound module |
A wireless access point device that connects wireless stations (like WirelessHost) to a wired network. Supports multiple wireless radios and multiple Ethernet ports. |
|
compound module |
A minimal wireless network node that consists only of an antenna and mobility model. Designed for monitoring wireless signals without actively participating in network communication. |
|
compound module |
A network node that generates periodic noise transmissions that can interfere with wireless communications. Alternates between sleep and transmission states based on configurable intervals. Uses a NoiseTransmitter to create noise signals with specified duration, frequency, bandwidth, and power parameters. Useful for testing protocol robustness against interference in wireless networks. |
Known subclasses¶
Name |
Type |
Description |
|---|---|---|
simple module |
Mobility model which places all hosts at constant distances in a line with an orientation |
Extends¶
Name |
Type |
Description |
|---|---|---|
simple module |
Abstract base module for mobility models. |
Parameters¶
Name |
Type |
Default value |
Description |
|---|---|---|---|
displayStringTextFormat |
string |
“p: {position}\nv: {velocity}” |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
subjectModule |
string |
“^” |
The module path that determines the subject module, the motion of which this mobility model describes. The default value is the parent module |
coordinateSystemModule |
string |
“” |
The module path of the geographic coordinate system module; optional, empty disables geographic conversion (and the {geo_position} directive) |
updateDisplayString |
bool |
true |
Enables continuous update of the subject module’s position by modifying its display string |
constraintAreaMinX |
double |
-inf m |
The minimum x position of the constraint area. It is unconstrained by default (negative infinity) |
constraintAreaMinY |
double |
-inf m |
The minimum y position of the constraint area. It is unconstrained by default (negative infinity) |
constraintAreaMinZ |
double |
-inf m |
The minimum z position of the constraint area. It is unconstrained by default (negative infinity) |
constraintAreaMaxX |
double |
inf m |
The maximum x position of the constraint area. It is unconstrained by default (positive infinity) |
constraintAreaMaxY |
double |
inf m |
The maximum y position of the constraint area. It is unconstrained by default (positive infinity) |
constraintAreaMaxZ |
double |
inf m |
The maximum z position of the constraint area. It is unconstrained by default (positive infinity) |
initialX |
double |
uniform(this.constraintAreaMinX, this.constraintAreaMaxX) |
|
initialY |
double |
uniform(this.constraintAreaMinY, this.constraintAreaMaxY) |
|
initialZ |
double |
nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ)) |
|
initialLatitude |
double |
nan deg |
|
initialLongitude |
double |
nan deg |
|
initialAltitude |
double |
0m |
|
initialHeading |
double |
0deg |
|
initialElevation |
double |
0deg |
|
initialBank |
double |
0deg |
|
initFromDisplayString |
bool |
true |
Enables one-time initialization from the subject module’s display string |
updateFromDisplayString |
bool |
true |
Enables continuous update from the subject module’s display string for dragging and rotating it |
Properties¶
Name |
Value |
Description |
|---|---|---|
class |
StationaryMobility |
|
display |
i=block/cogwheel |
Signals¶
Name |
Type |
Unit |
Description |
|---|---|---|---|
mobilityStateChanged |
inet::MobilityBase |
It works in inet, but not in the extended module in another namespace |
Source code¶
//
// Mobility module for stationary nodes.
//
simple StationaryMobility extends MobilityBase
{
parameters:
double initialX @unit(m) = default(uniform(this.constraintAreaMinX, this.constraintAreaMaxX));
double initialY @unit(m) = default(uniform(this.constraintAreaMinY, this.constraintAreaMaxY));
double initialZ @unit(m) = default(nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ)));
double initialLatitude @unit(deg) = default(nan deg);
double initialLongitude @unit(deg) = default(nan deg);
double initialAltitude @unit(m) = default(0m);
double initialHeading @unit(deg) = default(0deg);
double initialElevation @unit(deg) = default(0deg);
double initialBank @unit(deg) = default(0deg);
bool initFromDisplayString = default(true); // Enables one-time initialization from the subject module's display string
bool updateFromDisplayString = default(true); // Enables continuous update from the subject module's display string for dragging and rotating it
@class(StationaryMobility);
}