Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Основы теории радиосистем передачи информации. Практикум

.pdf
Скачиваний:
0
Добавлен:
12.08.2026
Размер:
769 Кб
Скачать

Лабораторная работа № 8 «Системные характеристики телекоммуникационных систем. Связь между

помехоустойчивостью и скоростью передачи»

1 Цель работы

Реализация кодирования повторением. Определение зависимостей помехоустойчивости связи от отношения сигнал-шум.

2 Лабораторное задание

1.Реализация кодера повторением.

2.Реализация декодера повторением.

3.Оценка зависимостей BER от отношения сигнал-шум.

3 Порядок выполнения работы

Работа выполняется экспериментально с программным обеспечением Octave.

Рисунок 8.1 – Схема реализуемой модели

Целью работы является создание имитационной модели системы связи с кодированием повторением, работающей в заданном диапазоне ОСШ и рассчитывающей зависимости BER(Eb/N0) и BER(SNR). Далее приведена возможная последовательность действий по реализации этой модели, однако вы можете реализовать ее самостоятельно.

Для работы в Octave с телекоммуникационными функциями нужно загрузить специальную библиотеку, для этого нужно написать в командной строке команду:

pkg load communications

31

и нажать Enter. При этом выполнится соответствующая команда и загрузится библиотека.

Программы в Octave пишутся в двух типах файлов – скриптах (сценариях) и функциях. Скрипты являются исполняемыми файлами (файлами верхнего уровня), а функции подключаются в скрипты или другие функции.

Для того чтобы создать скрипт, нужно выбрать меню Файл – Создать – Создать сценарий.

Создайте отдельную папку (рекомендуем каждый новый проект создавать в отдельной папке). Создайте скрипт и назовите его main. В начале файла напишите следующие команды (каждую в отдельной строке):

clc

(стирает все сообщения из адресной строки); clear all

(стирает все переменные из рабочей области); close all

(закрывает все окна графиков). Далее объявите переменные

M = 2;

(индекс модуляции, возможные значения 2, 4, 16, … );

N = 10000;

(количество передаваемых символов);

Минимальное и максимальное значение SNR, для которых планируется проводить моделирование:

SNR = [0 20];

Далее необходимо объявить цикл с помощью оператора for, в котором значения snr_i будут меняться от SNR(1) до SNR(2). Кроме того, необходимо объявить индекс итерации, например, k. В каждой следующей итерации k будет увеличиваться на 1.

k = 0;

for snr_i =SNR(1):SNR(2) k = k+1

Создайте функцию (в отдельном файле) кодирования повторением repeat_code. Аргументы функции bits, D, выход coded_bits. Саму функцию можно реализовать, используя следующий алгоритм. Создается пустой вектор coded_bits, который в дальнейшем мы наполним закодированными битами.

coded_bits = [];

Создаем цикл от 1 до длины вектора входных битов, в каждой итерации объявляем пустой вектор bits_D и далее в цикле от 1 до D наполняем его копиями i-го бита (вставляем D раз) и записываем в вектор coded_bits:

32

for i = 1:length(bits) bits_D = []; for d = 1:D

bits_D = [bits_D,bits(i)]; end

coded_bits = [coded_bits,bits_D]; end

На этом код функции заканчивается.

Вставьте функцию в скрипт main и расположите ее в соответствии с рисунком 8.1 (на вход подаются биты с генератора случайных чисел, выход функции подключен к модулятору):

bits = randi([0 M-1],N,1); coded_bits = repeat_code (bits, D); qam_sym = modulator(coded_bits, M);

Измените аргументы функции awgn: вместо SNR подайте текущее значение snr_i.

Создайте функцию декодирования со входами bits, D и выходом decoded_bits. Она может иметь следующую логику. Создается пустой вектор decoded_bits, который в дальнейшем мы наполним закодированными битами.

decoded_bits = [];

В цикле с i от 1 до длины вектора входных битов с шагом D необходимо в каждой итерации вырезать из вектора соответствующую группу битов, сложить значения всех битов, разделить на D и округлить. Результат добавить к decoded_bits:

