Class in Zendir.Classes | Inherits from Receiver

Declaration

class OpticalReceiver;

Description

The Optical Receiver is a specialized Receiver component designed to receive laser-based free-space optical communication from Optical Transmitter components. Unlike radio-frequency receivers that can acquire signals through antenna patterns, optical receivers require direct line-of-sight to the transmitter. The narrow beam width of laser communication provides high data rates and improved security, but demands precise alignment and unobstructed optical paths between communicating terminals.


Properties

DeclaredDescription
CollectorRotationThe rotation of the collector in the local coordinate system. Thisis the initial rotation based on the local coordinate system ofthe collector.
In_DeviceStatusMsgThe Device status message for the physical component whetherthe device is available.
InheritedDescription
AntennaGainAntenna Gain of the transmission. This is measured in decibels andrepresents the gain provided by the antenna.
BandwidthThe bandwidth of the targeted frequency
BehavioursA collection of behaviours attached to this object.
BitRateThe effective bit rate of the data being processed. This is the maximumamount of data that can be transmitted per second or received per second.The actual bit rate may be limited by the channel capacity.
BufferSizeThe size of the buffer of data that can be stored before thedata is deleted. When the buffer is exceeded, the oldest data isremoved, packet by packet.
CenterOfMassB_BThe center of mass of the component in respect to the body frame (B) of the component. This is isolated from anychildren and exists in isolation.
CenterOfMassDot_LB_BThe center of mass time-derivative of the component within its own local coordinates. This does not include anyof the sub-components and exists in isolation.
CenterOfMassDotB_BThe center of mass time-derivative of the component relative to the body frame (B). This does not include any ofthe sub-components and exists in isolation.
CenterOfMassL_LThe center of mass of the component within its own local coordinates. This does not include any of thesub-components and exists in isolation.
CenterOfMassPrime_LB_BThe center of mass general-derivative of the component within its own local coordinates. This does not includeany of the sub-components and exists in isolation.
CenterOfMassPrimeB_B[m/s] The center of mass general-derivative of the component relative to the body frame (B). This does notinclude any of the sub-components and exists in isolation.
ChildrenA collection of children attached to this object.
DCM_BNThe rotational DCM matrix between the body frame (B) at the top of this component chain and the inertial frame (N).
DCM_LBThe rotational DCM matrix between the component frame of this object (L) relative to the body frame (B).
DCM_LNThe DCM rotational matrix of the component relative to the inertial origin (N) of the world.
DCM_LPThe DCM matrix of the component in the parent’s frame (P), taken from the Component Transform (PL).
DeleteCorruptedPacketsA flag whether to delete packets that are corrupted. If true, allpackets that are corrupted will be deleted. If false, the packetswill be available in the output buffer.
DiameterDiameter of the receiver dish
DivergenceAngleDivergence angle of the antenna
EffectiveBitRateThe effective bit rate of the data being processed. This is the maximumamount of data that can be transmitted per second or received per second.This is the average effective bit rate across all links that are connected.
EnableDopplerShiftA flag whether to enable the Doppler shift or not. If true, the Dopplershift will be calculated and applied to the data.
FrequencyThe targeted frequency for the antenna
IsEnabledIs true if the object is currently enabled.
LocalForwardThe direction of the transform frame’s forward vector, which is along the Y axis.
LocalRightThe direction of the transform frame’s right vector, which is along the X axis.
LocalUpThe direction of the transform frame’s up vector, which is along the Z axis.
MassThe component mass defined in the object. This is independent of any parent or children objects and exists inisolation.
MassDotThe component mass time-derivative defined in the object. This is independent of any parent or children objectsand exists in isolation.
ModelsA collection of models attached to this object.
ModelTypeAnalysis type for the antenna dish
MomentOfInertia_LBThe moment of inertia of the component, measured at the local center of mass, represented with its own localcoordinates. This does not include any of the sub-components and exists in isolation.
MomentOfInertiaB_BThe moment of inertia of this component, measured in the body frame relative to the parented body. This isindependent of any children and exists in isolation.
MomentOfInertiaPrime_LBThe derivative of the moment of inertia of the component, measured at the local center of mass, represented withits own local coordinates. This does not include any of the sub-components and exists in isolation.
MomentOfInertiaPrimeB_BThe derivative of the moment of inertia of the component, represented in the body frame (B). This is independentand exists in isolation.
NameThe display name or tag of this object.
NumAvailableConnectionsReturns the number of active connections that are currently valid on the antennathat have a connection fraction greater than zero, so they can be used fordata transmission.
NumConnectionsReturns the number of connections that are currently valid on the antenna
NumDataReadyThe number of chunks of data that are ready to be received and handledby the user.
NumLinksReturns the number of valid links that the antenna have connected
NumProcessingPacketsThe number of packets that are being processed. The processing timedepends on the bitrate of the receiver.
OpticalLossOptical Loss of the transmission. This is measured in decibels andrepresents the loss due to optical components.
Out_AntennaConfigMsgThe antenna configuration message that contains the dataabout the antenna.
Out_ComponentMassMsgThe component mass message defines the set of mass properties and states of the system within this componentlocally. This is independent of any parent or children properties or objects.
Out_TransformMsgThis defines the base transform message that stores the state of the transform of this object.
OverrideInterferenceAn override for the interference fraction that is applied to the receiver.This is used by the interference model to set the interference fraction.
ParentThe currently attached parent object (if any).
PointingLossPointing loss of the transmission due to misalignment. This ismeasured in decibels.
Position[m] The position of the object relative to the parent or to world origin, if no parent exists.
Position_BN_NThe position of the body (the root parent B) in the inertial frame relative to the inertial point (N).
Position_LB_BThe position of the component relative to the root object of this hierarchy. This is in the inertial frame and ifthe component is the root object, then there will be no position.
Position_LN_NThe position of the inertial world space. This position is derived from the world’s transform (N).
Position_LP_PThe position of the object relative to the parented object (P). If there is no parent object, then this will bein the inertial frame.
ReceivedDataThe total amount of data that has been received by the receiver, measuredin Megabits. This is cumulative over the lifetime of the receiver and includesall data that was successfully received and passed into the processing buffer.
ReceivedSignalPowerThe received signal power at the receiver, based on all signalsthat are being transmitted to the receiver.
RootThe root object in the parent chain.
Rotation[-] The rotation of the object relative to the parent or to the world origin, if no parent exists.
SensitivityThe sensitivity of the receiver in decibels. This is the minimumsignal to noise ratio required for the receiver to successfullyreceive data.
SignalToNoiseCurrent Signal to noise ratio of the receiver based on the total signaland noise power, which may not be the same as the effective signal to noiseratio that is used for calculations.
Thermal[TEMPORARY] A reference to the thermal model that is attached to this object. This will allow the object to havethermal properties and be able to be used in thermal simulations.
TransmissionTypeThe transmission type for the antenna. This will define whattype of connection is required.

