• Регистрация
Дмитрий Анатольевич
Дмитрий Анатольевич+1.03
н/д
  • Написать
  • Подписаться

Simulink

     Добрый день! Кто может подсказать, как самому реализовать блоки каналов связи с помехами в Simulink?     Необходимо сгенерировать различные виды помех (узкополосные, широ...

     Добрый день! Кто может подсказать, как самому реализовать блоки каналов связи с помехами в Simulink?

    Необходимо сгенерировать различные виды помех (узкополосные, широкополосные в части полосы, гармонические и т.д.) и добавить в канал связи.

     Вопрос в следующем.

   Например, есть канал AWGN.Он реализован отдельным блоком в самой программе. Мне необходимо собрать тоже самое, но своими руками. Ничего сложного в этом нет, так как смысл понятен и сам блок позволяет в него заглянуть. На выходе получаем сумму "белого (гауссова) шума" и полезного сигнала с заданным отншением С/Ш. Но в AWGN релизована оценка уровня (мощности) сигнала и "подгонка" параметров помехи под сигнал с помощью функции 'measured'. Для программного кода Matlab выглядит примерно так:

     y=awgn(x,10,'measured');

    Но мне необходимо, чтобы помеха была не во всей полосе сигнала, а только в его части. Как эту функцию реализовать в таком случае?

P.S. Подбор коэффициентов в усилителе "на глаз" не подходит, так как нужны корректные данные.

Теги

    06.12.2021

    Комментарии

    • Marat
      Marat+128.00
      6.12.2021 11:59

      Генерируйте сигнал помехи на РЧ нужной вам формы, ограничивайте спектр помехи фильтрами. Потом замешиваете примерно в той же точке, где и AWGN. Будет вам счастье.

      • Дмитрий Анатольевич
        Дмитрий Анатольевич+1.03
        7.12.2021 13:50

        Нет в этом счастья, так как это только формирование полосы помехи. Вопрос в выравнивании мощностей полезного сигнала и помехи. Блок AWGN это делает сам, но вот как это повторить руками не совсем ясно.

        P.S. Хотя для простых сигналов этот вариант почти подходит, так как любой сигнал формируется в Simulink с уровнем в единицу  и можно подобрать уровни "на глаз" по спектру.

        • aBoomest
          aBoomest+922.89
          7.12.2021 16:24

          Я может глупости спрошу, но . . . :

          1. сколько занимаюсь такими вещами (не на прямую, но косвенно связанными), до конца понять не могу, что такое мощность в этих вопросах. Это весьма абстрактная и не понятная вещь.
          2. У вас получается если принять конкретное соотношение мощностей сигнала и шума, то чем уже полоса тем мощнее помеха должна быть?

      • Дмитрий Анатольевич
        Дмитрий Анатольевич+1.03
        9.12.2021 18:05

        Имеется ввиду вот такая операция:

         

        sigPower = sum(abs(sig(:)).^2)/length(sig(:)); // Вычисление мощности сигнала на входе

        noisePower = sigPower/SNR; // Задание мощности помехи в соответствии с заданным отношением С/Ш (SNR)

        noise = sqrt(noisePower)* randn(size(sig)); // Формирование помехи с заданной мощностью (амплитудой)

        y = sig + noise; // Выходной сигнал из аддитивной смеси полезного сигнала и шума

         

        P.S. Это часть кода из awgn.m файла в Matlab. Можно открыть через open и посмотреть.

        • aBoomest
          aBoomest+922.89
          9.12.2021 20:12

          Вопрос был е в урезании полосы?

          • Дмитрий Анатольевич
            Дмитрий Анатольевич+1.03
            9.12.2021 21:23

            Нет. Вопрос в уравниванивании уровня помехи и сигнал. А далее формирования их аддитивной смеси, но с заданным отношением С/Ш.

             

            P.S. Полосу можно задавать в самом генераторе. Для особо изощренных можно в АБГШ вырезать нужную полосу полосым фильтром.