Курсовая работа: Передача цифрового сигнала
Рисунок 15 – Модем.
Сформированный в результате модуляции сигнал поступает в
канал связи, где он подвергается воздействию шумов и помех. Поэтому функции
моделирования каналов связи должны обеспечивать внесение в сигнал искажений
согласно используемым статистическим моделям.
Можно воспользоваться функцией awgn, которая позволяет
добавить к сигналу аддитивный белый нормальный шум, реализовав при этом
заданное отношение сигнал/шум. При этом мощность сигнала, знать которую
необходимо для расчета требуемого уровня шума, может задаваться в явном виде
либо измеряться автоматически.
Синтаксис:
y = awgn(x,snr);
y = awgn(x,snr,sigpower);
y = awgn(x,snr,'measured');
y = awgn(x,snr,sigpower,state);
y = awgn(x,snr,'measured',state);
y = awgn(...,powertype);
Описание:
y = awgn(x,snr)
Добавляет белый гауссов шум к вектору сигнала x. Скаляр snr
задает отношение сигнал/шум в децибелах. Если значения x являются комплексными,
функция awgn добавляет комплексный шум. При этом предполагается, что мощность
сигнала x равна 0 дБ.
y = awgn(x,snr,sigpower)
То же, что и предыдущий вариант синтаксиса, но в данном
случае параметр sigpower указывает мощность сигнала x в децибелах.
y = awgn(x,snr,'measured')
То же, что y = awgn(x,snr), но мощность сигнала не
считается равной 0 дБ, а автоматически измеряется.
y = awgn(x,snr,sigpower,state)
То же, что y = awgn(x,snr,sigpower), но
целочисленный параметр state позволяет задавать внутреннее состояние генератора
гауссовых случайных чисел MATLAB (функция randn).
y = awgn(x,snr,'measured',state)
То же, что y = awgn(x,snr,'measured'), но
целочисленный параметр state позволяет задавать внутреннее состояние генератора
гауссовых случайных чисел MATLAB (функция randn).
y = awgn(...,powertype)
То же, что предыдущие варианты синтаксиса, но в данном
случае строковый параметр powertype задает единицы измерения, использованные
при указании параметров snr и sigpower. Возможные значения параметра powertype
- 'dB' и 'linear'. При значении 'linear' мощность измеряется в ваттах.
Таким образом, для реализации помех воспользуемся блоком
MATLAB Fcn с настройками, указанными на рисунке 15:

Рисунок 16 - Блок MATLAB Fcn.

Рисунок 17 – Реализация белого шума.
Схема ЦАП изображена на рисунке 16:

Рисунок 18 – Схема АЦП.
В состав АЦП входят блоки конвертора (Bit to Integer
Converter), задержки исполнения на период дискретизации (Zero-Order Hold2) и
квантования (Quantizer2).
Блок Bit to Integer Converter предназначен для
преобразования цифрового сигнала в целочисленный аналоговый. Его настройки
соответствуют блоку Integer to Bit Converter1 в АЦП:

Рисунок 19 – Настройка блока Bit to Integer Converter.
Блока Zero-Order Hold2 обеспечивает задержку входного
сигнала на период дискретизации. Основным назначением блока является
экстраполяция входного сигнала на интервале дискретизации. Но он также может
быть использован для согласования работы дискретных блоков, имеющие разные
такты дискретности.
Следующим элементом в ЦАП является квантователь. Он
обеспечивает квантование с одинаковым шагом по уровню. Рассчитаем значения его
параметров.
Блок Quantizer2 будет иметь схожие
настройки с Quantizer1 АЦП:

Рисунок 20 – Настройки блока Quantizer2.
Использование блоков Averaging Power Spectral Density
(на сгенерированный сигнал перед входом на АЦП) и Averaging Power Spectral Density1
(на полученный сигнал после выхода с ЦАП), позволяет сравнить входной и
выходной сигнал.

Рисунок 19 – Входной сигнал.

Рисунок 20 – Выходной сигнал.
Для оценки помехоустойчивости системы связи необходимо
произвести сравнение исходного (передаваемого) сообщения с сообщением,
полученным в результате приема, и определить число ошибок, возникших в процессе
передачи, а также вероятность ошибки. Эти действия выполняются функциями symerr
и biterr, первая из которых подсчитывает число несовпадающих символах в двух
сообщениях, а вторая - число несовпадающих битов в двоичных представлениях этих
символов. Кроме числа ошибок, обе функции могут возвращать долю ошибок в общем
числе символов (битов) и индикаторы мест возникновения ошибок.
Воспользуемся блоками To Workspace и To Workspace1, установленными
соответственно перед входом на АЦП и после выхода с ЦАП. Блоки записывают
данные, поступающие на их вход в рабочую область Matlab.

Рисунок 21 – Настройка блока To Workspace

Рисунок 22 – Настройка блока To Workspace1
Первый блок записывает данные в массив simout,
второй - в simout1. Воспользуемся функцией symerr для оценки вероятности возникновения ошибки.
>> for i=1: 100
a2(i) =simout1(i);
end
>> for i=1: 100
a1(i) =simout(i);
end
>> [n,r] =symerr(a1,a2);
>> r
r =
0.0900
Переменная r - это вероятность
ошибки. Значение 0,09 соответствует 9%.
Литература
1.
Сергиенко А.Б. Цифровая обработка сигналов – СПб.: Питер, 2002.
2.
Дьяконов В. Matlab. Обработка сигналов и
изображений. Специальный справочник. – СПб.: Питер 2002.
3. Интернет http: // www. exponenta. ru/
|