Methods

DeclaredDescription
SetLineOfSightUpdates the line of sight flag if this uses a particulartransmission type that disables connection if the line ofsight is blocked, for example, optical.
InheritedDescription
AddObjectReturns a new simulation object with the specified type.
AttachAttempts to attach this object to a new parent. This will only work if the current object is no parented to anyother object.
ClearReadyDataClears all ready data from the receiver’s output buffer.
ConfigureEMLookupTableLoads the EM signature properties from a CSV table. This will read a CSV fileand will interpolate the data to create a lookup table for the EM signature.
ContainsModelWithIDReturns true if an attached model satisfies the specified ID.
ContainsModelWithTypeReturns true if an attached model satisfies the specified type.
DetachThis is an action to detach the current object from its parent, if it exists and move it to another object or tojust exist within the simulation.
FindBehavioursWithTypeReturns all attached behaviours that satisfies the specified type.
FindBehaviourWithIDReturns an attached behaviour that satisfies the specified ID.
FindBehaviourWithTypeReturns an attached behaviour that satisfies the specified type.
FindChildrenWithTypeReturns all attached children that satisfies the specified type.
FindChildWithIDReturns an attached child that satisfies the specified ID.
FindChildWithTypeReturns an attached child that satisfies the specified type.
FindModelsWithTypeReturns all attached models that satisfies the specified type.
FindModelWithIDReturns an attached model that satisfies the specified ID.
FindModelWithTypeReturns an attached model that satisfies the specified type.
FindParentWithIDReturns an attached parent that satisfies the specified ID.
FindParentWithTypeReturns an attached parent that satisfies the specified type.
FindRootWithIDReturns a root object that satisfies the specified ID.
FindRootWithTypeReturns a root object that satisfies the specified type.
GetAntennaLinkReturns the data link message associated with the antenna with a connectionto another antenna.
GetAntennaPositionForLinkGets the position of this antenna for a link to another antenna. Bydefault, this is just the position of the antenna, but can be overriddenin derived classes to provide more complex behavior (e.g., ground stations)for nearest point calculations.
GetLoadedSignaturePatternGets the currently loaded RF pattern and returns the datain degrees as an array from 0 to 360.
GetLookupPointingLossGets the pointing loss of the antenna based on the angle ofthe component.
GetModelReturns a valid assigned model with the specified type.
GetNumReadyPacketsReturns the number of packets that are currently ready to be receivedon the receiver for a particular key. If the key is invalid, the defaultkey will be used.
GetReadyKeysReturns the list of keys stored in the receiver that are ready in theready data output buffer.
GetReadyMessageKeysReturns the list of keys stored in the receiver that are ready in theready data output buffer and are messages.
GetWorldForward[DEPRECATED] THIS FUNCTION WILL BE REMOVED AND SHOULD NOT BE USED.
GetWorldRight[DEPRECATED] THIS FUNCTION WILL BE REMOVED AND SHOULD NOT BE USED.
GetWorldTransformReturns the world transform of the object which is relative to the parent. If no parent exists, this will be thetransform of the object in world space.
GetWorldUp[DEPRECATED] THIS FUNCTION WILL BE REMOVED AND SHOULD NOT BE USED.
IsKeyDataAvailableChecks whether there is any data available in the receiver’s ready dataoutput buffer for a particular key. If the key is empty, the defaultkey will be used. This returns true if there is at least one item ofdata ready for the given key.
ReadBodyTransformThis method will reset the dirty flag on the mass so that it has been read successfully and is valid.
ReceiveBytesChecks the buffer, at a particular key, and returns the oldestbyte array clump of data that exists on the receiver. If thekey is invalid or no data is found, an empty byte array willbe returned. This will also remove the data from the queue, andit will be deleted from the receiver.
ReceiveJSONChecks the buffer, at a particular key, and returns the oldestJSON object clump of data that exists on the receiver. If thekey is invalid or no data is found, a null reference will bereturned. This will also remove the data from the queue, andit will be deleted from the receiver.
ReceiveMessageChecks the buffer, at a particular key, and attempts to updatea message with the data from the buffer. This will return whetherthe message is successfully updated. If there is no data, or thekey is invalid, then the message will not be updated.
ReceiveStringChecks the buffer, at a particular key, and returns the oldeststring clump of data that exists on the receiver. If the keyis invalid or no data is found, an empty string will be returned.This will also remove the data from the queue, and it will bedeleted from the receiver.
SetRandomSeedSets the random seed for the internal random number generator.
SetWorldTransform[DEPRECATED] THIS FUNCTION WILL BE REMOVED AND SHOULD NOT BE USED.
UpdateMassPropertiesUpdates the mass properties of the current physical object at a particular time.
UpdatePointingLossUpdates the pointing loss of the antenna based on the angle ofthe component.
ViewReadyDataReturns a list of ready data that is present within the receiverfor inspection purposes. This will return up to maxItems of datain the form of ASCII strings for viewing. This will not removethe data from the receiver and will have a maximum number of itemswhich can be specified. It will return the data from any key.