Search code examples
unetstack

Why does the baseband signal have a carrier?


Why is the default carrier frequency 12000Hz when sending baseband signals using the baseband service?

[org.arl.unet.bb.BasebandParam]
  basebandRate ⤇ 12000.0
  carrierFrequency = 12000.0
  maxPreambleID ⤇ 4
  maxSignalLength ⤇ 2147483647
  signalPowerLevel = -42.0

When using baseband service to transmit passband signals, the carrier frequency should be set to 0 Hz.

bb << TxBasebandSignalReq(signal = sig,fc = 0,fs = fs)#Set fc=0 means sending passband signal

In theoretical knowledge, doesn't the signal become a passband signal after being modulated with a carrier? Why does a baseband signal have a carrier?I really don't quite understand this part.

I am a beginner in the field of communication, so I may have so many questions. Please understand.I am looking forward to your answers.


Solution

  • The baseband signal refers to a representation of the signal in a bandwidth around some carrier frequency. A constant non-zero value for the baseband signal translates into a constant amplitude tonal at the carrier frequency. Hence the baseband representation requires the context of carrier frequency to know what the corresponding signal in the real world is.

    The community version of UnetStack defaults to a 12 kHz carrier frequency, i.e., a constant value signal (0 Hz in baseband) is a 12 kHz signal in the real world.

    UnetStack also supports sending passband signals directly, i.e., without the need to upconvert. To indicate that a signal given is already at the correct frequency and does not need upconversion, UnetStack requires you to specify fc = 0 as a convention to indicate that no upconversion is needed.