При моделировании coherent-receive моностатического радара используйте EnableInputPort
и PhaseNoiseInputPort
свойства. В моностатическом радаре передатчик и получатель не могут действовать одновременно. Поэтому важно отслеживать то, когда передатчик активен так, чтобы можно было отключить получатель в те времена. Путем установки EnableInputPort
к true
, можно ввести запись того, когда передатчик активен в качестве аргумента при выполнении phased.ReceiverPreamp
Система object™.
В coherent-receive радаре получатель корректирует для шума фазы, введенного в передатчике при помощи записи тех ошибок фазы. Путем установки PhaseNoiseInputPort
свойство к true
, можно ввести запись ошибок фазы передатчика в качестве аргумента при выполнении phased.ReceiverPreamp
Системный объект.
Чтобы проиллюстрировать coherent-receive, создайте форму волны меандра с пятью импульсами. Импульсная частота повторения (PRF) формы волны составляет 10 кГц, и ширина импульса является 50 μs. Импульсный интервал повторения (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')