При моделировании когерентного моностатического радара на приеме используйте EnableInputPort
и PhaseNoiseInputPort
свойства. В моностатическом радаре передатчик и приемник не могут работать одновременно. Поэтому важно следить за тем, когда передатчик активен, чтобы можно было отключить приемник в те моменты времени. Путем установки EnableInputPort
на true
, можно ввести запись о том, когда передатчик активен как аргумент при выполнении phased.ReceiverPreamp
Системные object™.
В когерентном радаре на приеме приемник корректирует фазу шум, введенный в передатчике, используя запись этих фаз ошибок. Путем установки PhaseNoiseInputPort
свойство к true
, можно ввести запись ошибок фазы передатчика как аргумент при выполнении phased.ReceiverPreamp
Системный объект.
Чтобы проиллюстрировать когерентный прием, создайте прямоугольную импульсную форму волны с пятью импульсами. Частота повторения импульса формы волны (PRF) составляет 10 кГц, и ширина импульса составляет 50 мкс. Интервал повторения импульса (PRI) в точности в два раза превышает ширину импульса, поэтому передатчик чередуется между активным и неактивным временными интервалами той же длительности. Для удобства установите коэффициент усиления как на передатчике, так и на приемнике в 0 дБ, а пиковую степень на передатчике в 1 Вт.
Используйте PhaseNoiseOutputPort
и InUseOutputPort
свойства передатчика для записи фазы шума и состояния передатчика.
Включите EnableInputPort
и PhaseNoiseInputPort
свойства предварительной формы приемника для определения того, когда приемник активен, и для коррекции фазы шума, введенного в передатчик.
Задержка выхода передатчика с помощью delayseq
функция для симуляции формы волны, поступающей в предварительный блок приемника, когда передатчик неактивен, и приемник активен.
Примечание.Этот пример выполняется только в R2016b или более поздней версии. Если вы используете более ранний релиз, замените каждый вызов функции на эквивалентный step
синтаксис. Для примера замените myObject(x)
с step(myObject,x)
.
waveform = phased.RectangularWaveform('NumPulses',5); transmitter = phased.Transmitter('CoherentOnTransmit',false,... 'PhaseNoiseOutputPort',true,'Gain',0,'PeakPower',1,... 'SeedSource','Property','Seed',1000,'InUseOutputPort',true); wf = waveform(); [troutput,trstatus,phasenoise] = transmitter(wf); troutput = delayseq(troutput,waveform.PulseWidth,... waveform.SampleRate); receiver = phased.ReceiverPreamp('Gain',0,... 'PhaseNoiseInputPort',true,'EnableInputPort',true); y = receiver(troutput,~trstatus,phasenoise); subplot(2,1,1) plot(real(troutput)) title('Delayed Transmitter Output with Phase Noise') ylabel('Amplitude') subplot(2,1,2) plot(real(y)) xlabel('Samples') ylabel('Amplitude') title('Received Signal with Phase Correction')