for i = 1:D:length(bits) bits_group= bits(i:i+D-1); decoded_bit= round(sum(bits_group)/D); decoded_bits = [decoded_bits, decoded_bit]; end

В каждой итерации (для каждого значения snr_i) необходимо рассчитывать

BER(k):

ber(k) = (length(find(de2bi(bits) – de2bi(decoded_bits))))/(N*log2(M));

На этом итерация глобального цикла snr_i заканчивается. Последним этапом является построение в логарифмическом масштабе зависимостей

BER(Eb/N0) и BER(SNR):

semilogy(SNR(1):SNR(2), ber)

Для того, чтобы следующий график построился в новом графическом окне, можно воспользоваться функций figure, которая его открывает.

semilogy([SNR(1):SNR(2)] – 10*log10(1/D), ber)

Для построения двух графиков в одном графическом окне нужно между соответствующими функциями построения записать команду hold on. Оси графиков можно подписать следующим образом.

xlabel(' SNR'); ylabel(' BER ');

Постройте зависимости BER для различных значений D.

4 Дополнительное задание для самостоятельной работы

1.Разработанная модель будет корректно работать только для BPSK модуляции, поскольку генератор случайных чисел формирует символы, а не биты. Для значений M>2 будут повторяться именно символы. Модифицируйте модель для корректной работы с M>2.

2.Разработанный помехоустойчивый код обладает относительно низкой эффективностью. Более продуктивным будет объединение процедур демодуляции и декодирования (мягкое декодирование). В этом случай на вход декодера должны поступать не биты с выхода демодулятора, а непосредственно значения отсчетов на входе приемника. Модифицируйте модель для мягкого декодирования и постройте зависимости BER(Eb/N0) и BER(SNR).

5 Контрольные вопросы

1.Как рассчитать значение BER?

2.Каково может быть максимальное значение BER и почему?

3.Каким образом можно декодировать повторенные биты?

Листинг основной работы:

Файл main.m

clc clear all close all

M = 2;

N = 1000;

SNR = [0 20];

D = 2;

k = 0;

for snr_i = SNR(1):SNR(2) k = k+1

bits = randi([0 M-1],N,1); coded_bits = repeat_code (bits, D);

qam_sym = modulator(coded_bits, M); chan_sym = awgn(qam_sym,snr_i,'measured');

r_bits = demodulator(chan_sym, M); decoded_bits = repeat_decode (r_bits, D);

ber(k) = (length(find(de2bi(bits) – de2bi(decoded_bits))))/(N*log2(M)); end semilogy(SNR(1):SNR(2), ber) xlabel('SNR');

ylabel('BER'); hold on

34

figure

semilogy([SNR(1):SNR(2)] – 10*log10(1/D), ber) ylabel('BER'); xlabel('EB/NO');

Файл repeat_code.m

function coded_bits = repeat_code (bits, D) coded_bits = []; for i = 1:length(bits) bits_D = [];

for d = 1:D

bits_D = [bits_D,bits(i)]; end coded_bits = [coded_bits,bits_D]; end endfunction

Файл repeat_decode.m

function decoded_bits = repeat_decode (bits, D) decoded_bits = []; for i = 1:D:length(bits) bits_group = bits(i:i+D-1);

decoded_bit = round(sum(bits_group)/D); decoded_bits = [decoded_bits, decoded_bit];

end endfunction

35

ПРАКТИЧЕСКИЕ ЗАДАНИЯ

1.1. Определить энтропию и избыточность двоичного источника с независимым выбором элементов, если задана вероятность первого сообщения

P(x1). P(x2) =1 – P(x1).

Для разных вариантов P(x1) = 1/(1+N), где N – номер варианта.

1.2. Определить энтропию и избыточность источника с независимым выбором элементов (букв), вероятности выбора которых приведены в таблице вариантов.

Таблица вариантов к задаче 1.2

№ вар.

P(x1)

P(x2)

P(x3)

P(x4)

P(x5)

P(x6)

P(x7)

P(x8)

1

– 4

0,3

0,2

