RadioPlan: Difference between revisions
mNo edit summary |
mNo edit summary |
||
| Line 364: | Line 364: | ||
=== Calculate coverage=== | === Calculate coverage=== | ||
Coverage plots and coverage contours are created from coverage predictions for Radios. See the '''''[[Coverage Predictions]]''''' page for a description of the coverage calculation process. | |||
===Coverage plots=== | ===Coverage plots=== | ||
To show coverage plots in the map | To show coverage plots in the map, follow these steps: | ||
* Select Radio coverage areas to include in the plot with '''[http://codedocs.maria.teleplanglobe.com/develop_gdk5/managed/interface_t_p_g_1_1_g_d_k_1_1_maria_1_1_contracts_1_1_i_radio_coverage.html IMariaRadioPlanLayer.IRadioCoverage]''', methods AddOrUpdate and Remove. | |||
** Combined radio coverage plot for a RadioNet can be created by adding all Radios in the RadioNet: | |||
<syntaxhighlight lang="c#"> | |||
foreach (var radio in radioNet.Radios) | foreach (var radio in radioNet.Radios) | ||
{ | { | ||
_radioPlanLayer.RadioCoverage. | _radioPlanLayer.RadioCoverage.AddOrUpdate(radio); | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
'''IMariaRadioPlanLayer.IRadioCoverage. | * The plot visibility is controlled with '''IMariaRadioPlanLayer.IRadioCoverage.Visible''', and must be set to ''true'' to show plot. | ||
'''''See | * Select the plot type to show with '''IMariaRadioPlanLayer.IRadioCoverage.PlotType'''. See the '''''[[RadioPlan CoveragePlots|Coverage Plots]]''''' page for descriptions of the plot types. | ||
=== Coverage contours === | === Coverage contours === | ||
For | For a polygon presentation of coverage areas, coverage contours can be calculated and displayed. | ||
'''''See: [[RadioPlan CoverageContours|Coverage Contours]]''''' '''''page''''' | |||
===Connectivity Lines === | ===Connectivity Lines === | ||
Connectivity lines show the connectivity between radios in a RadioNet. | Connectivity lines show the connectivity between radios in a RadioNet. | ||
Revision as of 15:59, 16 April 2026
General
RadioPlan is the module for radioplanning. Radioplanning involves to define the radio equipment, optimize positions and parameters to ensure succesful radio communication. The Radioplan module offers a set of tools to achieve this:
- Radio and RadioNet coverage predictions
- RadioNet connectivity predictions
- Equipment templates
- Antenna models
- Propagation models for VHF, UHF, SHF
Functionality is controlled via the interface IMariaRadioPlanLayer
public interface IMariaRadioPlanLayer : IMariaLayer
Data model
Radio
The Radio represents a physical radio that is both a transmitter and receiver of radio signals.
A Radio must be attached to a Site, while RadioNet and Antenna may be unassigned. A Site and an Antenna must however be connected for coverage calculations.
| Property | Type | Description |
|---|---|---|
| Id | Guid | Unique identifier for the radio. |
| Name | string | Name of the radio. |
| RadioSystem | RadioSystem | The radio system of the radio. The RadioSystem property of the Radio must match the RadioSystem property of the RadioNet. |
| TxPower | SignalPower | [dBm] The transmitter output power of the radio. |
| Loss | Decibel | [dB] Total signal loss between the radio and the antenna system.
This includes cable loss, connector loss, filters, and other inline components. |
| RxSensitivity | SignalPower | [dBm] The receiver sensitivity threshold.
Represents the minimum signal strength the receiver can reliably detect while maintaining required performance metrics (e.g., BER or SINR). Lower (more negative) values indicate a more sensitive receiver. |
| Antenna | Antenna? | The antenna connected to the radio. An Antenna must be connected for coverage calculation. |
| Frequency | Frequency | [MHz] The operating center frequency of the radio. The Frequency is set by the RadioNet. |
| Status | Status | The current operational status of the radio. |
| Site | Site | The site where the radio is installed or registered. |
| RadioNet | RadioNet? | The radio network to which this radio belongs. |
Site
The Site defines the geographical position for one or more radios. Radios on the same Site is considered to be collocated.
| Property | Type | Description |
|---|---|---|
| Id | Guid | Unique identifier for the site. |
| Name | string | Name of the site. |
| Location | GeoPos | The geographical position of the site. |
| Radios | ImmutableArray<Radio> | The radios deployed at this site. |
RadioNet
The RadioNet holds a group of radios that can communicate. The RadioNet has some properties that are shared for all Radios in the RadioNet:
- RadioSystem
- CoverageCalculationSettings - optional
- Frequencies
| Property | Type | Description |
|---|---|---|
| Id | Guid | Unique identifier for the radio net. |
| Name | string | Name of the radio net. |
| NetworkType | NetworkType | Defines the type of network the radios operate within. |
| RadioSystem | RadioSystem | Identifies the radio system used for this network. Available radio systems is restricted by the network type. |
| TerminalProperties | TerminalProperties? | Terminal‑specific configuration for radios that are part of this network. |
| CoverageCalculationSettings | CoverageCalculationSettings? | Configuration settings used when performing coverage calculations for this network.
Overrides application settings when this is set. |
| MasterRadio | Radio? | The identifier of the designated master radio for this network.
The master radio typically provides synchronization, control, or timing functions depending on the network type |
| Radios | ImmutableArray<Radio> | The collection of radios participating in this network. |
| Frequencies | ImmutableArray<Frequency> | The set of frequencies allocated to this network.
Radios in the network can only use one of the allocated frequencies. |
TerminalProperties
Terminal configuration for user terminals that are part of a cellular network type RadioNet.
| Property | Type | Description |
|---|---|---|
| Id | Guid | Unique identifier for the terminal properties. |
| TxPower | SignalPower | [dBm] The transmitter output power of the terminal. |
| RxSensitivity | SignalPower | [dBm] The receiver sensitivity of the terminal. |
| AntennaGain | Decibel | [dB] The gain of the terminal’s antenna. |
Antenna
A single Antenna can be applied to the cell.
| Property | Type | Description |
|---|---|---|
| Id | Guid | Unique identifier for the antenna. |
| AntennaTypeName | string | The name or model identifier of the antenna type. |
| Height | double | The antenna height measured in meters above ground level (AGL).
This defines the elevation of the antenna relative to the local terrain surface and is a key parameter in propagation and coverage calculations. |
| Direction | Azimuth | The azimuth direction the antenna is oriented toward, expressed as a bearing in degrees (0–360).
Defines the horizontal pointing direction of directional antennas. |
| ElectricalTilt | Tilt | The electrical downtilt of the antenna, defined in degrees. |
| MechanicalTilt | Tilt | The mechanical downtilt of the antenna, defined in degrees. |
| PositionOffsetDirection | Azimuth | [degrees] The horizontal direction (bearing in degrees) of the antenna’s position offset relative to the Site location. |
| PositionOffsetDistance | double | [m] The horizontal distance of the antenna’s position offset relative to the Site location. |
AntennaType
| Property | Type | Description |
|---|---|---|
| Id | Guid | Unique identifier for the antenna type. |
| Name | string | The name of the antenna type. |
| OmniDirectional | bool | Indicates whether the antenna is omnidirectional in azimuth. |
| AntennaPatternSpecs | ImmutableArray<AntennaPatternSpec> | The set of antenna pattern specifications associated with this antenna type. |
| MinimumFrequency | Frequency | [MHz] The lowest frequency covered by the associated pattern specifications.
Returns 0 if no specs exist. |
| MaximumFrequency | Frequency | [MHz] The highest frequency covered by the associated pattern specifications.
Returns 0 if no specs exist. |
Antenna type can return an antenna pattern specification valid for a specific radio frequency and electrical tilt.
public AntennaPatternSpec? GetAntennaPatternSpec(Frequency frequency, Tilt electricalTilt)
The list of available antenna types is available from the Antenna Service which are handled by the AntennaCache:
var antennaTypes = await RadioPlanLayer.AntennaCache.GetAsync();
From the AntennaType we get the string AntennaTypeName which is set on the Antenna object. Antenna cache can return antenna types valid for a specific radio frequency.
Task<IEnumerable<AntennaType>> GetAntennaTypeForFrequencyAsync(Frequency frequency);
AnntennaPatternSpec
A specification describing the antenna’s radiation characteristics for a particular frequency range and electrical tilt setting. Each pattern spec typically corresponds to a manufacturer‑defined dataset for a specific band and tilt configuration.
| Property | Type | Description |
|---|---|---|
| Name | string | Human‑readable name or label for this pattern specification. |
| MaxGain | double | The maximum gain (in dBi) of the antenna within this specific pattern definition.
Represents the highest gain value found in the azimuth/elevation radiation pattern for this frequency range and tilt. |
| FrequencyLowerBoundary | Frequency | [MHz] The lower frequency boundary (inclusive) for which this pattern specification is valid.
Frequencies below this value cannot use this pattern. |
| FrequencyUpperBoundary | Frequency | [MHz] The upper frequency boundary (inclusive) for which this pattern specification is valid.
Frequencies above this value cannot use this pattern. |
| ElectricalTilt | Tilt | [degrees] The electrical downtilt (in degrees, positive values downwards) associated with this pattern specification.
This indicates how the antenna’s vertical radiation pattern is shaped electronically for this dataset. |
AntennaPattern
Represents a full antenna radiation pattern for a specific frequency range and electrical tilt. Extends AntennaPatternSpec by providing detailed horizontal and vertical gain patterns used for coverage calculations.
| Property | Type | Description |
|---|---|---|
| HorizontalGains | double[] | [dB] Horizontal-plane gain values (azimuth pattern). |
| VerticalGains | double[] | [dB] Vertical-plane gain values (elevation pattern). |
Data model store
Site store
Sites are stored IRadioPlanSiteStore IMariaRadioPlanLayer.RadioStore
Save a new Site:
Site = new Site(Guid.NewGuid(), Name, Location);
_radioPlanLayer.SiteStore.AddOrUpdate(Site);
Get all sites:
var sites = _radioPlanLayer.SiteStore.Get();
Get a speficic site:
var site = _radioPlanLayer.SiteStore.Get(siteId);
Remove a site from store:
RadioPlanLayer.SiteStore.Remove(site);
Radio store
Radios are stored to IRadioPlanRadioStore IMariaRadioPlanLayer.RadioStore
Similar to SiteStore, this interface uses AddOrUpdate, Get and Remove.
Radio net store
A radio net is a collection of radios connected.
Similar to SiteStore, this interface uses AddOrUpdate, Get and Remove.
Situation
The collections of site, radios and radio nets can be saved to a situation file.
Situation data can be stored in to persistent storage system with help of IMariaRadioPlanLayer.Serialize
Example saving to a file:
byte[] situationBytes = _radioPlanLayer.Serialize(_parent.DrawObjectCommonFactory);
File.WriteAllBytesAsync(filePath, situationBytes);
Situation data can be restored from persistent storage system with help of IMariaRadioPlanLayer.DeSerialize Example reading from a file:
byte[] situationBytes = await System.IO.File.ReadAllBytesAsync(filePath);
_radioPlanLayer.DeSerialize(situationBytes, _parent.DrawObjectCommonFactory);
comment:
Coverage predictions
Calculate coverage
Coverage plots and coverage contours are created from coverage predictions for Radios. See the Coverage Predictions page for a description of the coverage calculation process.
Coverage plots
To show coverage plots in the map, follow these steps:
- Select Radio coverage areas to include in the plot with IMariaRadioPlanLayer.IRadioCoverage, methods AddOrUpdate and Remove.
- Combined radio coverage plot for a RadioNet can be created by adding all Radios in the RadioNet:
foreach (var radio in radioNet.Radios)
{
_radioPlanLayer.RadioCoverage.AddOrUpdate(radio);
}
- The plot visibility is controlled with IMariaRadioPlanLayer.IRadioCoverage.Visible, and must be set to true to show plot.
- Select the plot type to show with IMariaRadioPlanLayer.IRadioCoverage.PlotType. See the Coverage Plots page for descriptions of the plot types.
Coverage contours
For a polygon presentation of coverage areas, coverage contours can be calculated and displayed.
See: Coverage Contours page
Connectivity Lines
Connectivity lines show the connectivity between radios in a RadioNet.
See: Connectivity Lines page
Route Coverage
For seeing coverage along a route.
See: Route Coverage page
Settings
RadioPlanSettings
Radio plan settings is available from IMariaRadioPlanLayer.Settings
These settings is used to control:
- Setting for creating coverage predictions
- Color schemas for plots
See: Radio plan Settings pages
Dependent External Services
The radioplan module uses external services for
- Antenna store
- Coverage calculations
These services need to have their URI's configured through settings.