Package: inet.physicallayer.ieee802154.packetlevel
Ieee802154NarrowbandScalarRadio
compound module(no description)
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Extends
Name | Type | Description |
---|---|---|
FlatRadioBase | compound module |
This module servces as a base module for flat radio models. |
Parameters
Name | Type | Default value | Description |
---|---|---|---|
antennaType | string | "IsotropicAntenna" |
NED type of the antenna model |
transmitterType | string | "Ieee802154NarrowbandScalarTransmitter" |
NED type of the transmitter model |
receiverType | string | "Ieee802154NarrowbandScalarReceiver" |
NED type of the receiver model |
energyConsumerType | string | "" |
NED type of the energy consumer model |
radioMediumModule | string | "radioMedium" |
module path of the medium module where this radio communicates |
energySourceModule | string | "" |
module path of the energy source module which provides energy to the radio |
switchingTimes | string | "ms 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" |
time parameters to switch between radio modes |
separateTransmissionParts | bool | false |
when enabled the transmission of preamble, header and data part are simulated separately |
separateReceptionParts | bool | false |
when enabled the reception of preamble, header and data part are simulated separately |
displayCommunicationRange | bool | false |
if true communication range is displayed as a blue circle around the node |
displayInterferenceRange | bool | false |
if true interference range is displayed as a gray circle around the node |
carrierFrequency | double | 2450 MHz |
center frequency of the band where the radio transmits and receives signals on the medium |
bandwidth | double | 2.8 MHz |
bandwidth of the band where the radio transmits and receives signals on the medium |
Properties
Name | Value | Description |
---|---|---|
class | FlatRadioBase | |
display | i=block/wrxtx |
Gates
Name | Direction | Size | Description |
---|---|---|---|
upperLayerIn | input | ||
upperLayerOut | output | ||
radioIn | input |
Signals
Name | Type | Unit |
---|---|---|
receptionStateChanged | long | |
bitErrorRate | ||
radioModeChanged | long | |
transmittedSignalPartChanged | long | |
packetReceivedFromUpper | cPacket | |
receivedSignalPartChanged | long | |
packetErrorRate | ||
symbolErrorRate | ||
packetSentToUpper | cPacket | |
transmissionStateChanged | long | |
listeningChanged | ||
minSNIR |
Statistics
Name | Title | Source | Record | Unit | Interpolation Mode |
---|---|---|---|---|---|
receptionState | Radio reception state | receptionStateChanged | count, vector | sample-hold | |
bitErrorRate | Bit error rate | bitErrorRate | histogram | ||
radioMode | Radio mode | radioModeChanged | count, vector | sample-hold | |
packetErrorRate | Packet error rate | packetErrorRate | histogram | ||
symbolErrorRate | Symbol error rate | symbolErrorRate | histogram | ||
transmissionState | Radio transmission state | transmissionStateChanged | count, vector | sample-hold | |
minSNIR | Min SNIR | minSNIR | histogram |
Source code
module Ieee802154NarrowbandScalarRadio extends FlatRadioBase { parameters: antennaType = default("IsotropicAntenna"); transmitterType = default("Ieee802154NarrowbandScalarTransmitter"); receiverType = default("Ieee802154NarrowbandScalarReceiver"); carrierFrequency = 2450 MHz; // B_20dB ATmega256RFR2 (page 564) bandwidth = default(2.8 MHz); // 802.15.4-2006 (page 28) *.bitrate = default(250 kbps); // PHY Header (without preamble), 802.15.4-2006 (page 43) // 1 octet SFD // 7 bit Frame length // 1 bit Reserved *.headerBitLength = (1*8 + 7 + 1) * 1 b; // Preamble // 4 octets Preamble // 1 symbol of 16us -> 4 bit transmitter.preambleDuration = (4*8/4) * 16 us; // RSSI sensitivity (ATmega256RFR2, page 566) receiver.energyDetection = default(-90dBm); // Receiver sensitivity (ATmega256RFR2, page 565) // TODO That is not quite true, because sensitivity // is defined as the input signal power that yields // a PER < 1% for a PSDU of 20 octets, but INET handles it // as minimum reception power. receiver.sensitivity = default(-100dBm); // There is no fixed boundary, because of the // DSSS and the capture effect. Taking the sensitivity minus some // arbitrary value as an approximate guess. receiver.minInterferencePower = default(-120dBm); // Minimum SNIR // -8 dB results into 98% PER for a PSDU of 20 octets receiver.snirThreshold = default(-8 dB); // TX Output power (typ. 3.5 dBm, ATmega256RFR2, page 564) transmitter.power = default(2.24mW); @class(FlatRadioBase); }File: src/inet/physicallayer/ieee802154/packetlevel/Ieee802154NarrowbandScalarRadio.ned