0,2

0,1

0,05

0,05

0,05

0,05

5

– 8

0,4

0,2

0,1

0,05

0,05

0,05

0,03

0,02

9 – 12

0,5

0,15

0,1

0,1

0,05

0,05

0,04

0,01

13

– 16

0,6

0,1

0,1

0,1

0,05

0,03

0,01

0,01

17

– 20

0,7

0,1

0,05

0,05

0,02

0,01

0,01

0,01

21

– 24

0,6

0,1

0,1

0,05

0,05

0,05

0,03

0,02

25

– 28

0,5

0,2

0,1

0,08

0,07

0,03

0,01

0,01

1.3.Закодировать сообщения источника предыдущей задачи для передачи информации по каналу связи:

- равномерным двоичным кодом; - оптимальным неравномерным двоичным кодом.

Сравните среднее число элементов кода, приходящееся на одну букву, для обоих способов кодирования и сделайте обобщающие выводы.

1.4.В системе связи используется двоичный источник с зависимыми элементами (буквами) x1, x2, для которых заданы вероятности переходов.

Требуется:

1. Изобразить на чертеже диаграмму состояний и переходов источника. 2. Вычислить вероятности P(x1) и P(x2).

3.Определить энтропию и избыточность источника с найденными

вероятностями P(x1) и P(x2) в предположении отсутствия корреляционных связей.

4.Определить энтропию и избыточность источника с учетом корреляционных связей.

5.Сравните результаты вычислений по пунктам 3 и 4, сделайте обобщающий вывод о влиянии корреляции на энтропию и избыточность источника.

Для разных вариантов P(x1 x2) =1/(1+0,1N), P(x2 x1) =(N+4)/40,

где N – номер варианта.

36

1.5.Закодировать сообщения источника предыдущей задачи для передачи сообщений по каналу связи:

- равномерным двоичным кодом; - оптимальным кодом с учетом корреляционных связей, укрупняя алфавит

путем объединения букв в кодовые слова по две буквы.

Сравнить среднее число элементов кода, приходящееся на одну букву, для этих двух случаев.

1.6.Решить задачу 1.5, укрупнив алфавит источника путем объединения букв в кодовые слова по три буквы.

1.7. Вычислить пропускную способность двоичного канала связи, если информация передается со скоростью

V = 1200 Бод (для вариантов 1 – 10);

V = 2400 Бод

(для вариантов 11 – 20)

или

V = 4800 Бод

(для вариантов 21 –

30), а вероятность искажения

элементарной посылки равна

p = 0,1/N,

где N – номер варианта.

Определить также производительность данного источника.

1.8. Определить энтропию и производительность источника непрерывных сообщений, если плотность вероятности сигнала описывается равномерным законом распределения, а сигнал ограничен в объёме от –10 до +N милливольт, где N – номер варианта.

Эффективная ширина спектра

f = 1000 + 10N Гц.

1.9. Определить энтропию источника непрерывных сообщений с гауссовским законом распределения напряжений, если математическое ожидание равно 10N вольт, а дисперсия 2 = 0,01N Вт, где N – номер варианта.

1.10. Вычислить пропускную способность непрерывного канала связи, если эффективная полоса пропускания канала

fэфф = 1000 + 10N Гц,

мощность сигнала на входе приемника

Pс = 100 + N мВт,

мощность помехи

Pп = 10 + N мВт,

где N – номер варианта.

1.11. Определить, какую мощность должен иметь сигнал с гауссовским законом распределения, если известна полоса пропускания канала связи

fэфф = 1000 + 10N Гц

испектральная плотность шума

Nо = 10 + N мкВт/Гц,

где N – номер варианта задачи.

Пропускная способность для разных вариантов задана и равна

37

C= 500 + 20N дв.ед.инф./с.

1.12.Рассчитать и построить зависимость пропускной способности непрерывного канала связи от эффективной полосы пропускания канала при мощности сигнала

Pс = 10 + N мВт,

где N – номер варианта задачи.

Спектральная плотность гауссовского шума в канале связи

N0 = 1 + N мкВт/Гц.

