FM Radio (Transmitter + Receiver) in Matlab

97 visualizaciones (últimos 30 días)
Zadran
Zadran el 11 de Jul. de 2014
Respondida: saeed S el 22 de Mayo de 2022
Hello all. I want to design an FM radio (transmitter + receiver) using Matlab (not Simulink). Is it possible in Matlab? If yes, how? I am using stereo headphones as antenna on my laptop but I don't know how to get the signal from the headphone into Matlab code. Best regards.
  5 comentarios
nanren888
nanren888 el 10 de En. de 2019
So, you're not actually wanting to use Matlab to do design, you want to use Matlab to implement the receiver.
Clearly, you're going to have to invest in some hardware.
Maybe while googling for that, consider also googling gnuradio and similar.
Mohammed Irfan Kalathil Parambil
Mohammed Irfan Kalathil Parambil el 14 de Jun. de 2021
How do we design an FM transmitter and reciever using Simulink?

Iniciar sesión para comentar.

Respuesta aceptada

Ethem
Ethem el 20 de Mzo. de 2019
Editada: Darel el 25 de Jun. de 2021
  9 comentarios
Mohammed Irfan Kalathil Parambil
Mohammed Irfan Kalathil Parambil el 14 de Jun. de 2021
Also could we use an awgn channel to transmit signals?
Ethem
Ethem el 15 de Jun. de 2021
Editada: Ethem el 25 de Jun. de 2021
@Mohammed Irfan Kalathil Parambil, you can transmit any signal with these models including music. It will just FM modulate and send through the SDR device. You will need an SDR device. See the list above. Regarding AWGN channel, since you will be using an SDR device, you will have a real channel. If we only consider the channel effects, assuming you have a line-of-sight setup and a short distance, it can be approximated as an AWGN channel. But, you will still see the hardware impairments, such as timing and frequency offsets. So, when you have SDR devices, you will never have an AWGN only channel.

Iniciar sesión para comentar.

Más respuestas (1)

saeed S
saeed S el 22 de Mayo de 2022
انتهى %For the option to change default settings, set cmdlineInput to 1. cmdlineInput = 0; if cmdlineInput % Request user input from the command-line for application parameters userInput = helperFMUserInput; else load('defaultinputsFM.mat'); end
% Calculate FM system parameters based on the user input [fmRxParams,sigSrc] = helperFMConfig(userInput);
% Create FM broadcast receiver object and configure based on user input fmBroadcastDemod = comm.FMBroadcastDemodulator(... 'SampleRate', fmRxParams.FrontEndSampleRate, ... 'FrequencyDeviation', fmRxParams.FrequencyDeviation, ... 'FilterTimeConstant', fmRxParams.FilterTimeConstant, ... 'AudioSampleRate', fmRxParams.AudioSampleRate, ... 'Stereo', false);
% Create audio player player = audioDeviceWriter('SampleRate',fmRxParams.AudioSampleRate);
% Initialize radio time radioTime = 0;
% Main loop while radioTime < userInput.Duration % Receive baseband samples (Signal Source) if fmRxParams.isSourceRadio if fmRxParams.isSourcePlutoSDR rcv = sigSrc(); lost = 0; late = 1; elseif fmRxParams.isSourceUsrpRadio rcv= sigSrc(); lost = 0; else [rcv,~,lost,late] = sigSrc(); end else rcv = sigSrc(); lost = 0; late = 1; end
% Demodulate FM broadcast signals and play the decoded audio
audioSig = fmBroadcastDemod(rcv);
player(audioSig);
% Update radio time. If there were lost samples, add those too.
radioTime = radioTime + fmRxParams.FrontEndFrameTime + ...
double(lost)/fmRxParams.FrontEndSampleRate;
end
% Release the audio and the signal source release(sigSrc) release(fmBroadcastDemod) release(player)

Categorías

Más información sobre Communications Toolbox en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by