1.13. По дискретному двоичному каналу связи с шумами передаются сигналы S1(t) и S2(t) в виде импульсов тока с априорными вероятностями P(S1) и P(S2). Потери, обусловленные искажениями сигнала S1(t), составляют П21 единиц, а искажениями сигнала S2(t) – П12 единиц.

Определить:

1.Среднюю вероятность ошибки, используя критерий идеального наблюдателя.

2.Среднюю вероятность ошибки, используя критерий максимального правдоподобия.

3. Величину среднего риска, вызванного искажениями сигналов

S1(t) и S2(t).

Ответить также на вопрос о том, каким образом можно практически уменьшить величину среднего риска. Ответ должен сопровождаться рисунками: временными диаграммами, графиками плотностей вероятности сигналов S1(t) и S2(t) с учетом наличия гауссовских шумов.

Исходные данные к задаче приведены в таблице вариантов.

1.14. На вход решающего устройства приемника поступает телеграфный сигнал и гауссовская помеха с дисперсией . Сигнал S1(t) представляет собой импульс прямоугольной формы длительностью T с амплитудой A1, сигнал S (t) представляет собой также импульс прямоугольной формы длительностью T и амплитудой A2.

За время длительности сигнала T произведено два замера в моменты времени t1 и t2, причем t = t2 t1 больше интервала корреляции помехи.

Измеренные значения x1 = x(t1 ) и x2 = x(t2 ) известны.

Найти отношение правдоподобия и принять решение о том, какой из сигналов выдает решающее устройство по критерию идеального наблюдателя

для двух случаев:

 

P(S1) = P(S2) = 0,5 и

P(S1) P(S2) 0,5.

Ответ должен сопровождаться подробными пояснениями и рисунками: временными диаграммами, графиками плотности вероятности сигналов S1(t) и S2(t) с учетом наличия гауссовских шумов.

На этих рисунках показать значения x1 и x2 .

Исходные данные к задаче приведены в таблице вариантов.

38

1.15. На вход приемного устройства, оптимального по критерию идеального наблюдателя, поступает сигнал с ДАМ, ДЧМ, ДФМ или ДОФМ с амплитудой Am и стационарный белый шум со спектральной плотностью N0. Вероятности сигналов P(S1) = P(S2) = 0,5.

Скорость передачи в канале связи V Бод.

Вычислить и изобразить графически зависимости средней вероятности ошибки от амплитуды входного сигнала Am.

Исходные данные к задаче приведены в таблице вариантов. При решении задачи рекомендуется задаться вероятностями ошибки 10–1, 10–2, 10–3, 10–4.

1.16. На вход приемного устройства, оптимального по критерию идеального наблюдателя, поступают сигналы с ДАМ, ДЧМ, ДФМ или ДОФМ с амплитудой Am и стационарный белый шум со спектральной плотностью N0. Вероятности сигналов P(S1) = P(S2) = 0,5. Скорость передачи в канале связи V Бод.

Найти вероятность искажения сигнала для заданного варианта задачи. Исходные данные приведены в таблице вариантов.

Решение должно сопровождаться подробными пояснениями.

1.17. На вход приемного устройства, оптимального по критерию

идеального наблюдателя, поступает сигнал с ДЧМ вида

 

 

 

 

 

 

 

 

S1(t) = 4cos(1t + 1),

 

 

 

 

 

 

 

 

S2(t) = 4cos(2t + 2).

 

 

 

 

Априорные вероятности сигналов P(S1) = P(S2) = 0,5.

 

 

Скорость передачи V = 200 Бод, причем V << 1

и V << 2,

а 2 1 >>

V (сигналы ортогональны).

 

 

 

 

 

 

 

Стационарный белый (гауссовский) шум в канале связи имеет

спектральную плотность N0 = 0,01 Вт/Гц.

 

 

 

 

 

Таблица вариантов к задаче 1.13

 

 

 

 

 

 

№ вар.

P(S1)

 

P(S2)

P(S2/ S1)

P(S1/ S2)

П21

 

П12

 

 

 

 

 

 

 

 

 

 

 

 

 

1

0,1

 

0,9

0,001

0,0001

200

 

10

 

 

2

0,05

 

0,95

0,002

0,0001

150

 

5

 

 

3

0,15

 

0,85

0,003

0,0002

120

 

3

 

 

4

0,2

 

0,8

0,001

0,0002

250

 

5

 

 

5

0,9

 

0,1

0,0002

0,002

5

 

200

 

 

6

0,1

 

0,9

0,002

0,0001

250

 

4

 

 

7

0,05

 

0,95

0,001

0,0003

120

 

3

 

 

8

0,15

 

0,85

0,004

0,0002

200

 

2

 

 

9

0,2

 

0,8

0,001

0,0001

150

 

6

 

 

10

0,9

 

0,1

0,0003

0,001

4

 

150

 

 

11

0,9

 

0,1

0,0002

0,003

10

 

100

 

 

12

0,95

 

0,05

0,0001

0,003

50

 

10

 

 

13

0,85

 

0,15

0,0004

0,002

60

 

3

 

 

14

0,8

 

0,2

0,0004

0,004

10

 

150

 

 

 

 

 

 

39

 

 

 

 

 

15

0,1

0,9

0,005

0,0002

10

120

16

0,9

0,1

0,0006

0,003

100

6

17

0,2

0,8

0,008

0,0004

120

6

18

0,15

0,85

0,0001

0,004

10

200

19

0,05

0,95

0,01

0,001

10

150

20

0,1

0,9

0,0008

0,01

120

4

21

0,01

0,99

0,001

0,01

80

2

22

0,03

0,97

0,001

0,003

60

5

23

0,05

0,95

0,004

0,005

200

10

24

0,02

0,98

0,005

0,002

20

3

25

0,08

0,92

0,003

0,001

75

6

26

0,95

0,01

0,002

0,03

3

200

27

0,93

0,02

0,001

0,002

6

40

Таблица вариантов к задаче 1.14

№ вар.

2, Вт

A1, B

A2, B

x1, B

x2, B

P(S1)

1

0,36

–0,6

0,6

–0,1

0,2

0,7

2

0,07

0

0,5

0,2

0,4

0,3

3

0,7

–0,7

0,7

–0,3

0,1

0,3

4

0,07

0

0,6

0,4

0,3

0,6

5

0,32

–0,8

0,8

0,2

–0,1

0,7

6

0,09

0

0,8

0,4

0,3

0,2

7

0,8

–0,5

0,5

–0,3

–0,1

0,3

8

0,06

0

0,5

0,1

0,3

0,15

9

0,32

–0,8

0,8

–0,2

0,4

0,8

10

0,09

0

0,6

0,4

0,1

0,3

11

0,72

–0,6

0,6

–0,2

–0,1

0,2

12

0,09

0

0,6

0,1

0,3

0,1

13

0,35

–0,5

0,5

–0,3

0,4

0,35

14

0,06

0

0,5

0,4

0,2

0,75

15

0,75

–0,7

0,7

–0,3

–0,1

0,2

16

0,05

0

0,4

0,3

0,2

0,75

17

0,8

–0,8

0,8

0,1

0,3

0,8

18

0,08

0

0,7

0,4

0,5

0,9

19

0,4

–0,6

0,6

–0,3

–0,1

0,15

20

0,04

0

0,6

0,3

0,4

0,8

21

0,3

–0,7

0,7

0,1

–0,3

0,25

22

0,05

0

0,4

0,2

0,1

0,25

23

0,5

–0,5

0,5

0,4

–0,2

0,8

24

0,08

0

0,5

0,2

0,4

0,7

25

0,35

–0,4

0,4

–0,2

–0,1

0,2

26

0,09

0

0,8

0,3

0,4

0,2

27

0,4

–0,7

0,7

–0,4

0,6

0,75

28

0,2

0

0,7

0,5

0,4

0,7

29

0,3

–0,6

0,6

0,2

–0,3

0,3

30

0,08

0

0,6

0,1

0,4

0,25

40

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]